On Fri, 10 Jan 2003 11:22:23 +0000, Vincent Finn wrote:

>>>I have added 2 parsers to my code base and the compile time (VC6) has
>>>gone from 10 mins to 30mins :-(
>>At the very least, yes, you can separate the parsers from the project.
>>How about writing some wrappers that *hides* the grammars in
>>*.cpp files? You can for example have an opaque API in a header
>>such as:
>>
>>bool parse(char const* source);
>
>That seems obvious now that you say it
>I was thinking in terms of spliting spirit off which causes problems but
>, as you say, all I need is to build a lib with my parser in so that
>spirit is hidden.

   This is kind of late (a month), but if you want a working example of this, I just 
updated and checked in my C++ lexer example into the Boost CVS. The lexer itself is 
implemented using Spirit grammars, and it's separated from its users by an opaque 
interface kind of like the one Joel describes.

   Now I'm in the process of cleaning it up and adding a few features, like making it 
multi-layered (lexer -> preprocessor -> parser, with all the layers separated from 
each other), so I'll check it in as soon as I'm done.

   Salutaciones,
                    JCAB
email: [EMAIL PROTECTED]
ICQ: 10913692 @WORK: 101728263
WWW: http://www.JCABs-Rumblings.com

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to