* src/Makefile.am (SUBDIRS): Add tgbaparse. (libspot_la_LDADD): Add tgbaparse/libtgbaparse.la. * src/tgba/tgbaexplicit.cc (tgba_explicit::get_condition, tgba_explicit::get_promise, tgba_explicit::add_neg_condition, tgba_explicit::add_neg_promise): New methods. * src/tgba/tgbaexplicit.hh: Declare them. * src/tgbaparse/Makefile.am, src/tgbaparse/fmterror.cc, src/tgbaparse/parsedecl.hh, src/tgbaparse/public.hh, src/tgbaparse/tgbaparse.yy, src/tgbaparse/tgbascan.ll, src/tgbatest/tgbaread.cc, src/tgbatest/tgbaread.test: New files. * src/tgbatest/Makefile.am (check_PROGRAMS): Add tgbaread. (TESTS): Add tgbaread.cc. (CLEANFILES): Add input. (tgbaread_SOURCES): New variable.
32 lines
722 B
C++
32 lines
722 B
C++
#ifndef SPOT_TGBAPARSE_PARSEDECL_HH
|
|
# define SPOT_TGBAPARSE_PARSEDECL_HH
|
|
|
|
#include <string>
|
|
#include "tgbaparse.hh"
|
|
#include "location.hh"
|
|
|
|
# define YY_DECL \
|
|
int tgbayylex (yystype *yylval, yy::Location *yylloc)
|
|
YY_DECL;
|
|
|
|
namespace spot
|
|
{
|
|
int tgbayyopen(const std::string& name);
|
|
void tgbayyclose();
|
|
}
|
|
|
|
|
|
// Gross kludge to compile yy::Parser in another namespace (tgbayy::)
|
|
// but still use yy::Location. The reason is that Bison's C++
|
|
// skeleton does not support anything close to %name-prefix at the
|
|
// moment. All parser are named yy::Parser which makes it somewhat
|
|
// difficult to define multiple parsers.
|
|
namespace tgbayy
|
|
{
|
|
using namespace yy;
|
|
}
|
|
#define yy tgbayy
|
|
|
|
|
|
|
|
#endif // SPOT_TGBAPARSE_PARSEDECL_HH
|