]> gitweb.ps.run Git - toc/blobdiff - gen/TocParser.h
generic grammar
[toc] / gen / TocParser.h
index d2bf208f5348f1762580063f120e2d202477f576..2482c29aaed7f42b1667669c34f934a4f9476660 100644 (file)
@@ -29,16 +29,16 @@ public:
     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
@@ -66,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
@@ -207,6 +208,7 @@ public:
     ParameterContext *parameter();\r
     BodyContext *body();\r
     TypeContext *type();\r
+    GenericDeclContext *genericDecl();\r
 \r
    \r
   };\r
@@ -242,6 +244,7 @@ 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
@@ -284,6 +287,18 @@ public:
 \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