[ragel-users] One question.

Nate nathan.sweet at gmail.com
Tue Mar 29 21:59:39 UTC 2011


You can use fcall to jump to a machine, then fret to resume where you were.
It's a bit tricky, but once you understand it you can parse recursively. See
the startTable action here (though this is a pretty hairy parser):
http://code.google.com/p/table-layout/source/browse/trunk/build/TableLayoutParser.rl

-Nate


On Tue, Mar 29, 2011 at 2:55 PM, Jonathan Castello <twisolar at gmail.com>wrote:

> On Tue, Mar 29, 2011 at 1:15 PM, Gordeev Vladimir
> <gordeev.vladimir.v at gmail.com> wrote:
> > So I got following error:
> >
> >     test.rl:7:32: graph lookup of "list" failed
>
> The reason you get that error is because a rule can only reference
> definitions that came before it. "list" doesn't exist until the
> definition is finished, so it can't reference itself. (That would
> create a recursive structure anyways, which Ragel isn't equipped to
> handle natively.)
>
> ~Jonathan
>
> _______________________________________________
> ragel-users mailing list
> ragel-users at complang.org
> http://www.complang.org/mailman/listinfo/ragel-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.colm.net/pipermail/ragel-users/attachments/20110329/5d7f26cc/attachment-0001.html>
-------------- next part --------------
_______________________________________________
ragel-users mailing list
ragel-users at complang.org
http://www.complang.org/mailman/listinfo/ragel-users


More information about the ragel-users mailing list