]> gitweb.ps.run Git - toc/blobdiff - gen/TocParser.h
generic grammar
[toc] / gen / TocParser.h
index 0157c9c903fec9b3ca1bb58a2773701fc9362874..2482c29aaed7f42b1667669c34f934a4f9476660 100644 (file)
@@ -20,24 +20,25 @@ public:
     T__32 = 33, T__33 = 34, T__34 = 35, T__35 = 36, T__36 = 37, T__37 = 38, \r
     T__38 = 39, T__39 = 40, T__40 = 41, T__41 = 42, T__42 = 43, T__43 = 44, \r
     T__44 = 45, T__45 = 46, T__46 = 47, T__47 = 48, T__48 = 49, T__49 = 50, \r
-    T__50 = 51, T__51 = 52, T__52 = 53, T__53 = 54, INT_LIT = 55, DECIMAL_LIT = 56, \r
-    STRING_LIT = 57, BOOL_LIT = 58, NAME = 59, WS = 60, NEWLINE = 61, NUMBER = 62\r
+    T__50 = 51, T__51 = 52, T__52 = 53, T__53 = 54, T__54 = 55, INT_LIT = 56, \r
+    DECIMAL_LIT = 57, STRING_LIT = 58, BOOL_LIT = 59, NAME = 60, WS = 61, \r
+    NEWLINE = 62\r
   };\r
 \r
   enum {\r
     RuleProg = 0, RuleDecl = 1, RuleVarDecl = 2, RuleVar = 3, RuleVarInit = 4, \r
     RuleType = 5, RuleTypeModifier = 6, RuleFuncDecl = 7, RuleFunc = 8, \r
     RuleParameter = 9, RuleBody = 10, RuleStructDecl = 11, RuleStructMember = 12, \r
-    RuleStructVar = 13, RuleStructMethod = 14, RuleStmt = 15, RuleIfStmt = 16, \r
-    RuleElseIfStmt = 17, RuleElseStmt = 18, RuleSwitchStmt = 19, RuleSwitchBody = 20, \r
-    RuleSwitchCase = 21, RuleForStmt = 22, RuleWhileStmt = 23, RuleAssignStmt = 24, \r
-    RuleReturnStmt = 25, RuleExpr = 26, RuleNonOpExpr = 27, RuleNonAccessExpr = 28, \r
-    RuleFuncExpr = 29, RuleOpExpr = 30, RuleBinaryOp = 31, RulePrefixOp = 32, \r
-    RulePostfixOp = 33, RuleTernaryOp = 34, RuleIdentifierExpr = 35, RuleLitExpr = 36, \r
-    RuleAccessExpr = 37, RuleAccessSubExpr = 38, RuleAccessMember = 39\r
-    RuleAccessBrackets = 40, RuleParenExpr = 41, RuleFuncName = 42, RuleVarName = 43\r
-    RuleTypeName = 44, RuleStructName = 45, RulePostfix_op = 46, RulePrefix_op = 47\r
-    RuleBinary_op = 48\r
+    RuleStructVar = 13, RuleStructMethod = 14, RuleGenericDecl = 15, RuleStmt = 16, \r
+    RuleIfStmt = 17, RuleElseIfStmt = 18, RuleElseStmt = 19, RuleSwitchStmt = 20, \r
+    RuleSwitchBody = 21, RuleSwitchCase = 22, RuleForStmt = 23, RuleWhileStmt = 24, \r
+    RuleAssignStmt = 25, RuleReturnStmt = 26, RuleExpr = 27, RuleNonOpExpr = 28, \r
+    RuleNonAccessExpr = 29, RuleFuncExpr = 30, RuleOpExpr = 31, RuleBinaryOp = 32, \r
+    RulePrefixOp = 33, RulePostfixOp = 34, RuleTernaryOp = 35, RuleIdentifierExpr = 36, \r
+    RuleLitExpr = 37, RuleAccessExpr = 38, RuleAccessSubExpr = 39, RuleAccessMember = 40\r
+    RuleAccessBrackets = 41, RuleParenExpr = 42, RuleFuncName = 43, RuleVarName = 44\r
+    RuleTypeName = 45, RuleStructName = 46, RulePostfix_op = 47, RulePrefix_op = 48\r
+    RuleBinary_op = 49\r
   };\r
 \r
   explicit TocParser(antlr4::TokenStream *input);\r
@@ -65,6 +66,7 @@ public:
   class StructMemberContext;\r
   class StructVarContext;\r
   class StructMethodContext;\r
+  class GenericDeclContext;\r
   class StmtContext;\r
   class IfStmtContext;\r
   class ElseIfStmtContext;\r
