No you don't have to stash them. You can jump to a new scanner in a pattern action just fine. Once the pattern action is executed the machine is finished with these variables. Immediately after the action it will set tokstart = 0 but this is for the user's sake only. That is done so the user can tell if a token is active on the boundary between buffers.
One thing you can't do however, is return to, or jump into the middle of a pattern match. You shouldn't need to though. I can't think of a parsing problem that would require it. Just break scanner patterns on call boundaries and you should be fine. -Adrian Eric Brown wrote: > Hi, > > If I want a scanner inside a scanner, do I have to stash any variables > (like ts, te & act) while I'm in the inner scanner? If so, what do I > initialize the new ts, te & act variables to. Is there a cleaner way > of doing this than doing it manually in my action? > > Cheers, > Eric > > > _______________________________________________ > ragel-users mailing list > [email protected] > http://www.complang.org/mailman/listinfo/ragel-users _______________________________________________ ragel-users mailing list [email protected] http://www.complang.org/mailman/listinfo/ragel-users
