bug-bison
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problem with multiple parsers


From: Akim Demaille
Subject: Re: Problem with multiple parsers
Date: Fri, 30 Jan 2015 15:57:34 +0100

> Le 30 janv. 2015 à 15:40, Laurence Finston <address@hidden> a écrit :
> 
> Hello,
> 
>> My current project is for my work and I'm not allowed to publish any code.  
>> However, I used three scanner/parser pairs in a 
>> recent project for my previous job and it can be downloaded from Github:  
>> https://github.com/gwdg/gwrdifpk
> 
> I should have mentioned that the scanner and parser code is in the following 
> files in the /gwrdifpk/src directory:
> 
> scanner.web
> scnrclnt.web
> scnrcln2.web
> 
> parser.web
> prsrclnt.web
> prsrcln2.web
> 
> It was also a fairly complex project, so I doubt that would be worth the 
> effort of trying to get it to build.  There is a manual in the gwrdifpk/doc, 
> however, in case anyone is interested.

Well, FWIW, I am also using two parsers and two scanners,
both in C++, based on Flex (C++) and Bison (C++).  That's
here:

https://gitlab.lrde.epita.fr/vcsn/vaucanson.git

For instance in lib/vcsn/dot/parse.yy, there is:

%code provides
{
  #define YY_DECL_(Class) \
    parser::symbol_type Class lex(driver& driver_)
  #define YY_DECL YY_DECL_(yyFlexLexer::)
}

%define api.namespace {vcsn::detail::dot}
%define api.value.type variant
%define api.location.type {vcsn::rat::location}
%define api.token.constructor

I don't use api.prefix, api.namespace is better suited
to C++.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]