public Node lit_list() { //Console.WriteLine("lit_list"); //Node lit_list = new Lit_list_(); Node lit = new Lit_list_(); if (CurrentToken == TokenCategory.FALSE) { lit = new False_(); var r = Expect(TokenCategory.FALSE); lit.AnchorToken = r; } else if (CurrentToken == TokenCategory.TRUE) { lit = new True_(); var r = Expect(TokenCategory.TRUE); lit.AnchorToken = r; } else if (CurrentToken == TokenCategory.CHARACTER) //y si le ponemos que espera un valor { lit = new Character_(); var r = Expect(TokenCategory.CHARACTER); lit.AnchorToken = r; } else if (CurrentToken == TokenCategory.INTEGER) { lit = new Integer_(); var r = Expect(TokenCategory.INTEGER); lit.AnchorToken = r; } else if (CurrentToken == TokenCategory.BINARYINT) { lit = new Integer_(); var r = Expect(TokenCategory.BINARYINT); lit.AnchorToken = r; } else if (CurrentToken == TokenCategory.OCTALINT) { lit = new Integer_(); var r = Expect(TokenCategory.OCTALINT); lit.AnchorToken = r; } else if (CurrentToken == TokenCategory.HEXAINT) { lit = new Integer_(); var r = Expect(TokenCategory.HEXAINT); lit.AnchorToken = r; } else { throw new SyntaxError(firstOfSimpleExpression, tokenStream.Current);//hay que arreglar estos diccionarios al final } //lit_list.Add(lit); while (CurrentToken == TokenCategory.COMA) { Expect(TokenCategory.COMA); lit.Add(lit_list()); } return(lit); }
public void Visit(Lit_list_ node, int modo) { VisitChildren(node, modo); }