Re: [ANTLR] Zeile und Spalte bei Fehler in Treeparser ermitteln



Peter Rill schrieb:

Am Mon, 05 Sep 2005 17:31:28 +0200 schrieb Jochen Theodorou:

[...]
class MyAST{
[...]
    public void initialize(AST ast) {
        super.initialize(ast);
        line = ast.getLine();
        col = ast.getColumn();
    }
}


Die Methode wird bei mir nie aufgerufen :-(
[...]
Ich habe jetzt die Lösung gefunden. Man muss void initialize(Token token)
überschreiben:

public void initialize(final Token token)
{
	super.initialize(token);
	line = token.getLine();
	column = token.getColumn();
}

ahja, sorry, man muss beide überschreiben. Die AST-Variante glaube ich nur, wenn man den AST von ANTLR slebst bauen will, aber mit unterstützung von ANTLR... ähm klingt jetzt wirr, oder? Wenn man also in der Grammatik sowas hat: #A = (#A1 (#A2, #A3)) usw.


Gruss theo
.



Relevant Pages

  • Re: [ANTLR] Zeile und Spalte bei Fehler in Treeparser ermitteln
    ... > Peter Rill schrieb: ... >> Leider ist ja die Javadoc zu ANTLR auch sehr lückenhaft und viele Methoden ... > public void initialize(AST ast) { ... Man muss void initialize(Token token) ...
    (de.comp.lang.java)
  • Re: Formelparser
    ... >> Abstract Syntax Tree (AST) und Expression Parsing. ... Der Begriff Token ist leider auch im Compilerbau relativ überladen. ... >> wird nahezu immer Parser gennant. ...
    (microsoft.public.de.german.entwickler.dotnet.csharp)
  • Re: Formelparser
    ... Ich meine den Baum der die Tokens miteinander verbindet (ein Knoten ... > im Token gespeichert. ... > Im AST werden i.d.R. keinen Tokens mehr referenziert, ...
    (microsoft.public.de.german.entwickler.dotnet.csharp)
  • Re: Generating AST using javacc and jjtree
    ... It supports not only Java but C++ and C#. Written in Java v.1.1 and can be ... Parser (which can build AST) and AST Grammar Walker (with ... At ANTLR site ...
    (comp.lang.java.softwaretools)
  • Re: Lexer/Parser in Matlab
    ... But you can use ANTLR, generate a java object (e.g. for AST) and then access it from Matlab. ...
    (comp.soft-sys.matlab)