struct vs class for a simple token in my d lexer

Tobias Pankrath tobias at pankrath.net
Mon May 14 10:16:20 PDT 2012


> struct Token{
>     uint col, line;
>     uint flags;//indicated info about token, serves as both 
> type tag and flag set;
> //indicates proper type once token was cooked (like "31.415926" 
> -> 3.145926e1) i.e. values are calculated
>     union {
>         string     chars;
>         float     f_val;
>         double     d_val;
>         uint     uint_val;
>         long     long_val;
>         ulnog     ulong_val;
>         //... anything else you may need (8 bytes are plenty)
>     }//even then you may use up to 12bytes
>     //total size == 24 or 20
> };

I wouldn't convert the string representation to a value unless 
needed. Even the parser does not need to know.


More information about the Digitalmars-d-learn mailing list