From b78ea37a6f8d289b9adb2b5bc565716168a00060 Mon Sep 17 00:00:00 2001 From: Mike Buland Date: Tue, 22 Aug 2006 05:04:16 +0000 Subject: The basic outline for all of the initial functions and rules has been set. The parser and scanner are using the new system so they actually match functions and whatnot and pass that data to the parser, it's very cool. --- src/builder.h | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'src/builder.h') diff --git a/src/builder.h b/src/builder.h index 3293108..529edc6 100644 --- a/src/builder.h +++ b/src/builder.h @@ -7,6 +7,10 @@ #include "exceptions.h" class Builder; +class Function; +class FunctionFactory; +class Perform; +class PerformFactory; #define YY_DECL int yylex( YYSTYPE *yylval_param, YYLTYPE *yylloc_param, Builder &bld ) YY_DECL; @@ -25,13 +29,39 @@ public: void load( const std::string &sFile ); int getTargetType( const char *sType ); - bool isFunction( const char *sFunc ); private: std::string file; void scanBegin(); void scanEnd(); +public: // Function functions + bool isFunction( const char *sFunc ); + void newFunctionCall( const char *sName ); + void addFunctionParam( const char *sParam ); + +private: // Function variables + Function *pTmpFunc; + FunctionFactory &fFunction; + +public: // Perform functions + bool isPerform( const char *sPerf ); + void newPerform( const char *sName ); + void addPerformParam( const char *sParam ); + +private: // Perform variables + Perform *pTmpPerform; + PerformFactory &fPerform; + +public: // List functions + void newList(); + void addListString( const char *str ); + void addListFunc(); + +public: // Functions for dealing with rules + void addAction(); + void addAction( const char *sName ); + void addCommand( int nType ); }; #endif -- cgit v1.2.3