1 #ifndef CLASS_HPP
 2 #define CLASS_HPP
 3 #include <sngcm/cmparser/ParserApi.hpp>
 4 #include <sngcm/ast/Class.hpp>
 5 #include <sngcm/cmparser/ParsingContext.hpp>
 6 #include <soulng/lexer/Token.hpp>
 7 #include <soulng/parser/Match.hpp>
 8 #include <soulng/parser/Value.hpp>
 9 
10 // this file has been automatically generated from 'D:/work/soulng-project/sngcm/cmparser/Class.parser' using soulng parser generator spg version 3.0.0
11 
12 class CmajorLexer;
13 
14 struct ClassParser 
15 {
16     static soulng::parser::Match Class(CmajorLexer& lexerParsingContext* ctx);
17     static soulng::parser::Match InheritanceAndInterfaces(CmajorLexer& lexerParsingContext* ctxsngcm::ast::ClassNode* classNode);
18     static soulng::parser::Match BaseClassOrInterface(CmajorLexer& lexerParsingContext* ctx);
19     static soulng::parser::Match ClassContent(CmajorLexer& lexerParsingContext* ctxsngcm::ast::ClassNode* classNode);
20     static soulng::parser::Match ClassMember(CmajorLexer& lexerParsingContext* ctxsngcm::ast::ClassNode* classNode);
21     static soulng::parser::Match StaticConstructor(CmajorLexer& lexerParsingContext* ctxsngcm::ast::ClassNode* classNode);
22     static soulng::parser::Match Constructor(CmajorLexer& lexerParsingContext* ctxsngcm::ast::ClassNode* classNode);
23     static soulng::parser::Match Destructor(CmajorLexer& lexerParsingContext* ctxsngcm::ast::ClassNode* classNode);
24     static soulng::parser::Match Initializer(CmajorLexer& lexerParsingContext* ctx);
25     static soulng::parser::Match MemberFunction(CmajorLexer& lexerParsingContext* ctx);
26     static soulng::parser::Match ConversionFunction(CmajorLexer& lexerParsingContext* ctx);
27     static soulng::parser::Match MemberVariable(CmajorLexer& lexerParsingContext* ctx);
28 };
29 
30 #endif // CLASS_HPP