[ragel-users] getNextToken() : how to return ?
Maël Nison
nison.mael at gmail.com
Thu Jan 5 15:44:05 UTC 2012
It seems to work if I manually set p = te; just before returning, but I
don't really know if it's a good practice.
On 5 January 2012 16:20, Maël Nison <nison.mael at gmail.com> wrote:
> Epic formatting fail. I hope it will be better this time. Sorry ..
>
> Hi,
>
> I would like to write a very basic function taking a c++ char const *
> &, and returning the first token type.
> The reference would imply that the cstring pointer's target is, after
> the function call, the very next character of the returned token.
>
> Then I would be able to make :
> while ( token = getNextToken( foo ) )
> std::cout << token << std::endl;
>
> I've tried to use something like that (example, probably does not
> compile), but the value of 'p' is not modified when returning
> (infinite loop) :
>
> #include "Token.hh"
> %%machine foo;
> %%write data;
>
> int getNextToken( char const * & p ) {
> %%{
> foo = "foo";
> main := |* foo => { return Foo; }; *|;
> }%%;
>
> int cs;
> int act;
> char const * ts;
> char const * te;
> char const * eof;
>
> %% write init;
> %% write exec noend;
> }
>
> Additionally, I've seen in the documentation that getkey could be
> employed to change the buffer input. Is there an example using
> standard c++ istreams ?
>
> --
> Maël Nison
> Epitech 2014, Paris - Astek
>
>
--
Maël Nison
Epitech 2014, Paris - Astek
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.colm.net/pipermail/ragel-users/attachments/20120105/5ac55ca6/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