[antlr-interest] Antlr3: Help - line 0:-1 mismatched input '<EOF>' ?

Mark Mandel mark.mandel at gmail.com
Mon Jan 8 01:57:06 PST 2007


Yup, worked a charm... I'm such a idiot ;)

Thanks.

Mark.

On 1/8/07, Mark Mandel <mark.mandel at gmail.com> wrote:
> Omg... I didn't think of that.
>
> I'll give it a shot.
>
> >slaps forehead<
>
> Mark
>
> On 1/8/07, David Holroyd <dave at badgers-in-foil.co.uk> wrote:
> > Hi,
> >
> > On Mon, Jan 08, 2007 at 04:32:29PM +1100, Mark Mandel wrote:
> > > I get the error:
> > > line 0:-1 mismatched input '<EOF>' expecting SELECT
> > >
> > > Whenever I run my parser over my tokens, and I have no idea why.  Is
> > > line:0:-1 at the beginning or the end of the string?
> >
> > > My grammar and test bed is the following:
> > >
> > > [Test.java]
> > >
> > >       public static void main(String[] args)
> > >       {
> > >               try
> > >               {
> > >                       String tql = "select emails.Email.emailName, emails.Email.emailFrom from emails.Email where emails.Email.emailName = :name";
> > >                       System.out.println(tql);
> > >                       CharStream input = new ANTLRStringStream(tql);
> > >               TqlLexerLexer lexer = new TqlLexerLexer(input);
> > >               Token token;
> > >               while ((token = lexer.nextToken())!=Token.EOF_TOKEN) {
> > >                       System.out.println("Token["+ token.getType() +"]:
> > >                       "+token.getText());
> > >               }
> >
> > Does it work without the above while-loop in there?  If you've already
> > read all the tokens up to EOF from the lexer, that sounds like a good
> > reason for the parser to complain about EOF being the first thing it
> > sees.
> >
> > >               CommonTokenStream tokens = new  CommonTokenStream(lexer);
> > >               TqlParserParser parser = new TqlParserParser(tokens);
> > >               TqlParserParser.selectStatement_return root =
> > >               parser.selectStatement();
> > >               System.out.println("tree="+((Tree)root.tree).toStringTree());
> >
> > [Didn't run the code to confirm that, sorry.]
> >
> >
> > ta,
> > dave
> >
> > --
> > http://david.holroyd.me.uk/
> >
>
>
> --
> E: mark.mandel at gmail.com
> W: www.compoundtheory.com
>


-- 
E: mark.mandel at gmail.com
W: www.compoundtheory.com


More information about the antlr-interest mailing list