@@ -108,8 +110,6 @@ public:
     std::vector<DeclContext *> decl();\r
     DeclContext* decl(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -123,8 +123,6 @@ public:
     FuncDeclContext *funcDecl();\r
     StructDeclContext *structDecl();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -136,8 +134,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     VarContext *var();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -151,8 +147,6 @@ public:
     TypeContext *type();\r
     ExprContext *expr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -166,8 +160,6 @@ public:
     TypeContext *type();\r
     ExprContext *expr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -181,8 +173,6 @@ public:
     std::vector<TypeModifierContext *> typeModifier();\r
     TypeModifierContext* typeModifier(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -192,10 +182,8 @@ public:
   public:\r
     TypeModifierContext(antlr4::ParserRuleContext *parent, size_t invokingState);\r
     virtual size_t getRuleIndex() const override;\r
-    antlr4::tree::TerminalNode *NUMBER();\r
+    antlr4::tree::TerminalNode *INT_LIT();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -207,8 +195,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     FuncContext *func();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -222,9 +208,8 @@ public:
     ParameterContext *parameter();\r
     BodyContext *body();\r
     TypeContext *type();\r
+    GenericDeclContext *genericDecl();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -237,8 +222,6 @@ public:
     std::vector<VarContext *> var();\r
     VarContext* var(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -251,8 +234,6 @@ public:
     std::vector<StmtContext *> stmt();\r
     StmtContext* stmt(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -263,11 +244,10 @@ public:
     StructDeclContext(antlr4::ParserRuleContext *parent, size_t invokingState);\r
     virtual size_t getRuleIndex() const override;\r
     StructNameContext *structName();\r
+    GenericDeclContext *genericDecl();\r
     std::vector<StructMemberContext *> structMember();\r
     StructMemberContext* structMember(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -280,8 +260,6 @@ public:
     StructVarContext *structVar();\r
     StructMethodContext *structMethod();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -293,8 +271,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     VarContext *var();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -306,13 +282,23 @@ public:
     virtual size_t getRuleIndex() const override;\r
     FuncContext *func();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
   StructMethodContext* structMethod();\r
 \r
+  class  GenericDeclContext : public antlr4::ParserRuleContext {\r
+  public:\r
+    GenericDeclContext(antlr4::ParserRuleContext *parent, size_t invokingState);\r
+    virtual size_t getRuleIndex() const override;\r
+    std::vector<TypeNameContext *> typeName();\r
+    TypeNameContext* typeName(size_t i);\r
+\r
+   \r
+  };\r
+\r
+  GenericDeclContext* genericDecl();\r
+\r
   class  StmtContext : public antlr4::ParserRuleContext {\r
   public:\r
     StmtContext(antlr4::ParserRuleContext *parent, size_t invokingState);\r
@@ -326,8 +312,6 @@ public:
     ReturnStmtContext *returnStmt();\r
     ExprContext *expr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -343,8 +327,6 @@ public:
     ElseIfStmtContext* elseIfStmt(size_t i);\r
     ElseStmtContext *elseStmt();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -357,8 +339,6 @@ public:
     ExprContext *expr();\r
     BodyContext *body();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -370,8 +350,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     BodyContext *body();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -384,8 +362,6 @@ public:
     IdentifierExprContext *identifierExpr();\r
     SwitchBodyContext *switchBody();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -398,8 +374,6 @@ public:
     std::vector<SwitchCaseContext *> switchCase();\r
     SwitchCaseContext* switchCase(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -412,8 +386,6 @@ public:
     ExprContext *expr();\r
     BodyContext *body();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -429,8 +401,6 @@ public:
     VarInitContext *varInit();\r
     AssignStmtContext *assignStmt();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -443,8 +413,6 @@ public:
     ExprContext *expr();\r
     BodyContext *body();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -457,8 +425,6 @@ public:
     IdentifierExprContext *identifierExpr();\r
     ExprContext *expr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -470,8 +436,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     ExprContext *expr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -488,8 +452,6 @@ public:
     AccessExprContext *accessExpr();\r
     OpExprContext *opExpr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -505,8 +467,6 @@ public:
     ParenExprContext *parenExpr();\r
     AccessExprContext *accessExpr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -520,8 +480,6 @@ public:
     IdentifierExprContext *identifierExpr();\r
     ParenExprContext *parenExpr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -535,8 +493,6 @@ public:
     std::vector<ExprContext *> expr();\r
     ExprContext* expr(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -551,8 +507,6 @@ public:
     PostfixOpContext *postfixOp();\r
     TernaryOpContext *ternaryOp();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -567,8 +521,6 @@ public:
     std::vector<Binary_opContext *> binary_op();\r
     Binary_opContext* binary_op(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -581,8 +533,6 @@ public:
     Prefix_opContext *prefix_op();\r
     NonOpExprContext *nonOpExpr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -595,8 +545,6 @@ public:
     NonOpExprContext *nonOpExpr();\r
     Postfix_opContext *postfix_op();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -610,8 +558,6 @@ public:
     std::vector<ExprContext *> expr();\r
     ExprContext* expr(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -623,8 +569,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     VarNameContext *varName();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -639,8 +583,6 @@ public:
     antlr4::tree::TerminalNode *STRING_LIT();\r
     antlr4::tree::TerminalNode *BOOL_LIT();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -654,8 +596,6 @@ public:
     std::vector<AccessSubExprContext *> accessSubExpr();\r
     AccessSubExprContext* accessSubExpr(size_t i);\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -668,8 +608,6 @@ public:
     AccessMemberContext *accessMember();\r
     AccessBracketsContext *accessBrackets();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -681,8 +619,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     IdentifierExprContext *identifierExpr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -694,8 +630,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     ExprContext *expr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -707,8 +641,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     ExprContext *expr();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -720,8 +652,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     antlr4::tree::TerminalNode *NAME();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -733,8 +663,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     antlr4::tree::TerminalNode *NAME();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -746,8 +674,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     antlr4::tree::TerminalNode *NAME();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -759,8 +685,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     antlr4::tree::TerminalNode *NAME();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -771,8 +695,6 @@ public:
     Postfix_opContext(antlr4::ParserRuleContext *parent, size_t invokingState);\r
     virtual size_t getRuleIndex() const override;\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -784,8 +706,6 @@ public:
     virtual size_t getRuleIndex() const override;\r
     Postfix_opContext *postfix_op();\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r
@@ -796,8 +716,6 @@ public:
     Binary_opContext(antlr4::ParserRuleContext *parent, size_t invokingState);\r
     virtual size_t getRuleIndex() const override;\r
 \r
-    virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;\r
-    virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;\r
    \r
   };\r
 \r