1 #ifndef LEXERDECLARATIONPARSER_HPP
 2 #define LEXERDECLARATIONPARSER_HPP
 3 #include <soulng/cppcode/Declaration.hpp>
 4 #include <soulng/cppcode/Type.hpp>
 5 #include <soulng/lexer/Token.hpp>
 6 #include <soulng/parser/Match.hpp>
 7 #include <soulng/parser/Value.hpp>
 8 
 9 // this file has been automatically generated from 'D:/work/soulng-project/tools/sng2html/sng2html/LexerDeclarationParser.parser' using soulng parser generator spg version 3.0.0
10 
11 class LexerFileLexer;
12 
13 struct LexerDeclarationParser 
14 {
15     static soulng::parser::Match BlockDeclaration(LexerFileLexer& lexer);
16     static soulng::parser::Match SimpleDeclaration(LexerFileLexer& lexer);
17     static soulng::parser::Match DeclSpecifierSeq(LexerFileLexer& lexersoulng::cppcode::SimpleDeclaration* declaration);
18     static soulng::parser::Match DeclSpecifier(LexerFileLexer& lexer);
19     static soulng::parser::Match StorageClassSpecifier(LexerFileLexer& lexer);
20     static soulng::parser::Match TypeSpecifier(LexerFileLexer& lexer);
21     static soulng::parser::Match SimpleTypeSpecifier(LexerFileLexer& lexer);
22     static soulng::parser::Match TypeName(LexerFileLexer& lexer);
23     static soulng::parser::Match TemplateArgumentList(LexerFileLexer& lexersoulng::cppcode::TypeName* typeName);
24     static soulng::parser::Match TemplateArgument(LexerFileLexer& lexer);
25     static soulng::parser::Match Typedef(LexerFileLexer& lexer);
26     static soulng::parser::Match CVQualifier(LexerFileLexer& lexer);
27     static soulng::parser::Match NamespaceAliasDefinition(LexerFileLexer& lexer);
28     static soulng::parser::Match UsingDeclaration(LexerFileLexer& lexer);
29     static soulng::parser::Match UsingDirective(LexerFileLexer& lexer);
30 };
31 
32 #endif // LEXERDECLARATIONPARSER_HPP