// Copyright {Jagger Software Limited} 2003 #ifndef GRAMMAR_TOOLS_SOURCE_PARSER_VISITOR_INCLUDED #define GRAMMAR_TOOLS_SOURCE_PARSER_VISITOR_INCLUDED #include "grammar/visitor.hpp" namespace grammar_tools { template class parseable_source; template class source_parser_visitor // {abstract} : public ::grammar::visitor // <> { protected: // 'tors explicit source_parser_visitor(parseable_source &); ~source_parser_visitor(); public: // parsing virtual bool visit(const ::grammar::non_terminal_symbol_definition &); virtual bool visit(const ::grammar::production_symbol_definition &); virtual bool visit(const ::grammar::qualified_symbol_definition &); protected: // state parseable_source & source; }; } #include "grammar_tools/source_parser_visitor-template.hpp" #endif