From 591401829ebb87c8f039e8a373afc183abbfbb58 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:23:25 +0800 Subject: [PATCH 01/45] add cpp lexer Signed-off-by: wangshi --- .../java/antlr/cpp/CPP14CustomListener.java | 105 +++++ .../java/antlr/cpp/CPP14CustomVisitor.java | 50 +++ .../java/antlr/cpp/CPP14ErrorListener.java | 60 +++ .../src/main/java/antlr/cpp/CPP14Lexer.g4 | 398 ++++++++++++++++++ 4 files changed, 613 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14CustomListener.java create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14CustomVisitor.java create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ErrorListener.java create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.g4 diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14CustomListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14CustomListener.java new file mode 100644 index 00000000..fdb45467 --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14CustomListener.java @@ -0,0 +1,105 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; + +/** + *

类名:该类用于xxx

+ * description typescript custom visitor + * + * @author Administrator + * date 2025-02-28 + * @version 1.0 + * @since 2025-02-28 + */ +public class CPP14CustomListener extends CPP14ParserBaseListener { + @Override + public void enterAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx) { + super.enterAbstractDeclarator(ctx); + System.out.println("c/cpp struct: " + ctx.getText()); + } + + @Override + public void enterClassSpecifier(CPP14Parser.ClassSpecifierContext ctx) { + super.enterClassSpecifier(ctx); + System.out.println("c/cpp class: " + ctx.getText()); + } + + @Override + public void enterAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx) { + super.enterAttributeSpecifier(ctx); + System.out.println("c/cpp attribute: " + ctx.getText()); + } + + @Override + public void enterMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx) { + super.enterMemberdeclaration(ctx); + System.out.println("c/cpp Memberdeclaration: " + ctx.getText()); + } + + @Override + public void enterMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx) { + super.enterMemberDeclarator(ctx); + System.out.println("c/cpp member declarator: " + ctx.getText()); + } + + @Override + public void enterDeclaration(CPP14Parser.DeclarationContext ctx) { + super.enterDeclaration(ctx); + System.out.println("c/cpp declaration: " + ctx.getText()); + } + + @Override + public void enterFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx) { + super.enterFunctionDefinition(ctx); + System.out.println("c/cpp function: " + ctx.getText()); + } + + @Override + public void enterEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx) { + super.enterEnumeratorDefinition(ctx); + System.out.println("c/cpp enumerator definition: " + ctx.getText()); + } + + @Override + public void enterEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx) { + super.enterEnumSpecifier(ctx); + System.out.println("c/cpp enum: " + ctx.getText()); + } + + @Override + public void enterTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx) { + super.enterTypeSpecifier(ctx); + System.out.println("c/cpp type: " + ctx.getText()); + } + + @Override + public void enterTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx) { + super.enterTemplateDeclaration(ctx); + System.out.println("c/cpp template: " + ctx.getText()); + } + + @Override + public void enterAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx) { + super.enterAttributeDeclaration(ctx); + System.out.println("c/cpp attribute: " + ctx.getText()); + } + + @Override + public void exitTranslationUnit(CPP14Parser.TranslationUnitContext ctx) { + super.exitTranslationUnit(ctx); + System.out.println("c/cpp exit translation unit: " + ctx.getText()); + } +} diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14CustomVisitor.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14CustomVisitor.java new file mode 100644 index 00000000..06e046f3 --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14CustomVisitor.java @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; + +import java.util.ArrayList; +import java.util.List; + +/** + *

类名:该类用于xxx

+ * description typescript custom visitor + * + * @author Administrator + * date 2025-02-28 + * @version 1.0 + * @since 2025-02-28 + */ +public class CPP14CustomVisitor extends CPP14ParserBaseVisitor { + private List functionNames = new ArrayList<>(); + + public List getFunctionNames() { return functionNames; } + + @Override + public Void visitClassSpecifier(CPP14Parser.ClassSpecifierContext ctx) { + return super.visitClassSpecifier(ctx); + } + + @Override + public Void visitFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx) { + return super.visitFunctionDefinition(ctx); + } + + @Override + public Void visitFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx) { + return super.visitFunctionSpecifier(ctx); + } + +} diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ErrorListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ErrorListener.java new file mode 100644 index 00000000..f649a0bd --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ErrorListener.java @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; + +import org.antlr.v4.runtime.BaseErrorListener; +import org.antlr.v4.runtime.RecognitionException; +import org.antlr.v4.runtime.Recognizer; +import org.antlr.v4.runtime.Token; +import org.antlr.v4.runtime.misc.IntervalSet; + +import java.util.Locale; + +/** + *

类名:该类用于xxx

+ * description typescript error listener + * + * @author Administrator + * date 2025-02-28 + * @version 1.0 + * @since 2025-02-28 + */ +public class CPP14ErrorListener extends BaseErrorListener { + @Override + public void syntaxError(Recognizer recognizer, + Object offendingSymbol, + int line, + int charPositionInLine, + String msg, + RecognitionException e) { + System.err.println("syntax error"); + System.out.println("syntax error"); + // 输出错误位置和消息 + String errorHeader = String.format(Locale.ROOT, "语法错误@行%d:%d - ", line, charPositionInLine + 1); + String errorDetail = String.format("符号 '%s' 无效,预期: %s", + ((Token) offendingSymbol).getText(), + getExpectedTokens(recognizer, e)); + System.err.println(errorHeader + errorDetail + " | 错误详情: " + msg); + } + + private String getExpectedTokens(Recognizer recognizer, RecognitionException e) { + if (e == null) { + return "未知预期符号"; + } + IntervalSet expectedTokens = e.getExpectedTokens(); + return expectedTokens.toString(recognizer.getVocabulary()); + } +} \ No newline at end of file diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.g4 b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.g4 new file mode 100644 index 00000000..897f6aec --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.g4 @@ -0,0 +1,398 @@ +// $antlr-format alignTrailingComments true, columnLimit 150, maxEmptyLinesToKeep 1, reflowComments false, useTab false +// $antlr-format allowShortRulesOnASingleLine true, allowShortBlocksOnASingleLine true, minEmptyLines 0, alignSemicolons ownLine +// $antlr-format alignColons trailing, singleLineOverrulesHangingColon true, alignLexerCommands true, alignLabels true, alignTrailers true + +lexer grammar CPP14Lexer; + +IntegerLiteral: + DecimalLiteral Integersuffix? + | OctalLiteral Integersuffix? + | HexadecimalLiteral Integersuffix? + | BinaryLiteral Integersuffix? +; + +CharacterLiteral: ('u' | 'U' | 'L')? '\'' Cchar+ '\''; + +FloatingLiteral: + Fractionalconstant Exponentpart? Floatingsuffix? + | Digitsequence Exponentpart Floatingsuffix? +; + +StringLiteral: Encodingprefix? (Rawstring | '"' Schar* '"'); + +BooleanLiteral: False_ | True_; + +PointerLiteral: Nullptr; + +UserDefinedLiteral: + UserDefinedIntegerLiteral + | UserDefinedFloatingLiteral + | UserDefinedStringLiteral + | UserDefinedCharacterLiteral +; + +MultiLineMacro: '#' (~[\n]*? '\\' '\r'? '\n')+ ~ [\n]+ -> channel (HIDDEN); + +Directive: '#' ~ [\n]* -> channel (HIDDEN); +/*Keywords*/ + +Alignas: 'alignas'; + +Alignof: 'alignof'; + +Asm: 'asm'; + +Auto: 'auto'; + +Bool: 'bool'; + +Break: 'break'; + +Case: 'case'; + +Catch: 'catch'; + +Char: 'char'; + +Char16: 'char16_t'; + +Char32: 'char32_t'; + +Class: 'class'; + +Const: 'const'; + +Constexpr: 'constexpr'; + +Const_cast: 'const_cast'; + +Continue: 'continue'; + +Decltype: 'decltype'; + +Default: 'default'; + +Delete: 'delete'; + +Do: 'do'; + +Double: 'double'; + +Dynamic_cast: 'dynamic_cast'; + +Else: 'else'; + +Enum: 'enum'; + +Explicit: 'explicit'; + +Export: 'export'; + +Extern: 'extern'; + +//DO NOT RENAME - PYTHON NEEDS True and False +False_: 'false'; + +Final: 'final'; + +Float: 'float'; + +For: 'for'; + +Friend: 'friend'; + +Goto: 'goto'; + +If: 'if'; + +Inline: 'inline'; + +Int: 'int'; + +Long: 'long'; + +Mutable: 'mutable'; + +Namespace: 'namespace'; + +New: 'new'; + +Noexcept: 'noexcept'; + +Nullptr: 'nullptr'; + +Operator: 'operator'; + +Override: 'override'; + +Private: 'private'; + +Protected: 'protected'; + +Public: 'public'; + +Register: 'register'; + +Reinterpret_cast: 'reinterpret_cast'; + +Return: 'return'; + +Short: 'short'; + +Signed: 'signed'; + +Sizeof: 'sizeof'; + +Static: 'static'; + +Static_assert: 'static_assert'; + +Static_cast: 'static_cast'; + +Struct: 'struct'; + +Switch: 'switch'; + +Template: 'template'; + +This: 'this'; + +Thread_local: 'thread_local'; + +Throw: 'throw'; + +//DO NOT RENAME - PYTHON NEEDS True and False +True_: 'true'; + +Try: 'try'; + +Typedef: 'typedef'; + +Typeid_: 'typeid'; + +Typename_: 'typename'; + +Union: 'union'; + +Unsigned: 'unsigned'; + +Using: 'using'; + +Virtual: 'virtual'; + +Void: 'void'; + +Volatile: 'volatile'; + +Wchar: 'wchar_t'; + +While: 'while'; +/*Operators*/ + +LeftParen: '('; + +RightParen: ')'; + +LeftBracket: '['; + +RightBracket: ']'; + +LeftBrace: '{'; + +RightBrace: '}'; + +Plus: '+'; + +Minus: '-'; + +Star: '*'; + +Div: '/'; + +Mod: '%'; + +Caret: '^'; + +And: '&'; + +Or: '|'; + +Tilde: '~'; + +Not: '!' | 'not'; + +Assign: '='; + +Less: '<'; + +Greater: '>'; + +PlusAssign: '+='; + +MinusAssign: '-='; + +StarAssign: '*='; + +DivAssign: '/='; + +ModAssign: '%='; + +XorAssign: '^='; + +AndAssign: '&='; + +OrAssign: '|='; + +LeftShiftAssign: '<<='; + +RightShiftAssign: '>>='; + +Equal: '=='; + +NotEqual: '!='; + +LessEqual: '<='; + +GreaterEqual: '>='; + +AndAnd: '&&' | 'and'; + +OrOr: '||' | 'or'; + +PlusPlus: '++'; + +MinusMinus: '--'; + +Comma: ','; + +ArrowStar: '->*'; + +Arrow: '->'; + +Question: '?'; + +Colon: ':'; + +Doublecolon: '::'; + +Semi: ';'; + +Dot: '.'; + +DotStar: '.*'; + +Ellipsis: '...'; + +fragment Hexquad: HEXADECIMALDIGIT HEXADECIMALDIGIT HEXADECIMALDIGIT HEXADECIMALDIGIT; + +fragment Universalcharactername: '\\u' Hexquad | '\\U' Hexquad Hexquad; + +Identifier: + /* + Identifiernondigit | Identifier Identifiernondigit | Identifier DIGIT + */ Identifiernondigit (Identifiernondigit | DIGIT)* +; + +fragment Identifiernondigit: NONDIGIT | Universalcharactername; + +fragment NONDIGIT: [a-zA-Z_]; + +fragment DIGIT: [0-9]; + +DecimalLiteral: NONZERODIGIT ('\''? DIGIT)*; + +OctalLiteral: '0' ('\''? OCTALDIGIT)*; + +HexadecimalLiteral: ('0x' | '0X') HEXADECIMALDIGIT ( '\''? HEXADECIMALDIGIT)*; + +BinaryLiteral: ('0b' | '0B') BINARYDIGIT ('\''? BINARYDIGIT)*; + +fragment NONZERODIGIT: [1-9]; + +fragment OCTALDIGIT: [0-7]; + +fragment HEXADECIMALDIGIT: [0-9a-fA-F]; + +fragment BINARYDIGIT: [01]; + +Integersuffix: + Unsignedsuffix Longsuffix? + | Unsignedsuffix Longlongsuffix? + | Longsuffix Unsignedsuffix? + | Longlongsuffix Unsignedsuffix? +; + +fragment Unsignedsuffix: [uU]; + +fragment Longsuffix: [lL]; + +fragment Longlongsuffix: 'll' | 'LL'; + +fragment Cchar: ~ ['\\\r\n] | Escapesequence | Universalcharactername; + +fragment Escapesequence: Simpleescapesequence | Octalescapesequence | Hexadecimalescapesequence; + +fragment Simpleescapesequence: + '\\\'' + | '\\"' + | '\\?' + | '\\\\' + | '\\a' + | '\\b' + | '\\f' + | '\\n' + | '\\r' + | '\\' ('\r' '\n'? | '\n') + | '\\t' + | '\\v' +; + +fragment Octalescapesequence: + '\\' OCTALDIGIT + | '\\' OCTALDIGIT OCTALDIGIT + | '\\' OCTALDIGIT OCTALDIGIT OCTALDIGIT +; + +fragment Hexadecimalescapesequence: '\\x' HEXADECIMALDIGIT+; + +fragment Fractionalconstant: Digitsequence? '.' Digitsequence | Digitsequence '.'; + +fragment Exponentpart: 'e' SIGN? Digitsequence | 'E' SIGN? Digitsequence; + +fragment SIGN: [+-]; + +fragment Digitsequence: DIGIT ('\''? DIGIT)*; + +fragment Floatingsuffix: [flFL]; + +fragment Encodingprefix: 'u8' | 'u' | 'U' | 'L'; + +fragment Schar: ~ ["\\\r\n] | Escapesequence | Universalcharactername; + +fragment Rawstring: 'R"' ( '\\' ["()] | ~[\r\n (])*? '(' ~[)]*? ')' ( '\\' ["()] | ~[\r\n "])*? '"'; + +UserDefinedIntegerLiteral: + DecimalLiteral Udsuffix + | OctalLiteral Udsuffix + | HexadecimalLiteral Udsuffix + | BinaryLiteral Udsuffix +; + +UserDefinedFloatingLiteral: + Fractionalconstant Exponentpart? Udsuffix + | Digitsequence Exponentpart Udsuffix +; + +UserDefinedStringLiteral: StringLiteral Udsuffix; + +UserDefinedCharacterLiteral: CharacterLiteral Udsuffix; + +fragment Udsuffix: Identifier; + +Whitespace: [ \t]+ -> skip; + +Newline: ('\r' '\n'? | '\n') -> skip; + +BlockComment: '/*' .*? '*/' -> skip; + +LineComment: '//' ~ [\r\n]* -> skip; \ No newline at end of file -- Gitee From d8525cda9f5b94a6f5601dc856c494e0357f3a72 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:24:27 +0800 Subject: [PATCH 02/45] add cpp lexer Signed-off-by: wangshi --- .../src/main/java/antlr/cpp/CPP14Lexer.java | 1152 +++++++++++++++++ .../src/main/java/antlr/cpp/CPP14Lexer.tokens | 264 ++++ 2 files changed, 1416 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.java create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.tokens diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.java new file mode 100644 index 00000000..29da113e --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.java @@ -0,0 +1,1152 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; + +// Generated from ./CPP14Lexer.g4 by ANTLR 4.13.2 +import org.antlr.v4.runtime.Lexer; +import org.antlr.v4.runtime.CharStream; +import org.antlr.v4.runtime.*; +import org.antlr.v4.runtime.atn.*; +import org.antlr.v4.runtime.dfa.DFA; + +@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast", "CheckReturnValue", "this-escape"}) +public class CPP14Lexer extends Lexer { + static { RuntimeMetaData.checkVersion("4.13.2", RuntimeMetaData.VERSION); } + + protected static final DFA[] _decisionToDFA; + protected static final PredictionContextCache _sharedContextCache = + new PredictionContextCache(); + public static final int + IntegerLiteral=1, CharacterLiteral=2, FloatingLiteral=3, StringLiteral=4, + BooleanLiteral=5, PointerLiteral=6, UserDefinedLiteral=7, MultiLineMacro=8, + Directive=9, Alignas=10, Alignof=11, Asm=12, Auto=13, Bool=14, Break=15, + Case=16, Catch=17, Char=18, Char16=19, Char32=20, Class=21, Const=22, + Constexpr=23, Const_cast=24, Continue=25, Decltype=26, Default=27, Delete=28, + Do=29, Double=30, Dynamic_cast=31, Else=32, Enum=33, Explicit=34, Export=35, + Extern=36, False_=37, Final=38, Float=39, For=40, Friend=41, Goto=42, + If=43, Inline=44, Int=45, Long=46, Mutable=47, Namespace=48, New=49, Noexcept=50, + Nullptr=51, Operator=52, Override=53, Private=54, Protected=55, Public=56, + Register=57, Reinterpret_cast=58, Return=59, Short=60, Signed=61, Sizeof=62, + Static=63, Static_assert=64, Static_cast=65, Struct=66, Switch=67, Template=68, + This=69, Thread_local=70, Throw=71, True_=72, Try=73, Typedef=74, Typeid_=75, + Typename_=76, Union=77, Unsigned=78, Using=79, Virtual=80, Void=81, Volatile=82, + Wchar=83, While=84, LeftParen=85, RightParen=86, LeftBracket=87, RightBracket=88, + LeftBrace=89, RightBrace=90, Plus=91, Minus=92, Star=93, Div=94, Mod=95, + Caret=96, And=97, Or=98, Tilde=99, Not=100, Assign=101, Less=102, Greater=103, + PlusAssign=104, MinusAssign=105, StarAssign=106, DivAssign=107, ModAssign=108, + XorAssign=109, AndAssign=110, OrAssign=111, LeftShiftAssign=112, RightShiftAssign=113, + Equal=114, NotEqual=115, LessEqual=116, GreaterEqual=117, AndAnd=118, + OrOr=119, PlusPlus=120, MinusMinus=121, Comma=122, ArrowStar=123, Arrow=124, + Question=125, Colon=126, Doublecolon=127, Semi=128, Dot=129, DotStar=130, + Ellipsis=131, Identifier=132, DecimalLiteral=133, OctalLiteral=134, HexadecimalLiteral=135, + BinaryLiteral=136, Integersuffix=137, UserDefinedIntegerLiteral=138, UserDefinedFloatingLiteral=139, + UserDefinedStringLiteral=140, UserDefinedCharacterLiteral=141, Whitespace=142, + Newline=143, BlockComment=144, LineComment=145; + public static String[] channelNames = { + "DEFAULT_TOKEN_CHANNEL", "HIDDEN" + }; + + public static String[] modeNames = { + "DEFAULT_MODE" + }; + + private static String[] makeRuleNames() { + return new String[] { + "IntegerLiteral", "CharacterLiteral", "FloatingLiteral", "StringLiteral", + "BooleanLiteral", "PointerLiteral", "UserDefinedLiteral", "MultiLineMacro", + "Directive", "Alignas", "Alignof", "Asm", "Auto", "Bool", "Break", "Case", + "Catch", "Char", "Char16", "Char32", "Class", "Const", "Constexpr", "Const_cast", + "Continue", "Decltype", "Default", "Delete", "Do", "Double", "Dynamic_cast", + "Else", "Enum", "Explicit", "Export", "Extern", "False_", "Final", "Float", + "For", "Friend", "Goto", "If", "Inline", "Int", "Long", "Mutable", "Namespace", + "New", "Noexcept", "Nullptr", "Operator", "Override", "Private", "Protected", + "Public", "Register", "Reinterpret_cast", "Return", "Short", "Signed", + "Sizeof", "Static", "Static_assert", "Static_cast", "Struct", "Switch", + "Template", "This", "Thread_local", "Throw", "True_", "Try", "Typedef", + "Typeid_", "Typename_", "Union", "Unsigned", "Using", "Virtual", "Void", + "Volatile", "Wchar", "While", "LeftParen", "RightParen", "LeftBracket", + "RightBracket", "LeftBrace", "RightBrace", "Plus", "Minus", "Star", "Div", + "Mod", "Caret", "And", "Or", "Tilde", "Not", "Assign", "Less", "Greater", + "PlusAssign", "MinusAssign", "StarAssign", "DivAssign", "ModAssign", + "XorAssign", "AndAssign", "OrAssign", "LeftShiftAssign", "RightShiftAssign", + "Equal", "NotEqual", "LessEqual", "GreaterEqual", "AndAnd", "OrOr", "PlusPlus", + "MinusMinus", "Comma", "ArrowStar", "Arrow", "Question", "Colon", "Doublecolon", + "Semi", "Dot", "DotStar", "Ellipsis", "Hexquad", "Universalcharactername", + "Identifier", "Identifiernondigit", "NONDIGIT", "DIGIT", "DecimalLiteral", + "OctalLiteral", "HexadecimalLiteral", "BinaryLiteral", "NONZERODIGIT", + "OCTALDIGIT", "HEXADECIMALDIGIT", "BINARYDIGIT", "Integersuffix", "Unsignedsuffix", + "Longsuffix", "Longlongsuffix", "Cchar", "Escapesequence", "Simpleescapesequence", + "Octalescapesequence", "Hexadecimalescapesequence", "Fractionalconstant", + "Exponentpart", "SIGN", "Digitsequence", "Floatingsuffix", "Encodingprefix", + "Schar", "Rawstring", "UserDefinedIntegerLiteral", "UserDefinedFloatingLiteral", + "UserDefinedStringLiteral", "UserDefinedCharacterLiteral", "Udsuffix", + "Whitespace", "Newline", "BlockComment", "LineComment" + }; + } + public static final String[] ruleNames = makeRuleNames(); + + private static String[] makeLiteralNames() { + return new String[] { + null, null, null, null, null, null, null, null, null, null, "'alignas'", + "'alignof'", "'asm'", "'auto'", "'bool'", "'break'", "'case'", "'catch'", + "'char'", "'char16_t'", "'char32_t'", "'class'", "'const'", "'constexpr'", + "'const_cast'", "'continue'", "'decltype'", "'default'", "'delete'", + "'do'", "'double'", "'dynamic_cast'", "'else'", "'enum'", "'explicit'", + "'export'", "'extern'", "'false'", "'final'", "'float'", "'for'", "'friend'", + "'goto'", "'if'", "'inline'", "'int'", "'long'", "'mutable'", "'namespace'", + "'new'", "'noexcept'", "'nullptr'", "'operator'", "'override'", "'private'", + "'protected'", "'public'", "'register'", "'reinterpret_cast'", "'return'", + "'short'", "'signed'", "'sizeof'", "'static'", "'static_assert'", "'static_cast'", + "'struct'", "'switch'", "'template'", "'this'", "'thread_local'", "'throw'", + "'true'", "'try'", "'typedef'", "'typeid'", "'typename'", "'union'", + "'unsigned'", "'using'", "'virtual'", "'void'", "'volatile'", "'wchar_t'", + "'while'", "'('", "')'", "'['", "']'", "'{'", "'}'", "'+'", "'-'", "'*'", + "'/'", "'%'", "'^'", "'&'", "'|'", "'~'", null, "'='", "'<'", "'>'", + "'+='", "'-='", "'*='", "'/='", "'%='", "'^='", "'&='", "'|='", "'<<='", + "'>>='", "'=='", "'!='", "'<='", "'>='", null, null, "'++'", "'--'", + "','", "'->*'", "'->'", "'?'", "':'", "'::'", "';'", "'.'", "'.*'", "'...'" + }; + } + private static final String[] _LITERAL_NAMES = makeLiteralNames(); + private static String[] makeSymbolicNames() { + return new String[] { + null, "IntegerLiteral", "CharacterLiteral", "FloatingLiteral", "StringLiteral", + "BooleanLiteral", "PointerLiteral", "UserDefinedLiteral", "MultiLineMacro", + "Directive", "Alignas", "Alignof", "Asm", "Auto", "Bool", "Break", "Case", + "Catch", "Char", "Char16", "Char32", "Class", "Const", "Constexpr", "Const_cast", + "Continue", "Decltype", "Default", "Delete", "Do", "Double", "Dynamic_cast", + "Else", "Enum", "Explicit", "Export", "Extern", "False_", "Final", "Float", + "For", "Friend", "Goto", "If", "Inline", "Int", "Long", "Mutable", "Namespace", + "New", "Noexcept", "Nullptr", "Operator", "Override", "Private", "Protected", + "Public", "Register", "Reinterpret_cast", "Return", "Short", "Signed", + "Sizeof", "Static", "Static_assert", "Static_cast", "Struct", "Switch", + "Template", "This", "Thread_local", "Throw", "True_", "Try", "Typedef", + "Typeid_", "Typename_", "Union", "Unsigned", "Using", "Virtual", "Void", + "Volatile", "Wchar", "While", "LeftParen", "RightParen", "LeftBracket", + "RightBracket", "LeftBrace", "RightBrace", "Plus", "Minus", "Star", "Div", + "Mod", "Caret", "And", "Or", "Tilde", "Not", "Assign", "Less", "Greater", + "PlusAssign", "MinusAssign", "StarAssign", "DivAssign", "ModAssign", + "XorAssign", "AndAssign", "OrAssign", "LeftShiftAssign", "RightShiftAssign", + "Equal", "NotEqual", "LessEqual", "GreaterEqual", "AndAnd", "OrOr", "PlusPlus", + "MinusMinus", "Comma", "ArrowStar", "Arrow", "Question", "Colon", "Doublecolon", + "Semi", "Dot", "DotStar", "Ellipsis", "Identifier", "DecimalLiteral", + "OctalLiteral", "HexadecimalLiteral", "BinaryLiteral", "Integersuffix", + "UserDefinedIntegerLiteral", "UserDefinedFloatingLiteral", "UserDefinedStringLiteral", + "UserDefinedCharacterLiteral", "Whitespace", "Newline", "BlockComment", + "LineComment" + }; + } + private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames(); + public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); + + /** + * @deprecated Use {@link #VOCABULARY} instead. + */ + @Deprecated + public static final String[] tokenNames; + static { + tokenNames = new String[_SYMBOLIC_NAMES.length]; + for (int i = 0; i < tokenNames.length; i++) { + tokenNames[i] = VOCABULARY.getLiteralName(i); + if (tokenNames[i] == null) { + tokenNames[i] = VOCABULARY.getSymbolicName(i); + } + + if (tokenNames[i] == null) { + tokenNames[i] = ""; + } + } + } + + @Override + @Deprecated + public String[] getTokenNames() { + return tokenNames; + } + + @Override + + public Vocabulary getVocabulary() { + return VOCABULARY; + } + + + public CPP14Lexer(CharStream input) { + super(input); + _interp = new LexerATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); + } + + @Override + public String getGrammarFileName() { return "CPP14Lexer.g4"; } + + @Override + public String[] getRuleNames() { return ruleNames; } + + @Override + public String getSerializedATN() { return _serializedATN; } + + @Override + public String[] getChannelNames() { return channelNames; } + + @Override + public String[] getModeNames() { return modeNames; } + + @Override + public ATN getATN() { return _ATN; } + + public static final String _serializedATN = + "\u0004\u0000\u0091\u05b4\u0006\uffff\uffff\u0002\u0000\u0007\u0000\u0002"+ + "\u0001\u0007\u0001\u0002\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002"+ + "\u0004\u0007\u0004\u0002\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002"+ + "\u0007\u0007\u0007\u0002\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002"+ + "\u000b\u0007\u000b\u0002\f\u0007\f\u0002\r\u0007\r\u0002\u000e\u0007\u000e"+ + "\u0002\u000f\u0007\u000f\u0002\u0010\u0007\u0010\u0002\u0011\u0007\u0011"+ + "\u0002\u0012\u0007\u0012\u0002\u0013\u0007\u0013\u0002\u0014\u0007\u0014"+ + "\u0002\u0015\u0007\u0015\u0002\u0016\u0007\u0016\u0002\u0017\u0007\u0017"+ + "\u0002\u0018\u0007\u0018\u0002\u0019\u0007\u0019\u0002\u001a\u0007\u001a"+ + "\u0002\u001b\u0007\u001b\u0002\u001c\u0007\u001c\u0002\u001d\u0007\u001d"+ + "\u0002\u001e\u0007\u001e\u0002\u001f\u0007\u001f\u0002 \u0007 \u0002!"+ + "\u0007!\u0002\"\u0007\"\u0002#\u0007#\u0002$\u0007$\u0002%\u0007%\u0002"+ + "&\u0007&\u0002\'\u0007\'\u0002(\u0007(\u0002)\u0007)\u0002*\u0007*\u0002"+ + "+\u0007+\u0002,\u0007,\u0002-\u0007-\u0002.\u0007.\u0002/\u0007/\u0002"+ + "0\u00070\u00021\u00071\u00022\u00072\u00023\u00073\u00024\u00074\u0002"+ + "5\u00075\u00026\u00076\u00027\u00077\u00028\u00078\u00029\u00079\u0002"+ + ":\u0007:\u0002;\u0007;\u0002<\u0007<\u0002=\u0007=\u0002>\u0007>\u0002"+ + "?\u0007?\u0002@\u0007@\u0002A\u0007A\u0002B\u0007B\u0002C\u0007C\u0002"+ + "D\u0007D\u0002E\u0007E\u0002F\u0007F\u0002G\u0007G\u0002H\u0007H\u0002"+ + "I\u0007I\u0002J\u0007J\u0002K\u0007K\u0002L\u0007L\u0002M\u0007M\u0002"+ + "N\u0007N\u0002O\u0007O\u0002P\u0007P\u0002Q\u0007Q\u0002R\u0007R\u0002"+ + "S\u0007S\u0002T\u0007T\u0002U\u0007U\u0002V\u0007V\u0002W\u0007W\u0002"+ + "X\u0007X\u0002Y\u0007Y\u0002Z\u0007Z\u0002[\u0007[\u0002\\\u0007\\\u0002"+ + "]\u0007]\u0002^\u0007^\u0002_\u0007_\u0002`\u0007`\u0002a\u0007a\u0002"+ + "b\u0007b\u0002c\u0007c\u0002d\u0007d\u0002e\u0007e\u0002f\u0007f\u0002"+ + "g\u0007g\u0002h\u0007h\u0002i\u0007i\u0002j\u0007j\u0002k\u0007k\u0002"+ + "l\u0007l\u0002m\u0007m\u0002n\u0007n\u0002o\u0007o\u0002p\u0007p\u0002"+ + "q\u0007q\u0002r\u0007r\u0002s\u0007s\u0002t\u0007t\u0002u\u0007u\u0002"+ + "v\u0007v\u0002w\u0007w\u0002x\u0007x\u0002y\u0007y\u0002z\u0007z\u0002"+ + "{\u0007{\u0002|\u0007|\u0002}\u0007}\u0002~\u0007~\u0002\u007f\u0007\u007f"+ + "\u0002\u0080\u0007\u0080\u0002\u0081\u0007\u0081\u0002\u0082\u0007\u0082"+ + "\u0002\u0083\u0007\u0083\u0002\u0084\u0007\u0084\u0002\u0085\u0007\u0085"+ + "\u0002\u0086\u0007\u0086\u0002\u0087\u0007\u0087\u0002\u0088\u0007\u0088"+ + "\u0002\u0089\u0007\u0089\u0002\u008a\u0007\u008a\u0002\u008b\u0007\u008b"+ + "\u0002\u008c\u0007\u008c\u0002\u008d\u0007\u008d\u0002\u008e\u0007\u008e"+ + "\u0002\u008f\u0007\u008f\u0002\u0090\u0007\u0090\u0002\u0091\u0007\u0091"+ + "\u0002\u0092\u0007\u0092\u0002\u0093\u0007\u0093\u0002\u0094\u0007\u0094"+ + "\u0002\u0095\u0007\u0095\u0002\u0096\u0007\u0096\u0002\u0097\u0007\u0097"+ + "\u0002\u0098\u0007\u0098\u0002\u0099\u0007\u0099\u0002\u009a\u0007\u009a"+ + "\u0002\u009b\u0007\u009b\u0002\u009c\u0007\u009c\u0002\u009d\u0007\u009d"+ + "\u0002\u009e\u0007\u009e\u0002\u009f\u0007\u009f\u0002\u00a0\u0007\u00a0"+ + "\u0002\u00a1\u0007\u00a1\u0002\u00a2\u0007\u00a2\u0002\u00a3\u0007\u00a3"+ + "\u0002\u00a4\u0007\u00a4\u0002\u00a5\u0007\u00a5\u0002\u00a6\u0007\u00a6"+ + "\u0002\u00a7\u0007\u00a7\u0002\u00a8\u0007\u00a8\u0002\u00a9\u0007\u00a9"+ + "\u0002\u00aa\u0007\u00aa\u0001\u0000\u0001\u0000\u0003\u0000\u015a\b\u0000"+ + "\u0001\u0000\u0001\u0000\u0003\u0000\u015e\b\u0000\u0001\u0000\u0001\u0000"+ + "\u0003\u0000\u0162\b\u0000\u0001\u0000\u0001\u0000\u0003\u0000\u0166\b"+ + "\u0000\u0003\u0000\u0168\b\u0000\u0001\u0001\u0003\u0001\u016b\b\u0001"+ + "\u0001\u0001\u0001\u0001\u0004\u0001\u016f\b\u0001\u000b\u0001\f\u0001"+ + "\u0170\u0001\u0001\u0001\u0001\u0001\u0002\u0001\u0002\u0003\u0002\u0177"+ + "\b\u0002\u0001\u0002\u0003\u0002\u017a\b\u0002\u0001\u0002\u0001\u0002"+ + "\u0001\u0002\u0003\u0002\u017f\b\u0002\u0003\u0002\u0181\b\u0002\u0001"+ + "\u0003\u0003\u0003\u0184\b\u0003\u0001\u0003\u0001\u0003\u0001\u0003\u0005"+ + "\u0003\u0189\b\u0003\n\u0003\f\u0003\u018c\t\u0003\u0001\u0003\u0003\u0003"+ + "\u018f\b\u0003\u0001\u0004\u0001\u0004\u0003\u0004\u0193\b\u0004\u0001"+ + "\u0005\u0001\u0005\u0001\u0006\u0001\u0006\u0001\u0006\u0001\u0006\u0003"+ + "\u0006\u019b\b\u0006\u0001\u0007\u0001\u0007\u0005\u0007\u019f\b\u0007"+ + "\n\u0007\f\u0007\u01a2\t\u0007\u0001\u0007\u0001\u0007\u0003\u0007\u01a6"+ + "\b\u0007\u0001\u0007\u0004\u0007\u01a9\b\u0007\u000b\u0007\f\u0007\u01aa"+ + "\u0001\u0007\u0004\u0007\u01ae\b\u0007\u000b\u0007\f\u0007\u01af\u0001"+ + "\u0007\u0001\u0007\u0001\b\u0001\b\u0005\b\u01b6\b\b\n\b\f\b\u01b9\t\b"+ + "\u0001\b\u0001\b\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001"+ + "\t\u0001\t\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001"+ + "\n\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\f\u0001\f\u0001"+ + "\f\u0001\f\u0001\f\u0001\r\u0001\r\u0001\r\u0001\r\u0001\r\u0001\u000e"+ + "\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000f"+ + "\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u0010\u0001\u0010"+ + "\u0001\u0010\u0001\u0010\u0001\u0010\u0001\u0010\u0001\u0011\u0001\u0011"+ + "\u0001\u0011\u0001\u0011\u0001\u0011\u0001\u0012\u0001\u0012\u0001\u0012"+ + "\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012"+ + "\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013"+ + "\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0014\u0001\u0014\u0001\u0014"+ + "\u0001\u0014\u0001\u0014\u0001\u0014\u0001\u0015\u0001\u0015\u0001\u0015"+ + "\u0001\u0015\u0001\u0015\u0001\u0015\u0001\u0016\u0001\u0016\u0001\u0016"+ + "\u0001\u0016\u0001\u0016\u0001\u0016\u0001\u0016\u0001\u0016\u0001\u0016"+ + "\u0001\u0016\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017"+ + "\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017"+ + "\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0018"+ + "\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0019\u0001\u0019\u0001\u0019"+ + "\u0001\u0019\u0001\u0019\u0001\u0019\u0001\u0019\u0001\u0019\u0001\u0019"+ + "\u0001\u001a\u0001\u001a\u0001\u001a\u0001\u001a\u0001\u001a\u0001\u001a"+ + "\u0001\u001a\u0001\u001a\u0001\u001b\u0001\u001b\u0001\u001b\u0001\u001b"+ + "\u0001\u001b\u0001\u001b\u0001\u001b\u0001\u001c\u0001\u001c\u0001\u001c"+ + "\u0001\u001d\u0001\u001d\u0001\u001d\u0001\u001d\u0001\u001d\u0001\u001d"+ + "\u0001\u001d\u0001\u001e\u0001\u001e\u0001\u001e\u0001\u001e\u0001\u001e"+ + "\u0001\u001e\u0001\u001e\u0001\u001e\u0001\u001e\u0001\u001e\u0001\u001e"+ + "\u0001\u001e\u0001\u001e\u0001\u001f\u0001\u001f\u0001\u001f\u0001\u001f"+ + "\u0001\u001f\u0001 \u0001 \u0001 \u0001 \u0001 \u0001!\u0001!\u0001!\u0001"+ + "!\u0001!\u0001!\u0001!\u0001!\u0001!\u0001\"\u0001\"\u0001\"\u0001\"\u0001"+ + "\"\u0001\"\u0001\"\u0001#\u0001#\u0001#\u0001#\u0001#\u0001#\u0001#\u0001"+ + "$\u0001$\u0001$\u0001$\u0001$\u0001$\u0001%\u0001%\u0001%\u0001%\u0001"+ + "%\u0001%\u0001&\u0001&\u0001&\u0001&\u0001&\u0001&\u0001\'\u0001\'\u0001"+ + "\'\u0001\'\u0001(\u0001(\u0001(\u0001(\u0001(\u0001(\u0001(\u0001)\u0001"+ + ")\u0001)\u0001)\u0001)\u0001*\u0001*\u0001*\u0001+\u0001+\u0001+\u0001"+ + "+\u0001+\u0001+\u0001+\u0001,\u0001,\u0001,\u0001,\u0001-\u0001-\u0001"+ + "-\u0001-\u0001-\u0001.\u0001.\u0001.\u0001.\u0001.\u0001.\u0001.\u0001"+ + ".\u0001/\u0001/\u0001/\u0001/\u0001/\u0001/\u0001/\u0001/\u0001/\u0001"+ + "/\u00010\u00010\u00010\u00010\u00011\u00011\u00011\u00011\u00011\u0001"+ + "1\u00011\u00011\u00011\u00012\u00012\u00012\u00012\u00012\u00012\u0001"+ + "2\u00012\u00013\u00013\u00013\u00013\u00013\u00013\u00013\u00013\u0001"+ + "3\u00014\u00014\u00014\u00014\u00014\u00014\u00014\u00014\u00014\u0001"+ + "5\u00015\u00015\u00015\u00015\u00015\u00015\u00015\u00016\u00016\u0001"+ + "6\u00016\u00016\u00016\u00016\u00016\u00016\u00016\u00017\u00017\u0001"+ + "7\u00017\u00017\u00017\u00017\u00018\u00018\u00018\u00018\u00018\u0001"+ + "8\u00018\u00018\u00018\u00019\u00019\u00019\u00019\u00019\u00019\u0001"+ + "9\u00019\u00019\u00019\u00019\u00019\u00019\u00019\u00019\u00019\u0001"+ + "9\u0001:\u0001:\u0001:\u0001:\u0001:\u0001:\u0001:\u0001;\u0001;\u0001"+ + ";\u0001;\u0001;\u0001;\u0001<\u0001<\u0001<\u0001<\u0001<\u0001<\u0001"+ + "<\u0001=\u0001=\u0001=\u0001=\u0001=\u0001=\u0001=\u0001>\u0001>\u0001"+ + ">\u0001>\u0001>\u0001>\u0001>\u0001?\u0001?\u0001?\u0001?\u0001?\u0001"+ + "?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001?\u0001@\u0001"+ + "@\u0001@\u0001@\u0001@\u0001@\u0001@\u0001@\u0001@\u0001@\u0001@\u0001"+ + "@\u0001A\u0001A\u0001A\u0001A\u0001A\u0001A\u0001A\u0001B\u0001B\u0001"+ + "B\u0001B\u0001B\u0001B\u0001B\u0001C\u0001C\u0001C\u0001C\u0001C\u0001"+ + "C\u0001C\u0001C\u0001C\u0001D\u0001D\u0001D\u0001D\u0001D\u0001E\u0001"+ + "E\u0001E\u0001E\u0001E\u0001E\u0001E\u0001E\u0001E\u0001E\u0001E\u0001"+ + "E\u0001E\u0001F\u0001F\u0001F\u0001F\u0001F\u0001F\u0001G\u0001G\u0001"+ + "G\u0001G\u0001G\u0001H\u0001H\u0001H\u0001H\u0001I\u0001I\u0001I\u0001"+ + "I\u0001I\u0001I\u0001I\u0001I\u0001J\u0001J\u0001J\u0001J\u0001J\u0001"+ + "J\u0001J\u0001K\u0001K\u0001K\u0001K\u0001K\u0001K\u0001K\u0001K\u0001"+ + "K\u0001L\u0001L\u0001L\u0001L\u0001L\u0001L\u0001M\u0001M\u0001M\u0001"+ + "M\u0001M\u0001M\u0001M\u0001M\u0001M\u0001N\u0001N\u0001N\u0001N\u0001"+ + "N\u0001N\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001"+ + "P\u0001P\u0001P\u0001P\u0001P\u0001Q\u0001Q\u0001Q\u0001Q\u0001Q\u0001"+ + "Q\u0001Q\u0001Q\u0001Q\u0001R\u0001R\u0001R\u0001R\u0001R\u0001R\u0001"+ + "R\u0001R\u0001S\u0001S\u0001S\u0001S\u0001S\u0001S\u0001T\u0001T\u0001"+ + "U\u0001U\u0001V\u0001V\u0001W\u0001W\u0001X\u0001X\u0001Y\u0001Y\u0001"+ + "Z\u0001Z\u0001[\u0001[\u0001\\\u0001\\\u0001]\u0001]\u0001^\u0001^\u0001"+ + "_\u0001_\u0001`\u0001`\u0001a\u0001a\u0001b\u0001b\u0001c\u0001c\u0001"+ + "c\u0001c\u0003c\u0405\bc\u0001d\u0001d\u0001e\u0001e\u0001f\u0001f\u0001"+ + "g\u0001g\u0001g\u0001h\u0001h\u0001h\u0001i\u0001i\u0001i\u0001j\u0001"+ + "j\u0001j\u0001k\u0001k\u0001k\u0001l\u0001l\u0001l\u0001m\u0001m\u0001"+ + "m\u0001n\u0001n\u0001n\u0001o\u0001o\u0001o\u0001o\u0001p\u0001p\u0001"+ + "p\u0001p\u0001q\u0001q\u0001q\u0001r\u0001r\u0001r\u0001s\u0001s\u0001"+ + "s\u0001t\u0001t\u0001t\u0001u\u0001u\u0001u\u0001u\u0001u\u0003u\u043e"+ + "\bu\u0001v\u0001v\u0001v\u0001v\u0003v\u0444\bv\u0001w\u0001w\u0001w\u0001"+ + "x\u0001x\u0001x\u0001y\u0001y\u0001z\u0001z\u0001z\u0001z\u0001{\u0001"+ + "{\u0001{\u0001|\u0001|\u0001}\u0001}\u0001~\u0001~\u0001~\u0001\u007f"+ + "\u0001\u007f\u0001\u0080\u0001\u0080\u0001\u0081\u0001\u0081\u0001\u0081"+ + "\u0001\u0082\u0001\u0082\u0001\u0082\u0001\u0082\u0001\u0083\u0001\u0083"+ + "\u0001\u0083\u0001\u0083\u0001\u0083\u0001\u0084\u0001\u0084\u0001\u0084"+ + "\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084"+ + "\u0001\u0084\u0003\u0084\u0476\b\u0084\u0001\u0085\u0001\u0085\u0001\u0085"+ + "\u0005\u0085\u047b\b\u0085\n\u0085\f\u0085\u047e\t\u0085\u0001\u0086\u0001"+ + "\u0086\u0003\u0086\u0482\b\u0086\u0001\u0087\u0001\u0087\u0001\u0088\u0001"+ + "\u0088\u0001\u0089\u0001\u0089\u0003\u0089\u048a\b\u0089\u0001\u0089\u0005"+ + "\u0089\u048d\b\u0089\n\u0089\f\u0089\u0490\t\u0089\u0001\u008a\u0001\u008a"+ + "\u0003\u008a\u0494\b\u008a\u0001\u008a\u0005\u008a\u0497\b\u008a\n\u008a"+ + "\f\u008a\u049a\t\u008a\u0001\u008b\u0001\u008b\u0001\u008b\u0001\u008b"+ + "\u0003\u008b\u04a0\b\u008b\u0001\u008b\u0001\u008b\u0003\u008b\u04a4\b"+ + "\u008b\u0001\u008b\u0005\u008b\u04a7\b\u008b\n\u008b\f\u008b\u04aa\t\u008b"+ + "\u0001\u008c\u0001\u008c\u0001\u008c\u0001\u008c\u0003\u008c\u04b0\b\u008c"+ + "\u0001\u008c\u0001\u008c\u0003\u008c\u04b4\b\u008c\u0001\u008c\u0005\u008c"+ + "\u04b7\b\u008c\n\u008c\f\u008c\u04ba\t\u008c\u0001\u008d\u0001\u008d\u0001"+ + "\u008e\u0001\u008e\u0001\u008f\u0001\u008f\u0001\u0090\u0001\u0090\u0001"+ + "\u0091\u0001\u0091\u0003\u0091\u04c6\b\u0091\u0001\u0091\u0001\u0091\u0003"+ + "\u0091\u04ca\b\u0091\u0001\u0091\u0001\u0091\u0003\u0091\u04ce\b\u0091"+ + "\u0001\u0091\u0001\u0091\u0003\u0091\u04d2\b\u0091\u0003\u0091\u04d4\b"+ + "\u0091\u0001\u0092\u0001\u0092\u0001\u0093\u0001\u0093\u0001\u0094\u0001"+ + "\u0094\u0001\u0094\u0001\u0094\u0003\u0094\u04de\b\u0094\u0001\u0095\u0001"+ + "\u0095\u0001\u0095\u0003\u0095\u04e3\b\u0095\u0001\u0096\u0001\u0096\u0001"+ + "\u0096\u0003\u0096\u04e8\b\u0096\u0001\u0097\u0001\u0097\u0001\u0097\u0001"+ + "\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001"+ + "\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001"+ + "\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0003"+ + "\u0097\u04ff\b\u0097\u0001\u0097\u0003\u0097\u0502\b\u0097\u0001\u0097"+ + "\u0001\u0097\u0001\u0097\u0001\u0097\u0003\u0097\u0508\b\u0097\u0001\u0098"+ + "\u0001\u0098\u0001\u0098\u0001\u0098\u0001\u0098\u0001\u0098\u0001\u0098"+ + "\u0001\u0098\u0001\u0098\u0001\u0098\u0001\u0098\u0003\u0098\u0515\b\u0098"+ + "\u0001\u0099\u0001\u0099\u0001\u0099\u0001\u0099\u0004\u0099\u051b\b\u0099"+ + "\u000b\u0099\f\u0099\u051c\u0001\u009a\u0003\u009a\u0520\b\u009a\u0001"+ + "\u009a\u0001\u009a\u0001\u009a\u0001\u009a\u0001\u009a\u0003\u009a\u0527"+ + "\b\u009a\u0001\u009b\u0001\u009b\u0003\u009b\u052b\b\u009b\u0001\u009b"+ + "\u0001\u009b\u0001\u009b\u0003\u009b\u0530\b\u009b\u0001\u009b\u0003\u009b"+ + "\u0533\b\u009b\u0001\u009c\u0001\u009c\u0001\u009d\u0001\u009d\u0003\u009d"+ + "\u0539\b\u009d\u0001\u009d\u0005\u009d\u053c\b\u009d\n\u009d\f\u009d\u053f"+ + "\t\u009d\u0001\u009e\u0001\u009e\u0001\u009f\u0001\u009f\u0001\u009f\u0003"+ + "\u009f\u0546\b\u009f\u0001\u00a0\u0001\u00a0\u0001\u00a0\u0003\u00a0\u054b"+ + "\b\u00a0\u0001\u00a1\u0001\u00a1\u0001\u00a1\u0001\u00a1\u0001\u00a1\u0001"+ + "\u00a1\u0005\u00a1\u0553\b\u00a1\n\u00a1\f\u00a1\u0556\t\u00a1\u0001\u00a1"+ + "\u0001\u00a1\u0005\u00a1\u055a\b\u00a1\n\u00a1\f\u00a1\u055d\t\u00a1\u0001"+ + "\u00a1\u0001\u00a1\u0001\u00a1\u0001\u00a1\u0005\u00a1\u0563\b\u00a1\n"+ + "\u00a1\f\u00a1\u0566\t\u00a1\u0001\u00a1\u0001\u00a1\u0001\u00a2\u0001"+ + "\u00a2\u0001\u00a2\u0001\u00a2\u0001\u00a2\u0001\u00a2\u0001\u00a2\u0001"+ + "\u00a2\u0001\u00a2\u0001\u00a2\u0001\u00a2\u0001\u00a2\u0003\u00a2\u0576"+ + "\b\u00a2\u0001\u00a3\u0001\u00a3\u0003\u00a3\u057a\b\u00a3\u0001\u00a3"+ + "\u0001\u00a3\u0001\u00a3\u0001\u00a3\u0001\u00a3\u0001\u00a3\u0003\u00a3"+ + "\u0582\b\u00a3\u0001\u00a4\u0001\u00a4\u0001\u00a4\u0001\u00a5\u0001\u00a5"+ + "\u0001\u00a5\u0001\u00a6\u0001\u00a6\u0001\u00a7\u0004\u00a7\u058d\b\u00a7"+ + "\u000b\u00a7\f\u00a7\u058e\u0001\u00a7\u0001\u00a7\u0001\u00a8\u0001\u00a8"+ + "\u0003\u00a8\u0595\b\u00a8\u0001\u00a8\u0003\u00a8\u0598\b\u00a8\u0001"+ + "\u00a8\u0001\u00a8\u0001\u00a9\u0001\u00a9\u0001\u00a9\u0001\u00a9\u0005"+ + "\u00a9\u05a0\b\u00a9\n\u00a9\f\u00a9\u05a3\t\u00a9\u0001\u00a9\u0001\u00a9"+ + "\u0001\u00a9\u0001\u00a9\u0001\u00a9\u0001\u00aa\u0001\u00aa\u0001\u00aa"+ + "\u0001\u00aa\u0005\u00aa\u05ae\b\u00aa\n\u00aa\f\u00aa\u05b1\t\u00aa\u0001"+ + "\u00aa\u0001\u00aa\u0005\u01a0\u0554\u055b\u0564\u05a1\u0000\u00ab\u0001"+ + "\u0001\u0003\u0002\u0005\u0003\u0007\u0004\t\u0005\u000b\u0006\r\u0007"+ + "\u000f\b\u0011\t\u0013\n\u0015\u000b\u0017\f\u0019\r\u001b\u000e\u001d"+ + "\u000f\u001f\u0010!\u0011#\u0012%\u0013\'\u0014)\u0015+\u0016-\u0017/"+ + "\u00181\u00193\u001a5\u001b7\u001c9\u001d;\u001e=\u001f? A!C\"E#G$I%K"+ + "&M\'O(Q)S*U+W,Y-[.]/_0a1c2e3g4i5k6m7o8q9s:u;w}?\u007f@\u0081A\u0083"+ + "B\u0085C\u0087D\u0089E\u008bF\u008dG\u008fH\u0091I\u0093J\u0095K\u0097"+ + "L\u0099M\u009bN\u009dO\u009fP\u00a1Q\u00a3R\u00a5S\u00a7T\u00a9U\u00ab"+ + "V\u00adW\u00afX\u00b1Y\u00b3Z\u00b5[\u00b7\\\u00b9]\u00bb^\u00bd_\u00bf"+ + "`\u00c1a\u00c3b\u00c5c\u00c7d\u00c9e\u00cbf\u00cdg\u00cfh\u00d1i\u00d3"+ + "j\u00d5k\u00d7l\u00d9m\u00dbn\u00ddo\u00dfp\u00e1q\u00e3r\u00e5s\u00e7"+ + "t\u00e9u\u00ebv\u00edw\u00efx\u00f1y\u00f3z\u00f5{\u00f7|\u00f9}\u00fb"+ + "~\u00fd\u007f\u00ff\u0080\u0101\u0081\u0103\u0082\u0105\u0083\u0107\u0000"+ + "\u0109\u0000\u010b\u0084\u010d\u0000\u010f\u0000\u0111\u0000\u0113\u0085"+ + "\u0115\u0086\u0117\u0087\u0119\u0088\u011b\u0000\u011d\u0000\u011f\u0000"+ + "\u0121\u0000\u0123\u0089\u0125\u0000\u0127\u0000\u0129\u0000\u012b\u0000"+ + "\u012d\u0000\u012f\u0000\u0131\u0000\u0133\u0000\u0135\u0000\u0137\u0000"+ + "\u0139\u0000\u013b\u0000\u013d\u0000\u013f\u0000\u0141\u0000\u0143\u0000"+ + "\u0145\u008a\u0147\u008b\u0149\u008c\u014b\u008d\u014d\u0000\u014f\u008e"+ + "\u0151\u008f\u0153\u0090\u0155\u0091\u0001\u0000\u0014\u0003\u0000LLU"+ + "Uuu\u0001\u0000\n\n\u0003\u0000AZ__az\u0001\u000009\u0001\u000019\u0001"+ + "\u000007\u0003\u000009AFaf\u0001\u000001\u0002\u0000UUuu\u0002\u0000L"+ + "Lll\u0004\u0000\n\n\r\r\'\'\\\\\u0002\u0000++--\u0004\u0000FFLLffll\u0004"+ + "\u0000\n\n\r\r\"\"\\\\\u0002\u0000\"\"()\u0004\u0000\n\n\r\r ((\u0001"+ + "\u0000))\u0004\u0000\n\n\r\r \"\"\u0002\u0000\t\t \u0002\u0000\n\n\r"+ + "\r\u05f8\u0000\u0001\u0001\u0000\u0000\u0000\u0000\u0003\u0001\u0000\u0000"+ + "\u0000\u0000\u0005\u0001\u0000\u0000\u0000\u0000\u0007\u0001\u0000\u0000"+ + "\u0000\u0000\t\u0001\u0000\u0000\u0000\u0000\u000b\u0001\u0000\u0000\u0000"+ + "\u0000\r\u0001\u0000\u0000\u0000\u0000\u000f\u0001\u0000\u0000\u0000\u0000"+ + "\u0011\u0001\u0000\u0000\u0000\u0000\u0013\u0001\u0000\u0000\u0000\u0000"+ + "\u0015\u0001\u0000\u0000\u0000\u0000\u0017\u0001\u0000\u0000\u0000\u0000"+ + "\u0019\u0001\u0000\u0000\u0000\u0000\u001b\u0001\u0000\u0000\u0000\u0000"+ + "\u001d\u0001\u0000\u0000\u0000\u0000\u001f\u0001\u0000\u0000\u0000\u0000"+ + "!\u0001\u0000\u0000\u0000\u0000#\u0001\u0000\u0000\u0000\u0000%\u0001"+ + "\u0000\u0000\u0000\u0000\'\u0001\u0000\u0000\u0000\u0000)\u0001\u0000"+ + "\u0000\u0000\u0000+\u0001\u0000\u0000\u0000\u0000-\u0001\u0000\u0000\u0000"+ + "\u0000/\u0001\u0000\u0000\u0000\u00001\u0001\u0000\u0000\u0000\u00003"+ + "\u0001\u0000\u0000\u0000\u00005\u0001\u0000\u0000\u0000\u00007\u0001\u0000"+ + "\u0000\u0000\u00009\u0001\u0000\u0000\u0000\u0000;\u0001\u0000\u0000\u0000"+ + "\u0000=\u0001\u0000\u0000\u0000\u0000?\u0001\u0000\u0000\u0000\u0000A"+ + "\u0001\u0000\u0000\u0000\u0000C\u0001\u0000\u0000\u0000\u0000E\u0001\u0000"+ + "\u0000\u0000\u0000G\u0001\u0000\u0000\u0000\u0000I\u0001\u0000\u0000\u0000"+ + "\u0000K\u0001\u0000\u0000\u0000\u0000M\u0001\u0000\u0000\u0000\u0000O"+ + "\u0001\u0000\u0000\u0000\u0000Q\u0001\u0000\u0000\u0000\u0000S\u0001\u0000"+ + "\u0000\u0000\u0000U\u0001\u0000\u0000\u0000\u0000W\u0001\u0000\u0000\u0000"+ + "\u0000Y\u0001\u0000\u0000\u0000\u0000[\u0001\u0000\u0000\u0000\u0000]"+ + "\u0001\u0000\u0000\u0000\u0000_\u0001\u0000\u0000\u0000\u0000a\u0001\u0000"+ + "\u0000\u0000\u0000c\u0001\u0000\u0000\u0000\u0000e\u0001\u0000\u0000\u0000"+ + "\u0000g\u0001\u0000\u0000\u0000\u0000i\u0001\u0000\u0000\u0000\u0000k"+ + "\u0001\u0000\u0000\u0000\u0000m\u0001\u0000\u0000\u0000\u0000o\u0001\u0000"+ + "\u0000\u0000\u0000q\u0001\u0000\u0000\u0000\u0000s\u0001\u0000\u0000\u0000"+ + "\u0000u\u0001\u0000\u0000\u0000\u0000w\u0001\u0000\u0000\u0000\u0000y"+ + "\u0001\u0000\u0000\u0000\u0000{\u0001\u0000\u0000\u0000\u0000}\u0001\u0000"+ + "\u0000\u0000\u0000\u007f\u0001\u0000\u0000\u0000\u0000\u0081\u0001\u0000"+ + "\u0000\u0000\u0000\u0083\u0001\u0000\u0000\u0000\u0000\u0085\u0001\u0000"+ + "\u0000\u0000\u0000\u0087\u0001\u0000\u0000\u0000\u0000\u0089\u0001\u0000"+ + "\u0000\u0000\u0000\u008b\u0001\u0000\u0000\u0000\u0000\u008d\u0001\u0000"+ + "\u0000\u0000\u0000\u008f\u0001\u0000\u0000\u0000\u0000\u0091\u0001\u0000"+ + "\u0000\u0000\u0000\u0093\u0001\u0000\u0000\u0000\u0000\u0095\u0001\u0000"+ + "\u0000\u0000\u0000\u0097\u0001\u0000\u0000\u0000\u0000\u0099\u0001\u0000"+ + "\u0000\u0000\u0000\u009b\u0001\u0000\u0000\u0000\u0000\u009d\u0001\u0000"+ + "\u0000\u0000\u0000\u009f\u0001\u0000\u0000\u0000\u0000\u00a1\u0001\u0000"+ + "\u0000\u0000\u0000\u00a3\u0001\u0000\u0000\u0000\u0000\u00a5\u0001\u0000"+ + "\u0000\u0000\u0000\u00a7\u0001\u0000\u0000\u0000\u0000\u00a9\u0001\u0000"+ + "\u0000\u0000\u0000\u00ab\u0001\u0000\u0000\u0000\u0000\u00ad\u0001\u0000"+ + "\u0000\u0000\u0000\u00af\u0001\u0000\u0000\u0000\u0000\u00b1\u0001\u0000"+ + "\u0000\u0000\u0000\u00b3\u0001\u0000\u0000\u0000\u0000\u00b5\u0001\u0000"+ + "\u0000\u0000\u0000\u00b7\u0001\u0000\u0000\u0000\u0000\u00b9\u0001\u0000"+ + "\u0000\u0000\u0000\u00bb\u0001\u0000\u0000\u0000\u0000\u00bd\u0001\u0000"+ + "\u0000\u0000\u0000\u00bf\u0001\u0000\u0000\u0000\u0000\u00c1\u0001\u0000"+ + "\u0000\u0000\u0000\u00c3\u0001\u0000\u0000\u0000\u0000\u00c5\u0001\u0000"+ + "\u0000\u0000\u0000\u00c7\u0001\u0000\u0000\u0000\u0000\u00c9\u0001\u0000"+ + "\u0000\u0000\u0000\u00cb\u0001\u0000\u0000\u0000\u0000\u00cd\u0001\u0000"+ + "\u0000\u0000\u0000\u00cf\u0001\u0000\u0000\u0000\u0000\u00d1\u0001\u0000"+ + "\u0000\u0000\u0000\u00d3\u0001\u0000\u0000\u0000\u0000\u00d5\u0001\u0000"+ + "\u0000\u0000\u0000\u00d7\u0001\u0000\u0000\u0000\u0000\u00d9\u0001\u0000"+ + "\u0000\u0000\u0000\u00db\u0001\u0000\u0000\u0000\u0000\u00dd\u0001\u0000"+ + "\u0000\u0000\u0000\u00df\u0001\u0000\u0000\u0000\u0000\u00e1\u0001\u0000"+ + "\u0000\u0000\u0000\u00e3\u0001\u0000\u0000\u0000\u0000\u00e5\u0001\u0000"+ + "\u0000\u0000\u0000\u00e7\u0001\u0000\u0000\u0000\u0000\u00e9\u0001\u0000"+ + "\u0000\u0000\u0000\u00eb\u0001\u0000\u0000\u0000\u0000\u00ed\u0001\u0000"+ + "\u0000\u0000\u0000\u00ef\u0001\u0000\u0000\u0000\u0000\u00f1\u0001\u0000"+ + "\u0000\u0000\u0000\u00f3\u0001\u0000\u0000\u0000\u0000\u00f5\u0001\u0000"+ + "\u0000\u0000\u0000\u00f7\u0001\u0000\u0000\u0000\u0000\u00f9\u0001\u0000"+ + "\u0000\u0000\u0000\u00fb\u0001\u0000\u0000\u0000\u0000\u00fd\u0001\u0000"+ + "\u0000\u0000\u0000\u00ff\u0001\u0000\u0000\u0000\u0000\u0101\u0001\u0000"+ + "\u0000\u0000\u0000\u0103\u0001\u0000\u0000\u0000\u0000\u0105\u0001\u0000"+ + "\u0000\u0000\u0000\u010b\u0001\u0000\u0000\u0000\u0000\u0113\u0001\u0000"+ + "\u0000\u0000\u0000\u0115\u0001\u0000\u0000\u0000\u0000\u0117\u0001\u0000"+ + "\u0000\u0000\u0000\u0119\u0001\u0000\u0000\u0000\u0000\u0123\u0001\u0000"+ + "\u0000\u0000\u0000\u0145\u0001\u0000\u0000\u0000\u0000\u0147\u0001\u0000"+ + "\u0000\u0000\u0000\u0149\u0001\u0000\u0000\u0000\u0000\u014b\u0001\u0000"+ + "\u0000\u0000\u0000\u014f\u0001\u0000\u0000\u0000\u0000\u0151\u0001\u0000"+ + "\u0000\u0000\u0000\u0153\u0001\u0000\u0000\u0000\u0000\u0155\u0001\u0000"+ + "\u0000\u0000\u0001\u0167\u0001\u0000\u0000\u0000\u0003\u016a\u0001\u0000"+ + "\u0000\u0000\u0005\u0180\u0001\u0000\u0000\u0000\u0007\u0183\u0001\u0000"+ + "\u0000\u0000\t\u0192\u0001\u0000\u0000\u0000\u000b\u0194\u0001\u0000\u0000"+ + "\u0000\r\u019a\u0001\u0000\u0000\u0000\u000f\u019c\u0001\u0000\u0000\u0000"+ + "\u0011\u01b3\u0001\u0000\u0000\u0000\u0013\u01bc\u0001\u0000\u0000\u0000"+ + "\u0015\u01c4\u0001\u0000\u0000\u0000\u0017\u01cc\u0001\u0000\u0000\u0000"+ + "\u0019\u01d0\u0001\u0000\u0000\u0000\u001b\u01d5\u0001\u0000\u0000\u0000"+ + "\u001d\u01da\u0001\u0000\u0000\u0000\u001f\u01e0\u0001\u0000\u0000\u0000"+ + "!\u01e5\u0001\u0000\u0000\u0000#\u01eb\u0001\u0000\u0000\u0000%\u01f0"+ + "\u0001\u0000\u0000\u0000\'\u01f9\u0001\u0000\u0000\u0000)\u0202\u0001"+ + "\u0000\u0000\u0000+\u0208\u0001\u0000\u0000\u0000-\u020e\u0001\u0000\u0000"+ + "\u0000/\u0218\u0001\u0000\u0000\u00001\u0223\u0001\u0000\u0000\u00003"+ + "\u022c\u0001\u0000\u0000\u00005\u0235\u0001\u0000\u0000\u00007\u023d\u0001"+ + "\u0000\u0000\u00009\u0244\u0001\u0000\u0000\u0000;\u0247\u0001\u0000\u0000"+ + "\u0000=\u024e\u0001\u0000\u0000\u0000?\u025b\u0001\u0000\u0000\u0000A"+ + "\u0260\u0001\u0000\u0000\u0000C\u0265\u0001\u0000\u0000\u0000E\u026e\u0001"+ + "\u0000\u0000\u0000G\u0275\u0001\u0000\u0000\u0000I\u027c\u0001\u0000\u0000"+ + "\u0000K\u0282\u0001\u0000\u0000\u0000M\u0288\u0001\u0000\u0000\u0000O"+ + "\u028e\u0001\u0000\u0000\u0000Q\u0292\u0001\u0000\u0000\u0000S\u0299\u0001"+ + "\u0000\u0000\u0000U\u029e\u0001\u0000\u0000\u0000W\u02a1\u0001\u0000\u0000"+ + "\u0000Y\u02a8\u0001\u0000\u0000\u0000[\u02ac\u0001\u0000\u0000\u0000]"+ + "\u02b1\u0001\u0000\u0000\u0000_\u02b9\u0001\u0000\u0000\u0000a\u02c3\u0001"+ + "\u0000\u0000\u0000c\u02c7\u0001\u0000\u0000\u0000e\u02d0\u0001\u0000\u0000"+ + "\u0000g\u02d8\u0001\u0000\u0000\u0000i\u02e1\u0001\u0000\u0000\u0000k"+ + "\u02ea\u0001\u0000\u0000\u0000m\u02f2\u0001\u0000\u0000\u0000o\u02fc\u0001"+ + "\u0000\u0000\u0000q\u0303\u0001\u0000\u0000\u0000s\u030c\u0001\u0000\u0000"+ + "\u0000u\u031d\u0001\u0000\u0000\u0000w\u0324\u0001\u0000\u0000\u0000y"+ + "\u032a\u0001\u0000\u0000\u0000{\u0331\u0001\u0000\u0000\u0000}\u0338\u0001"+ + "\u0000\u0000\u0000\u007f\u033f\u0001\u0000\u0000\u0000\u0081\u034d\u0001"+ + "\u0000\u0000\u0000\u0083\u0359\u0001\u0000\u0000\u0000\u0085\u0360\u0001"+ + "\u0000\u0000\u0000\u0087\u0367\u0001\u0000\u0000\u0000\u0089\u0370\u0001"+ + "\u0000\u0000\u0000\u008b\u0375\u0001\u0000\u0000\u0000\u008d\u0382\u0001"+ + "\u0000\u0000\u0000\u008f\u0388\u0001\u0000\u0000\u0000\u0091\u038d\u0001"+ + "\u0000\u0000\u0000\u0093\u0391\u0001\u0000\u0000\u0000\u0095\u0399\u0001"+ + "\u0000\u0000\u0000\u0097\u03a0\u0001\u0000\u0000\u0000\u0099\u03a9\u0001"+ + "\u0000\u0000\u0000\u009b\u03af\u0001\u0000\u0000\u0000\u009d\u03b8\u0001"+ + "\u0000\u0000\u0000\u009f\u03be\u0001\u0000\u0000\u0000\u00a1\u03c6\u0001"+ + "\u0000\u0000\u0000\u00a3\u03cb\u0001\u0000\u0000\u0000\u00a5\u03d4\u0001"+ + "\u0000\u0000\u0000\u00a7\u03dc\u0001\u0000\u0000\u0000\u00a9\u03e2\u0001"+ + "\u0000\u0000\u0000\u00ab\u03e4\u0001\u0000\u0000\u0000\u00ad\u03e6\u0001"+ + "\u0000\u0000\u0000\u00af\u03e8\u0001\u0000\u0000\u0000\u00b1\u03ea\u0001"+ + "\u0000\u0000\u0000\u00b3\u03ec\u0001\u0000\u0000\u0000\u00b5\u03ee\u0001"+ + "\u0000\u0000\u0000\u00b7\u03f0\u0001\u0000\u0000\u0000\u00b9\u03f2\u0001"+ + "\u0000\u0000\u0000\u00bb\u03f4\u0001\u0000\u0000\u0000\u00bd\u03f6\u0001"+ + "\u0000\u0000\u0000\u00bf\u03f8\u0001\u0000\u0000\u0000\u00c1\u03fa\u0001"+ + "\u0000\u0000\u0000\u00c3\u03fc\u0001\u0000\u0000\u0000\u00c5\u03fe\u0001"+ + "\u0000\u0000\u0000\u00c7\u0404\u0001\u0000\u0000\u0000\u00c9\u0406\u0001"+ + "\u0000\u0000\u0000\u00cb\u0408\u0001\u0000\u0000\u0000\u00cd\u040a\u0001"+ + "\u0000\u0000\u0000\u00cf\u040c\u0001\u0000\u0000\u0000\u00d1\u040f\u0001"+ + "\u0000\u0000\u0000\u00d3\u0412\u0001\u0000\u0000\u0000\u00d5\u0415\u0001"+ + "\u0000\u0000\u0000\u00d7\u0418\u0001\u0000\u0000\u0000\u00d9\u041b\u0001"+ + "\u0000\u0000\u0000\u00db\u041e\u0001\u0000\u0000\u0000\u00dd\u0421\u0001"+ + "\u0000\u0000\u0000\u00df\u0424\u0001\u0000\u0000\u0000\u00e1\u0428\u0001"+ + "\u0000\u0000\u0000\u00e3\u042c\u0001\u0000\u0000\u0000\u00e5\u042f\u0001"+ + "\u0000\u0000\u0000\u00e7\u0432\u0001\u0000\u0000\u0000\u00e9\u0435\u0001"+ + "\u0000\u0000\u0000\u00eb\u043d\u0001\u0000\u0000\u0000\u00ed\u0443\u0001"+ + "\u0000\u0000\u0000\u00ef\u0445\u0001\u0000\u0000\u0000\u00f1\u0448\u0001"+ + "\u0000\u0000\u0000\u00f3\u044b\u0001\u0000\u0000\u0000\u00f5\u044d\u0001"+ + "\u0000\u0000\u0000\u00f7\u0451\u0001\u0000\u0000\u0000\u00f9\u0454\u0001"+ + "\u0000\u0000\u0000\u00fb\u0456\u0001\u0000\u0000\u0000\u00fd\u0458\u0001"+ + "\u0000\u0000\u0000\u00ff\u045b\u0001\u0000\u0000\u0000\u0101\u045d\u0001"+ + "\u0000\u0000\u0000\u0103\u045f\u0001\u0000\u0000\u0000\u0105\u0462\u0001"+ + "\u0000\u0000\u0000\u0107\u0466\u0001\u0000\u0000\u0000\u0109\u0475\u0001"+ + "\u0000\u0000\u0000\u010b\u0477\u0001\u0000\u0000\u0000\u010d\u0481\u0001"+ + "\u0000\u0000\u0000\u010f\u0483\u0001\u0000\u0000\u0000\u0111\u0485\u0001"+ + "\u0000\u0000\u0000\u0113\u0487\u0001\u0000\u0000\u0000\u0115\u0491\u0001"+ + "\u0000\u0000\u0000\u0117\u049f\u0001\u0000\u0000\u0000\u0119\u04af\u0001"+ + "\u0000\u0000\u0000\u011b\u04bb\u0001\u0000\u0000\u0000\u011d\u04bd\u0001"+ + "\u0000\u0000\u0000\u011f\u04bf\u0001\u0000\u0000\u0000\u0121\u04c1\u0001"+ + "\u0000\u0000\u0000\u0123\u04d3\u0001\u0000\u0000\u0000\u0125\u04d5\u0001"+ + "\u0000\u0000\u0000\u0127\u04d7\u0001\u0000\u0000\u0000\u0129\u04dd\u0001"+ + "\u0000\u0000\u0000\u012b\u04e2\u0001\u0000\u0000\u0000\u012d\u04e7\u0001"+ + "\u0000\u0000\u0000\u012f\u0507\u0001\u0000\u0000\u0000\u0131\u0514\u0001"+ + "\u0000\u0000\u0000\u0133\u0516\u0001\u0000\u0000\u0000\u0135\u0526\u0001"+ + "\u0000\u0000\u0000\u0137\u0532\u0001\u0000\u0000\u0000\u0139\u0534\u0001"+ + "\u0000\u0000\u0000\u013b\u0536\u0001\u0000\u0000\u0000\u013d\u0540\u0001"+ + "\u0000\u0000\u0000\u013f\u0545\u0001\u0000\u0000\u0000\u0141\u054a\u0001"+ + "\u0000\u0000\u0000\u0143\u054c\u0001\u0000\u0000\u0000\u0145\u0575\u0001"+ + "\u0000\u0000\u0000\u0147\u0581\u0001\u0000\u0000\u0000\u0149\u0583\u0001"+ + "\u0000\u0000\u0000\u014b\u0586\u0001\u0000\u0000\u0000\u014d\u0589\u0001"+ + "\u0000\u0000\u0000\u014f\u058c\u0001\u0000\u0000\u0000\u0151\u0597\u0001"+ + "\u0000\u0000\u0000\u0153\u059b\u0001\u0000\u0000\u0000\u0155\u05a9\u0001"+ + "\u0000\u0000\u0000\u0157\u0159\u0003\u0113\u0089\u0000\u0158\u015a\u0003"+ + "\u0123\u0091\u0000\u0159\u0158\u0001\u0000\u0000\u0000\u0159\u015a\u0001"+ + "\u0000\u0000\u0000\u015a\u0168\u0001\u0000\u0000\u0000\u015b\u015d\u0003"+ + "\u0115\u008a\u0000\u015c\u015e\u0003\u0123\u0091\u0000\u015d\u015c\u0001"+ + "\u0000\u0000\u0000\u015d\u015e\u0001\u0000\u0000\u0000\u015e\u0168\u0001"+ + "\u0000\u0000\u0000\u015f\u0161\u0003\u0117\u008b\u0000\u0160\u0162\u0003"+ + "\u0123\u0091\u0000\u0161\u0160\u0001\u0000\u0000\u0000\u0161\u0162\u0001"+ + "\u0000\u0000\u0000\u0162\u0168\u0001\u0000\u0000\u0000\u0163\u0165\u0003"+ + "\u0119\u008c\u0000\u0164\u0166\u0003\u0123\u0091\u0000\u0165\u0164\u0001"+ + "\u0000\u0000\u0000\u0165\u0166\u0001\u0000\u0000\u0000\u0166\u0168\u0001"+ + "\u0000\u0000\u0000\u0167\u0157\u0001\u0000\u0000\u0000\u0167\u015b\u0001"+ + "\u0000\u0000\u0000\u0167\u015f\u0001\u0000\u0000\u0000\u0167\u0163\u0001"+ + "\u0000\u0000\u0000\u0168\u0002\u0001\u0000\u0000\u0000\u0169\u016b\u0007"+ + "\u0000\u0000\u0000\u016a\u0169\u0001\u0000\u0000\u0000\u016a\u016b\u0001"+ + "\u0000\u0000\u0000\u016b\u016c\u0001\u0000\u0000\u0000\u016c\u016e\u0005"+ + "\'\u0000\u0000\u016d\u016f\u0003\u012b\u0095\u0000\u016e\u016d\u0001\u0000"+ + "\u0000\u0000\u016f\u0170\u0001\u0000\u0000\u0000\u0170\u016e\u0001\u0000"+ + "\u0000\u0000\u0170\u0171\u0001\u0000\u0000\u0000\u0171\u0172\u0001\u0000"+ + "\u0000\u0000\u0172\u0173\u0005\'\u0000\u0000\u0173\u0004\u0001\u0000\u0000"+ + "\u0000\u0174\u0176\u0003\u0135\u009a\u0000\u0175\u0177\u0003\u0137\u009b"+ + "\u0000\u0176\u0175\u0001\u0000\u0000\u0000\u0176\u0177\u0001\u0000\u0000"+ + "\u0000\u0177\u0179\u0001\u0000\u0000\u0000\u0178\u017a\u0003\u013d\u009e"+ + "\u0000\u0179\u0178\u0001\u0000\u0000\u0000\u0179\u017a\u0001\u0000\u0000"+ + "\u0000\u017a\u0181\u0001\u0000\u0000\u0000\u017b\u017c\u0003\u013b\u009d"+ + "\u0000\u017c\u017e\u0003\u0137\u009b\u0000\u017d\u017f\u0003\u013d\u009e"+ + "\u0000\u017e\u017d\u0001\u0000\u0000\u0000\u017e\u017f\u0001\u0000\u0000"+ + "\u0000\u017f\u0181\u0001\u0000\u0000\u0000\u0180\u0174\u0001\u0000\u0000"+ + "\u0000\u0180\u017b\u0001\u0000\u0000\u0000\u0181\u0006\u0001\u0000\u0000"+ + "\u0000\u0182\u0184\u0003\u013f\u009f\u0000\u0183\u0182\u0001\u0000\u0000"+ + "\u0000\u0183\u0184\u0001\u0000\u0000\u0000\u0184\u018e\u0001\u0000\u0000"+ + "\u0000\u0185\u018f\u0003\u0143\u00a1\u0000\u0186\u018a\u0005\"\u0000\u0000"+ + "\u0187\u0189\u0003\u0141\u00a0\u0000\u0188\u0187\u0001\u0000\u0000\u0000"+ + "\u0189\u018c\u0001\u0000\u0000\u0000\u018a\u0188\u0001\u0000\u0000\u0000"+ + "\u018a\u018b\u0001\u0000\u0000\u0000\u018b\u018d\u0001\u0000\u0000\u0000"+ + "\u018c\u018a\u0001\u0000\u0000\u0000\u018d\u018f\u0005\"\u0000\u0000\u018e"+ + "\u0185\u0001\u0000\u0000\u0000\u018e\u0186\u0001\u0000\u0000\u0000\u018f"+ + "\b\u0001\u0000\u0000\u0000\u0190\u0193\u0003I$\u0000\u0191\u0193\u0003"+ + "\u008fG\u0000\u0192\u0190\u0001\u0000\u0000\u0000\u0192\u0191\u0001\u0000"+ + "\u0000\u0000\u0193\n\u0001\u0000\u0000\u0000\u0194\u0195\u0003e2\u0000"+ + "\u0195\f\u0001\u0000\u0000\u0000\u0196\u019b\u0003\u0145\u00a2\u0000\u0197"+ + "\u019b\u0003\u0147\u00a3\u0000\u0198\u019b\u0003\u0149\u00a4\u0000\u0199"+ + "\u019b\u0003\u014b\u00a5\u0000\u019a\u0196\u0001\u0000\u0000\u0000\u019a"+ + "\u0197\u0001\u0000\u0000\u0000\u019a\u0198\u0001\u0000\u0000\u0000\u019a"+ + "\u0199\u0001\u0000\u0000\u0000\u019b\u000e\u0001\u0000\u0000\u0000\u019c"+ + "\u01a8\u0005#\u0000\u0000\u019d\u019f\b\u0001\u0000\u0000\u019e\u019d"+ + "\u0001\u0000\u0000\u0000\u019f\u01a2\u0001\u0000\u0000\u0000\u01a0\u01a1"+ + "\u0001\u0000\u0000\u0000\u01a0\u019e\u0001\u0000\u0000\u0000\u01a1\u01a3"+ + "\u0001\u0000\u0000\u0000\u01a2\u01a0\u0001\u0000\u0000\u0000\u01a3\u01a5"+ + "\u0005\\\u0000\u0000\u01a4\u01a6\u0005\r\u0000\u0000\u01a5\u01a4\u0001"+ + "\u0000\u0000\u0000\u01a5\u01a6\u0001\u0000\u0000\u0000\u01a6\u01a7\u0001"+ + "\u0000\u0000\u0000\u01a7\u01a9\u0005\n\u0000\u0000\u01a8\u01a0\u0001\u0000"+ + "\u0000\u0000\u01a9\u01aa\u0001\u0000\u0000\u0000\u01aa\u01a8\u0001\u0000"+ + "\u0000\u0000\u01aa\u01ab\u0001\u0000\u0000\u0000\u01ab\u01ad\u0001\u0000"+ + "\u0000\u0000\u01ac\u01ae\b\u0001\u0000\u0000\u01ad\u01ac\u0001\u0000\u0000"+ + "\u0000\u01ae\u01af\u0001\u0000\u0000\u0000\u01af\u01ad\u0001\u0000\u0000"+ + "\u0000\u01af\u01b0\u0001\u0000\u0000\u0000\u01b0\u01b1\u0001\u0000\u0000"+ + "\u0000\u01b1\u01b2\u0006\u0007\u0000\u0000\u01b2\u0010\u0001\u0000\u0000"+ + "\u0000\u01b3\u01b7\u0005#\u0000\u0000\u01b4\u01b6\b\u0001\u0000\u0000"+ + "\u01b5\u01b4\u0001\u0000\u0000\u0000\u01b6\u01b9\u0001\u0000\u0000\u0000"+ + "\u01b7\u01b5\u0001\u0000\u0000\u0000\u01b7\u01b8\u0001\u0000\u0000\u0000"+ + "\u01b8\u01ba\u0001\u0000\u0000\u0000\u01b9\u01b7\u0001\u0000\u0000\u0000"+ + "\u01ba\u01bb\u0006\b\u0000\u0000\u01bb\u0012\u0001\u0000\u0000\u0000\u01bc"+ + "\u01bd\u0005a\u0000\u0000\u01bd\u01be\u0005l\u0000\u0000\u01be\u01bf\u0005"+ + "i\u0000\u0000\u01bf\u01c0\u0005g\u0000\u0000\u01c0\u01c1\u0005n\u0000"+ + "\u0000\u01c1\u01c2\u0005a\u0000\u0000\u01c2\u01c3\u0005s\u0000\u0000\u01c3"+ + "\u0014\u0001\u0000\u0000\u0000\u01c4\u01c5\u0005a\u0000\u0000\u01c5\u01c6"+ + "\u0005l\u0000\u0000\u01c6\u01c7\u0005i\u0000\u0000\u01c7\u01c8\u0005g"+ + "\u0000\u0000\u01c8\u01c9\u0005n\u0000\u0000\u01c9\u01ca\u0005o\u0000\u0000"+ + "\u01ca\u01cb\u0005f\u0000\u0000\u01cb\u0016\u0001\u0000\u0000\u0000\u01cc"+ + "\u01cd\u0005a\u0000\u0000\u01cd\u01ce\u0005s\u0000\u0000\u01ce\u01cf\u0005"+ + "m\u0000\u0000\u01cf\u0018\u0001\u0000\u0000\u0000\u01d0\u01d1\u0005a\u0000"+ + "\u0000\u01d1\u01d2\u0005u\u0000\u0000\u01d2\u01d3\u0005t\u0000\u0000\u01d3"+ + "\u01d4\u0005o\u0000\u0000\u01d4\u001a\u0001\u0000\u0000\u0000\u01d5\u01d6"+ + "\u0005b\u0000\u0000\u01d6\u01d7\u0005o\u0000\u0000\u01d7\u01d8\u0005o"+ + "\u0000\u0000\u01d8\u01d9\u0005l\u0000\u0000\u01d9\u001c\u0001\u0000\u0000"+ + "\u0000\u01da\u01db\u0005b\u0000\u0000\u01db\u01dc\u0005r\u0000\u0000\u01dc"+ + "\u01dd\u0005e\u0000\u0000\u01dd\u01de\u0005a\u0000\u0000\u01de\u01df\u0005"+ + "k\u0000\u0000\u01df\u001e\u0001\u0000\u0000\u0000\u01e0\u01e1\u0005c\u0000"+ + "\u0000\u01e1\u01e2\u0005a\u0000\u0000\u01e2\u01e3\u0005s\u0000\u0000\u01e3"+ + "\u01e4\u0005e\u0000\u0000\u01e4 \u0001\u0000\u0000\u0000\u01e5\u01e6\u0005"+ + "c\u0000\u0000\u01e6\u01e7\u0005a\u0000\u0000\u01e7\u01e8\u0005t\u0000"+ + "\u0000\u01e8\u01e9\u0005c\u0000\u0000\u01e9\u01ea\u0005h\u0000\u0000\u01ea"+ + "\"\u0001\u0000\u0000\u0000\u01eb\u01ec\u0005c\u0000\u0000\u01ec\u01ed"+ + "\u0005h\u0000\u0000\u01ed\u01ee\u0005a\u0000\u0000\u01ee\u01ef\u0005r"+ + "\u0000\u0000\u01ef$\u0001\u0000\u0000\u0000\u01f0\u01f1\u0005c\u0000\u0000"+ + "\u01f1\u01f2\u0005h\u0000\u0000\u01f2\u01f3\u0005a\u0000\u0000\u01f3\u01f4"+ + "\u0005r\u0000\u0000\u01f4\u01f5\u00051\u0000\u0000\u01f5\u01f6\u00056"+ + "\u0000\u0000\u01f6\u01f7\u0005_\u0000\u0000\u01f7\u01f8\u0005t\u0000\u0000"+ + "\u01f8&\u0001\u0000\u0000\u0000\u01f9\u01fa\u0005c\u0000\u0000\u01fa\u01fb"+ + "\u0005h\u0000\u0000\u01fb\u01fc\u0005a\u0000\u0000\u01fc\u01fd\u0005r"+ + "\u0000\u0000\u01fd\u01fe\u00053\u0000\u0000\u01fe\u01ff\u00052\u0000\u0000"+ + "\u01ff\u0200\u0005_\u0000\u0000\u0200\u0201\u0005t\u0000\u0000\u0201("+ + "\u0001\u0000\u0000\u0000\u0202\u0203\u0005c\u0000\u0000\u0203\u0204\u0005"+ + "l\u0000\u0000\u0204\u0205\u0005a\u0000\u0000\u0205\u0206\u0005s\u0000"+ + "\u0000\u0206\u0207\u0005s\u0000\u0000\u0207*\u0001\u0000\u0000\u0000\u0208"+ + "\u0209\u0005c\u0000\u0000\u0209\u020a\u0005o\u0000\u0000\u020a\u020b\u0005"+ + "n\u0000\u0000\u020b\u020c\u0005s\u0000\u0000\u020c\u020d\u0005t\u0000"+ + "\u0000\u020d,\u0001\u0000\u0000\u0000\u020e\u020f\u0005c\u0000\u0000\u020f"+ + "\u0210\u0005o\u0000\u0000\u0210\u0211\u0005n\u0000\u0000\u0211\u0212\u0005"+ + "s\u0000\u0000\u0212\u0213\u0005t\u0000\u0000\u0213\u0214\u0005e\u0000"+ + "\u0000\u0214\u0215\u0005x\u0000\u0000\u0215\u0216\u0005p\u0000\u0000\u0216"+ + "\u0217\u0005r\u0000\u0000\u0217.\u0001\u0000\u0000\u0000\u0218\u0219\u0005"+ + "c\u0000\u0000\u0219\u021a\u0005o\u0000\u0000\u021a\u021b\u0005n\u0000"+ + "\u0000\u021b\u021c\u0005s\u0000\u0000\u021c\u021d\u0005t\u0000\u0000\u021d"+ + "\u021e\u0005_\u0000\u0000\u021e\u021f\u0005c\u0000\u0000\u021f\u0220\u0005"+ + "a\u0000\u0000\u0220\u0221\u0005s\u0000\u0000\u0221\u0222\u0005t\u0000"+ + "\u0000\u02220\u0001\u0000\u0000\u0000\u0223\u0224\u0005c\u0000\u0000\u0224"+ + "\u0225\u0005o\u0000\u0000\u0225\u0226\u0005n\u0000\u0000\u0226\u0227\u0005"+ + "t\u0000\u0000\u0227\u0228\u0005i\u0000\u0000\u0228\u0229\u0005n\u0000"+ + "\u0000\u0229\u022a\u0005u\u0000\u0000\u022a\u022b\u0005e\u0000\u0000\u022b"+ + "2\u0001\u0000\u0000\u0000\u022c\u022d\u0005d\u0000\u0000\u022d\u022e\u0005"+ + "e\u0000\u0000\u022e\u022f\u0005c\u0000\u0000\u022f\u0230\u0005l\u0000"+ + "\u0000\u0230\u0231\u0005t\u0000\u0000\u0231\u0232\u0005y\u0000\u0000\u0232"+ + "\u0233\u0005p\u0000\u0000\u0233\u0234\u0005e\u0000\u0000\u02344\u0001"+ + "\u0000\u0000\u0000\u0235\u0236\u0005d\u0000\u0000\u0236\u0237\u0005e\u0000"+ + "\u0000\u0237\u0238\u0005f\u0000\u0000\u0238\u0239\u0005a\u0000\u0000\u0239"+ + "\u023a\u0005u\u0000\u0000\u023a\u023b\u0005l\u0000\u0000\u023b\u023c\u0005"+ + "t\u0000\u0000\u023c6\u0001\u0000\u0000\u0000\u023d\u023e\u0005d\u0000"+ + "\u0000\u023e\u023f\u0005e\u0000\u0000\u023f\u0240\u0005l\u0000\u0000\u0240"+ + "\u0241\u0005e\u0000\u0000\u0241\u0242\u0005t\u0000\u0000\u0242\u0243\u0005"+ + "e\u0000\u0000\u02438\u0001\u0000\u0000\u0000\u0244\u0245\u0005d\u0000"+ + "\u0000\u0245\u0246\u0005o\u0000\u0000\u0246:\u0001\u0000\u0000\u0000\u0247"+ + "\u0248\u0005d\u0000\u0000\u0248\u0249\u0005o\u0000\u0000\u0249\u024a\u0005"+ + "u\u0000\u0000\u024a\u024b\u0005b\u0000\u0000\u024b\u024c\u0005l\u0000"+ + "\u0000\u024c\u024d\u0005e\u0000\u0000\u024d<\u0001\u0000\u0000\u0000\u024e"+ + "\u024f\u0005d\u0000\u0000\u024f\u0250\u0005y\u0000\u0000\u0250\u0251\u0005"+ + "n\u0000\u0000\u0251\u0252\u0005a\u0000\u0000\u0252\u0253\u0005m\u0000"+ + "\u0000\u0253\u0254\u0005i\u0000\u0000\u0254\u0255\u0005c\u0000\u0000\u0255"+ + "\u0256\u0005_\u0000\u0000\u0256\u0257\u0005c\u0000\u0000\u0257\u0258\u0005"+ + "a\u0000\u0000\u0258\u0259\u0005s\u0000\u0000\u0259\u025a\u0005t\u0000"+ + "\u0000\u025a>\u0001\u0000\u0000\u0000\u025b\u025c\u0005e\u0000\u0000\u025c"+ + "\u025d\u0005l\u0000\u0000\u025d\u025e\u0005s\u0000\u0000\u025e\u025f\u0005"+ + "e\u0000\u0000\u025f@\u0001\u0000\u0000\u0000\u0260\u0261\u0005e\u0000"+ + "\u0000\u0261\u0262\u0005n\u0000\u0000\u0262\u0263\u0005u\u0000\u0000\u0263"+ + "\u0264\u0005m\u0000\u0000\u0264B\u0001\u0000\u0000\u0000\u0265\u0266\u0005"+ + "e\u0000\u0000\u0266\u0267\u0005x\u0000\u0000\u0267\u0268\u0005p\u0000"+ + "\u0000\u0268\u0269\u0005l\u0000\u0000\u0269\u026a\u0005i\u0000\u0000\u026a"+ + "\u026b\u0005c\u0000\u0000\u026b\u026c\u0005i\u0000\u0000\u026c\u026d\u0005"+ + "t\u0000\u0000\u026dD\u0001\u0000\u0000\u0000\u026e\u026f\u0005e\u0000"+ + "\u0000\u026f\u0270\u0005x\u0000\u0000\u0270\u0271\u0005p\u0000\u0000\u0271"+ + "\u0272\u0005o\u0000\u0000\u0272\u0273\u0005r\u0000\u0000\u0273\u0274\u0005"+ + "t\u0000\u0000\u0274F\u0001\u0000\u0000\u0000\u0275\u0276\u0005e\u0000"+ + "\u0000\u0276\u0277\u0005x\u0000\u0000\u0277\u0278\u0005t\u0000\u0000\u0278"+ + "\u0279\u0005e\u0000\u0000\u0279\u027a\u0005r\u0000\u0000\u027a\u027b\u0005"+ + "n\u0000\u0000\u027bH\u0001\u0000\u0000\u0000\u027c\u027d\u0005f\u0000"+ + "\u0000\u027d\u027e\u0005a\u0000\u0000\u027e\u027f\u0005l\u0000\u0000\u027f"+ + "\u0280\u0005s\u0000\u0000\u0280\u0281\u0005e\u0000\u0000\u0281J\u0001"+ + "\u0000\u0000\u0000\u0282\u0283\u0005f\u0000\u0000\u0283\u0284\u0005i\u0000"+ + "\u0000\u0284\u0285\u0005n\u0000\u0000\u0285\u0286\u0005a\u0000\u0000\u0286"+ + "\u0287\u0005l\u0000\u0000\u0287L\u0001\u0000\u0000\u0000\u0288\u0289\u0005"+ + "f\u0000\u0000\u0289\u028a\u0005l\u0000\u0000\u028a\u028b\u0005o\u0000"+ + "\u0000\u028b\u028c\u0005a\u0000\u0000\u028c\u028d\u0005t\u0000\u0000\u028d"+ + "N\u0001\u0000\u0000\u0000\u028e\u028f\u0005f\u0000\u0000\u028f\u0290\u0005"+ + "o\u0000\u0000\u0290\u0291\u0005r\u0000\u0000\u0291P\u0001\u0000\u0000"+ + "\u0000\u0292\u0293\u0005f\u0000\u0000\u0293\u0294\u0005r\u0000\u0000\u0294"+ + "\u0295\u0005i\u0000\u0000\u0295\u0296\u0005e\u0000\u0000\u0296\u0297\u0005"+ + "n\u0000\u0000\u0297\u0298\u0005d\u0000\u0000\u0298R\u0001\u0000\u0000"+ + "\u0000\u0299\u029a\u0005g\u0000\u0000\u029a\u029b\u0005o\u0000\u0000\u029b"+ + "\u029c\u0005t\u0000\u0000\u029c\u029d\u0005o\u0000\u0000\u029dT\u0001"+ + "\u0000\u0000\u0000\u029e\u029f\u0005i\u0000\u0000\u029f\u02a0\u0005f\u0000"+ + "\u0000\u02a0V\u0001\u0000\u0000\u0000\u02a1\u02a2\u0005i\u0000\u0000\u02a2"+ + "\u02a3\u0005n\u0000\u0000\u02a3\u02a4\u0005l\u0000\u0000\u02a4\u02a5\u0005"+ + "i\u0000\u0000\u02a5\u02a6\u0005n\u0000\u0000\u02a6\u02a7\u0005e\u0000"+ + "\u0000\u02a7X\u0001\u0000\u0000\u0000\u02a8\u02a9\u0005i\u0000\u0000\u02a9"+ + "\u02aa\u0005n\u0000\u0000\u02aa\u02ab\u0005t\u0000\u0000\u02abZ\u0001"+ + "\u0000\u0000\u0000\u02ac\u02ad\u0005l\u0000\u0000\u02ad\u02ae\u0005o\u0000"+ + "\u0000\u02ae\u02af\u0005n\u0000\u0000\u02af\u02b0\u0005g\u0000\u0000\u02b0"+ + "\\\u0001\u0000\u0000\u0000\u02b1\u02b2\u0005m\u0000\u0000\u02b2\u02b3"+ + "\u0005u\u0000\u0000\u02b3\u02b4\u0005t\u0000\u0000\u02b4\u02b5\u0005a"+ + "\u0000\u0000\u02b5\u02b6\u0005b\u0000\u0000\u02b6\u02b7\u0005l\u0000\u0000"+ + "\u02b7\u02b8\u0005e\u0000\u0000\u02b8^\u0001\u0000\u0000\u0000\u02b9\u02ba"+ + "\u0005n\u0000\u0000\u02ba\u02bb\u0005a\u0000\u0000\u02bb\u02bc\u0005m"+ + "\u0000\u0000\u02bc\u02bd\u0005e\u0000\u0000\u02bd\u02be\u0005s\u0000\u0000"+ + "\u02be\u02bf\u0005p\u0000\u0000\u02bf\u02c0\u0005a\u0000\u0000\u02c0\u02c1"+ + "\u0005c\u0000\u0000\u02c1\u02c2\u0005e\u0000\u0000\u02c2`\u0001\u0000"+ + "\u0000\u0000\u02c3\u02c4\u0005n\u0000\u0000\u02c4\u02c5\u0005e\u0000\u0000"+ + "\u02c5\u02c6\u0005w\u0000\u0000\u02c6b\u0001\u0000\u0000\u0000\u02c7\u02c8"+ + "\u0005n\u0000\u0000\u02c8\u02c9\u0005o\u0000\u0000\u02c9\u02ca\u0005e"+ + "\u0000\u0000\u02ca\u02cb\u0005x\u0000\u0000\u02cb\u02cc\u0005c\u0000\u0000"+ + "\u02cc\u02cd\u0005e\u0000\u0000\u02cd\u02ce\u0005p\u0000\u0000\u02ce\u02cf"+ + "\u0005t\u0000\u0000\u02cfd\u0001\u0000\u0000\u0000\u02d0\u02d1\u0005n"+ + "\u0000\u0000\u02d1\u02d2\u0005u\u0000\u0000\u02d2\u02d3\u0005l\u0000\u0000"+ + "\u02d3\u02d4\u0005l\u0000\u0000\u02d4\u02d5\u0005p\u0000\u0000\u02d5\u02d6"+ + "\u0005t\u0000\u0000\u02d6\u02d7\u0005r\u0000\u0000\u02d7f\u0001\u0000"+ + "\u0000\u0000\u02d8\u02d9\u0005o\u0000\u0000\u02d9\u02da\u0005p\u0000\u0000"+ + "\u02da\u02db\u0005e\u0000\u0000\u02db\u02dc\u0005r\u0000\u0000\u02dc\u02dd"+ + "\u0005a\u0000\u0000\u02dd\u02de\u0005t\u0000\u0000\u02de\u02df\u0005o"+ + "\u0000\u0000\u02df\u02e0\u0005r\u0000\u0000\u02e0h\u0001\u0000\u0000\u0000"+ + "\u02e1\u02e2\u0005o\u0000\u0000\u02e2\u02e3\u0005v\u0000\u0000\u02e3\u02e4"+ + "\u0005e\u0000\u0000\u02e4\u02e5\u0005r\u0000\u0000\u02e5\u02e6\u0005r"+ + "\u0000\u0000\u02e6\u02e7\u0005i\u0000\u0000\u02e7\u02e8\u0005d\u0000\u0000"+ + "\u02e8\u02e9\u0005e\u0000\u0000\u02e9j\u0001\u0000\u0000\u0000\u02ea\u02eb"+ + "\u0005p\u0000\u0000\u02eb\u02ec\u0005r\u0000\u0000\u02ec\u02ed\u0005i"+ + "\u0000\u0000\u02ed\u02ee\u0005v\u0000\u0000\u02ee\u02ef\u0005a\u0000\u0000"+ + "\u02ef\u02f0\u0005t\u0000\u0000\u02f0\u02f1\u0005e\u0000\u0000\u02f1l"+ + "\u0001\u0000\u0000\u0000\u02f2\u02f3\u0005p\u0000\u0000\u02f3\u02f4\u0005"+ + "r\u0000\u0000\u02f4\u02f5\u0005o\u0000\u0000\u02f5\u02f6\u0005t\u0000"+ + "\u0000\u02f6\u02f7\u0005e\u0000\u0000\u02f7\u02f8\u0005c\u0000\u0000\u02f8"+ + "\u02f9\u0005t\u0000\u0000\u02f9\u02fa\u0005e\u0000\u0000\u02fa\u02fb\u0005"+ + "d\u0000\u0000\u02fbn\u0001\u0000\u0000\u0000\u02fc\u02fd\u0005p\u0000"+ + "\u0000\u02fd\u02fe\u0005u\u0000\u0000\u02fe\u02ff\u0005b\u0000\u0000\u02ff"+ + "\u0300\u0005l\u0000\u0000\u0300\u0301\u0005i\u0000\u0000\u0301\u0302\u0005"+ + "c\u0000\u0000\u0302p\u0001\u0000\u0000\u0000\u0303\u0304\u0005r\u0000"+ + "\u0000\u0304\u0305\u0005e\u0000\u0000\u0305\u0306\u0005g\u0000\u0000\u0306"+ + "\u0307\u0005i\u0000\u0000\u0307\u0308\u0005s\u0000\u0000\u0308\u0309\u0005"+ + "t\u0000\u0000\u0309\u030a\u0005e\u0000\u0000\u030a\u030b\u0005r\u0000"+ + "\u0000\u030br\u0001\u0000\u0000\u0000\u030c\u030d\u0005r\u0000\u0000\u030d"+ + "\u030e\u0005e\u0000\u0000\u030e\u030f\u0005i\u0000\u0000\u030f\u0310\u0005"+ + "n\u0000\u0000\u0310\u0311\u0005t\u0000\u0000\u0311\u0312\u0005e\u0000"+ + "\u0000\u0312\u0313\u0005r\u0000\u0000\u0313\u0314\u0005p\u0000\u0000\u0314"+ + "\u0315\u0005r\u0000\u0000\u0315\u0316\u0005e\u0000\u0000\u0316\u0317\u0005"+ + "t\u0000\u0000\u0317\u0318\u0005_\u0000\u0000\u0318\u0319\u0005c\u0000"+ + "\u0000\u0319\u031a\u0005a\u0000\u0000\u031a\u031b\u0005s\u0000\u0000\u031b"+ + "\u031c\u0005t\u0000\u0000\u031ct\u0001\u0000\u0000\u0000\u031d\u031e\u0005"+ + "r\u0000\u0000\u031e\u031f\u0005e\u0000\u0000\u031f\u0320\u0005t\u0000"+ + "\u0000\u0320\u0321\u0005u\u0000\u0000\u0321\u0322\u0005r\u0000\u0000\u0322"+ + "\u0323\u0005n\u0000\u0000\u0323v\u0001\u0000\u0000\u0000\u0324\u0325\u0005"+ + "s\u0000\u0000\u0325\u0326\u0005h\u0000\u0000\u0326\u0327\u0005o\u0000"+ + "\u0000\u0327\u0328\u0005r\u0000\u0000\u0328\u0329\u0005t\u0000\u0000\u0329"+ + "x\u0001\u0000\u0000\u0000\u032a\u032b\u0005s\u0000\u0000\u032b\u032c\u0005"+ + "i\u0000\u0000\u032c\u032d\u0005g\u0000\u0000\u032d\u032e\u0005n\u0000"+ + "\u0000\u032e\u032f\u0005e\u0000\u0000\u032f\u0330\u0005d\u0000\u0000\u0330"+ + "z\u0001\u0000\u0000\u0000\u0331\u0332\u0005s\u0000\u0000\u0332\u0333\u0005"+ + "i\u0000\u0000\u0333\u0334\u0005z\u0000\u0000\u0334\u0335\u0005e\u0000"+ + "\u0000\u0335\u0336\u0005o\u0000\u0000\u0336\u0337\u0005f\u0000\u0000\u0337"+ + "|\u0001\u0000\u0000\u0000\u0338\u0339\u0005s\u0000\u0000\u0339\u033a\u0005"+ + "t\u0000\u0000\u033a\u033b\u0005a\u0000\u0000\u033b\u033c\u0005t\u0000"+ + "\u0000\u033c\u033d\u0005i\u0000\u0000\u033d\u033e\u0005c\u0000\u0000\u033e"+ + "~\u0001\u0000\u0000\u0000\u033f\u0340\u0005s\u0000\u0000\u0340\u0341\u0005"+ + "t\u0000\u0000\u0341\u0342\u0005a\u0000\u0000\u0342\u0343\u0005t\u0000"+ + "\u0000\u0343\u0344\u0005i\u0000\u0000\u0344\u0345\u0005c\u0000\u0000\u0345"+ + "\u0346\u0005_\u0000\u0000\u0346\u0347\u0005a\u0000\u0000\u0347\u0348\u0005"+ + "s\u0000\u0000\u0348\u0349\u0005s\u0000\u0000\u0349\u034a\u0005e\u0000"+ + "\u0000\u034a\u034b\u0005r\u0000\u0000\u034b\u034c\u0005t\u0000\u0000\u034c"+ + "\u0080\u0001\u0000\u0000\u0000\u034d\u034e\u0005s\u0000\u0000\u034e\u034f"+ + "\u0005t\u0000\u0000\u034f\u0350\u0005a\u0000\u0000\u0350\u0351\u0005t"+ + "\u0000\u0000\u0351\u0352\u0005i\u0000\u0000\u0352\u0353\u0005c\u0000\u0000"+ + "\u0353\u0354\u0005_\u0000\u0000\u0354\u0355\u0005c\u0000\u0000\u0355\u0356"+ + "\u0005a\u0000\u0000\u0356\u0357\u0005s\u0000\u0000\u0357\u0358\u0005t"+ + "\u0000\u0000\u0358\u0082\u0001\u0000\u0000\u0000\u0359\u035a\u0005s\u0000"+ + "\u0000\u035a\u035b\u0005t\u0000\u0000\u035b\u035c\u0005r\u0000\u0000\u035c"+ + "\u035d\u0005u\u0000\u0000\u035d\u035e\u0005c\u0000\u0000\u035e\u035f\u0005"+ + "t\u0000\u0000\u035f\u0084\u0001\u0000\u0000\u0000\u0360\u0361\u0005s\u0000"+ + "\u0000\u0361\u0362\u0005w\u0000\u0000\u0362\u0363\u0005i\u0000\u0000\u0363"+ + "\u0364\u0005t\u0000\u0000\u0364\u0365\u0005c\u0000\u0000\u0365\u0366\u0005"+ + "h\u0000\u0000\u0366\u0086\u0001\u0000\u0000\u0000\u0367\u0368\u0005t\u0000"+ + "\u0000\u0368\u0369\u0005e\u0000\u0000\u0369\u036a\u0005m\u0000\u0000\u036a"+ + "\u036b\u0005p\u0000\u0000\u036b\u036c\u0005l\u0000\u0000\u036c\u036d\u0005"+ + "a\u0000\u0000\u036d\u036e\u0005t\u0000\u0000\u036e\u036f\u0005e\u0000"+ + "\u0000\u036f\u0088\u0001\u0000\u0000\u0000\u0370\u0371\u0005t\u0000\u0000"+ + "\u0371\u0372\u0005h\u0000\u0000\u0372\u0373\u0005i\u0000\u0000\u0373\u0374"+ + "\u0005s\u0000\u0000\u0374\u008a\u0001\u0000\u0000\u0000\u0375\u0376\u0005"+ + "t\u0000\u0000\u0376\u0377\u0005h\u0000\u0000\u0377\u0378\u0005r\u0000"+ + "\u0000\u0378\u0379\u0005e\u0000\u0000\u0379\u037a\u0005a\u0000\u0000\u037a"+ + "\u037b\u0005d\u0000\u0000\u037b\u037c\u0005_\u0000\u0000\u037c\u037d\u0005"+ + "l\u0000\u0000\u037d\u037e\u0005o\u0000\u0000\u037e\u037f\u0005c\u0000"+ + "\u0000\u037f\u0380\u0005a\u0000\u0000\u0380\u0381\u0005l\u0000\u0000\u0381"+ + "\u008c\u0001\u0000\u0000\u0000\u0382\u0383\u0005t\u0000\u0000\u0383\u0384"+ + "\u0005h\u0000\u0000\u0384\u0385\u0005r\u0000\u0000\u0385\u0386\u0005o"+ + "\u0000\u0000\u0386\u0387\u0005w\u0000\u0000\u0387\u008e\u0001\u0000\u0000"+ + "\u0000\u0388\u0389\u0005t\u0000\u0000\u0389\u038a\u0005r\u0000\u0000\u038a"+ + "\u038b\u0005u\u0000\u0000\u038b\u038c\u0005e\u0000\u0000\u038c\u0090\u0001"+ + "\u0000\u0000\u0000\u038d\u038e\u0005t\u0000\u0000\u038e\u038f\u0005r\u0000"+ + "\u0000\u038f\u0390\u0005y\u0000\u0000\u0390\u0092\u0001\u0000\u0000\u0000"+ + "\u0391\u0392\u0005t\u0000\u0000\u0392\u0393\u0005y\u0000\u0000\u0393\u0394"+ + "\u0005p\u0000\u0000\u0394\u0395\u0005e\u0000\u0000\u0395\u0396\u0005d"+ + "\u0000\u0000\u0396\u0397\u0005e\u0000\u0000\u0397\u0398\u0005f\u0000\u0000"+ + "\u0398\u0094\u0001\u0000\u0000\u0000\u0399\u039a\u0005t\u0000\u0000\u039a"+ + "\u039b\u0005y\u0000\u0000\u039b\u039c\u0005p\u0000\u0000\u039c\u039d\u0005"+ + "e\u0000\u0000\u039d\u039e\u0005i\u0000\u0000\u039e\u039f\u0005d\u0000"+ + "\u0000\u039f\u0096\u0001\u0000\u0000\u0000\u03a0\u03a1\u0005t\u0000\u0000"+ + "\u03a1\u03a2\u0005y\u0000\u0000\u03a2\u03a3\u0005p\u0000\u0000\u03a3\u03a4"+ + "\u0005e\u0000\u0000\u03a4\u03a5\u0005n\u0000\u0000\u03a5\u03a6\u0005a"+ + "\u0000\u0000\u03a6\u03a7\u0005m\u0000\u0000\u03a7\u03a8\u0005e\u0000\u0000"+ + "\u03a8\u0098\u0001\u0000\u0000\u0000\u03a9\u03aa\u0005u\u0000\u0000\u03aa"+ + "\u03ab\u0005n\u0000\u0000\u03ab\u03ac\u0005i\u0000\u0000\u03ac\u03ad\u0005"+ + "o\u0000\u0000\u03ad\u03ae\u0005n\u0000\u0000\u03ae\u009a\u0001\u0000\u0000"+ + "\u0000\u03af\u03b0\u0005u\u0000\u0000\u03b0\u03b1\u0005n\u0000\u0000\u03b1"+ + "\u03b2\u0005s\u0000\u0000\u03b2\u03b3\u0005i\u0000\u0000\u03b3\u03b4\u0005"+ + "g\u0000\u0000\u03b4\u03b5\u0005n\u0000\u0000\u03b5\u03b6\u0005e\u0000"+ + "\u0000\u03b6\u03b7\u0005d\u0000\u0000\u03b7\u009c\u0001\u0000\u0000\u0000"+ + "\u03b8\u03b9\u0005u\u0000\u0000\u03b9\u03ba\u0005s\u0000\u0000\u03ba\u03bb"+ + "\u0005i\u0000\u0000\u03bb\u03bc\u0005n\u0000\u0000\u03bc\u03bd\u0005g"+ + "\u0000\u0000\u03bd\u009e\u0001\u0000\u0000\u0000\u03be\u03bf\u0005v\u0000"+ + "\u0000\u03bf\u03c0\u0005i\u0000\u0000\u03c0\u03c1\u0005r\u0000\u0000\u03c1"+ + "\u03c2\u0005t\u0000\u0000\u03c2\u03c3\u0005u\u0000\u0000\u03c3\u03c4\u0005"+ + "a\u0000\u0000\u03c4\u03c5\u0005l\u0000\u0000\u03c5\u00a0\u0001\u0000\u0000"+ + "\u0000\u03c6\u03c7\u0005v\u0000\u0000\u03c7\u03c8\u0005o\u0000\u0000\u03c8"+ + "\u03c9\u0005i\u0000\u0000\u03c9\u03ca\u0005d\u0000\u0000\u03ca\u00a2\u0001"+ + "\u0000\u0000\u0000\u03cb\u03cc\u0005v\u0000\u0000\u03cc\u03cd\u0005o\u0000"+ + "\u0000\u03cd\u03ce\u0005l\u0000\u0000\u03ce\u03cf\u0005a\u0000\u0000\u03cf"+ + "\u03d0\u0005t\u0000\u0000\u03d0\u03d1\u0005i\u0000\u0000\u03d1\u03d2\u0005"+ + "l\u0000\u0000\u03d2\u03d3\u0005e\u0000\u0000\u03d3\u00a4\u0001\u0000\u0000"+ + "\u0000\u03d4\u03d5\u0005w\u0000\u0000\u03d5\u03d6\u0005c\u0000\u0000\u03d6"+ + "\u03d7\u0005h\u0000\u0000\u03d7\u03d8\u0005a\u0000\u0000\u03d8\u03d9\u0005"+ + "r\u0000\u0000\u03d9\u03da\u0005_\u0000\u0000\u03da\u03db\u0005t\u0000"+ + "\u0000\u03db\u00a6\u0001\u0000\u0000\u0000\u03dc\u03dd\u0005w\u0000\u0000"+ + "\u03dd\u03de\u0005h\u0000\u0000\u03de\u03df\u0005i\u0000\u0000\u03df\u03e0"+ + "\u0005l\u0000\u0000\u03e0\u03e1\u0005e\u0000\u0000\u03e1\u00a8\u0001\u0000"+ + "\u0000\u0000\u03e2\u03e3\u0005(\u0000\u0000\u03e3\u00aa\u0001\u0000\u0000"+ + "\u0000\u03e4\u03e5\u0005)\u0000\u0000\u03e5\u00ac\u0001\u0000\u0000\u0000"+ + "\u03e6\u03e7\u0005[\u0000\u0000\u03e7\u00ae\u0001\u0000\u0000\u0000\u03e8"+ + "\u03e9\u0005]\u0000\u0000\u03e9\u00b0\u0001\u0000\u0000\u0000\u03ea\u03eb"+ + "\u0005{\u0000\u0000\u03eb\u00b2\u0001\u0000\u0000\u0000\u03ec\u03ed\u0005"+ + "}\u0000\u0000\u03ed\u00b4\u0001\u0000\u0000\u0000\u03ee\u03ef\u0005+\u0000"+ + "\u0000\u03ef\u00b6\u0001\u0000\u0000\u0000\u03f0\u03f1\u0005-\u0000\u0000"+ + "\u03f1\u00b8\u0001\u0000\u0000\u0000\u03f2\u03f3\u0005*\u0000\u0000\u03f3"+ + "\u00ba\u0001\u0000\u0000\u0000\u03f4\u03f5\u0005/\u0000\u0000\u03f5\u00bc"+ + "\u0001\u0000\u0000\u0000\u03f6\u03f7\u0005%\u0000\u0000\u03f7\u00be\u0001"+ + "\u0000\u0000\u0000\u03f8\u03f9\u0005^\u0000\u0000\u03f9\u00c0\u0001\u0000"+ + "\u0000\u0000\u03fa\u03fb\u0005&\u0000\u0000\u03fb\u00c2\u0001\u0000\u0000"+ + "\u0000\u03fc\u03fd\u0005|\u0000\u0000\u03fd\u00c4\u0001\u0000\u0000\u0000"+ + "\u03fe\u03ff\u0005~\u0000\u0000\u03ff\u00c6\u0001\u0000\u0000\u0000\u0400"+ + "\u0405\u0005!\u0000\u0000\u0401\u0402\u0005n\u0000\u0000\u0402\u0403\u0005"+ + "o\u0000\u0000\u0403\u0405\u0005t\u0000\u0000\u0404\u0400\u0001\u0000\u0000"+ + "\u0000\u0404\u0401\u0001\u0000\u0000\u0000\u0405\u00c8\u0001\u0000\u0000"+ + "\u0000\u0406\u0407\u0005=\u0000\u0000\u0407\u00ca\u0001\u0000\u0000\u0000"+ + "\u0408\u0409\u0005<\u0000\u0000\u0409\u00cc\u0001\u0000\u0000\u0000\u040a"+ + "\u040b\u0005>\u0000\u0000\u040b\u00ce\u0001\u0000\u0000\u0000\u040c\u040d"+ + "\u0005+\u0000\u0000\u040d\u040e\u0005=\u0000\u0000\u040e\u00d0\u0001\u0000"+ + "\u0000\u0000\u040f\u0410\u0005-\u0000\u0000\u0410\u0411\u0005=\u0000\u0000"+ + "\u0411\u00d2\u0001\u0000\u0000\u0000\u0412\u0413\u0005*\u0000\u0000\u0413"+ + "\u0414\u0005=\u0000\u0000\u0414\u00d4\u0001\u0000\u0000\u0000\u0415\u0416"+ + "\u0005/\u0000\u0000\u0416\u0417\u0005=\u0000\u0000\u0417\u00d6\u0001\u0000"+ + "\u0000\u0000\u0418\u0419\u0005%\u0000\u0000\u0419\u041a\u0005=\u0000\u0000"+ + "\u041a\u00d8\u0001\u0000\u0000\u0000\u041b\u041c\u0005^\u0000\u0000\u041c"+ + "\u041d\u0005=\u0000\u0000\u041d\u00da\u0001\u0000\u0000\u0000\u041e\u041f"+ + "\u0005&\u0000\u0000\u041f\u0420\u0005=\u0000\u0000\u0420\u00dc\u0001\u0000"+ + "\u0000\u0000\u0421\u0422\u0005|\u0000\u0000\u0422\u0423\u0005=\u0000\u0000"+ + "\u0423\u00de\u0001\u0000\u0000\u0000\u0424\u0425\u0005<\u0000\u0000\u0425"+ + "\u0426\u0005<\u0000\u0000\u0426\u0427\u0005=\u0000\u0000\u0427\u00e0\u0001"+ + "\u0000\u0000\u0000\u0428\u0429\u0005>\u0000\u0000\u0429\u042a\u0005>\u0000"+ + "\u0000\u042a\u042b\u0005=\u0000\u0000\u042b\u00e2\u0001\u0000\u0000\u0000"+ + "\u042c\u042d\u0005=\u0000\u0000\u042d\u042e\u0005=\u0000\u0000\u042e\u00e4"+ + "\u0001\u0000\u0000\u0000\u042f\u0430\u0005!\u0000\u0000\u0430\u0431\u0005"+ + "=\u0000\u0000\u0431\u00e6\u0001\u0000\u0000\u0000\u0432\u0433\u0005<\u0000"+ + "\u0000\u0433\u0434\u0005=\u0000\u0000\u0434\u00e8\u0001\u0000\u0000\u0000"+ + "\u0435\u0436\u0005>\u0000\u0000\u0436\u0437\u0005=\u0000\u0000\u0437\u00ea"+ + "\u0001\u0000\u0000\u0000\u0438\u0439\u0005&\u0000\u0000\u0439\u043e\u0005"+ + "&\u0000\u0000\u043a\u043b\u0005a\u0000\u0000\u043b\u043c\u0005n\u0000"+ + "\u0000\u043c\u043e\u0005d\u0000\u0000\u043d\u0438\u0001\u0000\u0000\u0000"+ + "\u043d\u043a\u0001\u0000\u0000\u0000\u043e\u00ec\u0001\u0000\u0000\u0000"+ + "\u043f\u0440\u0005|\u0000\u0000\u0440\u0444\u0005|\u0000\u0000\u0441\u0442"+ + "\u0005o\u0000\u0000\u0442\u0444\u0005r\u0000\u0000\u0443\u043f\u0001\u0000"+ + "\u0000\u0000\u0443\u0441\u0001\u0000\u0000\u0000\u0444\u00ee\u0001\u0000"+ + "\u0000\u0000\u0445\u0446\u0005+\u0000\u0000\u0446\u0447\u0005+\u0000\u0000"+ + "\u0447\u00f0\u0001\u0000\u0000\u0000\u0448\u0449\u0005-\u0000\u0000\u0449"+ + "\u044a\u0005-\u0000\u0000\u044a\u00f2\u0001\u0000\u0000\u0000\u044b\u044c"+ + "\u0005,\u0000\u0000\u044c\u00f4\u0001\u0000\u0000\u0000\u044d\u044e\u0005"+ + "-\u0000\u0000\u044e\u044f\u0005>\u0000\u0000\u044f\u0450\u0005*\u0000"+ + "\u0000\u0450\u00f6\u0001\u0000\u0000\u0000\u0451\u0452\u0005-\u0000\u0000"+ + "\u0452\u0453\u0005>\u0000\u0000\u0453\u00f8\u0001\u0000\u0000\u0000\u0454"+ + "\u0455\u0005?\u0000\u0000\u0455\u00fa\u0001\u0000\u0000\u0000\u0456\u0457"+ + "\u0005:\u0000\u0000\u0457\u00fc\u0001\u0000\u0000\u0000\u0458\u0459\u0005"+ + ":\u0000\u0000\u0459\u045a\u0005:\u0000\u0000\u045a\u00fe\u0001\u0000\u0000"+ + "\u0000\u045b\u045c\u0005;\u0000\u0000\u045c\u0100\u0001\u0000\u0000\u0000"+ + "\u045d\u045e\u0005.\u0000\u0000\u045e\u0102\u0001\u0000\u0000\u0000\u045f"+ + "\u0460\u0005.\u0000\u0000\u0460\u0461\u0005*\u0000\u0000\u0461\u0104\u0001"+ + "\u0000\u0000\u0000\u0462\u0463\u0005.\u0000\u0000\u0463\u0464\u0005.\u0000"+ + "\u0000\u0464\u0465\u0005.\u0000\u0000\u0465\u0106\u0001\u0000\u0000\u0000"+ + "\u0466\u0467\u0003\u011f\u008f\u0000\u0467\u0468\u0003\u011f\u008f\u0000"+ + "\u0468\u0469\u0003\u011f\u008f\u0000\u0469\u046a\u0003\u011f\u008f\u0000"+ + "\u046a\u0108\u0001\u0000\u0000\u0000\u046b\u046c\u0005\\\u0000\u0000\u046c"+ + "\u046d\u0005u\u0000\u0000\u046d\u046e\u0001\u0000\u0000\u0000\u046e\u0476"+ + "\u0003\u0107\u0083\u0000\u046f\u0470\u0005\\\u0000\u0000\u0470\u0471\u0005"+ + "U\u0000\u0000\u0471\u0472\u0001\u0000\u0000\u0000\u0472\u0473\u0003\u0107"+ + "\u0083\u0000\u0473\u0474\u0003\u0107\u0083\u0000\u0474\u0476\u0001\u0000"+ + "\u0000\u0000\u0475\u046b\u0001\u0000\u0000\u0000\u0475\u046f\u0001\u0000"+ + "\u0000\u0000\u0476\u010a\u0001\u0000\u0000\u0000\u0477\u047c\u0003\u010d"+ + "\u0086\u0000\u0478\u047b\u0003\u010d\u0086\u0000\u0479\u047b\u0003\u0111"+ + "\u0088\u0000\u047a\u0478\u0001\u0000\u0000\u0000\u047a\u0479\u0001\u0000"+ + "\u0000\u0000\u047b\u047e\u0001\u0000\u0000\u0000\u047c\u047a\u0001\u0000"+ + "\u0000\u0000\u047c\u047d\u0001\u0000\u0000\u0000\u047d\u010c\u0001\u0000"+ + "\u0000\u0000\u047e\u047c\u0001\u0000\u0000\u0000\u047f\u0482\u0003\u010f"+ + "\u0087\u0000\u0480\u0482\u0003\u0109\u0084\u0000\u0481\u047f\u0001\u0000"+ + "\u0000\u0000\u0481\u0480\u0001\u0000\u0000\u0000\u0482\u010e\u0001\u0000"+ + "\u0000\u0000\u0483\u0484\u0007\u0002\u0000\u0000\u0484\u0110\u0001\u0000"+ + "\u0000\u0000\u0485\u0486\u0007\u0003\u0000\u0000\u0486\u0112\u0001\u0000"+ + "\u0000\u0000\u0487\u048e\u0003\u011b\u008d\u0000\u0488\u048a\u0005\'\u0000"+ + "\u0000\u0489\u0488\u0001\u0000\u0000\u0000\u0489\u048a\u0001\u0000\u0000"+ + "\u0000\u048a\u048b\u0001\u0000\u0000\u0000\u048b\u048d\u0003\u0111\u0088"+ + "\u0000\u048c\u0489\u0001\u0000\u0000\u0000\u048d\u0490\u0001\u0000\u0000"+ + "\u0000\u048e\u048c\u0001\u0000\u0000\u0000\u048e\u048f\u0001\u0000\u0000"+ + "\u0000\u048f\u0114\u0001\u0000\u0000\u0000\u0490\u048e\u0001\u0000\u0000"+ + "\u0000\u0491\u0498\u00050\u0000\u0000\u0492\u0494\u0005\'\u0000\u0000"+ + "\u0493\u0492\u0001\u0000\u0000\u0000\u0493\u0494\u0001\u0000\u0000\u0000"+ + "\u0494\u0495\u0001\u0000\u0000\u0000\u0495\u0497\u0003\u011d\u008e\u0000"+ + "\u0496\u0493\u0001\u0000\u0000\u0000\u0497\u049a\u0001\u0000\u0000\u0000"+ + "\u0498\u0496\u0001\u0000\u0000\u0000\u0498\u0499\u0001\u0000\u0000\u0000"+ + "\u0499\u0116\u0001\u0000\u0000\u0000\u049a\u0498\u0001\u0000\u0000\u0000"+ + "\u049b\u049c\u00050\u0000\u0000\u049c\u04a0\u0005x\u0000\u0000\u049d\u049e"+ + "\u00050\u0000\u0000\u049e\u04a0\u0005X\u0000\u0000\u049f\u049b\u0001\u0000"+ + "\u0000\u0000\u049f\u049d\u0001\u0000\u0000\u0000\u04a0\u04a1\u0001\u0000"+ + "\u0000\u0000\u04a1\u04a8\u0003\u011f\u008f\u0000\u04a2\u04a4\u0005\'\u0000"+ + "\u0000\u04a3\u04a2\u0001\u0000\u0000\u0000\u04a3\u04a4\u0001\u0000\u0000"+ + "\u0000\u04a4\u04a5\u0001\u0000\u0000\u0000\u04a5\u04a7\u0003\u011f\u008f"+ + "\u0000\u04a6\u04a3\u0001\u0000\u0000\u0000\u04a7\u04aa\u0001\u0000\u0000"+ + "\u0000\u04a8\u04a6\u0001\u0000\u0000\u0000\u04a8\u04a9\u0001\u0000\u0000"+ + "\u0000\u04a9\u0118\u0001\u0000\u0000\u0000\u04aa\u04a8\u0001\u0000\u0000"+ + "\u0000\u04ab\u04ac\u00050\u0000\u0000\u04ac\u04b0\u0005b\u0000\u0000\u04ad"+ + "\u04ae\u00050\u0000\u0000\u04ae\u04b0\u0005B\u0000\u0000\u04af\u04ab\u0001"+ + "\u0000\u0000\u0000\u04af\u04ad\u0001\u0000\u0000\u0000\u04b0\u04b1\u0001"+ + "\u0000\u0000\u0000\u04b1\u04b8\u0003\u0121\u0090\u0000\u04b2\u04b4\u0005"+ + "\'\u0000\u0000\u04b3\u04b2\u0001\u0000\u0000\u0000\u04b3\u04b4\u0001\u0000"+ + "\u0000\u0000\u04b4\u04b5\u0001\u0000\u0000\u0000\u04b5\u04b7\u0003\u0121"+ + "\u0090\u0000\u04b6\u04b3\u0001\u0000\u0000\u0000\u04b7\u04ba\u0001\u0000"+ + "\u0000\u0000\u04b8\u04b6\u0001\u0000\u0000\u0000\u04b8\u04b9\u0001\u0000"+ + "\u0000\u0000\u04b9\u011a\u0001\u0000\u0000\u0000\u04ba\u04b8\u0001\u0000"+ + "\u0000\u0000\u04bb\u04bc\u0007\u0004\u0000\u0000\u04bc\u011c\u0001\u0000"+ + "\u0000\u0000\u04bd\u04be\u0007\u0005\u0000\u0000\u04be\u011e\u0001\u0000"+ + "\u0000\u0000\u04bf\u04c0\u0007\u0006\u0000\u0000\u04c0\u0120\u0001\u0000"+ + "\u0000\u0000\u04c1\u04c2\u0007\u0007\u0000\u0000\u04c2\u0122\u0001\u0000"+ + "\u0000\u0000\u04c3\u04c5\u0003\u0125\u0092\u0000\u04c4\u04c6\u0003\u0127"+ + "\u0093\u0000\u04c5\u04c4\u0001\u0000\u0000\u0000\u04c5\u04c6\u0001\u0000"+ + "\u0000\u0000\u04c6\u04d4\u0001\u0000\u0000\u0000\u04c7\u04c9\u0003\u0125"+ + "\u0092\u0000\u04c8\u04ca\u0003\u0129\u0094\u0000\u04c9\u04c8\u0001\u0000"+ + "\u0000\u0000\u04c9\u04ca\u0001\u0000\u0000\u0000\u04ca\u04d4\u0001\u0000"+ + "\u0000\u0000\u04cb\u04cd\u0003\u0127\u0093\u0000\u04cc\u04ce\u0003\u0125"+ + "\u0092\u0000\u04cd\u04cc\u0001\u0000\u0000\u0000\u04cd\u04ce\u0001\u0000"+ + "\u0000\u0000\u04ce\u04d4\u0001\u0000\u0000\u0000\u04cf\u04d1\u0003\u0129"+ + "\u0094\u0000\u04d0\u04d2\u0003\u0125\u0092\u0000\u04d1\u04d0\u0001\u0000"+ + "\u0000\u0000\u04d1\u04d2\u0001\u0000\u0000\u0000\u04d2\u04d4\u0001\u0000"+ + "\u0000\u0000\u04d3\u04c3\u0001\u0000\u0000\u0000\u04d3\u04c7\u0001\u0000"+ + "\u0000\u0000\u04d3\u04cb\u0001\u0000\u0000\u0000\u04d3\u04cf\u0001\u0000"+ + "\u0000\u0000\u04d4\u0124\u0001\u0000\u0000\u0000\u04d5\u04d6\u0007\b\u0000"+ + "\u0000\u04d6\u0126\u0001\u0000\u0000\u0000\u04d7\u04d8\u0007\t\u0000\u0000"+ + "\u04d8\u0128\u0001\u0000\u0000\u0000\u04d9\u04da\u0005l\u0000\u0000\u04da"+ + "\u04de\u0005l\u0000\u0000\u04db\u04dc\u0005L\u0000\u0000\u04dc\u04de\u0005"+ + "L\u0000\u0000\u04dd\u04d9\u0001\u0000\u0000\u0000\u04dd\u04db\u0001\u0000"+ + "\u0000\u0000\u04de\u012a\u0001\u0000\u0000\u0000\u04df\u04e3\b\n\u0000"+ + "\u0000\u04e0\u04e3\u0003\u012d\u0096\u0000\u04e1\u04e3\u0003\u0109\u0084"+ + "\u0000\u04e2\u04df\u0001\u0000\u0000\u0000\u04e2\u04e0\u0001\u0000\u0000"+ + "\u0000\u04e2\u04e1\u0001\u0000\u0000\u0000\u04e3\u012c\u0001\u0000\u0000"+ + "\u0000\u04e4\u04e8\u0003\u012f\u0097\u0000\u04e5\u04e8\u0003\u0131\u0098"+ + "\u0000\u04e6\u04e8\u0003\u0133\u0099\u0000\u04e7\u04e4\u0001\u0000\u0000"+ + "\u0000\u04e7\u04e5\u0001\u0000\u0000\u0000\u04e7\u04e6\u0001\u0000\u0000"+ + "\u0000\u04e8\u012e\u0001\u0000\u0000\u0000\u04e9\u04ea\u0005\\\u0000\u0000"+ + "\u04ea\u0508\u0005\'\u0000\u0000\u04eb\u04ec\u0005\\\u0000\u0000\u04ec"+ + "\u0508\u0005\"\u0000\u0000\u04ed\u04ee\u0005\\\u0000\u0000\u04ee\u0508"+ + "\u0005?\u0000\u0000\u04ef\u04f0\u0005\\\u0000\u0000\u04f0\u0508\u0005"+ + "\\\u0000\u0000\u04f1\u04f2\u0005\\\u0000\u0000\u04f2\u0508\u0005a\u0000"+ + "\u0000\u04f3\u04f4\u0005\\\u0000\u0000\u04f4\u0508\u0005b\u0000\u0000"+ + "\u04f5\u04f6\u0005\\\u0000\u0000\u04f6\u0508\u0005f\u0000\u0000\u04f7"+ + "\u04f8\u0005\\\u0000\u0000\u04f8\u0508\u0005n\u0000\u0000\u04f9\u04fa"+ + "\u0005\\\u0000\u0000\u04fa\u0508\u0005r\u0000\u0000\u04fb\u0501\u0005"+ + "\\\u0000\u0000\u04fc\u04fe\u0005\r\u0000\u0000\u04fd\u04ff\u0005\n\u0000"+ + "\u0000\u04fe\u04fd\u0001\u0000\u0000\u0000\u04fe\u04ff\u0001\u0000\u0000"+ + "\u0000\u04ff\u0502\u0001\u0000\u0000\u0000\u0500\u0502\u0005\n\u0000\u0000"+ + "\u0501\u04fc\u0001\u0000\u0000\u0000\u0501\u0500\u0001\u0000\u0000\u0000"+ + "\u0502\u0508\u0001\u0000\u0000\u0000\u0503\u0504\u0005\\\u0000\u0000\u0504"+ + "\u0508\u0005t\u0000\u0000\u0505\u0506\u0005\\\u0000\u0000\u0506\u0508"+ + "\u0005v\u0000\u0000\u0507\u04e9\u0001\u0000\u0000\u0000\u0507\u04eb\u0001"+ + "\u0000\u0000\u0000\u0507\u04ed\u0001\u0000\u0000\u0000\u0507\u04ef\u0001"+ + "\u0000\u0000\u0000\u0507\u04f1\u0001\u0000\u0000\u0000\u0507\u04f3\u0001"+ + "\u0000\u0000\u0000\u0507\u04f5\u0001\u0000\u0000\u0000\u0507\u04f7\u0001"+ + "\u0000\u0000\u0000\u0507\u04f9\u0001\u0000\u0000\u0000\u0507\u04fb\u0001"+ + "\u0000\u0000\u0000\u0507\u0503\u0001\u0000\u0000\u0000\u0507\u0505\u0001"+ + "\u0000\u0000\u0000\u0508\u0130\u0001\u0000\u0000\u0000\u0509\u050a\u0005"+ + "\\\u0000\u0000\u050a\u0515\u0003\u011d\u008e\u0000\u050b\u050c\u0005\\"+ + "\u0000\u0000\u050c\u050d\u0003\u011d\u008e\u0000\u050d\u050e\u0003\u011d"+ + "\u008e\u0000\u050e\u0515\u0001\u0000\u0000\u0000\u050f\u0510\u0005\\\u0000"+ + "\u0000\u0510\u0511\u0003\u011d\u008e\u0000\u0511\u0512\u0003\u011d\u008e"+ + "\u0000\u0512\u0513\u0003\u011d\u008e\u0000\u0513\u0515\u0001\u0000\u0000"+ + "\u0000\u0514\u0509\u0001\u0000\u0000\u0000\u0514\u050b\u0001\u0000\u0000"+ + "\u0000\u0514\u050f\u0001\u0000\u0000\u0000\u0515\u0132\u0001\u0000\u0000"+ + "\u0000\u0516\u0517\u0005\\\u0000\u0000\u0517\u0518\u0005x\u0000\u0000"+ + "\u0518\u051a\u0001\u0000\u0000\u0000\u0519\u051b\u0003\u011f\u008f\u0000"+ + "\u051a\u0519\u0001\u0000\u0000\u0000\u051b\u051c\u0001\u0000\u0000\u0000"+ + "\u051c\u051a\u0001\u0000\u0000\u0000\u051c\u051d\u0001\u0000\u0000\u0000"+ + "\u051d\u0134\u0001\u0000\u0000\u0000\u051e\u0520\u0003\u013b\u009d\u0000"+ + "\u051f\u051e\u0001\u0000\u0000\u0000\u051f\u0520\u0001\u0000\u0000\u0000"+ + "\u0520\u0521\u0001\u0000\u0000\u0000\u0521\u0522\u0005.\u0000\u0000\u0522"+ + "\u0527\u0003\u013b\u009d\u0000\u0523\u0524\u0003\u013b\u009d\u0000\u0524"+ + "\u0525\u0005.\u0000\u0000\u0525\u0527\u0001\u0000\u0000\u0000\u0526\u051f"+ + "\u0001\u0000\u0000\u0000\u0526\u0523\u0001\u0000\u0000\u0000\u0527\u0136"+ + "\u0001\u0000\u0000\u0000\u0528\u052a\u0005e\u0000\u0000\u0529\u052b\u0003"+ + "\u0139\u009c\u0000\u052a\u0529\u0001\u0000\u0000\u0000\u052a\u052b\u0001"+ + "\u0000\u0000\u0000\u052b\u052c\u0001\u0000\u0000\u0000\u052c\u0533\u0003"+ + "\u013b\u009d\u0000\u052d\u052f\u0005E\u0000\u0000\u052e\u0530\u0003\u0139"+ + "\u009c\u0000\u052f\u052e\u0001\u0000\u0000\u0000\u052f\u0530\u0001\u0000"+ + "\u0000\u0000\u0530\u0531\u0001\u0000\u0000\u0000\u0531\u0533\u0003\u013b"+ + "\u009d\u0000\u0532\u0528\u0001\u0000\u0000\u0000\u0532\u052d\u0001\u0000"+ + "\u0000\u0000\u0533\u0138\u0001\u0000\u0000\u0000\u0534\u0535\u0007\u000b"+ + "\u0000\u0000\u0535\u013a\u0001\u0000\u0000\u0000\u0536\u053d\u0003\u0111"+ + "\u0088\u0000\u0537\u0539\u0005\'\u0000\u0000\u0538\u0537\u0001\u0000\u0000"+ + "\u0000\u0538\u0539\u0001\u0000\u0000\u0000\u0539\u053a\u0001\u0000\u0000"+ + "\u0000\u053a\u053c\u0003\u0111\u0088\u0000\u053b\u0538\u0001\u0000\u0000"+ + "\u0000\u053c\u053f\u0001\u0000\u0000\u0000\u053d\u053b\u0001\u0000\u0000"+ + "\u0000\u053d\u053e\u0001\u0000\u0000\u0000\u053e\u013c\u0001\u0000\u0000"+ + "\u0000\u053f\u053d\u0001\u0000\u0000\u0000\u0540\u0541\u0007\f\u0000\u0000"+ + "\u0541\u013e\u0001\u0000\u0000\u0000\u0542\u0543\u0005u\u0000\u0000\u0543"+ + "\u0546\u00058\u0000\u0000\u0544\u0546\u0007\u0000\u0000\u0000\u0545\u0542"+ + "\u0001\u0000\u0000\u0000\u0545\u0544\u0001\u0000\u0000\u0000\u0546\u0140"+ + "\u0001\u0000\u0000\u0000\u0547\u054b\b\r\u0000\u0000\u0548\u054b\u0003"+ + "\u012d\u0096\u0000\u0549\u054b\u0003\u0109\u0084\u0000\u054a\u0547\u0001"+ + "\u0000\u0000\u0000\u054a\u0548\u0001\u0000\u0000\u0000\u054a\u0549\u0001"+ + "\u0000\u0000\u0000\u054b\u0142\u0001\u0000\u0000\u0000\u054c\u054d\u0005"+ + "R\u0000\u0000\u054d\u054e\u0005\"\u0000\u0000\u054e\u0554\u0001\u0000"+ + "\u0000\u0000\u054f\u0550\u0005\\\u0000\u0000\u0550\u0553\u0007\u000e\u0000"+ + "\u0000\u0551\u0553\b\u000f\u0000\u0000\u0552\u054f\u0001\u0000\u0000\u0000"+ + "\u0552\u0551\u0001\u0000\u0000\u0000\u0553\u0556\u0001\u0000\u0000\u0000"+ + "\u0554\u0555\u0001\u0000\u0000\u0000\u0554\u0552\u0001\u0000\u0000\u0000"+ + "\u0555\u0557\u0001\u0000\u0000\u0000\u0556\u0554\u0001\u0000\u0000\u0000"+ + "\u0557\u055b\u0005(\u0000\u0000\u0558\u055a\b\u0010\u0000\u0000\u0559"+ + "\u0558\u0001\u0000\u0000\u0000\u055a\u055d\u0001\u0000\u0000\u0000\u055b"+ + "\u055c\u0001\u0000\u0000\u0000\u055b\u0559\u0001\u0000\u0000\u0000\u055c"+ + "\u055e\u0001\u0000\u0000\u0000\u055d\u055b\u0001\u0000\u0000\u0000\u055e"+ + "\u0564\u0005)\u0000\u0000\u055f\u0560\u0005\\\u0000\u0000\u0560\u0563"+ + "\u0007\u000e\u0000\u0000\u0561\u0563\b\u0011\u0000\u0000\u0562\u055f\u0001"+ + "\u0000\u0000\u0000\u0562\u0561\u0001\u0000\u0000\u0000\u0563\u0566\u0001"+ + "\u0000\u0000\u0000\u0564\u0565\u0001\u0000\u0000\u0000\u0564\u0562\u0001"+ + "\u0000\u0000\u0000\u0565\u0567\u0001\u0000\u0000\u0000\u0566\u0564\u0001"+ + "\u0000\u0000\u0000\u0567\u0568\u0005\"\u0000\u0000\u0568\u0144\u0001\u0000"+ + "\u0000\u0000\u0569\u056a\u0003\u0113\u0089\u0000\u056a\u056b\u0003\u014d"+ + "\u00a6\u0000\u056b\u0576\u0001\u0000\u0000\u0000\u056c\u056d\u0003\u0115"+ + "\u008a\u0000\u056d\u056e\u0003\u014d\u00a6\u0000\u056e\u0576\u0001\u0000"+ + "\u0000\u0000\u056f\u0570\u0003\u0117\u008b\u0000\u0570\u0571\u0003\u014d"+ + "\u00a6\u0000\u0571\u0576\u0001\u0000\u0000\u0000\u0572\u0573\u0003\u0119"+ + "\u008c\u0000\u0573\u0574\u0003\u014d\u00a6\u0000\u0574\u0576\u0001\u0000"+ + "\u0000\u0000\u0575\u0569\u0001\u0000\u0000\u0000\u0575\u056c\u0001\u0000"+ + "\u0000\u0000\u0575\u056f\u0001\u0000\u0000\u0000\u0575\u0572\u0001\u0000"+ + "\u0000\u0000\u0576\u0146\u0001\u0000\u0000\u0000\u0577\u0579\u0003\u0135"+ + "\u009a\u0000\u0578\u057a\u0003\u0137\u009b\u0000\u0579\u0578\u0001\u0000"+ + "\u0000\u0000\u0579\u057a\u0001\u0000\u0000\u0000\u057a\u057b\u0001\u0000"+ + "\u0000\u0000\u057b\u057c\u0003\u014d\u00a6\u0000\u057c\u0582\u0001\u0000"+ + "\u0000\u0000\u057d\u057e\u0003\u013b\u009d\u0000\u057e\u057f\u0003\u0137"+ + "\u009b\u0000\u057f\u0580\u0003\u014d\u00a6\u0000\u0580\u0582\u0001\u0000"+ + "\u0000\u0000\u0581\u0577\u0001\u0000\u0000\u0000\u0581\u057d\u0001\u0000"+ + "\u0000\u0000\u0582\u0148\u0001\u0000\u0000\u0000\u0583\u0584\u0003\u0007"+ + "\u0003\u0000\u0584\u0585\u0003\u014d\u00a6\u0000\u0585\u014a\u0001\u0000"+ + "\u0000\u0000\u0586\u0587\u0003\u0003\u0001\u0000\u0587\u0588\u0003\u014d"+ + "\u00a6\u0000\u0588\u014c\u0001\u0000\u0000\u0000\u0589\u058a\u0003\u010b"+ + "\u0085\u0000\u058a\u014e\u0001\u0000\u0000\u0000\u058b\u058d\u0007\u0012"+ + "\u0000\u0000\u058c\u058b\u0001\u0000\u0000\u0000\u058d\u058e\u0001\u0000"+ + "\u0000\u0000\u058e\u058c\u0001\u0000\u0000\u0000\u058e\u058f\u0001\u0000"+ + "\u0000\u0000\u058f\u0590\u0001\u0000\u0000\u0000\u0590\u0591\u0006\u00a7"+ + "\u0001\u0000\u0591\u0150\u0001\u0000\u0000\u0000\u0592\u0594\u0005\r\u0000"+ + "\u0000\u0593\u0595\u0005\n\u0000\u0000\u0594\u0593\u0001\u0000\u0000\u0000"+ + "\u0594\u0595\u0001\u0000\u0000\u0000\u0595\u0598\u0001\u0000\u0000\u0000"+ + "\u0596\u0598\u0005\n\u0000\u0000\u0597\u0592\u0001\u0000\u0000\u0000\u0597"+ + "\u0596\u0001\u0000\u0000\u0000\u0598\u0599\u0001\u0000\u0000\u0000\u0599"+ + "\u059a\u0006\u00a8\u0001\u0000\u059a\u0152\u0001\u0000\u0000\u0000\u059b"+ + "\u059c\u0005/\u0000\u0000\u059c\u059d\u0005*\u0000\u0000\u059d\u05a1\u0001"+ + "\u0000\u0000\u0000\u059e\u05a0\t\u0000\u0000\u0000\u059f\u059e\u0001\u0000"+ + "\u0000\u0000\u05a0\u05a3\u0001\u0000\u0000\u0000\u05a1\u05a2\u0001\u0000"+ + "\u0000\u0000\u05a1\u059f\u0001\u0000\u0000\u0000\u05a2\u05a4\u0001\u0000"+ + "\u0000\u0000\u05a3\u05a1\u0001\u0000\u0000\u0000\u05a4\u05a5\u0005*\u0000"+ + "\u0000\u05a5\u05a6\u0005/\u0000\u0000\u05a6\u05a7\u0001\u0000\u0000\u0000"+ + "\u05a7\u05a8\u0006\u00a9\u0001\u0000\u05a8\u0154\u0001\u0000\u0000\u0000"+ + "\u05a9\u05aa\u0005/\u0000\u0000\u05aa\u05ab\u0005/\u0000\u0000\u05ab\u05af"+ + "\u0001\u0000\u0000\u0000\u05ac\u05ae\b\u0013\u0000\u0000\u05ad\u05ac\u0001"+ + "\u0000\u0000\u0000\u05ae\u05b1\u0001\u0000\u0000\u0000\u05af\u05ad\u0001"+ + "\u0000\u0000\u0000\u05af\u05b0\u0001\u0000\u0000\u0000\u05b0\u05b2\u0001"+ + "\u0000\u0000\u0000\u05b1\u05af\u0001\u0000\u0000\u0000\u05b2\u05b3\u0006"+ + "\u00aa\u0001\u0000\u05b3\u0156\u0001\u0000\u0000\u0000J\u0000\u0159\u015d"+ + "\u0161\u0165\u0167\u016a\u0170\u0176\u0179\u017e\u0180\u0183\u018a\u018e"+ + "\u0192\u019a\u01a0\u01a5\u01aa\u01af\u01b7\u0404\u043d\u0443\u0475\u047a"+ + "\u047c\u0481\u0489\u048e\u0493\u0498\u049f\u04a3\u04a8\u04af\u04b3\u04b8"+ + "\u04c5\u04c9\u04cd\u04d1\u04d3\u04dd\u04e2\u04e7\u04fe\u0501\u0507\u0514"+ + "\u051c\u051f\u0526\u052a\u052f\u0532\u0538\u053d\u0545\u054a\u0552\u0554"+ + "\u055b\u0562\u0564\u0575\u0579\u0581\u058e\u0594\u0597\u05a1\u05af\u0002"+ + "\u0000\u0001\u0000\u0006\u0000\u0000"; + public static final ATN _ATN = + new ATNDeserializer().deserialize(_serializedATN.toCharArray()); + static { + _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; + for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { + _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); + } + } +} \ No newline at end of file diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.tokens b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.tokens new file mode 100644 index 00000000..97906afe --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Lexer.tokens @@ -0,0 +1,264 @@ +IntegerLiteral=1 +CharacterLiteral=2 +FloatingLiteral=3 +StringLiteral=4 +BooleanLiteral=5 +PointerLiteral=6 +UserDefinedLiteral=7 +MultiLineMacro=8 +Directive=9 +Alignas=10 +Alignof=11 +Asm=12 +Auto=13 +Bool=14 +Break=15 +Case=16 +Catch=17 +Char=18 +Char16=19 +Char32=20 +Class=21 +Const=22 +Constexpr=23 +Const_cast=24 +Continue=25 +Decltype=26 +Default=27 +Delete=28 +Do=29 +Double=30 +Dynamic_cast=31 +Else=32 +Enum=33 +Explicit=34 +Export=35 +Extern=36 +False_=37 +Final=38 +Float=39 +For=40 +Friend=41 +Goto=42 +If=43 +Inline=44 +Int=45 +Long=46 +Mutable=47 +Namespace=48 +New=49 +Noexcept=50 +Nullptr=51 +Operator=52 +Override=53 +Private=54 +Protected=55 +Public=56 +Register=57 +Reinterpret_cast=58 +Return=59 +Short=60 +Signed=61 +Sizeof=62 +Static=63 +Static_assert=64 +Static_cast=65 +Struct=66 +Switch=67 +Template=68 +This=69 +Thread_local=70 +Throw=71 +True_=72 +Try=73 +Typedef=74 +Typeid_=75 +Typename_=76 +Union=77 +Unsigned=78 +Using=79 +Virtual=80 +Void=81 +Volatile=82 +Wchar=83 +While=84 +LeftParen=85 +RightParen=86 +LeftBracket=87 +RightBracket=88 +LeftBrace=89 +RightBrace=90 +Plus=91 +Minus=92 +Star=93 +Div=94 +Mod=95 +Caret=96 +And=97 +Or=98 +Tilde=99 +Not=100 +Assign=101 +Less=102 +Greater=103 +PlusAssign=104 +MinusAssign=105 +StarAssign=106 +DivAssign=107 +ModAssign=108 +XorAssign=109 +AndAssign=110 +OrAssign=111 +LeftShiftAssign=112 +RightShiftAssign=113 +Equal=114 +NotEqual=115 +LessEqual=116 +GreaterEqual=117 +AndAnd=118 +OrOr=119 +PlusPlus=120 +MinusMinus=121 +Comma=122 +ArrowStar=123 +Arrow=124 +Question=125 +Colon=126 +Doublecolon=127 +Semi=128 +Dot=129 +DotStar=130 +Ellipsis=131 +Identifier=132 +DecimalLiteral=133 +OctalLiteral=134 +HexadecimalLiteral=135 +BinaryLiteral=136 +Integersuffix=137 +UserDefinedIntegerLiteral=138 +UserDefinedFloatingLiteral=139 +UserDefinedStringLiteral=140 +UserDefinedCharacterLiteral=141 +Whitespace=142 +Newline=143 +BlockComment=144 +LineComment=145 +'alignas'=10 +'alignof'=11 +'asm'=12 +'auto'=13 +'bool'=14 +'break'=15 +'case'=16 +'catch'=17 +'char'=18 +'char16_t'=19 +'char32_t'=20 +'class'=21 +'const'=22 +'constexpr'=23 +'const_cast'=24 +'continue'=25 +'decltype'=26 +'default'=27 +'delete'=28 +'do'=29 +'double'=30 +'dynamic_cast'=31 +'else'=32 +'enum'=33 +'explicit'=34 +'export'=35 +'extern'=36 +'false'=37 +'final'=38 +'float'=39 +'for'=40 +'friend'=41 +'goto'=42 +'if'=43 +'inline'=44 +'int'=45 +'long'=46 +'mutable'=47 +'namespace'=48 +'new'=49 +'noexcept'=50 +'nullptr'=51 +'operator'=52 +'override'=53 +'private'=54 +'protected'=55 +'public'=56 +'register'=57 +'reinterpret_cast'=58 +'return'=59 +'short'=60 +'signed'=61 +'sizeof'=62 +'static'=63 +'static_assert'=64 +'static_cast'=65 +'struct'=66 +'switch'=67 +'template'=68 +'this'=69 +'thread_local'=70 +'throw'=71 +'true'=72 +'try'=73 +'typedef'=74 +'typeid'=75 +'typename'=76 +'union'=77 +'unsigned'=78 +'using'=79 +'virtual'=80 +'void'=81 +'volatile'=82 +'wchar_t'=83 +'while'=84 +'('=85 +')'=86 +'['=87 +']'=88 +'{'=89 +'}'=90 +'+'=91 +'-'=92 +'*'=93 +'/'=94 +'%'=95 +'^'=96 +'&'=97 +'|'=98 +'~'=99 +'='=101 +'<'=102 +'>'=103 +'+='=104 +'-='=105 +'*='=106 +'/='=107 +'%='=108 +'^='=109 +'&='=110 +'|='=111 +'<<='=112 +'>>='=113 +'=='=114 +'!='=115 +'<='=116 +'>='=117 +'++'=120 +'--'=121 +','=122 +'->*'=123 +'->'=124 +'?'=125 +':'=126 +'::'=127 +';'=128 +'.'=129 +'.*'=130 +'...'=131 -- Gitee From 85b947fa74ebdac42ce8a7a563c1f79b35ce977a Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:24:43 +0800 Subject: [PATCH 03/45] add cpp lexer Signed-off-by: wangshi --- .../src/main/java/antlr/cpp/CPP14Parser.g4 | 1075 +++++++++++++++++ 1 file changed, 1075 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Parser.g4 diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Parser.g4 b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Parser.g4 new file mode 100644 index 00000000..d89a8a83 --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Parser.g4 @@ -0,0 +1,1075 @@ +/******************************************************************************* + * The MIT License (MIT) + * + * Copyright (c) 2015 Camilo Sanchez (Camiloasc1) 2020 Martin Mirchev (Marti2203) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and + * associated documentation files (the "Software"), to deal in the Software without restriction, + * including without limitation the rights to use, copy, modify, merge, publish, distribute, + * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all copies or + * substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT + * NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * **************************************************************************** + */ + +// $antlr-format alignTrailingComments true, columnLimit 150, minEmptyLines 1, maxEmptyLinesToKeep 1, reflowComments false, useTab false +// $antlr-format allowShortRulesOnASingleLine false, allowShortBlocksOnASingleLine true, alignSemicolons hanging, alignColons hanging + +parser grammar CPP14Parser; + +options { + superClass = CPP14ParserBase; + tokenVocab = CPP14Lexer; +} + +// Insert here @header for C++ parser. + +/*Basic concepts*/ + +translationUnit + : declarationseq? EOF + ; + +/*Expressions*/ + +primaryExpression + : literal+ + | This + | LeftParen expression RightParen + | idExpression + | lambdaExpression + ; + +idExpression + : unqualifiedId + | qualifiedId + ; + +unqualifiedId + : Identifier + | operatorFunctionId + | conversionFunctionId + | literalOperatorId + | Tilde (className | decltypeSpecifier) + | templateId + ; + +qualifiedId + : nestedNameSpecifier Template? unqualifiedId + ; + +nestedNameSpecifier + : (theTypeName | namespaceName | decltypeSpecifier)? Doublecolon + | nestedNameSpecifier ( Identifier | Template? simpleTemplateId) Doublecolon + ; + +lambdaExpression + : lambdaIntroducer lambdaDeclarator? compoundStatement + ; + +lambdaIntroducer + : LeftBracket lambdaCapture? RightBracket + ; + +lambdaCapture + : captureList + | captureDefault (Comma captureList)? + ; + +captureDefault + : And + | Assign + ; + +captureList + : capture (Comma capture)* Ellipsis? + ; + +capture + : simpleCapture + | initcapture + ; + +simpleCapture + : And? Identifier + | This + ; + +initcapture + : And? Identifier initializer + ; + +lambdaDeclarator + : LeftParen parameterDeclarationClause? RightParen Mutable? exceptionSpecification? attributeSpecifierSeq? trailingReturnType? + ; + +postfixExpression + : primaryExpression + | postfixExpression LeftBracket (expression | bracedInitList) RightBracket + | postfixExpression LeftParen expressionList? RightParen + | (simpleTypeSpecifier | typeNameSpecifier) ( + LeftParen expressionList? RightParen + | bracedInitList + ) + | postfixExpression (Dot | Arrow) (Template? idExpression | pseudoDestructorName) + | postfixExpression (PlusPlus | MinusMinus) + | (Dynamic_cast | Static_cast | Reinterpret_cast | Const_cast) Less theTypeId Greater LeftParen expression RightParen + | typeIdOfTheTypeId LeftParen (expression | theTypeId) RightParen + ; + +/* + add a middle layer to eliminate duplicated function declarations + */ + +typeIdOfTheTypeId + : Typeid_ + ; + +expressionList + : initializerList + ; + +pseudoDestructorName + : nestedNameSpecifier? (theTypeName Doublecolon)? Tilde theTypeName + | nestedNameSpecifier Template simpleTemplateId Doublecolon Tilde theTypeName + | Tilde decltypeSpecifier + ; + +unaryExpression + : postfixExpression + | (PlusPlus | MinusMinus | unaryOperator | Sizeof) unaryExpression + | Sizeof (LeftParen theTypeId RightParen | Ellipsis LeftParen Identifier RightParen) + | Alignof LeftParen theTypeId RightParen + | noExceptExpression + | newExpression_ + | deleteExpression + ; + +unaryOperator + : Or + | Star + | And + | Plus + | Tilde + | Minus + | Not + ; + +newExpression_ + : Doublecolon? New newPlacement? (newTypeId | LeftParen theTypeId RightParen) newInitializer_? + ; + +newPlacement + : LeftParen expressionList RightParen + ; + +newTypeId + : typeSpecifierSeq newDeclarator_? + ; + +newDeclarator_ + : pointerOperator newDeclarator_? + | noPointerNewDeclarator + ; + +noPointerNewDeclarator + : LeftBracket expression RightBracket attributeSpecifierSeq? + | noPointerNewDeclarator LeftBracket constantExpression RightBracket attributeSpecifierSeq? + ; + +newInitializer_ + : LeftParen expressionList? RightParen + | bracedInitList + ; + +deleteExpression + : Doublecolon? Delete (LeftBracket RightBracket)? castExpression + ; + +noExceptExpression + : Noexcept LeftParen expression RightParen + ; + +castExpression + : unaryExpression + | LeftParen theTypeId RightParen castExpression + ; + +pointerMemberExpression + : castExpression ((DotStar | ArrowStar) castExpression)* + ; + +multiplicativeExpression + : pointerMemberExpression ((Star | Div | Mod) pointerMemberExpression)* + ; + +additiveExpression + : multiplicativeExpression ((Plus | Minus) multiplicativeExpression)* + ; + +shiftExpression + : additiveExpression (shiftOperator additiveExpression)* + ; + +shiftOperator + : Greater Greater + | Less Less + ; + +relationalExpression + : shiftExpression ((Less | Greater | LessEqual | GreaterEqual) shiftExpression)* + ; + +equalityExpression + : relationalExpression ((Equal | NotEqual) relationalExpression)* + ; + +andExpression + : equalityExpression (And equalityExpression)* + ; + +exclusiveOrExpression + : andExpression (Caret andExpression)* + ; + +inclusiveOrExpression + : exclusiveOrExpression (Or exclusiveOrExpression)* + ; + +logicalAndExpression + : inclusiveOrExpression (AndAnd inclusiveOrExpression)* + ; + +logicalOrExpression + : logicalAndExpression (OrOr logicalAndExpression)* + ; + +conditionalExpression + : logicalOrExpression (Question expression Colon assignmentExpression)? + ; + +assignmentExpression + : conditionalExpression + | logicalOrExpression assignmentOperator initializerClause + | throwExpression + ; + +assignmentOperator + : Assign + | StarAssign + | DivAssign + | ModAssign + | PlusAssign + | MinusAssign + | RightShiftAssign + | LeftShiftAssign + | AndAssign + | XorAssign + | OrAssign + ; + +expression + : assignmentExpression (Comma assignmentExpression)* + ; + +constantExpression + : conditionalExpression + ; + +/*Statements*/ + +statement + : labeledStatement + | declarationStatement + | attributeSpecifierSeq? ( + expressionStatement + | compoundStatement + | selectionStatement + | iterationStatement + | jumpStatement + | tryBlock + ) + ; + +labeledStatement + : attributeSpecifierSeq? (Identifier | Case constantExpression | Default) Colon statement + ; + +expressionStatement + : expression? Semi + ; + +compoundStatement + : LeftBrace statementSeq? RightBrace + ; + +statementSeq + : statement+ + ; + +selectionStatement + : If LeftParen condition RightParen statement (Else statement)? + | Switch LeftParen condition RightParen statement + ; + +condition + : expression + | attributeSpecifierSeq? declSpecifierSeq declarator ( + Assign initializerClause + | bracedInitList + ) + ; + +iterationStatement + : While LeftParen condition RightParen statement + | Do statement While LeftParen expression RightParen Semi + | For LeftParen ( + forInitStatement condition? Semi expression? + | forRangeDeclaration Colon forRangeInitializer + ) RightParen statement + ; + +forInitStatement + : expressionStatement + | simpleDeclaration + ; + +forRangeDeclaration + : attributeSpecifierSeq? declSpecifierSeq declarator + ; + +forRangeInitializer + : expression + | bracedInitList + ; + +jumpStatement + : (Break | Continue | Return (expression | bracedInitList)? | Goto Identifier) Semi + ; + +declarationStatement + : blockDeclaration + ; + +/*Declarations*/ + +declarationseq + : declaration+ + ; + +declaration + : blockDeclaration + | functionDefinition + | templateDeclaration + | explicitInstantiation + | explicitSpecialization + | linkageSpecification + | namespaceDefinition + | emptyDeclaration_ + | attributeDeclaration + ; + +blockDeclaration + : simpleDeclaration + | asmDefinition + | namespaceAliasDefinition + | usingDeclaration + | usingDirective + | staticAssertDeclaration + | aliasDeclaration + | opaqueEnumDeclaration + ; + +aliasDeclaration + : Using Identifier attributeSpecifierSeq? Assign theTypeId Semi + ; + +simpleDeclaration + : declSpecifierSeq? initDeclaratorList? Semi + | attributeSpecifierSeq declSpecifierSeq? initDeclaratorList Semi + ; + +staticAssertDeclaration + : Static_assert LeftParen constantExpression Comma StringLiteral RightParen Semi + ; + +emptyDeclaration_ + : Semi + ; + +attributeDeclaration + : attributeSpecifierSeq Semi + ; + +declSpecifier + : storageClassSpecifier + | typeSpecifier + | functionSpecifier + | Friend + | Typedef + | Constexpr + ; + +declSpecifierSeq + : declSpecifier+? attributeSpecifierSeq? + ; + +storageClassSpecifier + : Register + | Static + | Thread_local + | Extern + | Mutable + ; + +functionSpecifier + : Inline + | Virtual + | Explicit + ; + +typedefName + : Identifier + ; + +typeSpecifier + : trailingTypeSpecifier + | classSpecifier + | enumSpecifier + ; + +trailingTypeSpecifier + : simpleTypeSpecifier + | elaboratedTypeSpecifier + | typeNameSpecifier + | cvQualifier + ; + +typeSpecifierSeq + : typeSpecifier+ attributeSpecifierSeq? + ; + +trailingTypeSpecifierSeq + : trailingTypeSpecifier+ attributeSpecifierSeq? + ; + +simpleTypeLengthModifier + : Short + | Long + ; + +simpleTypeSignednessModifier + : Unsigned + | Signed + ; + +simpleTypeSpecifier + : nestedNameSpecifier? theTypeName + | nestedNameSpecifier Template simpleTemplateId + | Char + | Char16 + | Char32 + | Wchar + | Bool + | Short + | Int + | Long + | Float + | Signed + | Unsigned + | Float + | Double + | Void + | Auto + | decltypeSpecifier + ; + +theTypeName + : className + | enumName + | typedefName + | simpleTemplateId + ; + +decltypeSpecifier + : Decltype LeftParen (expression | Auto) RightParen + ; + +elaboratedTypeSpecifier + : classKey ( + attributeSpecifierSeq? nestedNameSpecifier? Identifier + | simpleTemplateId + | nestedNameSpecifier Template? simpleTemplateId + ) + | Enum nestedNameSpecifier? Identifier + ; + +enumName + : Identifier + ; + +enumSpecifier + : enumHead LeftBrace (enumeratorList Comma?)? RightBrace + ; + +enumHead + : enumkey attributeSpecifierSeq? (nestedNameSpecifier? Identifier)? enumbase? + ; + +opaqueEnumDeclaration + : enumkey attributeSpecifierSeq? Identifier enumbase? Semi + ; + +enumkey + : Enum (Class | Struct)? + ; + +enumbase + : Colon typeSpecifierSeq + ; + +enumeratorList + : enumeratorDefinition (Comma enumeratorDefinition)* + ; + +enumeratorDefinition + : enumerator (Assign constantExpression)? + ; + +enumerator + : Identifier + ; + +namespaceName + : originalNamespaceName + | namespaceAlias + ; + +originalNamespaceName + : Identifier + ; + +namespaceDefinition + : Inline? Namespace (Identifier | originalNamespaceName)? LeftBrace namespaceBody = declarationseq? RightBrace + ; + +namespaceAlias + : Identifier + ; + +namespaceAliasDefinition + : Namespace Identifier Assign qualifiednamespacespecifier Semi + ; + +qualifiednamespacespecifier + : nestedNameSpecifier? namespaceName + ; + +usingDeclaration + : Using (Typename_? nestedNameSpecifier | Doublecolon) unqualifiedId Semi + ; + +usingDirective + : attributeSpecifierSeq? Using Namespace nestedNameSpecifier? namespaceName Semi + ; + +asmDefinition + : Asm LeftParen StringLiteral RightParen Semi + ; + +linkageSpecification + : Extern StringLiteral (LeftBrace declarationseq? RightBrace | declaration) + ; + +attributeSpecifierSeq + : attributeSpecifier+ + ; + +attributeSpecifier + : LeftBracket LeftBracket attributeList? RightBracket RightBracket + | alignmentspecifier + ; + +alignmentspecifier + : Alignas LeftParen (theTypeId | constantExpression) Ellipsis? RightParen + ; + +attributeList + : attribute (Comma attribute)* Ellipsis? + ; + +attribute + : (attributeNamespace Doublecolon)? Identifier attributeArgumentClause? + ; + +attributeNamespace + : Identifier + ; + +attributeArgumentClause + : LeftParen balancedTokenSeq? RightParen + ; + +balancedTokenSeq + : balancedtoken+ + ; + +balancedtoken + : LeftParen balancedTokenSeq RightParen + | LeftBracket balancedTokenSeq RightBracket + | LeftBrace balancedTokenSeq RightBrace + | ~(LeftParen | RightParen | LeftBrace | RightBrace | LeftBracket | RightBracket)+ + ; + +/*Declarators*/ + +initDeclaratorList + : initDeclarator (Comma initDeclarator)* + ; + +initDeclarator + : declarator initializer? + ; + +declarator + : pointerDeclarator + | noPointerDeclarator parametersAndQualifiers trailingReturnType + ; + +pointerDeclarator + : (pointerOperator Const?)* noPointerDeclarator + ; + +noPointerDeclarator + : declaratorid attributeSpecifierSeq? + | noPointerDeclarator ( + parametersAndQualifiers + | LeftBracket constantExpression? RightBracket attributeSpecifierSeq? + ) + | LeftParen pointerDeclarator RightParen + ; + +parametersAndQualifiers + : LeftParen parameterDeclarationClause? RightParen cvqualifierseq? refqualifier? exceptionSpecification? attributeSpecifierSeq? + ; + +trailingReturnType + : Arrow trailingTypeSpecifierSeq abstractDeclarator? + ; + +pointerOperator + : (And | AndAnd) attributeSpecifierSeq? + | nestedNameSpecifier? Star attributeSpecifierSeq? cvqualifierseq? + ; + +cvqualifierseq + : cvQualifier+ + ; + +cvQualifier + : Const + | Volatile + ; + +refqualifier + : And + | AndAnd + ; + +declaratorid + : Ellipsis? idExpression + ; + +theTypeId + : typeSpecifierSeq abstractDeclarator? + ; + +abstractDeclarator + : pointerAbstractDeclarator + | noPointerAbstractDeclarator? parametersAndQualifiers trailingReturnType + | abstractPackDeclarator + ; + +pointerAbstractDeclarator + : pointerOperator* (noPointerAbstractDeclarator | pointerOperator) + ; + +noPointerAbstractDeclarator + : (parametersAndQualifiers | LeftParen pointerAbstractDeclarator RightParen) ( + parametersAndQualifiers + | LeftBracket constantExpression? RightBracket attributeSpecifierSeq? + )* + ; + +abstractPackDeclarator + : pointerOperator* noPointerAbstractPackDeclarator + ; + +noPointerAbstractPackDeclarator + : Ellipsis ( + parametersAndQualifiers + | LeftBracket constantExpression? RightBracket attributeSpecifierSeq? + )* + ; + +parameterDeclarationClause + : parameterDeclarationList (Comma? Ellipsis)? + ; + +parameterDeclarationList + : parameterDeclaration (Comma parameterDeclaration)* + ; + +parameterDeclaration + : attributeSpecifierSeq? declSpecifierSeq (declarator | abstractDeclarator?) ( + Assign initializerClause + )? + ; + +functionDefinition + : attributeSpecifierSeq? declSpecifierSeq? declarator virtualSpecifierSeq? functionBody + ; + +functionBody + : constructorInitializer? compoundStatement + | functionTryBlock + | Assign (Default | Delete) Semi + ; + +initializer + : braceOrEqualInitializer + | LeftParen expressionList RightParen + ; + +braceOrEqualInitializer + : Assign initializerClause + | bracedInitList + ; + +initializerClause + : assignmentExpression + | bracedInitList + ; + +initializerList + : initializerClause Ellipsis? (Comma initializerClause Ellipsis?)* + ; + +bracedInitList + : LeftBrace (initializerList Comma?)? RightBrace + ; + +/*Classes*/ + +className + : Identifier + | simpleTemplateId + ; + +classSpecifier + : classHead LeftBrace memberSpecification? RightBrace + ; + +classHead + : classKey attributeSpecifierSeq? (classHeadName classVirtSpecifier?)? baseClause? + | Union attributeSpecifierSeq? ( classHeadName classVirtSpecifier?)? + ; + +classHeadName + : nestedNameSpecifier? className + ; + +classVirtSpecifier + : Final + ; + +classKey + : Class + | Struct + ; + +memberSpecification + : (memberdeclaration | accessSpecifier Colon)+ + ; + +memberdeclaration + : attributeSpecifierSeq? declSpecifierSeq? memberDeclaratorList? Semi + | functionDefinition + | usingDeclaration + | staticAssertDeclaration + | templateDeclaration + | aliasDeclaration + | emptyDeclaration_ + ; + +memberDeclaratorList + : memberDeclarator (Comma memberDeclarator)* + ; + +memberDeclarator + : declarator ( + virtualSpecifierSeq + | { this.IsPureSpecifierAllowed() }? pureSpecifier + | { this.IsPureSpecifierAllowed() }? virtualSpecifierSeq pureSpecifier + | braceOrEqualInitializer + ) + | declarator + | Identifier? attributeSpecifierSeq? Colon constantExpression + ; + +virtualSpecifierSeq + : virtualSpecifier+ + ; + +virtualSpecifier + : Override + | Final + ; + +/* + purespecifier: Assign '0'//Conflicts with the lexer ; + */ + +pureSpecifier + : Assign IntegerLiteral + ; + +/*Derived classes*/ + +baseClause + : Colon baseSpecifierList + ; + +baseSpecifierList + : baseSpecifier Ellipsis? (Comma baseSpecifier Ellipsis?)* + ; + +baseSpecifier + : attributeSpecifierSeq? ( + baseTypeSpecifier + | Virtual accessSpecifier? baseTypeSpecifier + | accessSpecifier Virtual? baseTypeSpecifier + ) + ; + +classOrDeclType + : nestedNameSpecifier? className + | decltypeSpecifier + ; + +baseTypeSpecifier + : classOrDeclType + ; + +accessSpecifier + : Private + | Protected + | Public + ; + +/*Special member functions*/ + +conversionFunctionId + : Operator conversionTypeId + ; + +conversionTypeId + : typeSpecifierSeq conversionDeclarator? + ; + +conversionDeclarator + : pointerOperator conversionDeclarator? + ; + +constructorInitializer + : Colon memInitializerList + ; + +memInitializerList + : memInitializer Ellipsis? (Comma memInitializer Ellipsis?)* + ; + +memInitializer + : meminitializerid (LeftParen expressionList? RightParen | bracedInitList) + ; + +meminitializerid + : classOrDeclType + | Identifier + ; + +/*Overloading*/ + +operatorFunctionId + : Operator theOperator + ; + +literalOperatorId + : Operator (StringLiteral Identifier | UserDefinedStringLiteral) + ; + +/*Templates*/ + +templateDeclaration + : Template Less templateparameterList Greater declaration + ; + +templateparameterList + : templateParameter (Comma templateParameter)* + ; + +templateParameter + : typeParameter + | parameterDeclaration + ; + +typeParameter + : ((Template Less templateparameterList Greater)? Class | Typename_) ( + Ellipsis? Identifier? + | Identifier? Assign theTypeId + ) + ; + +simpleTemplateId + : templateName Less templateArgumentList? Greater + ; + +templateId + : simpleTemplateId + | (operatorFunctionId | literalOperatorId) Less templateArgumentList? Greater + ; + +templateName + : Identifier + ; + +templateArgumentList + : templateArgument Ellipsis? (Comma templateArgument Ellipsis?)* + ; + +templateArgument + : theTypeId + | constantExpression + | idExpression + ; + +typeNameSpecifier + : Typename_ nestedNameSpecifier (Identifier | Template? simpleTemplateId) + ; + +explicitInstantiation + : Extern? Template declaration + ; + +explicitSpecialization + : Template Less Greater declaration + ; + +/*Exception handling*/ + +tryBlock + : Try compoundStatement handlerSeq + ; + +functionTryBlock + : Try constructorInitializer? compoundStatement handlerSeq + ; + +handlerSeq + : handler+ + ; + +handler + : Catch LeftParen exceptionDeclaration RightParen compoundStatement + ; + +exceptionDeclaration + : attributeSpecifierSeq? typeSpecifierSeq (declarator | abstractDeclarator)? + | Ellipsis + ; + +throwExpression + : Throw assignmentExpression? + ; + +exceptionSpecification + : dynamicExceptionSpecification + | noeExceptSpecification + ; + +dynamicExceptionSpecification + : Throw LeftParen typeIdList? RightParen + ; + +typeIdList + : theTypeId Ellipsis? (Comma theTypeId Ellipsis?)* + ; + +noeExceptSpecification + : Noexcept LeftParen constantExpression RightParen + | Noexcept + ; + +/*Preprocessing directives*/ + +/*Lexer*/ + +theOperator + : New (LeftBracket RightBracket)? + | Delete (LeftBracket RightBracket)? + | Plus + | Minus + | Star + | Div + | Mod + | Caret + | And + | Or + | Tilde + | Not + | Assign + | Greater + | Less + | GreaterEqual + | PlusAssign + | MinusAssign + | StarAssign + | ModAssign + | XorAssign + | AndAssign + | OrAssign + | Less Less + | Greater Greater + | RightShiftAssign + | LeftShiftAssign + | Equal + | NotEqual + | LessEqual + | AndAnd + | OrOr + | PlusPlus + | MinusMinus + | Comma + | ArrowStar + | Arrow + | LeftParen RightParen + | LeftBracket RightBracket + ; + +literal + : IntegerLiteral + | CharacterLiteral + | FloatingLiteral + | StringLiteral + | BooleanLiteral + | PointerLiteral + | UserDefinedLiteral + ; \ No newline at end of file -- Gitee From f50430b4eea2ed9a086aff155a058c34c251aee7 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:24:56 +0800 Subject: [PATCH 04/45] add cpp lexer Signed-off-by: wangshi --- .../main/java/antlr/cpp/CPP14Parser.tokens | 264 ++++++++++++++++++ 1 file changed, 264 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Parser.tokens diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Parser.tokens b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Parser.tokens new file mode 100644 index 00000000..97906afe --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14Parser.tokens @@ -0,0 +1,264 @@ +IntegerLiteral=1 +CharacterLiteral=2 +FloatingLiteral=3 +StringLiteral=4 +BooleanLiteral=5 +PointerLiteral=6 +UserDefinedLiteral=7 +MultiLineMacro=8 +Directive=9 +Alignas=10 +Alignof=11 +Asm=12 +Auto=13 +Bool=14 +Break=15 +Case=16 +Catch=17 +Char=18 +Char16=19 +Char32=20 +Class=21 +Const=22 +Constexpr=23 +Const_cast=24 +Continue=25 +Decltype=26 +Default=27 +Delete=28 +Do=29 +Double=30 +Dynamic_cast=31 +Else=32 +Enum=33 +Explicit=34 +Export=35 +Extern=36 +False_=37 +Final=38 +Float=39 +For=40 +Friend=41 +Goto=42 +If=43 +Inline=44 +Int=45 +Long=46 +Mutable=47 +Namespace=48 +New=49 +Noexcept=50 +Nullptr=51 +Operator=52 +Override=53 +Private=54 +Protected=55 +Public=56 +Register=57 +Reinterpret_cast=58 +Return=59 +Short=60 +Signed=61 +Sizeof=62 +Static=63 +Static_assert=64 +Static_cast=65 +Struct=66 +Switch=67 +Template=68 +This=69 +Thread_local=70 +Throw=71 +True_=72 +Try=73 +Typedef=74 +Typeid_=75 +Typename_=76 +Union=77 +Unsigned=78 +Using=79 +Virtual=80 +Void=81 +Volatile=82 +Wchar=83 +While=84 +LeftParen=85 +RightParen=86 +LeftBracket=87 +RightBracket=88 +LeftBrace=89 +RightBrace=90 +Plus=91 +Minus=92 +Star=93 +Div=94 +Mod=95 +Caret=96 +And=97 +Or=98 +Tilde=99 +Not=100 +Assign=101 +Less=102 +Greater=103 +PlusAssign=104 +MinusAssign=105 +StarAssign=106 +DivAssign=107 +ModAssign=108 +XorAssign=109 +AndAssign=110 +OrAssign=111 +LeftShiftAssign=112 +RightShiftAssign=113 +Equal=114 +NotEqual=115 +LessEqual=116 +GreaterEqual=117 +AndAnd=118 +OrOr=119 +PlusPlus=120 +MinusMinus=121 +Comma=122 +ArrowStar=123 +Arrow=124 +Question=125 +Colon=126 +Doublecolon=127 +Semi=128 +Dot=129 +DotStar=130 +Ellipsis=131 +Identifier=132 +DecimalLiteral=133 +OctalLiteral=134 +HexadecimalLiteral=135 +BinaryLiteral=136 +Integersuffix=137 +UserDefinedIntegerLiteral=138 +UserDefinedFloatingLiteral=139 +UserDefinedStringLiteral=140 +UserDefinedCharacterLiteral=141 +Whitespace=142 +Newline=143 +BlockComment=144 +LineComment=145 +'alignas'=10 +'alignof'=11 +'asm'=12 +'auto'=13 +'bool'=14 +'break'=15 +'case'=16 +'catch'=17 +'char'=18 +'char16_t'=19 +'char32_t'=20 +'class'=21 +'const'=22 +'constexpr'=23 +'const_cast'=24 +'continue'=25 +'decltype'=26 +'default'=27 +'delete'=28 +'do'=29 +'double'=30 +'dynamic_cast'=31 +'else'=32 +'enum'=33 +'explicit'=34 +'export'=35 +'extern'=36 +'false'=37 +'final'=38 +'float'=39 +'for'=40 +'friend'=41 +'goto'=42 +'if'=43 +'inline'=44 +'int'=45 +'long'=46 +'mutable'=47 +'namespace'=48 +'new'=49 +'noexcept'=50 +'nullptr'=51 +'operator'=52 +'override'=53 +'private'=54 +'protected'=55 +'public'=56 +'register'=57 +'reinterpret_cast'=58 +'return'=59 +'short'=60 +'signed'=61 +'sizeof'=62 +'static'=63 +'static_assert'=64 +'static_cast'=65 +'struct'=66 +'switch'=67 +'template'=68 +'this'=69 +'thread_local'=70 +'throw'=71 +'true'=72 +'try'=73 +'typedef'=74 +'typeid'=75 +'typename'=76 +'union'=77 +'unsigned'=78 +'using'=79 +'virtual'=80 +'void'=81 +'volatile'=82 +'wchar_t'=83 +'while'=84 +'('=85 +')'=86 +'['=87 +']'=88 +'{'=89 +'}'=90 +'+'=91 +'-'=92 +'*'=93 +'/'=94 +'%'=95 +'^'=96 +'&'=97 +'|'=98 +'~'=99 +'='=101 +'<'=102 +'>'=103 +'+='=104 +'-='=105 +'*='=106 +'/='=107 +'%='=108 +'^='=109 +'&='=110 +'|='=111 +'<<='=112 +'>>='=113 +'=='=114 +'!='=115 +'<='=116 +'>='=117 +'++'=120 +'--'=121 +','=122 +'->*'=123 +'->'=124 +'?'=125 +':'=126 +'::'=127 +';'=128 +'.'=129 +'.*'=130 +'...'=131 -- Gitee From ca0e82518ee1c1a827c7f61e5a030265d11663c2 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:25:20 +0800 Subject: [PATCH 05/45] add cpp parser Signed-off-by: wangshi --- .../main/java/antlr/cpp/CPP14ParserBase.java | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBase.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBase.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBase.java new file mode 100644 index 00000000..4646d1d6 --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBase.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; + +import org.antlr.v4.runtime.*; + +public abstract class CPP14ParserBase extends Parser +{ + protected CPP14ParserBase(TokenStream input) + { + super(input); + } + + protected boolean IsPureSpecifierAllowed() + { + try + { + var x = this._ctx; // memberDeclarator + var c = x.getChild(0).getChild(0); + var c2 = c.getChild(0); + var p = c2.getChild(1); + if (p == null) return false; + return (p instanceof CPP14Parser.ParametersAndQualifiersContext); + } + catch (Exception e) + { + } + return false; + } +} -- Gitee From d70775773e3872a77c4e6c98303853b2bbb7a499 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:25:46 +0800 Subject: [PATCH 06/45] add cpp parser Signed-off-by: wangshi --- .../antlr/cpp/CPP14ParserBaseListener.java | 1753 +++++++++++++++++ 1 file changed, 1753 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseListener.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseListener.java new file mode 100644 index 00000000..6aef626b --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseListener.java @@ -0,0 +1,1753 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; +// Generated from ./CPP14Parser.g4 by ANTLR 4.13.2 + +import org.antlr.v4.runtime.ParserRuleContext; +import org.antlr.v4.runtime.tree.ErrorNode; +import org.antlr.v4.runtime.tree.TerminalNode; + +/** + * This class provides an empty implementation of {@link CPP14ParserListener}, + * which can be extended to create a listener which only needs to handle a subset + * of the available methods. + */ +@SuppressWarnings("CheckReturnValue") +public class CPP14ParserBaseListener implements CPP14ParserListener { + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTranslationUnit(CPP14Parser.TranslationUnitContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTranslationUnit(CPP14Parser.TranslationUnitContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterPrimaryExpression(CPP14Parser.PrimaryExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitPrimaryExpression(CPP14Parser.PrimaryExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterIdExpression(CPP14Parser.IdExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitIdExpression(CPP14Parser.IdExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterUnqualifiedId(CPP14Parser.UnqualifiedIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitUnqualifiedId(CPP14Parser.UnqualifiedIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterQualifiedId(CPP14Parser.QualifiedIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitQualifiedId(CPP14Parser.QualifiedIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNestedNameSpecifier(CPP14Parser.NestedNameSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNestedNameSpecifier(CPP14Parser.NestedNameSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLambdaExpression(CPP14Parser.LambdaExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLambdaExpression(CPP14Parser.LambdaExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLambdaIntroducer(CPP14Parser.LambdaIntroducerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLambdaIntroducer(CPP14Parser.LambdaIntroducerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLambdaCapture(CPP14Parser.LambdaCaptureContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLambdaCapture(CPP14Parser.LambdaCaptureContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterCaptureDefault(CPP14Parser.CaptureDefaultContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitCaptureDefault(CPP14Parser.CaptureDefaultContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterCaptureList(CPP14Parser.CaptureListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitCaptureList(CPP14Parser.CaptureListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterCapture(CPP14Parser.CaptureContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitCapture(CPP14Parser.CaptureContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterSimpleCapture(CPP14Parser.SimpleCaptureContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitSimpleCapture(CPP14Parser.SimpleCaptureContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterInitcapture(CPP14Parser.InitcaptureContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitInitcapture(CPP14Parser.InitcaptureContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLambdaDeclarator(CPP14Parser.LambdaDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLambdaDeclarator(CPP14Parser.LambdaDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterPostfixExpression(CPP14Parser.PostfixExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitPostfixExpression(CPP14Parser.PostfixExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTypeIdOfTheTypeId(CPP14Parser.TypeIdOfTheTypeIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTypeIdOfTheTypeId(CPP14Parser.TypeIdOfTheTypeIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterExpressionList(CPP14Parser.ExpressionListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitExpressionList(CPP14Parser.ExpressionListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterPseudoDestructorName(CPP14Parser.PseudoDestructorNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitPseudoDestructorName(CPP14Parser.PseudoDestructorNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterUnaryExpression(CPP14Parser.UnaryExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitUnaryExpression(CPP14Parser.UnaryExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterUnaryOperator(CPP14Parser.UnaryOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitUnaryOperator(CPP14Parser.UnaryOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNewExpression_(CPP14Parser.NewExpression_Context ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNewExpression_(CPP14Parser.NewExpression_Context ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNewPlacement(CPP14Parser.NewPlacementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNewPlacement(CPP14Parser.NewPlacementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNewTypeId(CPP14Parser.NewTypeIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNewTypeId(CPP14Parser.NewTypeIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNewDeclarator_(CPP14Parser.NewDeclarator_Context ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNewDeclarator_(CPP14Parser.NewDeclarator_Context ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNoPointerNewDeclarator(CPP14Parser.NoPointerNewDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNoPointerNewDeclarator(CPP14Parser.NoPointerNewDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNewInitializer_(CPP14Parser.NewInitializer_Context ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNewInitializer_(CPP14Parser.NewInitializer_Context ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDeleteExpression(CPP14Parser.DeleteExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDeleteExpression(CPP14Parser.DeleteExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNoExceptExpression(CPP14Parser.NoExceptExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNoExceptExpression(CPP14Parser.NoExceptExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterCastExpression(CPP14Parser.CastExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitCastExpression(CPP14Parser.CastExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterPointerMemberExpression(CPP14Parser.PointerMemberExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitPointerMemberExpression(CPP14Parser.PointerMemberExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterMultiplicativeExpression(CPP14Parser.MultiplicativeExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitMultiplicativeExpression(CPP14Parser.MultiplicativeExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAdditiveExpression(CPP14Parser.AdditiveExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAdditiveExpression(CPP14Parser.AdditiveExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterShiftExpression(CPP14Parser.ShiftExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitShiftExpression(CPP14Parser.ShiftExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterShiftOperator(CPP14Parser.ShiftOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitShiftOperator(CPP14Parser.ShiftOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterRelationalExpression(CPP14Parser.RelationalExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitRelationalExpression(CPP14Parser.RelationalExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEqualityExpression(CPP14Parser.EqualityExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEqualityExpression(CPP14Parser.EqualityExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAndExpression(CPP14Parser.AndExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAndExpression(CPP14Parser.AndExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterExclusiveOrExpression(CPP14Parser.ExclusiveOrExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitExclusiveOrExpression(CPP14Parser.ExclusiveOrExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterInclusiveOrExpression(CPP14Parser.InclusiveOrExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitInclusiveOrExpression(CPP14Parser.InclusiveOrExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLogicalAndExpression(CPP14Parser.LogicalAndExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLogicalAndExpression(CPP14Parser.LogicalAndExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLogicalOrExpression(CPP14Parser.LogicalOrExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLogicalOrExpression(CPP14Parser.LogicalOrExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterConditionalExpression(CPP14Parser.ConditionalExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitConditionalExpression(CPP14Parser.ConditionalExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAssignmentExpression(CPP14Parser.AssignmentExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAssignmentExpression(CPP14Parser.AssignmentExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAssignmentOperator(CPP14Parser.AssignmentOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAssignmentOperator(CPP14Parser.AssignmentOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterExpression(CPP14Parser.ExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitExpression(CPP14Parser.ExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterConstantExpression(CPP14Parser.ConstantExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitConstantExpression(CPP14Parser.ConstantExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterStatement(CPP14Parser.StatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitStatement(CPP14Parser.StatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLabeledStatement(CPP14Parser.LabeledStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLabeledStatement(CPP14Parser.LabeledStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterExpressionStatement(CPP14Parser.ExpressionStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitExpressionStatement(CPP14Parser.ExpressionStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterCompoundStatement(CPP14Parser.CompoundStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitCompoundStatement(CPP14Parser.CompoundStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterStatementSeq(CPP14Parser.StatementSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitStatementSeq(CPP14Parser.StatementSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterSelectionStatement(CPP14Parser.SelectionStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitSelectionStatement(CPP14Parser.SelectionStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterCondition(CPP14Parser.ConditionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitCondition(CPP14Parser.ConditionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterIterationStatement(CPP14Parser.IterationStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitIterationStatement(CPP14Parser.IterationStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterForInitStatement(CPP14Parser.ForInitStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitForInitStatement(CPP14Parser.ForInitStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterForRangeDeclaration(CPP14Parser.ForRangeDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitForRangeDeclaration(CPP14Parser.ForRangeDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterForRangeInitializer(CPP14Parser.ForRangeInitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitForRangeInitializer(CPP14Parser.ForRangeInitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterJumpStatement(CPP14Parser.JumpStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitJumpStatement(CPP14Parser.JumpStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDeclarationStatement(CPP14Parser.DeclarationStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDeclarationStatement(CPP14Parser.DeclarationStatementContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDeclarationseq(CPP14Parser.DeclarationseqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDeclarationseq(CPP14Parser.DeclarationseqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDeclaration(CPP14Parser.DeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDeclaration(CPP14Parser.DeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBlockDeclaration(CPP14Parser.BlockDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBlockDeclaration(CPP14Parser.BlockDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAliasDeclaration(CPP14Parser.AliasDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAliasDeclaration(CPP14Parser.AliasDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterSimpleDeclaration(CPP14Parser.SimpleDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitSimpleDeclaration(CPP14Parser.SimpleDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterStaticAssertDeclaration(CPP14Parser.StaticAssertDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitStaticAssertDeclaration(CPP14Parser.StaticAssertDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEmptyDeclaration_(CPP14Parser.EmptyDeclaration_Context ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEmptyDeclaration_(CPP14Parser.EmptyDeclaration_Context ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDeclSpecifier(CPP14Parser.DeclSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDeclSpecifier(CPP14Parser.DeclSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDeclSpecifierSeq(CPP14Parser.DeclSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDeclSpecifierSeq(CPP14Parser.DeclSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterStorageClassSpecifier(CPP14Parser.StorageClassSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitStorageClassSpecifier(CPP14Parser.StorageClassSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTypedefName(CPP14Parser.TypedefNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTypedefName(CPP14Parser.TypedefNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTrailingTypeSpecifier(CPP14Parser.TrailingTypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTrailingTypeSpecifier(CPP14Parser.TrailingTypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTypeSpecifierSeq(CPP14Parser.TypeSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTypeSpecifierSeq(CPP14Parser.TypeSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTrailingTypeSpecifierSeq(CPP14Parser.TrailingTypeSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTrailingTypeSpecifierSeq(CPP14Parser.TrailingTypeSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterSimpleTypeLengthModifier(CPP14Parser.SimpleTypeLengthModifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitSimpleTypeLengthModifier(CPP14Parser.SimpleTypeLengthModifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterSimpleTypeSignednessModifier(CPP14Parser.SimpleTypeSignednessModifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitSimpleTypeSignednessModifier(CPP14Parser.SimpleTypeSignednessModifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterSimpleTypeSpecifier(CPP14Parser.SimpleTypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitSimpleTypeSpecifier(CPP14Parser.SimpleTypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTheTypeName(CPP14Parser.TheTypeNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTheTypeName(CPP14Parser.TheTypeNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDecltypeSpecifier(CPP14Parser.DecltypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDecltypeSpecifier(CPP14Parser.DecltypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterElaboratedTypeSpecifier(CPP14Parser.ElaboratedTypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitElaboratedTypeSpecifier(CPP14Parser.ElaboratedTypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEnumName(CPP14Parser.EnumNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEnumName(CPP14Parser.EnumNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEnumHead(CPP14Parser.EnumHeadContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEnumHead(CPP14Parser.EnumHeadContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterOpaqueEnumDeclaration(CPP14Parser.OpaqueEnumDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitOpaqueEnumDeclaration(CPP14Parser.OpaqueEnumDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEnumkey(CPP14Parser.EnumkeyContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEnumkey(CPP14Parser.EnumkeyContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEnumbase(CPP14Parser.EnumbaseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEnumbase(CPP14Parser.EnumbaseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEnumeratorList(CPP14Parser.EnumeratorListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEnumeratorList(CPP14Parser.EnumeratorListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEnumerator(CPP14Parser.EnumeratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEnumerator(CPP14Parser.EnumeratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNamespaceName(CPP14Parser.NamespaceNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNamespaceName(CPP14Parser.NamespaceNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterOriginalNamespaceName(CPP14Parser.OriginalNamespaceNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitOriginalNamespaceName(CPP14Parser.OriginalNamespaceNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNamespaceDefinition(CPP14Parser.NamespaceDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNamespaceDefinition(CPP14Parser.NamespaceDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNamespaceAlias(CPP14Parser.NamespaceAliasContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNamespaceAlias(CPP14Parser.NamespaceAliasContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNamespaceAliasDefinition(CPP14Parser.NamespaceAliasDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNamespaceAliasDefinition(CPP14Parser.NamespaceAliasDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterUsingDeclaration(CPP14Parser.UsingDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitUsingDeclaration(CPP14Parser.UsingDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterUsingDirective(CPP14Parser.UsingDirectiveContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitUsingDirective(CPP14Parser.UsingDirectiveContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAsmDefinition(CPP14Parser.AsmDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAsmDefinition(CPP14Parser.AsmDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLinkageSpecification(CPP14Parser.LinkageSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLinkageSpecification(CPP14Parser.LinkageSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAttributeSpecifierSeq(CPP14Parser.AttributeSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAttributeSpecifierSeq(CPP14Parser.AttributeSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAttributeList(CPP14Parser.AttributeListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAttributeList(CPP14Parser.AttributeListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAttribute(CPP14Parser.AttributeContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAttribute(CPP14Parser.AttributeContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAttributeNamespace(CPP14Parser.AttributeNamespaceContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAttributeNamespace(CPP14Parser.AttributeNamespaceContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAttributeArgumentClause(CPP14Parser.AttributeArgumentClauseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAttributeArgumentClause(CPP14Parser.AttributeArgumentClauseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBalancedTokenSeq(CPP14Parser.BalancedTokenSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBalancedTokenSeq(CPP14Parser.BalancedTokenSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBalancedtoken(CPP14Parser.BalancedtokenContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBalancedtoken(CPP14Parser.BalancedtokenContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterInitDeclaratorList(CPP14Parser.InitDeclaratorListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitInitDeclaratorList(CPP14Parser.InitDeclaratorListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterInitDeclarator(CPP14Parser.InitDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitInitDeclarator(CPP14Parser.InitDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDeclarator(CPP14Parser.DeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDeclarator(CPP14Parser.DeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterPointerDeclarator(CPP14Parser.PointerDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitPointerDeclarator(CPP14Parser.PointerDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNoPointerDeclarator(CPP14Parser.NoPointerDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNoPointerDeclarator(CPP14Parser.NoPointerDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterParametersAndQualifiers(CPP14Parser.ParametersAndQualifiersContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitParametersAndQualifiers(CPP14Parser.ParametersAndQualifiersContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTrailingReturnType(CPP14Parser.TrailingReturnTypeContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTrailingReturnType(CPP14Parser.TrailingReturnTypeContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterPointerOperator(CPP14Parser.PointerOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitPointerOperator(CPP14Parser.PointerOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterCvQualifier(CPP14Parser.CvQualifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitCvQualifier(CPP14Parser.CvQualifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterRefqualifier(CPP14Parser.RefqualifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitRefqualifier(CPP14Parser.RefqualifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDeclaratorid(CPP14Parser.DeclaratoridContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDeclaratorid(CPP14Parser.DeclaratoridContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTheTypeId(CPP14Parser.TheTypeIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTheTypeId(CPP14Parser.TheTypeIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterPointerAbstractDeclarator(CPP14Parser.PointerAbstractDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitPointerAbstractDeclarator(CPP14Parser.PointerAbstractDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNoPointerAbstractDeclarator(CPP14Parser.NoPointerAbstractDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNoPointerAbstractDeclarator(CPP14Parser.NoPointerAbstractDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAbstractPackDeclarator(CPP14Parser.AbstractPackDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAbstractPackDeclarator(CPP14Parser.AbstractPackDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNoPointerAbstractPackDeclarator(CPP14Parser.NoPointerAbstractPackDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNoPointerAbstractPackDeclarator(CPP14Parser.NoPointerAbstractPackDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterParameterDeclarationClause(CPP14Parser.ParameterDeclarationClauseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitParameterDeclarationClause(CPP14Parser.ParameterDeclarationClauseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterParameterDeclarationList(CPP14Parser.ParameterDeclarationListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitParameterDeclarationList(CPP14Parser.ParameterDeclarationListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterParameterDeclaration(CPP14Parser.ParameterDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitParameterDeclaration(CPP14Parser.ParameterDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterFunctionBody(CPP14Parser.FunctionBodyContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitFunctionBody(CPP14Parser.FunctionBodyContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterInitializer(CPP14Parser.InitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitInitializer(CPP14Parser.InitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBraceOrEqualInitializer(CPP14Parser.BraceOrEqualInitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBraceOrEqualInitializer(CPP14Parser.BraceOrEqualInitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterInitializerClause(CPP14Parser.InitializerClauseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitInitializerClause(CPP14Parser.InitializerClauseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterInitializerList(CPP14Parser.InitializerListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitInitializerList(CPP14Parser.InitializerListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBracedInitList(CPP14Parser.BracedInitListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBracedInitList(CPP14Parser.BracedInitListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterClassName(CPP14Parser.ClassNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitClassName(CPP14Parser.ClassNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterClassSpecifier(CPP14Parser.ClassSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitClassSpecifier(CPP14Parser.ClassSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterClassHead(CPP14Parser.ClassHeadContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitClassHead(CPP14Parser.ClassHeadContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterClassHeadName(CPP14Parser.ClassHeadNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitClassHeadName(CPP14Parser.ClassHeadNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx) { } + +} \ No newline at end of file -- Gitee From 710bed37f70b75703e616f009d1afd5a42284ed4 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:26:02 +0800 Subject: [PATCH 07/45] add cpp parser Signed-off-by: wangshi --- .../antlr/cpp/CPP14ParserBaseListener.java | 594 ++++++++++++++++++ 1 file changed, 594 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseListener.java index 6aef626b..6564e1ad 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseListener.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseListener.java @@ -1749,5 +1749,599 @@ public class CPP14ParserBaseListener implements CPP14ParserListener { *

The default implementation does nothing.

*/ @Override public void enterClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterClassKey(CPP14Parser.ClassKeyContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitClassKey(CPP14Parser.ClassKeyContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterMemberSpecification(CPP14Parser.MemberSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitMemberSpecification(CPP14Parser.MemberSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterMemberDeclaratorList(CPP14Parser.MemberDeclaratorListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitMemberDeclaratorList(CPP14Parser.MemberDeclaratorListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterVirtualSpecifierSeq(CPP14Parser.VirtualSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitVirtualSpecifierSeq(CPP14Parser.VirtualSpecifierSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterVirtualSpecifier(CPP14Parser.VirtualSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitVirtualSpecifier(CPP14Parser.VirtualSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterPureSpecifier(CPP14Parser.PureSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitPureSpecifier(CPP14Parser.PureSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBaseClause(CPP14Parser.BaseClauseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBaseClause(CPP14Parser.BaseClauseContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBaseSpecifierList(CPP14Parser.BaseSpecifierListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBaseSpecifierList(CPP14Parser.BaseSpecifierListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBaseSpecifier(CPP14Parser.BaseSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBaseSpecifier(CPP14Parser.BaseSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterClassOrDeclType(CPP14Parser.ClassOrDeclTypeContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitClassOrDeclType(CPP14Parser.ClassOrDeclTypeContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterBaseTypeSpecifier(CPP14Parser.BaseTypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitBaseTypeSpecifier(CPP14Parser.BaseTypeSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterAccessSpecifier(CPP14Parser.AccessSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitAccessSpecifier(CPP14Parser.AccessSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterConversionFunctionId(CPP14Parser.ConversionFunctionIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitConversionFunctionId(CPP14Parser.ConversionFunctionIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterConversionTypeId(CPP14Parser.ConversionTypeIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitConversionTypeId(CPP14Parser.ConversionTypeIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterConversionDeclarator(CPP14Parser.ConversionDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitConversionDeclarator(CPP14Parser.ConversionDeclaratorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterConstructorInitializer(CPP14Parser.ConstructorInitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitConstructorInitializer(CPP14Parser.ConstructorInitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterMemInitializerList(CPP14Parser.MemInitializerListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitMemInitializerList(CPP14Parser.MemInitializerListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterMemInitializer(CPP14Parser.MemInitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitMemInitializer(CPP14Parser.MemInitializerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterMeminitializerid(CPP14Parser.MeminitializeridContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitMeminitializerid(CPP14Parser.MeminitializeridContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterOperatorFunctionId(CPP14Parser.OperatorFunctionIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitOperatorFunctionId(CPP14Parser.OperatorFunctionIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLiteralOperatorId(CPP14Parser.LiteralOperatorIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLiteralOperatorId(CPP14Parser.LiteralOperatorIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTemplateparameterList(CPP14Parser.TemplateparameterListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTemplateparameterList(CPP14Parser.TemplateparameterListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTemplateParameter(CPP14Parser.TemplateParameterContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTemplateParameter(CPP14Parser.TemplateParameterContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTypeParameter(CPP14Parser.TypeParameterContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTypeParameter(CPP14Parser.TypeParameterContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterSimpleTemplateId(CPP14Parser.SimpleTemplateIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitSimpleTemplateId(CPP14Parser.SimpleTemplateIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTemplateId(CPP14Parser.TemplateIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTemplateId(CPP14Parser.TemplateIdContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTemplateName(CPP14Parser.TemplateNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTemplateName(CPP14Parser.TemplateNameContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTemplateArgumentList(CPP14Parser.TemplateArgumentListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTemplateArgumentList(CPP14Parser.TemplateArgumentListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTemplateArgument(CPP14Parser.TemplateArgumentContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTemplateArgument(CPP14Parser.TemplateArgumentContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTypeNameSpecifier(CPP14Parser.TypeNameSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTypeNameSpecifier(CPP14Parser.TypeNameSpecifierContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterExplicitInstantiation(CPP14Parser.ExplicitInstantiationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitExplicitInstantiation(CPP14Parser.ExplicitInstantiationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterExplicitSpecialization(CPP14Parser.ExplicitSpecializationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitExplicitSpecialization(CPP14Parser.ExplicitSpecializationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTryBlock(CPP14Parser.TryBlockContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTryBlock(CPP14Parser.TryBlockContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterFunctionTryBlock(CPP14Parser.FunctionTryBlockContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitFunctionTryBlock(CPP14Parser.FunctionTryBlockContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterHandlerSeq(CPP14Parser.HandlerSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitHandlerSeq(CPP14Parser.HandlerSeqContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterHandler(CPP14Parser.HandlerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitHandler(CPP14Parser.HandlerContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterExceptionDeclaration(CPP14Parser.ExceptionDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitExceptionDeclaration(CPP14Parser.ExceptionDeclarationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterThrowExpression(CPP14Parser.ThrowExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitThrowExpression(CPP14Parser.ThrowExpressionContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterExceptionSpecification(CPP14Parser.ExceptionSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitExceptionSpecification(CPP14Parser.ExceptionSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterDynamicExceptionSpecification(CPP14Parser.DynamicExceptionSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitDynamicExceptionSpecification(CPP14Parser.DynamicExceptionSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTypeIdList(CPP14Parser.TypeIdListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTypeIdList(CPP14Parser.TypeIdListContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterNoeExceptSpecification(CPP14Parser.NoeExceptSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitNoeExceptSpecification(CPP14Parser.NoeExceptSpecificationContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterTheOperator(CPP14Parser.TheOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitTheOperator(CPP14Parser.TheOperatorContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterLiteral(CPP14Parser.LiteralContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitLiteral(CPP14Parser.LiteralContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void enterEveryRule(ParserRuleContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void exitEveryRule(ParserRuleContext ctx) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void visitTerminal(TerminalNode node) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + @Override public void visitErrorNode(ErrorNode node) { } } \ No newline at end of file -- Gitee From f462ed9fbc5a92fd95194dbaf8d9461f4745eaf2 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:26:18 +0800 Subject: [PATCH 08/45] add cpp parser Signed-off-by: wangshi --- .../antlr/cpp/CPP14ParserBaseVisitor.java | 1368 +++++++++++++++++ 1 file changed, 1368 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseVisitor.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseVisitor.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseVisitor.java new file mode 100644 index 00000000..9420553b --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserBaseVisitor.java @@ -0,0 +1,1368 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; + +// Generated from ./CPP14Parser.g4 by ANTLR 4.13.2 +import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor; + +/** + * This class provides an empty implementation of {@link CPP14ParserVisitor}, + * which can be extended to create a visitor which only needs to handle a subset + * of the available methods. + * + * @param The return type of the visit operation. Use {@link Void} for + * operations with no return type. + */ +@SuppressWarnings("CheckReturnValue") +public class CPP14ParserBaseVisitor extends AbstractParseTreeVisitor implements CPP14ParserVisitor { + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTranslationUnit(CPP14Parser.TranslationUnitContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitPrimaryExpression(CPP14Parser.PrimaryExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitIdExpression(CPP14Parser.IdExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitUnqualifiedId(CPP14Parser.UnqualifiedIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitQualifiedId(CPP14Parser.QualifiedIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNestedNameSpecifier(CPP14Parser.NestedNameSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLambdaExpression(CPP14Parser.LambdaExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLambdaIntroducer(CPP14Parser.LambdaIntroducerContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLambdaCapture(CPP14Parser.LambdaCaptureContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitCaptureDefault(CPP14Parser.CaptureDefaultContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitCaptureList(CPP14Parser.CaptureListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitCapture(CPP14Parser.CaptureContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitSimpleCapture(CPP14Parser.SimpleCaptureContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitInitcapture(CPP14Parser.InitcaptureContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLambdaDeclarator(CPP14Parser.LambdaDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitPostfixExpression(CPP14Parser.PostfixExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTypeIdOfTheTypeId(CPP14Parser.TypeIdOfTheTypeIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitExpressionList(CPP14Parser.ExpressionListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitPseudoDestructorName(CPP14Parser.PseudoDestructorNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitUnaryExpression(CPP14Parser.UnaryExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitUnaryOperator(CPP14Parser.UnaryOperatorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNewExpression_(CPP14Parser.NewExpression_Context ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNewPlacement(CPP14Parser.NewPlacementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNewTypeId(CPP14Parser.NewTypeIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNewDeclarator_(CPP14Parser.NewDeclarator_Context ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNoPointerNewDeclarator(CPP14Parser.NoPointerNewDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNewInitializer_(CPP14Parser.NewInitializer_Context ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDeleteExpression(CPP14Parser.DeleteExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNoExceptExpression(CPP14Parser.NoExceptExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitCastExpression(CPP14Parser.CastExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitPointerMemberExpression(CPP14Parser.PointerMemberExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitMultiplicativeExpression(CPP14Parser.MultiplicativeExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAdditiveExpression(CPP14Parser.AdditiveExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitShiftExpression(CPP14Parser.ShiftExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitShiftOperator(CPP14Parser.ShiftOperatorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitRelationalExpression(CPP14Parser.RelationalExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEqualityExpression(CPP14Parser.EqualityExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAndExpression(CPP14Parser.AndExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitExclusiveOrExpression(CPP14Parser.ExclusiveOrExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitInclusiveOrExpression(CPP14Parser.InclusiveOrExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLogicalAndExpression(CPP14Parser.LogicalAndExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLogicalOrExpression(CPP14Parser.LogicalOrExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitConditionalExpression(CPP14Parser.ConditionalExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAssignmentExpression(CPP14Parser.AssignmentExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAssignmentOperator(CPP14Parser.AssignmentOperatorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitExpression(CPP14Parser.ExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitConstantExpression(CPP14Parser.ConstantExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitStatement(CPP14Parser.StatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLabeledStatement(CPP14Parser.LabeledStatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitExpressionStatement(CPP14Parser.ExpressionStatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitCompoundStatement(CPP14Parser.CompoundStatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitStatementSeq(CPP14Parser.StatementSeqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitSelectionStatement(CPP14Parser.SelectionStatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitCondition(CPP14Parser.ConditionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitIterationStatement(CPP14Parser.IterationStatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitForInitStatement(CPP14Parser.ForInitStatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitForRangeDeclaration(CPP14Parser.ForRangeDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitForRangeInitializer(CPP14Parser.ForRangeInitializerContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitJumpStatement(CPP14Parser.JumpStatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDeclarationStatement(CPP14Parser.DeclarationStatementContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDeclarationseq(CPP14Parser.DeclarationseqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDeclaration(CPP14Parser.DeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBlockDeclaration(CPP14Parser.BlockDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAliasDeclaration(CPP14Parser.AliasDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitSimpleDeclaration(CPP14Parser.SimpleDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitStaticAssertDeclaration(CPP14Parser.StaticAssertDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEmptyDeclaration_(CPP14Parser.EmptyDeclaration_Context ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDeclSpecifier(CPP14Parser.DeclSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDeclSpecifierSeq(CPP14Parser.DeclSpecifierSeqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitStorageClassSpecifier(CPP14Parser.StorageClassSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTypedefName(CPP14Parser.TypedefNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTrailingTypeSpecifier(CPP14Parser.TrailingTypeSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTypeSpecifierSeq(CPP14Parser.TypeSpecifierSeqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTrailingTypeSpecifierSeq(CPP14Parser.TrailingTypeSpecifierSeqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitSimpleTypeLengthModifier(CPP14Parser.SimpleTypeLengthModifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitSimpleTypeSignednessModifier(CPP14Parser.SimpleTypeSignednessModifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitSimpleTypeSpecifier(CPP14Parser.SimpleTypeSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTheTypeName(CPP14Parser.TheTypeNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDecltypeSpecifier(CPP14Parser.DecltypeSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitElaboratedTypeSpecifier(CPP14Parser.ElaboratedTypeSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEnumName(CPP14Parser.EnumNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEnumHead(CPP14Parser.EnumHeadContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitOpaqueEnumDeclaration(CPP14Parser.OpaqueEnumDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEnumkey(CPP14Parser.EnumkeyContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEnumbase(CPP14Parser.EnumbaseContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEnumeratorList(CPP14Parser.EnumeratorListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitEnumerator(CPP14Parser.EnumeratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNamespaceName(CPP14Parser.NamespaceNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitOriginalNamespaceName(CPP14Parser.OriginalNamespaceNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNamespaceDefinition(CPP14Parser.NamespaceDefinitionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNamespaceAlias(CPP14Parser.NamespaceAliasContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNamespaceAliasDefinition(CPP14Parser.NamespaceAliasDefinitionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitUsingDeclaration(CPP14Parser.UsingDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitUsingDirective(CPP14Parser.UsingDirectiveContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAsmDefinition(CPP14Parser.AsmDefinitionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLinkageSpecification(CPP14Parser.LinkageSpecificationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAttributeSpecifierSeq(CPP14Parser.AttributeSpecifierSeqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAttributeList(CPP14Parser.AttributeListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAttribute(CPP14Parser.AttributeContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAttributeNamespace(CPP14Parser.AttributeNamespaceContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAttributeArgumentClause(CPP14Parser.AttributeArgumentClauseContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBalancedTokenSeq(CPP14Parser.BalancedTokenSeqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBalancedtoken(CPP14Parser.BalancedtokenContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitInitDeclaratorList(CPP14Parser.InitDeclaratorListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitInitDeclarator(CPP14Parser.InitDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDeclarator(CPP14Parser.DeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitPointerDeclarator(CPP14Parser.PointerDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNoPointerDeclarator(CPP14Parser.NoPointerDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitParametersAndQualifiers(CPP14Parser.ParametersAndQualifiersContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTrailingReturnType(CPP14Parser.TrailingReturnTypeContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitPointerOperator(CPP14Parser.PointerOperatorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitCvQualifier(CPP14Parser.CvQualifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitRefqualifier(CPP14Parser.RefqualifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDeclaratorid(CPP14Parser.DeclaratoridContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTheTypeId(CPP14Parser.TheTypeIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitPointerAbstractDeclarator(CPP14Parser.PointerAbstractDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNoPointerAbstractDeclarator(CPP14Parser.NoPointerAbstractDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAbstractPackDeclarator(CPP14Parser.AbstractPackDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNoPointerAbstractPackDeclarator(CPP14Parser.NoPointerAbstractPackDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitParameterDeclarationClause(CPP14Parser.ParameterDeclarationClauseContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitParameterDeclarationList(CPP14Parser.ParameterDeclarationListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitParameterDeclaration(CPP14Parser.ParameterDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitFunctionBody(CPP14Parser.FunctionBodyContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitInitializer(CPP14Parser.InitializerContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBraceOrEqualInitializer(CPP14Parser.BraceOrEqualInitializerContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitInitializerClause(CPP14Parser.InitializerClauseContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitInitializerList(CPP14Parser.InitializerListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBracedInitList(CPP14Parser.BracedInitListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitClassName(CPP14Parser.ClassNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitClassSpecifier(CPP14Parser.ClassSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitClassHead(CPP14Parser.ClassHeadContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitClassHeadName(CPP14Parser.ClassHeadNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitClassKey(CPP14Parser.ClassKeyContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitMemberSpecification(CPP14Parser.MemberSpecificationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitMemberDeclaratorList(CPP14Parser.MemberDeclaratorListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitVirtualSpecifierSeq(CPP14Parser.VirtualSpecifierSeqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitVirtualSpecifier(CPP14Parser.VirtualSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitPureSpecifier(CPP14Parser.PureSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBaseClause(CPP14Parser.BaseClauseContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBaseSpecifierList(CPP14Parser.BaseSpecifierListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBaseSpecifier(CPP14Parser.BaseSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitClassOrDeclType(CPP14Parser.ClassOrDeclTypeContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitBaseTypeSpecifier(CPP14Parser.BaseTypeSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitAccessSpecifier(CPP14Parser.AccessSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitConversionFunctionId(CPP14Parser.ConversionFunctionIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitConversionTypeId(CPP14Parser.ConversionTypeIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitConversionDeclarator(CPP14Parser.ConversionDeclaratorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitConstructorInitializer(CPP14Parser.ConstructorInitializerContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitMemInitializerList(CPP14Parser.MemInitializerListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitMemInitializer(CPP14Parser.MemInitializerContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitMeminitializerid(CPP14Parser.MeminitializeridContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitOperatorFunctionId(CPP14Parser.OperatorFunctionIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLiteralOperatorId(CPP14Parser.LiteralOperatorIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTemplateparameterList(CPP14Parser.TemplateparameterListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTemplateParameter(CPP14Parser.TemplateParameterContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTypeParameter(CPP14Parser.TypeParameterContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitSimpleTemplateId(CPP14Parser.SimpleTemplateIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTemplateId(CPP14Parser.TemplateIdContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTemplateName(CPP14Parser.TemplateNameContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTemplateArgumentList(CPP14Parser.TemplateArgumentListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTemplateArgument(CPP14Parser.TemplateArgumentContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTypeNameSpecifier(CPP14Parser.TypeNameSpecifierContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitExplicitInstantiation(CPP14Parser.ExplicitInstantiationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitExplicitSpecialization(CPP14Parser.ExplicitSpecializationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTryBlock(CPP14Parser.TryBlockContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitFunctionTryBlock(CPP14Parser.FunctionTryBlockContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitHandlerSeq(CPP14Parser.HandlerSeqContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitHandler(CPP14Parser.HandlerContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitExceptionDeclaration(CPP14Parser.ExceptionDeclarationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitThrowExpression(CPP14Parser.ThrowExpressionContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitExceptionSpecification(CPP14Parser.ExceptionSpecificationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitDynamicExceptionSpecification(CPP14Parser.DynamicExceptionSpecificationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTypeIdList(CPP14Parser.TypeIdListContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitNoeExceptSpecification(CPP14Parser.NoeExceptSpecificationContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitTheOperator(CPP14Parser.TheOperatorContext ctx) { return visitChildren(ctx); } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + @Override public T visitLiteral(CPP14Parser.LiteralContext ctx) { return visitChildren(ctx); } +} \ No newline at end of file -- Gitee From 452da9099fe3f8703019177a46d7cd665dc6b6af Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:26:33 +0800 Subject: [PATCH 09/45] add cpp parser Signed-off-by: wangshi --- .../java/antlr/cpp/CPP14ParserListener.java | 1936 +++++++++++++++++ 1 file changed, 1936 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserListener.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserListener.java new file mode 100644 index 00000000..068442e7 --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserListener.java @@ -0,0 +1,1936 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; + +// Generated from ./CPP14Parser.g4 by ANTLR 4.13.2 +import org.antlr.v4.runtime.tree.ParseTreeListener; + +/** + * This interface defines a complete listener for a parse tree produced by + * {@link CPP14Parser}. + */ +public interface CPP14ParserListener extends ParseTreeListener { + /** + * Enter a parse tree produced by {@link CPP14Parser#translationUnit}. + * @param ctx the parse tree + */ + void enterTranslationUnit(CPP14Parser.TranslationUnitContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#translationUnit}. + * @param ctx the parse tree + */ + void exitTranslationUnit(CPP14Parser.TranslationUnitContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#primaryExpression}. + * @param ctx the parse tree + */ + void enterPrimaryExpression(CPP14Parser.PrimaryExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#primaryExpression}. + * @param ctx the parse tree + */ + void exitPrimaryExpression(CPP14Parser.PrimaryExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#idExpression}. + * @param ctx the parse tree + */ + void enterIdExpression(CPP14Parser.IdExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#idExpression}. + * @param ctx the parse tree + */ + void exitIdExpression(CPP14Parser.IdExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#unqualifiedId}. + * @param ctx the parse tree + */ + void enterUnqualifiedId(CPP14Parser.UnqualifiedIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#unqualifiedId}. + * @param ctx the parse tree + */ + void exitUnqualifiedId(CPP14Parser.UnqualifiedIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#qualifiedId}. + * @param ctx the parse tree + */ + void enterQualifiedId(CPP14Parser.QualifiedIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#qualifiedId}. + * @param ctx the parse tree + */ + void exitQualifiedId(CPP14Parser.QualifiedIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#nestedNameSpecifier}. + * @param ctx the parse tree + */ + void enterNestedNameSpecifier(CPP14Parser.NestedNameSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#nestedNameSpecifier}. + * @param ctx the parse tree + */ + void exitNestedNameSpecifier(CPP14Parser.NestedNameSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#lambdaExpression}. + * @param ctx the parse tree + */ + void enterLambdaExpression(CPP14Parser.LambdaExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#lambdaExpression}. + * @param ctx the parse tree + */ + void exitLambdaExpression(CPP14Parser.LambdaExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#lambdaIntroducer}. + * @param ctx the parse tree + */ + void enterLambdaIntroducer(CPP14Parser.LambdaIntroducerContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#lambdaIntroducer}. + * @param ctx the parse tree + */ + void exitLambdaIntroducer(CPP14Parser.LambdaIntroducerContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#lambdaCapture}. + * @param ctx the parse tree + */ + void enterLambdaCapture(CPP14Parser.LambdaCaptureContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#lambdaCapture}. + * @param ctx the parse tree + */ + void exitLambdaCapture(CPP14Parser.LambdaCaptureContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#captureDefault}. + * @param ctx the parse tree + */ + void enterCaptureDefault(CPP14Parser.CaptureDefaultContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#captureDefault}. + * @param ctx the parse tree + */ + void exitCaptureDefault(CPP14Parser.CaptureDefaultContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#captureList}. + * @param ctx the parse tree + */ + void enterCaptureList(CPP14Parser.CaptureListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#captureList}. + * @param ctx the parse tree + */ + void exitCaptureList(CPP14Parser.CaptureListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#capture}. + * @param ctx the parse tree + */ + void enterCapture(CPP14Parser.CaptureContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#capture}. + * @param ctx the parse tree + */ + void exitCapture(CPP14Parser.CaptureContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#simpleCapture}. + * @param ctx the parse tree + */ + void enterSimpleCapture(CPP14Parser.SimpleCaptureContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#simpleCapture}. + * @param ctx the parse tree + */ + void exitSimpleCapture(CPP14Parser.SimpleCaptureContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#initcapture}. + * @param ctx the parse tree + */ + void enterInitcapture(CPP14Parser.InitcaptureContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#initcapture}. + * @param ctx the parse tree + */ + void exitInitcapture(CPP14Parser.InitcaptureContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#lambdaDeclarator}. + * @param ctx the parse tree + */ + void enterLambdaDeclarator(CPP14Parser.LambdaDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#lambdaDeclarator}. + * @param ctx the parse tree + */ + void exitLambdaDeclarator(CPP14Parser.LambdaDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#postfixExpression}. + * @param ctx the parse tree + */ + void enterPostfixExpression(CPP14Parser.PostfixExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#postfixExpression}. + * @param ctx the parse tree + */ + void exitPostfixExpression(CPP14Parser.PostfixExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#typeIdOfTheTypeId}. + * @param ctx the parse tree + */ + void enterTypeIdOfTheTypeId(CPP14Parser.TypeIdOfTheTypeIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#typeIdOfTheTypeId}. + * @param ctx the parse tree + */ + void exitTypeIdOfTheTypeId(CPP14Parser.TypeIdOfTheTypeIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#expressionList}. + * @param ctx the parse tree + */ + void enterExpressionList(CPP14Parser.ExpressionListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#expressionList}. + * @param ctx the parse tree + */ + void exitExpressionList(CPP14Parser.ExpressionListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#pseudoDestructorName}. + * @param ctx the parse tree + */ + void enterPseudoDestructorName(CPP14Parser.PseudoDestructorNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#pseudoDestructorName}. + * @param ctx the parse tree + */ + void exitPseudoDestructorName(CPP14Parser.PseudoDestructorNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#unaryExpression}. + * @param ctx the parse tree + */ + void enterUnaryExpression(CPP14Parser.UnaryExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#unaryExpression}. + * @param ctx the parse tree + */ + void exitUnaryExpression(CPP14Parser.UnaryExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#unaryOperator}. + * @param ctx the parse tree + */ + void enterUnaryOperator(CPP14Parser.UnaryOperatorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#unaryOperator}. + * @param ctx the parse tree + */ + void exitUnaryOperator(CPP14Parser.UnaryOperatorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#newExpression_}. + * @param ctx the parse tree + */ + void enterNewExpression_(CPP14Parser.NewExpression_Context ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#newExpression_}. + * @param ctx the parse tree + */ + void exitNewExpression_(CPP14Parser.NewExpression_Context ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#newPlacement}. + * @param ctx the parse tree + */ + void enterNewPlacement(CPP14Parser.NewPlacementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#newPlacement}. + * @param ctx the parse tree + */ + void exitNewPlacement(CPP14Parser.NewPlacementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#newTypeId}. + * @param ctx the parse tree + */ + void enterNewTypeId(CPP14Parser.NewTypeIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#newTypeId}. + * @param ctx the parse tree + */ + void exitNewTypeId(CPP14Parser.NewTypeIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#newDeclarator_}. + * @param ctx the parse tree + */ + void enterNewDeclarator_(CPP14Parser.NewDeclarator_Context ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#newDeclarator_}. + * @param ctx the parse tree + */ + void exitNewDeclarator_(CPP14Parser.NewDeclarator_Context ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#noPointerNewDeclarator}. + * @param ctx the parse tree + */ + void enterNoPointerNewDeclarator(CPP14Parser.NoPointerNewDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#noPointerNewDeclarator}. + * @param ctx the parse tree + */ + void exitNoPointerNewDeclarator(CPP14Parser.NoPointerNewDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#newInitializer_}. + * @param ctx the parse tree + */ + void enterNewInitializer_(CPP14Parser.NewInitializer_Context ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#newInitializer_}. + * @param ctx the parse tree + */ + void exitNewInitializer_(CPP14Parser.NewInitializer_Context ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#deleteExpression}. + * @param ctx the parse tree + */ + void enterDeleteExpression(CPP14Parser.DeleteExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#deleteExpression}. + * @param ctx the parse tree + */ + void exitDeleteExpression(CPP14Parser.DeleteExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#noExceptExpression}. + * @param ctx the parse tree + */ + void enterNoExceptExpression(CPP14Parser.NoExceptExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#noExceptExpression}. + * @param ctx the parse tree + */ + void exitNoExceptExpression(CPP14Parser.NoExceptExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#castExpression}. + * @param ctx the parse tree + */ + void enterCastExpression(CPP14Parser.CastExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#castExpression}. + * @param ctx the parse tree + */ + void exitCastExpression(CPP14Parser.CastExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#pointerMemberExpression}. + * @param ctx the parse tree + */ + void enterPointerMemberExpression(CPP14Parser.PointerMemberExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#pointerMemberExpression}. + * @param ctx the parse tree + */ + void exitPointerMemberExpression(CPP14Parser.PointerMemberExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#multiplicativeExpression}. + * @param ctx the parse tree + */ + void enterMultiplicativeExpression(CPP14Parser.MultiplicativeExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#multiplicativeExpression}. + * @param ctx the parse tree + */ + void exitMultiplicativeExpression(CPP14Parser.MultiplicativeExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#additiveExpression}. + * @param ctx the parse tree + */ + void enterAdditiveExpression(CPP14Parser.AdditiveExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#additiveExpression}. + * @param ctx the parse tree + */ + void exitAdditiveExpression(CPP14Parser.AdditiveExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#shiftExpression}. + * @param ctx the parse tree + */ + void enterShiftExpression(CPP14Parser.ShiftExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#shiftExpression}. + * @param ctx the parse tree + */ + void exitShiftExpression(CPP14Parser.ShiftExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#shiftOperator}. + * @param ctx the parse tree + */ + void enterShiftOperator(CPP14Parser.ShiftOperatorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#shiftOperator}. + * @param ctx the parse tree + */ + void exitShiftOperator(CPP14Parser.ShiftOperatorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#relationalExpression}. + * @param ctx the parse tree + */ + void enterRelationalExpression(CPP14Parser.RelationalExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#relationalExpression}. + * @param ctx the parse tree + */ + void exitRelationalExpression(CPP14Parser.RelationalExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#equalityExpression}. + * @param ctx the parse tree + */ + void enterEqualityExpression(CPP14Parser.EqualityExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#equalityExpression}. + * @param ctx the parse tree + */ + void exitEqualityExpression(CPP14Parser.EqualityExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#andExpression}. + * @param ctx the parse tree + */ + void enterAndExpression(CPP14Parser.AndExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#andExpression}. + * @param ctx the parse tree + */ + void exitAndExpression(CPP14Parser.AndExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#exclusiveOrExpression}. + * @param ctx the parse tree + */ + void enterExclusiveOrExpression(CPP14Parser.ExclusiveOrExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#exclusiveOrExpression}. + * @param ctx the parse tree + */ + void exitExclusiveOrExpression(CPP14Parser.ExclusiveOrExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#inclusiveOrExpression}. + * @param ctx the parse tree + */ + void enterInclusiveOrExpression(CPP14Parser.InclusiveOrExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#inclusiveOrExpression}. + * @param ctx the parse tree + */ + void exitInclusiveOrExpression(CPP14Parser.InclusiveOrExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#logicalAndExpression}. + * @param ctx the parse tree + */ + void enterLogicalAndExpression(CPP14Parser.LogicalAndExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#logicalAndExpression}. + * @param ctx the parse tree + */ + void exitLogicalAndExpression(CPP14Parser.LogicalAndExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#logicalOrExpression}. + * @param ctx the parse tree + */ + void enterLogicalOrExpression(CPP14Parser.LogicalOrExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#logicalOrExpression}. + * @param ctx the parse tree + */ + void exitLogicalOrExpression(CPP14Parser.LogicalOrExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#conditionalExpression}. + * @param ctx the parse tree + */ + void enterConditionalExpression(CPP14Parser.ConditionalExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#conditionalExpression}. + * @param ctx the parse tree + */ + void exitConditionalExpression(CPP14Parser.ConditionalExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#assignmentExpression}. + * @param ctx the parse tree + */ + void enterAssignmentExpression(CPP14Parser.AssignmentExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#assignmentExpression}. + * @param ctx the parse tree + */ + void exitAssignmentExpression(CPP14Parser.AssignmentExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#assignmentOperator}. + * @param ctx the parse tree + */ + void enterAssignmentOperator(CPP14Parser.AssignmentOperatorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#assignmentOperator}. + * @param ctx the parse tree + */ + void exitAssignmentOperator(CPP14Parser.AssignmentOperatorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#expression}. + * @param ctx the parse tree + */ + void enterExpression(CPP14Parser.ExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#expression}. + * @param ctx the parse tree + */ + void exitExpression(CPP14Parser.ExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#constantExpression}. + * @param ctx the parse tree + */ + void enterConstantExpression(CPP14Parser.ConstantExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#constantExpression}. + * @param ctx the parse tree + */ + void exitConstantExpression(CPP14Parser.ConstantExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#statement}. + * @param ctx the parse tree + */ + void enterStatement(CPP14Parser.StatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#statement}. + * @param ctx the parse tree + */ + void exitStatement(CPP14Parser.StatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#labeledStatement}. + * @param ctx the parse tree + */ + void enterLabeledStatement(CPP14Parser.LabeledStatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#labeledStatement}. + * @param ctx the parse tree + */ + void exitLabeledStatement(CPP14Parser.LabeledStatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#expressionStatement}. + * @param ctx the parse tree + */ + void enterExpressionStatement(CPP14Parser.ExpressionStatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#expressionStatement}. + * @param ctx the parse tree + */ + void exitExpressionStatement(CPP14Parser.ExpressionStatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#compoundStatement}. + * @param ctx the parse tree + */ + void enterCompoundStatement(CPP14Parser.CompoundStatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#compoundStatement}. + * @param ctx the parse tree + */ + void exitCompoundStatement(CPP14Parser.CompoundStatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#statementSeq}. + * @param ctx the parse tree + */ + void enterStatementSeq(CPP14Parser.StatementSeqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#statementSeq}. + * @param ctx the parse tree + */ + void exitStatementSeq(CPP14Parser.StatementSeqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#selectionStatement}. + * @param ctx the parse tree + */ + void enterSelectionStatement(CPP14Parser.SelectionStatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#selectionStatement}. + * @param ctx the parse tree + */ + void exitSelectionStatement(CPP14Parser.SelectionStatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#condition}. + * @param ctx the parse tree + */ + void enterCondition(CPP14Parser.ConditionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#condition}. + * @param ctx the parse tree + */ + void exitCondition(CPP14Parser.ConditionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#iterationStatement}. + * @param ctx the parse tree + */ + void enterIterationStatement(CPP14Parser.IterationStatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#iterationStatement}. + * @param ctx the parse tree + */ + void exitIterationStatement(CPP14Parser.IterationStatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#forInitStatement}. + * @param ctx the parse tree + */ + void enterForInitStatement(CPP14Parser.ForInitStatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#forInitStatement}. + * @param ctx the parse tree + */ + void exitForInitStatement(CPP14Parser.ForInitStatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#forRangeDeclaration}. + * @param ctx the parse tree + */ + void enterForRangeDeclaration(CPP14Parser.ForRangeDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#forRangeDeclaration}. + * @param ctx the parse tree + */ + void exitForRangeDeclaration(CPP14Parser.ForRangeDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#forRangeInitializer}. + * @param ctx the parse tree + */ + void enterForRangeInitializer(CPP14Parser.ForRangeInitializerContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#forRangeInitializer}. + * @param ctx the parse tree + */ + void exitForRangeInitializer(CPP14Parser.ForRangeInitializerContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#jumpStatement}. + * @param ctx the parse tree + */ + void enterJumpStatement(CPP14Parser.JumpStatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#jumpStatement}. + * @param ctx the parse tree + */ + void exitJumpStatement(CPP14Parser.JumpStatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#declarationStatement}. + * @param ctx the parse tree + */ + void enterDeclarationStatement(CPP14Parser.DeclarationStatementContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#declarationStatement}. + * @param ctx the parse tree + */ + void exitDeclarationStatement(CPP14Parser.DeclarationStatementContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#declarationseq}. + * @param ctx the parse tree + */ + void enterDeclarationseq(CPP14Parser.DeclarationseqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#declarationseq}. + * @param ctx the parse tree + */ + void exitDeclarationseq(CPP14Parser.DeclarationseqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#declaration}. + * @param ctx the parse tree + */ + void enterDeclaration(CPP14Parser.DeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#declaration}. + * @param ctx the parse tree + */ + void exitDeclaration(CPP14Parser.DeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#blockDeclaration}. + * @param ctx the parse tree + */ + void enterBlockDeclaration(CPP14Parser.BlockDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#blockDeclaration}. + * @param ctx the parse tree + */ + void exitBlockDeclaration(CPP14Parser.BlockDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#aliasDeclaration}. + * @param ctx the parse tree + */ + void enterAliasDeclaration(CPP14Parser.AliasDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#aliasDeclaration}. + * @param ctx the parse tree + */ + void exitAliasDeclaration(CPP14Parser.AliasDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#simpleDeclaration}. + * @param ctx the parse tree + */ + void enterSimpleDeclaration(CPP14Parser.SimpleDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#simpleDeclaration}. + * @param ctx the parse tree + */ + void exitSimpleDeclaration(CPP14Parser.SimpleDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#staticAssertDeclaration}. + * @param ctx the parse tree + */ + void enterStaticAssertDeclaration(CPP14Parser.StaticAssertDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#staticAssertDeclaration}. + * @param ctx the parse tree + */ + void exitStaticAssertDeclaration(CPP14Parser.StaticAssertDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#emptyDeclaration_}. + * @param ctx the parse tree + */ + void enterEmptyDeclaration_(CPP14Parser.EmptyDeclaration_Context ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#emptyDeclaration_}. + * @param ctx the parse tree + */ + void exitEmptyDeclaration_(CPP14Parser.EmptyDeclaration_Context ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#attributeDeclaration}. + * @param ctx the parse tree + */ + void enterAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#attributeDeclaration}. + * @param ctx the parse tree + */ + void exitAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#declSpecifier}. + * @param ctx the parse tree + */ + void enterDeclSpecifier(CPP14Parser.DeclSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#declSpecifier}. + * @param ctx the parse tree + */ + void exitDeclSpecifier(CPP14Parser.DeclSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#declSpecifierSeq}. + * @param ctx the parse tree + */ + void enterDeclSpecifierSeq(CPP14Parser.DeclSpecifierSeqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#declSpecifierSeq}. + * @param ctx the parse tree + */ + void exitDeclSpecifierSeq(CPP14Parser.DeclSpecifierSeqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#storageClassSpecifier}. + * @param ctx the parse tree + */ + void enterStorageClassSpecifier(CPP14Parser.StorageClassSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#storageClassSpecifier}. + * @param ctx the parse tree + */ + void exitStorageClassSpecifier(CPP14Parser.StorageClassSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#functionSpecifier}. + * @param ctx the parse tree + */ + void enterFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#functionSpecifier}. + * @param ctx the parse tree + */ + void exitFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#typedefName}. + * @param ctx the parse tree + */ + void enterTypedefName(CPP14Parser.TypedefNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#typedefName}. + * @param ctx the parse tree + */ + void exitTypedefName(CPP14Parser.TypedefNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#typeSpecifier}. + * @param ctx the parse tree + */ + void enterTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#typeSpecifier}. + * @param ctx the parse tree + */ + void exitTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#trailingTypeSpecifier}. + * @param ctx the parse tree + */ + void enterTrailingTypeSpecifier(CPP14Parser.TrailingTypeSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#trailingTypeSpecifier}. + * @param ctx the parse tree + */ + void exitTrailingTypeSpecifier(CPP14Parser.TrailingTypeSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#typeSpecifierSeq}. + * @param ctx the parse tree + */ + void enterTypeSpecifierSeq(CPP14Parser.TypeSpecifierSeqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#typeSpecifierSeq}. + * @param ctx the parse tree + */ + void exitTypeSpecifierSeq(CPP14Parser.TypeSpecifierSeqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#trailingTypeSpecifierSeq}. + * @param ctx the parse tree + */ + void enterTrailingTypeSpecifierSeq(CPP14Parser.TrailingTypeSpecifierSeqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#trailingTypeSpecifierSeq}. + * @param ctx the parse tree + */ + void exitTrailingTypeSpecifierSeq(CPP14Parser.TrailingTypeSpecifierSeqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#simpleTypeLengthModifier}. + * @param ctx the parse tree + */ + void enterSimpleTypeLengthModifier(CPP14Parser.SimpleTypeLengthModifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#simpleTypeLengthModifier}. + * @param ctx the parse tree + */ + void exitSimpleTypeLengthModifier(CPP14Parser.SimpleTypeLengthModifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#simpleTypeSignednessModifier}. + * @param ctx the parse tree + */ + void enterSimpleTypeSignednessModifier(CPP14Parser.SimpleTypeSignednessModifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#simpleTypeSignednessModifier}. + * @param ctx the parse tree + */ + void exitSimpleTypeSignednessModifier(CPP14Parser.SimpleTypeSignednessModifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#simpleTypeSpecifier}. + * @param ctx the parse tree + */ + void enterSimpleTypeSpecifier(CPP14Parser.SimpleTypeSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#simpleTypeSpecifier}. + * @param ctx the parse tree + */ + void exitSimpleTypeSpecifier(CPP14Parser.SimpleTypeSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#theTypeName}. + * @param ctx the parse tree + */ + void enterTheTypeName(CPP14Parser.TheTypeNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#theTypeName}. + * @param ctx the parse tree + */ + void exitTheTypeName(CPP14Parser.TheTypeNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#decltypeSpecifier}. + * @param ctx the parse tree + */ + void enterDecltypeSpecifier(CPP14Parser.DecltypeSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#decltypeSpecifier}. + * @param ctx the parse tree + */ + void exitDecltypeSpecifier(CPP14Parser.DecltypeSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#elaboratedTypeSpecifier}. + * @param ctx the parse tree + */ + void enterElaboratedTypeSpecifier(CPP14Parser.ElaboratedTypeSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#elaboratedTypeSpecifier}. + * @param ctx the parse tree + */ + void exitElaboratedTypeSpecifier(CPP14Parser.ElaboratedTypeSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#enumName}. + * @param ctx the parse tree + */ + void enterEnumName(CPP14Parser.EnumNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#enumName}. + * @param ctx the parse tree + */ + void exitEnumName(CPP14Parser.EnumNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#enumSpecifier}. + * @param ctx the parse tree + */ + void enterEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#enumSpecifier}. + * @param ctx the parse tree + */ + void exitEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#enumHead}. + * @param ctx the parse tree + */ + void enterEnumHead(CPP14Parser.EnumHeadContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#enumHead}. + * @param ctx the parse tree + */ + void exitEnumHead(CPP14Parser.EnumHeadContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#opaqueEnumDeclaration}. + * @param ctx the parse tree + */ + void enterOpaqueEnumDeclaration(CPP14Parser.OpaqueEnumDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#opaqueEnumDeclaration}. + * @param ctx the parse tree + */ + void exitOpaqueEnumDeclaration(CPP14Parser.OpaqueEnumDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#enumkey}. + * @param ctx the parse tree + */ + void enterEnumkey(CPP14Parser.EnumkeyContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#enumkey}. + * @param ctx the parse tree + */ + void exitEnumkey(CPP14Parser.EnumkeyContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#enumbase}. + * @param ctx the parse tree + */ + void enterEnumbase(CPP14Parser.EnumbaseContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#enumbase}. + * @param ctx the parse tree + */ + void exitEnumbase(CPP14Parser.EnumbaseContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#enumeratorList}. + * @param ctx the parse tree + */ + void enterEnumeratorList(CPP14Parser.EnumeratorListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#enumeratorList}. + * @param ctx the parse tree + */ + void exitEnumeratorList(CPP14Parser.EnumeratorListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#enumeratorDefinition}. + * @param ctx the parse tree + */ + void enterEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#enumeratorDefinition}. + * @param ctx the parse tree + */ + void exitEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#enumerator}. + * @param ctx the parse tree + */ + void enterEnumerator(CPP14Parser.EnumeratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#enumerator}. + * @param ctx the parse tree + */ + void exitEnumerator(CPP14Parser.EnumeratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#namespaceName}. + * @param ctx the parse tree + */ + void enterNamespaceName(CPP14Parser.NamespaceNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#namespaceName}. + * @param ctx the parse tree + */ + void exitNamespaceName(CPP14Parser.NamespaceNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#originalNamespaceName}. + * @param ctx the parse tree + */ + void enterOriginalNamespaceName(CPP14Parser.OriginalNamespaceNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#originalNamespaceName}. + * @param ctx the parse tree + */ + void exitOriginalNamespaceName(CPP14Parser.OriginalNamespaceNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#namespaceDefinition}. + * @param ctx the parse tree + */ + void enterNamespaceDefinition(CPP14Parser.NamespaceDefinitionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#namespaceDefinition}. + * @param ctx the parse tree + */ + void exitNamespaceDefinition(CPP14Parser.NamespaceDefinitionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#namespaceAlias}. + * @param ctx the parse tree + */ + void enterNamespaceAlias(CPP14Parser.NamespaceAliasContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#namespaceAlias}. + * @param ctx the parse tree + */ + void exitNamespaceAlias(CPP14Parser.NamespaceAliasContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#namespaceAliasDefinition}. + * @param ctx the parse tree + */ + void enterNamespaceAliasDefinition(CPP14Parser.NamespaceAliasDefinitionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#namespaceAliasDefinition}. + * @param ctx the parse tree + */ + void exitNamespaceAliasDefinition(CPP14Parser.NamespaceAliasDefinitionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#qualifiednamespacespecifier}. + * @param ctx the parse tree + */ + void enterQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#qualifiednamespacespecifier}. + * @param ctx the parse tree + */ + void exitQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#usingDeclaration}. + * @param ctx the parse tree + */ + void enterUsingDeclaration(CPP14Parser.UsingDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#usingDeclaration}. + * @param ctx the parse tree + */ + void exitUsingDeclaration(CPP14Parser.UsingDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#usingDirective}. + * @param ctx the parse tree + */ + void enterUsingDirective(CPP14Parser.UsingDirectiveContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#usingDirective}. + * @param ctx the parse tree + */ + void exitUsingDirective(CPP14Parser.UsingDirectiveContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#asmDefinition}. + * @param ctx the parse tree + */ + void enterAsmDefinition(CPP14Parser.AsmDefinitionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#asmDefinition}. + * @param ctx the parse tree + */ + void exitAsmDefinition(CPP14Parser.AsmDefinitionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#linkageSpecification}. + * @param ctx the parse tree + */ + void enterLinkageSpecification(CPP14Parser.LinkageSpecificationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#linkageSpecification}. + * @param ctx the parse tree + */ + void exitLinkageSpecification(CPP14Parser.LinkageSpecificationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#attributeSpecifierSeq}. + * @param ctx the parse tree + */ + void enterAttributeSpecifierSeq(CPP14Parser.AttributeSpecifierSeqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#attributeSpecifierSeq}. + * @param ctx the parse tree + */ + void exitAttributeSpecifierSeq(CPP14Parser.AttributeSpecifierSeqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#attributeSpecifier}. + * @param ctx the parse tree + */ + void enterAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#attributeSpecifier}. + * @param ctx the parse tree + */ + void exitAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#alignmentspecifier}. + * @param ctx the parse tree + */ + void enterAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#alignmentspecifier}. + * @param ctx the parse tree + */ + void exitAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#attributeList}. + * @param ctx the parse tree + */ + void enterAttributeList(CPP14Parser.AttributeListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#attributeList}. + * @param ctx the parse tree + */ + void exitAttributeList(CPP14Parser.AttributeListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#attribute}. + * @param ctx the parse tree + */ + void enterAttribute(CPP14Parser.AttributeContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#attribute}. + * @param ctx the parse tree + */ + void exitAttribute(CPP14Parser.AttributeContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#attributeNamespace}. + * @param ctx the parse tree + */ + void enterAttributeNamespace(CPP14Parser.AttributeNamespaceContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#attributeNamespace}. + * @param ctx the parse tree + */ + void exitAttributeNamespace(CPP14Parser.AttributeNamespaceContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#attributeArgumentClause}. + * @param ctx the parse tree + */ + void enterAttributeArgumentClause(CPP14Parser.AttributeArgumentClauseContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#attributeArgumentClause}. + * @param ctx the parse tree + */ + void exitAttributeArgumentClause(CPP14Parser.AttributeArgumentClauseContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#balancedTokenSeq}. + * @param ctx the parse tree + */ + void enterBalancedTokenSeq(CPP14Parser.BalancedTokenSeqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#balancedTokenSeq}. + * @param ctx the parse tree + */ + void exitBalancedTokenSeq(CPP14Parser.BalancedTokenSeqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#balancedtoken}. + * @param ctx the parse tree + */ + void enterBalancedtoken(CPP14Parser.BalancedtokenContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#balancedtoken}. + * @param ctx the parse tree + */ + void exitBalancedtoken(CPP14Parser.BalancedtokenContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#initDeclaratorList}. + * @param ctx the parse tree + */ + void enterInitDeclaratorList(CPP14Parser.InitDeclaratorListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#initDeclaratorList}. + * @param ctx the parse tree + */ + void exitInitDeclaratorList(CPP14Parser.InitDeclaratorListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#initDeclarator}. + * @param ctx the parse tree + */ + void enterInitDeclarator(CPP14Parser.InitDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#initDeclarator}. + * @param ctx the parse tree + */ + void exitInitDeclarator(CPP14Parser.InitDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#declarator}. + * @param ctx the parse tree + */ + void enterDeclarator(CPP14Parser.DeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#declarator}. + * @param ctx the parse tree + */ + void exitDeclarator(CPP14Parser.DeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#pointerDeclarator}. + * @param ctx the parse tree + */ + void enterPointerDeclarator(CPP14Parser.PointerDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#pointerDeclarator}. + * @param ctx the parse tree + */ + void exitPointerDeclarator(CPP14Parser.PointerDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#noPointerDeclarator}. + * @param ctx the parse tree + */ + void enterNoPointerDeclarator(CPP14Parser.NoPointerDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#noPointerDeclarator}. + * @param ctx the parse tree + */ + void exitNoPointerDeclarator(CPP14Parser.NoPointerDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#parametersAndQualifiers}. + * @param ctx the parse tree + */ + void enterParametersAndQualifiers(CPP14Parser.ParametersAndQualifiersContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#parametersAndQualifiers}. + * @param ctx the parse tree + */ + void exitParametersAndQualifiers(CPP14Parser.ParametersAndQualifiersContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#trailingReturnType}. + * @param ctx the parse tree + */ + void enterTrailingReturnType(CPP14Parser.TrailingReturnTypeContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#trailingReturnType}. + * @param ctx the parse tree + */ + void exitTrailingReturnType(CPP14Parser.TrailingReturnTypeContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#pointerOperator}. + * @param ctx the parse tree + */ + void enterPointerOperator(CPP14Parser.PointerOperatorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#pointerOperator}. + * @param ctx the parse tree + */ + void exitPointerOperator(CPP14Parser.PointerOperatorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#cvqualifierseq}. + * @param ctx the parse tree + */ + void enterCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#cvqualifierseq}. + * @param ctx the parse tree + */ + void exitCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#cvQualifier}. + * @param ctx the parse tree + */ + void enterCvQualifier(CPP14Parser.CvQualifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#cvQualifier}. + * @param ctx the parse tree + */ + void exitCvQualifier(CPP14Parser.CvQualifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#refqualifier}. + * @param ctx the parse tree + */ + void enterRefqualifier(CPP14Parser.RefqualifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#refqualifier}. + * @param ctx the parse tree + */ + void exitRefqualifier(CPP14Parser.RefqualifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#declaratorid}. + * @param ctx the parse tree + */ + void enterDeclaratorid(CPP14Parser.DeclaratoridContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#declaratorid}. + * @param ctx the parse tree + */ + void exitDeclaratorid(CPP14Parser.DeclaratoridContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#theTypeId}. + * @param ctx the parse tree + */ + void enterTheTypeId(CPP14Parser.TheTypeIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#theTypeId}. + * @param ctx the parse tree + */ + void exitTheTypeId(CPP14Parser.TheTypeIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#abstractDeclarator}. + * @param ctx the parse tree + */ + void enterAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#abstractDeclarator}. + * @param ctx the parse tree + */ + void exitAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#pointerAbstractDeclarator}. + * @param ctx the parse tree + */ + void enterPointerAbstractDeclarator(CPP14Parser.PointerAbstractDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#pointerAbstractDeclarator}. + * @param ctx the parse tree + */ + void exitPointerAbstractDeclarator(CPP14Parser.PointerAbstractDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#noPointerAbstractDeclarator}. + * @param ctx the parse tree + */ + void enterNoPointerAbstractDeclarator(CPP14Parser.NoPointerAbstractDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#noPointerAbstractDeclarator}. + * @param ctx the parse tree + */ + void exitNoPointerAbstractDeclarator(CPP14Parser.NoPointerAbstractDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#abstractPackDeclarator}. + * @param ctx the parse tree + */ + void enterAbstractPackDeclarator(CPP14Parser.AbstractPackDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#abstractPackDeclarator}. + * @param ctx the parse tree + */ + void exitAbstractPackDeclarator(CPP14Parser.AbstractPackDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#noPointerAbstractPackDeclarator}. + * @param ctx the parse tree + */ + void enterNoPointerAbstractPackDeclarator(CPP14Parser.NoPointerAbstractPackDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#noPointerAbstractPackDeclarator}. + * @param ctx the parse tree + */ + void exitNoPointerAbstractPackDeclarator(CPP14Parser.NoPointerAbstractPackDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#parameterDeclarationClause}. + * @param ctx the parse tree + */ + void enterParameterDeclarationClause(CPP14Parser.ParameterDeclarationClauseContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#parameterDeclarationClause}. + * @param ctx the parse tree + */ + void exitParameterDeclarationClause(CPP14Parser.ParameterDeclarationClauseContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#parameterDeclarationList}. + * @param ctx the parse tree + */ + void enterParameterDeclarationList(CPP14Parser.ParameterDeclarationListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#parameterDeclarationList}. + * @param ctx the parse tree + */ + void exitParameterDeclarationList(CPP14Parser.ParameterDeclarationListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#parameterDeclaration}. + * @param ctx the parse tree + */ + void enterParameterDeclaration(CPP14Parser.ParameterDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#parameterDeclaration}. + * @param ctx the parse tree + */ + void exitParameterDeclaration(CPP14Parser.ParameterDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#functionDefinition}. + * @param ctx the parse tree + */ + void enterFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#functionDefinition}. + * @param ctx the parse tree + */ + void exitFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#functionBody}. + * @param ctx the parse tree + */ + void enterFunctionBody(CPP14Parser.FunctionBodyContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#functionBody}. + * @param ctx the parse tree + */ + void exitFunctionBody(CPP14Parser.FunctionBodyContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#initializer}. + * @param ctx the parse tree + */ + void enterInitializer(CPP14Parser.InitializerContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#initializer}. + * @param ctx the parse tree + */ + void exitInitializer(CPP14Parser.InitializerContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#braceOrEqualInitializer}. + * @param ctx the parse tree + */ + void enterBraceOrEqualInitializer(CPP14Parser.BraceOrEqualInitializerContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#braceOrEqualInitializer}. + * @param ctx the parse tree + */ + void exitBraceOrEqualInitializer(CPP14Parser.BraceOrEqualInitializerContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#initializerClause}. + * @param ctx the parse tree + */ + void enterInitializerClause(CPP14Parser.InitializerClauseContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#initializerClause}. + * @param ctx the parse tree + */ + void exitInitializerClause(CPP14Parser.InitializerClauseContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#initializerList}. + * @param ctx the parse tree + */ + void enterInitializerList(CPP14Parser.InitializerListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#initializerList}. + * @param ctx the parse tree + */ + void exitInitializerList(CPP14Parser.InitializerListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#bracedInitList}. + * @param ctx the parse tree + */ + void enterBracedInitList(CPP14Parser.BracedInitListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#bracedInitList}. + * @param ctx the parse tree + */ + void exitBracedInitList(CPP14Parser.BracedInitListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#className}. + * @param ctx the parse tree + */ + void enterClassName(CPP14Parser.ClassNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#className}. + * @param ctx the parse tree + */ + void exitClassName(CPP14Parser.ClassNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#classSpecifier}. + * @param ctx the parse tree + */ + void enterClassSpecifier(CPP14Parser.ClassSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#classSpecifier}. + * @param ctx the parse tree + */ + void exitClassSpecifier(CPP14Parser.ClassSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#classHead}. + * @param ctx the parse tree + */ + void enterClassHead(CPP14Parser.ClassHeadContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#classHead}. + * @param ctx the parse tree + */ + void exitClassHead(CPP14Parser.ClassHeadContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#classHeadName}. + * @param ctx the parse tree + */ + void enterClassHeadName(CPP14Parser.ClassHeadNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#classHeadName}. + * @param ctx the parse tree + */ + void exitClassHeadName(CPP14Parser.ClassHeadNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#classVirtSpecifier}. + * @param ctx the parse tree + */ + void enterClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#classVirtSpecifier}. + * @param ctx the parse tree + */ + void exitClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#classKey}. + * @param ctx the parse tree + */ + void enterClassKey(CPP14Parser.ClassKeyContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#classKey}. + * @param ctx the parse tree + */ + void exitClassKey(CPP14Parser.ClassKeyContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#memberSpecification}. + * @param ctx the parse tree + */ + void enterMemberSpecification(CPP14Parser.MemberSpecificationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#memberSpecification}. + * @param ctx the parse tree + */ + void exitMemberSpecification(CPP14Parser.MemberSpecificationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#memberdeclaration}. + * @param ctx the parse tree + */ + void enterMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#memberdeclaration}. + * @param ctx the parse tree + */ + void exitMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#memberDeclaratorList}. + * @param ctx the parse tree + */ + void enterMemberDeclaratorList(CPP14Parser.MemberDeclaratorListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#memberDeclaratorList}. + * @param ctx the parse tree + */ + void exitMemberDeclaratorList(CPP14Parser.MemberDeclaratorListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#memberDeclarator}. + * @param ctx the parse tree + */ + void enterMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#memberDeclarator}. + * @param ctx the parse tree + */ + void exitMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#virtualSpecifierSeq}. + * @param ctx the parse tree + */ + void enterVirtualSpecifierSeq(CPP14Parser.VirtualSpecifierSeqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#virtualSpecifierSeq}. + * @param ctx the parse tree + */ + void exitVirtualSpecifierSeq(CPP14Parser.VirtualSpecifierSeqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#virtualSpecifier}. + * @param ctx the parse tree + */ + void enterVirtualSpecifier(CPP14Parser.VirtualSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#virtualSpecifier}. + * @param ctx the parse tree + */ + void exitVirtualSpecifier(CPP14Parser.VirtualSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#pureSpecifier}. + * @param ctx the parse tree + */ + void enterPureSpecifier(CPP14Parser.PureSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#pureSpecifier}. + * @param ctx the parse tree + */ + void exitPureSpecifier(CPP14Parser.PureSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#baseClause}. + * @param ctx the parse tree + */ + void enterBaseClause(CPP14Parser.BaseClauseContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#baseClause}. + * @param ctx the parse tree + */ + void exitBaseClause(CPP14Parser.BaseClauseContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#baseSpecifierList}. + * @param ctx the parse tree + */ + void enterBaseSpecifierList(CPP14Parser.BaseSpecifierListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#baseSpecifierList}. + * @param ctx the parse tree + */ + void exitBaseSpecifierList(CPP14Parser.BaseSpecifierListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#baseSpecifier}. + * @param ctx the parse tree + */ + void enterBaseSpecifier(CPP14Parser.BaseSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#baseSpecifier}. + * @param ctx the parse tree + */ + void exitBaseSpecifier(CPP14Parser.BaseSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#classOrDeclType}. + * @param ctx the parse tree + */ + void enterClassOrDeclType(CPP14Parser.ClassOrDeclTypeContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#classOrDeclType}. + * @param ctx the parse tree + */ + void exitClassOrDeclType(CPP14Parser.ClassOrDeclTypeContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#baseTypeSpecifier}. + * @param ctx the parse tree + */ + void enterBaseTypeSpecifier(CPP14Parser.BaseTypeSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#baseTypeSpecifier}. + * @param ctx the parse tree + */ + void exitBaseTypeSpecifier(CPP14Parser.BaseTypeSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#accessSpecifier}. + * @param ctx the parse tree + */ + void enterAccessSpecifier(CPP14Parser.AccessSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#accessSpecifier}. + * @param ctx the parse tree + */ + void exitAccessSpecifier(CPP14Parser.AccessSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#conversionFunctionId}. + * @param ctx the parse tree + */ + void enterConversionFunctionId(CPP14Parser.ConversionFunctionIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#conversionFunctionId}. + * @param ctx the parse tree + */ + void exitConversionFunctionId(CPP14Parser.ConversionFunctionIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#conversionTypeId}. + * @param ctx the parse tree + */ + void enterConversionTypeId(CPP14Parser.ConversionTypeIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#conversionTypeId}. + * @param ctx the parse tree + */ + void exitConversionTypeId(CPP14Parser.ConversionTypeIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#conversionDeclarator}. + * @param ctx the parse tree + */ + void enterConversionDeclarator(CPP14Parser.ConversionDeclaratorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#conversionDeclarator}. + * @param ctx the parse tree + */ + void exitConversionDeclarator(CPP14Parser.ConversionDeclaratorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#constructorInitializer}. + * @param ctx the parse tree + */ + void enterConstructorInitializer(CPP14Parser.ConstructorInitializerContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#constructorInitializer}. + * @param ctx the parse tree + */ + void exitConstructorInitializer(CPP14Parser.ConstructorInitializerContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#memInitializerList}. + * @param ctx the parse tree + */ + void enterMemInitializerList(CPP14Parser.MemInitializerListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#memInitializerList}. + * @param ctx the parse tree + */ + void exitMemInitializerList(CPP14Parser.MemInitializerListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#memInitializer}. + * @param ctx the parse tree + */ + void enterMemInitializer(CPP14Parser.MemInitializerContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#memInitializer}. + * @param ctx the parse tree + */ + void exitMemInitializer(CPP14Parser.MemInitializerContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#meminitializerid}. + * @param ctx the parse tree + */ + void enterMeminitializerid(CPP14Parser.MeminitializeridContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#meminitializerid}. + * @param ctx the parse tree + */ + void exitMeminitializerid(CPP14Parser.MeminitializeridContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#operatorFunctionId}. + * @param ctx the parse tree + */ + void enterOperatorFunctionId(CPP14Parser.OperatorFunctionIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#operatorFunctionId}. + * @param ctx the parse tree + */ + void exitOperatorFunctionId(CPP14Parser.OperatorFunctionIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#literalOperatorId}. + * @param ctx the parse tree + */ + void enterLiteralOperatorId(CPP14Parser.LiteralOperatorIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#literalOperatorId}. + * @param ctx the parse tree + */ + void exitLiteralOperatorId(CPP14Parser.LiteralOperatorIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#templateDeclaration}. + * @param ctx the parse tree + */ + void enterTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#templateDeclaration}. + * @param ctx the parse tree + */ + void exitTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#templateparameterList}. + * @param ctx the parse tree + */ + void enterTemplateparameterList(CPP14Parser.TemplateparameterListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#templateparameterList}. + * @param ctx the parse tree + */ + void exitTemplateparameterList(CPP14Parser.TemplateparameterListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#templateParameter}. + * @param ctx the parse tree + */ + void enterTemplateParameter(CPP14Parser.TemplateParameterContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#templateParameter}. + * @param ctx the parse tree + */ + void exitTemplateParameter(CPP14Parser.TemplateParameterContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#typeParameter}. + * @param ctx the parse tree + */ + void enterTypeParameter(CPP14Parser.TypeParameterContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#typeParameter}. + * @param ctx the parse tree + */ + void exitTypeParameter(CPP14Parser.TypeParameterContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#simpleTemplateId}. + * @param ctx the parse tree + */ + void enterSimpleTemplateId(CPP14Parser.SimpleTemplateIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#simpleTemplateId}. + * @param ctx the parse tree + */ + void exitSimpleTemplateId(CPP14Parser.SimpleTemplateIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#templateId}. + * @param ctx the parse tree + */ + void enterTemplateId(CPP14Parser.TemplateIdContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#templateId}. + * @param ctx the parse tree + */ + void exitTemplateId(CPP14Parser.TemplateIdContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#templateName}. + * @param ctx the parse tree + */ + void enterTemplateName(CPP14Parser.TemplateNameContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#templateName}. + * @param ctx the parse tree + */ + void exitTemplateName(CPP14Parser.TemplateNameContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#templateArgumentList}. + * @param ctx the parse tree + */ + void enterTemplateArgumentList(CPP14Parser.TemplateArgumentListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#templateArgumentList}. + * @param ctx the parse tree + */ + void exitTemplateArgumentList(CPP14Parser.TemplateArgumentListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#templateArgument}. + * @param ctx the parse tree + */ + void enterTemplateArgument(CPP14Parser.TemplateArgumentContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#templateArgument}. + * @param ctx the parse tree + */ + void exitTemplateArgument(CPP14Parser.TemplateArgumentContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#typeNameSpecifier}. + * @param ctx the parse tree + */ + void enterTypeNameSpecifier(CPP14Parser.TypeNameSpecifierContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#typeNameSpecifier}. + * @param ctx the parse tree + */ + void exitTypeNameSpecifier(CPP14Parser.TypeNameSpecifierContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#explicitInstantiation}. + * @param ctx the parse tree + */ + void enterExplicitInstantiation(CPP14Parser.ExplicitInstantiationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#explicitInstantiation}. + * @param ctx the parse tree + */ + void exitExplicitInstantiation(CPP14Parser.ExplicitInstantiationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#explicitSpecialization}. + * @param ctx the parse tree + */ + void enterExplicitSpecialization(CPP14Parser.ExplicitSpecializationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#explicitSpecialization}. + * @param ctx the parse tree + */ + void exitExplicitSpecialization(CPP14Parser.ExplicitSpecializationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#tryBlock}. + * @param ctx the parse tree + */ + void enterTryBlock(CPP14Parser.TryBlockContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#tryBlock}. + * @param ctx the parse tree + */ + void exitTryBlock(CPP14Parser.TryBlockContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#functionTryBlock}. + * @param ctx the parse tree + */ + void enterFunctionTryBlock(CPP14Parser.FunctionTryBlockContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#functionTryBlock}. + * @param ctx the parse tree + */ + void exitFunctionTryBlock(CPP14Parser.FunctionTryBlockContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#handlerSeq}. + * @param ctx the parse tree + */ + void enterHandlerSeq(CPP14Parser.HandlerSeqContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#handlerSeq}. + * @param ctx the parse tree + */ + void exitHandlerSeq(CPP14Parser.HandlerSeqContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#handler}. + * @param ctx the parse tree + */ + void enterHandler(CPP14Parser.HandlerContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#handler}. + * @param ctx the parse tree + */ + void exitHandler(CPP14Parser.HandlerContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#exceptionDeclaration}. + * @param ctx the parse tree + */ + void enterExceptionDeclaration(CPP14Parser.ExceptionDeclarationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#exceptionDeclaration}. + * @param ctx the parse tree + */ + void exitExceptionDeclaration(CPP14Parser.ExceptionDeclarationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#throwExpression}. + * @param ctx the parse tree + */ + void enterThrowExpression(CPP14Parser.ThrowExpressionContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#throwExpression}. + * @param ctx the parse tree + */ + void exitThrowExpression(CPP14Parser.ThrowExpressionContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#exceptionSpecification}. + * @param ctx the parse tree + */ + void enterExceptionSpecification(CPP14Parser.ExceptionSpecificationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#exceptionSpecification}. + * @param ctx the parse tree + */ + void exitExceptionSpecification(CPP14Parser.ExceptionSpecificationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#dynamicExceptionSpecification}. + * @param ctx the parse tree + */ + void enterDynamicExceptionSpecification(CPP14Parser.DynamicExceptionSpecificationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#dynamicExceptionSpecification}. + * @param ctx the parse tree + */ + void exitDynamicExceptionSpecification(CPP14Parser.DynamicExceptionSpecificationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#typeIdList}. + * @param ctx the parse tree + */ + void enterTypeIdList(CPP14Parser.TypeIdListContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#typeIdList}. + * @param ctx the parse tree + */ + void exitTypeIdList(CPP14Parser.TypeIdListContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#noeExceptSpecification}. + * @param ctx the parse tree + */ + void enterNoeExceptSpecification(CPP14Parser.NoeExceptSpecificationContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#noeExceptSpecification}. + * @param ctx the parse tree + */ + void exitNoeExceptSpecification(CPP14Parser.NoeExceptSpecificationContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#theOperator}. + * @param ctx the parse tree + */ + void enterTheOperator(CPP14Parser.TheOperatorContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#theOperator}. + * @param ctx the parse tree + */ + void exitTheOperator(CPP14Parser.TheOperatorContext ctx); + /** + * Enter a parse tree produced by {@link CPP14Parser#literal}. + * @param ctx the parse tree + */ + void enterLiteral(CPP14Parser.LiteralContext ctx); + /** + * Exit a parse tree produced by {@link CPP14Parser#literal}. + * @param ctx the parse tree + */ + void exitLiteral(CPP14Parser.LiteralContext ctx); +} \ No newline at end of file -- Gitee From 68333170dd17334ca2b586027c9f8358aa052e7a Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:26:43 +0800 Subject: [PATCH 10/45] add cpp parser Signed-off-by: wangshi --- .../java/antlr/cpp/CPP14ParserVisitor.java | 1175 +++++++++++++++++ 1 file changed, 1175 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserVisitor.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserVisitor.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserVisitor.java new file mode 100644 index 00000000..3776d501 --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/cpp/CPP14ParserVisitor.java @@ -0,0 +1,1175 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.cpp; + +// Generated from ./CPP14Parser.g4 by ANTLR 4.13.2 +import org.antlr.v4.runtime.tree.ParseTreeVisitor; + +/** + * This interface defines a complete generic visitor for a parse tree produced + * by {@link CPP14Parser}. + * + * @param The return type of the visit operation. Use {@link Void} for + * operations with no return type. + */ +public interface CPP14ParserVisitor extends ParseTreeVisitor { + /** + * Visit a parse tree produced by {@link CPP14Parser#translationUnit}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTranslationUnit(CPP14Parser.TranslationUnitContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#primaryExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitPrimaryExpression(CPP14Parser.PrimaryExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#idExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitIdExpression(CPP14Parser.IdExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#unqualifiedId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitUnqualifiedId(CPP14Parser.UnqualifiedIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#qualifiedId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitQualifiedId(CPP14Parser.QualifiedIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#nestedNameSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNestedNameSpecifier(CPP14Parser.NestedNameSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#lambdaExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLambdaExpression(CPP14Parser.LambdaExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#lambdaIntroducer}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLambdaIntroducer(CPP14Parser.LambdaIntroducerContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#lambdaCapture}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLambdaCapture(CPP14Parser.LambdaCaptureContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#captureDefault}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitCaptureDefault(CPP14Parser.CaptureDefaultContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#captureList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitCaptureList(CPP14Parser.CaptureListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#capture}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitCapture(CPP14Parser.CaptureContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#simpleCapture}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitSimpleCapture(CPP14Parser.SimpleCaptureContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#initcapture}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitInitcapture(CPP14Parser.InitcaptureContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#lambdaDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLambdaDeclarator(CPP14Parser.LambdaDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#postfixExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitPostfixExpression(CPP14Parser.PostfixExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#typeIdOfTheTypeId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTypeIdOfTheTypeId(CPP14Parser.TypeIdOfTheTypeIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#expressionList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitExpressionList(CPP14Parser.ExpressionListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#pseudoDestructorName}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitPseudoDestructorName(CPP14Parser.PseudoDestructorNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#unaryExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitUnaryExpression(CPP14Parser.UnaryExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#unaryOperator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitUnaryOperator(CPP14Parser.UnaryOperatorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#newExpression_}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNewExpression_(CPP14Parser.NewExpression_Context ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#newPlacement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNewPlacement(CPP14Parser.NewPlacementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#newTypeId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNewTypeId(CPP14Parser.NewTypeIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#newDeclarator_}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNewDeclarator_(CPP14Parser.NewDeclarator_Context ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#noPointerNewDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNoPointerNewDeclarator(CPP14Parser.NoPointerNewDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#newInitializer_}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNewInitializer_(CPP14Parser.NewInitializer_Context ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#deleteExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDeleteExpression(CPP14Parser.DeleteExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#noExceptExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNoExceptExpression(CPP14Parser.NoExceptExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#castExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitCastExpression(CPP14Parser.CastExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#pointerMemberExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitPointerMemberExpression(CPP14Parser.PointerMemberExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#multiplicativeExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitMultiplicativeExpression(CPP14Parser.MultiplicativeExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#additiveExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAdditiveExpression(CPP14Parser.AdditiveExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#shiftExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitShiftExpression(CPP14Parser.ShiftExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#shiftOperator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitShiftOperator(CPP14Parser.ShiftOperatorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#relationalExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitRelationalExpression(CPP14Parser.RelationalExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#equalityExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEqualityExpression(CPP14Parser.EqualityExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#andExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAndExpression(CPP14Parser.AndExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#exclusiveOrExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitExclusiveOrExpression(CPP14Parser.ExclusiveOrExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#inclusiveOrExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitInclusiveOrExpression(CPP14Parser.InclusiveOrExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#logicalAndExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLogicalAndExpression(CPP14Parser.LogicalAndExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#logicalOrExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLogicalOrExpression(CPP14Parser.LogicalOrExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#conditionalExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitConditionalExpression(CPP14Parser.ConditionalExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#assignmentExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAssignmentExpression(CPP14Parser.AssignmentExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#assignmentOperator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAssignmentOperator(CPP14Parser.AssignmentOperatorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#expression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitExpression(CPP14Parser.ExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#constantExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitConstantExpression(CPP14Parser.ConstantExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#statement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitStatement(CPP14Parser.StatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#labeledStatement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLabeledStatement(CPP14Parser.LabeledStatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#expressionStatement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitExpressionStatement(CPP14Parser.ExpressionStatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#compoundStatement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitCompoundStatement(CPP14Parser.CompoundStatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#statementSeq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitStatementSeq(CPP14Parser.StatementSeqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#selectionStatement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitSelectionStatement(CPP14Parser.SelectionStatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#condition}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitCondition(CPP14Parser.ConditionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#iterationStatement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitIterationStatement(CPP14Parser.IterationStatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#forInitStatement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitForInitStatement(CPP14Parser.ForInitStatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#forRangeDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitForRangeDeclaration(CPP14Parser.ForRangeDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#forRangeInitializer}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitForRangeInitializer(CPP14Parser.ForRangeInitializerContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#jumpStatement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitJumpStatement(CPP14Parser.JumpStatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#declarationStatement}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDeclarationStatement(CPP14Parser.DeclarationStatementContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#declarationseq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDeclarationseq(CPP14Parser.DeclarationseqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#declaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDeclaration(CPP14Parser.DeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#blockDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBlockDeclaration(CPP14Parser.BlockDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#aliasDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAliasDeclaration(CPP14Parser.AliasDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#simpleDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitSimpleDeclaration(CPP14Parser.SimpleDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#staticAssertDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitStaticAssertDeclaration(CPP14Parser.StaticAssertDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#emptyDeclaration_}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEmptyDeclaration_(CPP14Parser.EmptyDeclaration_Context ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#attributeDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#declSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDeclSpecifier(CPP14Parser.DeclSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#declSpecifierSeq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDeclSpecifierSeq(CPP14Parser.DeclSpecifierSeqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#storageClassSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitStorageClassSpecifier(CPP14Parser.StorageClassSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#functionSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#typedefName}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTypedefName(CPP14Parser.TypedefNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#typeSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#trailingTypeSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTrailingTypeSpecifier(CPP14Parser.TrailingTypeSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#typeSpecifierSeq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTypeSpecifierSeq(CPP14Parser.TypeSpecifierSeqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#trailingTypeSpecifierSeq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTrailingTypeSpecifierSeq(CPP14Parser.TrailingTypeSpecifierSeqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#simpleTypeLengthModifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitSimpleTypeLengthModifier(CPP14Parser.SimpleTypeLengthModifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#simpleTypeSignednessModifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitSimpleTypeSignednessModifier(CPP14Parser.SimpleTypeSignednessModifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#simpleTypeSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitSimpleTypeSpecifier(CPP14Parser.SimpleTypeSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#theTypeName}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTheTypeName(CPP14Parser.TheTypeNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#decltypeSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDecltypeSpecifier(CPP14Parser.DecltypeSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#elaboratedTypeSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitElaboratedTypeSpecifier(CPP14Parser.ElaboratedTypeSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#enumName}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEnumName(CPP14Parser.EnumNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#enumSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#enumHead}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEnumHead(CPP14Parser.EnumHeadContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#opaqueEnumDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitOpaqueEnumDeclaration(CPP14Parser.OpaqueEnumDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#enumkey}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEnumkey(CPP14Parser.EnumkeyContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#enumbase}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEnumbase(CPP14Parser.EnumbaseContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#enumeratorList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEnumeratorList(CPP14Parser.EnumeratorListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#enumeratorDefinition}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#enumerator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitEnumerator(CPP14Parser.EnumeratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#namespaceName}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNamespaceName(CPP14Parser.NamespaceNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#originalNamespaceName}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitOriginalNamespaceName(CPP14Parser.OriginalNamespaceNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#namespaceDefinition}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNamespaceDefinition(CPP14Parser.NamespaceDefinitionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#namespaceAlias}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNamespaceAlias(CPP14Parser.NamespaceAliasContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#namespaceAliasDefinition}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNamespaceAliasDefinition(CPP14Parser.NamespaceAliasDefinitionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#qualifiednamespacespecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#usingDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitUsingDeclaration(CPP14Parser.UsingDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#usingDirective}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitUsingDirective(CPP14Parser.UsingDirectiveContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#asmDefinition}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAsmDefinition(CPP14Parser.AsmDefinitionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#linkageSpecification}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLinkageSpecification(CPP14Parser.LinkageSpecificationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#attributeSpecifierSeq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAttributeSpecifierSeq(CPP14Parser.AttributeSpecifierSeqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#attributeSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#alignmentspecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#attributeList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAttributeList(CPP14Parser.AttributeListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#attribute}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAttribute(CPP14Parser.AttributeContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#attributeNamespace}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAttributeNamespace(CPP14Parser.AttributeNamespaceContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#attributeArgumentClause}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAttributeArgumentClause(CPP14Parser.AttributeArgumentClauseContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#balancedTokenSeq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBalancedTokenSeq(CPP14Parser.BalancedTokenSeqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#balancedtoken}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBalancedtoken(CPP14Parser.BalancedtokenContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#initDeclaratorList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitInitDeclaratorList(CPP14Parser.InitDeclaratorListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#initDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitInitDeclarator(CPP14Parser.InitDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#declarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDeclarator(CPP14Parser.DeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#pointerDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitPointerDeclarator(CPP14Parser.PointerDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#noPointerDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNoPointerDeclarator(CPP14Parser.NoPointerDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#parametersAndQualifiers}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitParametersAndQualifiers(CPP14Parser.ParametersAndQualifiersContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#trailingReturnType}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTrailingReturnType(CPP14Parser.TrailingReturnTypeContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#pointerOperator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitPointerOperator(CPP14Parser.PointerOperatorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#cvqualifierseq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#cvQualifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitCvQualifier(CPP14Parser.CvQualifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#refqualifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitRefqualifier(CPP14Parser.RefqualifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#declaratorid}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDeclaratorid(CPP14Parser.DeclaratoridContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#theTypeId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTheTypeId(CPP14Parser.TheTypeIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#abstractDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#pointerAbstractDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitPointerAbstractDeclarator(CPP14Parser.PointerAbstractDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#noPointerAbstractDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNoPointerAbstractDeclarator(CPP14Parser.NoPointerAbstractDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#abstractPackDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAbstractPackDeclarator(CPP14Parser.AbstractPackDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#noPointerAbstractPackDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNoPointerAbstractPackDeclarator(CPP14Parser.NoPointerAbstractPackDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#parameterDeclarationClause}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitParameterDeclarationClause(CPP14Parser.ParameterDeclarationClauseContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#parameterDeclarationList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitParameterDeclarationList(CPP14Parser.ParameterDeclarationListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#parameterDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitParameterDeclaration(CPP14Parser.ParameterDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#functionDefinition}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#functionBody}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitFunctionBody(CPP14Parser.FunctionBodyContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#initializer}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitInitializer(CPP14Parser.InitializerContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#braceOrEqualInitializer}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBraceOrEqualInitializer(CPP14Parser.BraceOrEqualInitializerContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#initializerClause}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitInitializerClause(CPP14Parser.InitializerClauseContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#initializerList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitInitializerList(CPP14Parser.InitializerListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#bracedInitList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBracedInitList(CPP14Parser.BracedInitListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#className}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassName(CPP14Parser.ClassNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#classSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassSpecifier(CPP14Parser.ClassSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#classHead}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassHead(CPP14Parser.ClassHeadContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#classHeadName}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassHeadName(CPP14Parser.ClassHeadNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#classVirtSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#classKey}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassKey(CPP14Parser.ClassKeyContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#memberSpecification}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitMemberSpecification(CPP14Parser.MemberSpecificationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#memberdeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#memberDeclaratorList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitMemberDeclaratorList(CPP14Parser.MemberDeclaratorListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#memberDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#virtualSpecifierSeq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitVirtualSpecifierSeq(CPP14Parser.VirtualSpecifierSeqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#virtualSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitVirtualSpecifier(CPP14Parser.VirtualSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#pureSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitPureSpecifier(CPP14Parser.PureSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#baseClause}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBaseClause(CPP14Parser.BaseClauseContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#baseSpecifierList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBaseSpecifierList(CPP14Parser.BaseSpecifierListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#baseSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBaseSpecifier(CPP14Parser.BaseSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#classOrDeclType}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassOrDeclType(CPP14Parser.ClassOrDeclTypeContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#baseTypeSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitBaseTypeSpecifier(CPP14Parser.BaseTypeSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#accessSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitAccessSpecifier(CPP14Parser.AccessSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#conversionFunctionId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitConversionFunctionId(CPP14Parser.ConversionFunctionIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#conversionTypeId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitConversionTypeId(CPP14Parser.ConversionTypeIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#conversionDeclarator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitConversionDeclarator(CPP14Parser.ConversionDeclaratorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#constructorInitializer}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitConstructorInitializer(CPP14Parser.ConstructorInitializerContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#memInitializerList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitMemInitializerList(CPP14Parser.MemInitializerListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#memInitializer}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitMemInitializer(CPP14Parser.MemInitializerContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#meminitializerid}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitMeminitializerid(CPP14Parser.MeminitializeridContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#operatorFunctionId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitOperatorFunctionId(CPP14Parser.OperatorFunctionIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#literalOperatorId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLiteralOperatorId(CPP14Parser.LiteralOperatorIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#templateDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#templateparameterList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTemplateparameterList(CPP14Parser.TemplateparameterListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#templateParameter}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTemplateParameter(CPP14Parser.TemplateParameterContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#typeParameter}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTypeParameter(CPP14Parser.TypeParameterContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#simpleTemplateId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitSimpleTemplateId(CPP14Parser.SimpleTemplateIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#templateId}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTemplateId(CPP14Parser.TemplateIdContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#templateName}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTemplateName(CPP14Parser.TemplateNameContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#templateArgumentList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTemplateArgumentList(CPP14Parser.TemplateArgumentListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#templateArgument}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTemplateArgument(CPP14Parser.TemplateArgumentContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#typeNameSpecifier}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTypeNameSpecifier(CPP14Parser.TypeNameSpecifierContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#explicitInstantiation}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitExplicitInstantiation(CPP14Parser.ExplicitInstantiationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#explicitSpecialization}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitExplicitSpecialization(CPP14Parser.ExplicitSpecializationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#tryBlock}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTryBlock(CPP14Parser.TryBlockContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#functionTryBlock}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitFunctionTryBlock(CPP14Parser.FunctionTryBlockContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#handlerSeq}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitHandlerSeq(CPP14Parser.HandlerSeqContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#handler}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitHandler(CPP14Parser.HandlerContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#exceptionDeclaration}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitExceptionDeclaration(CPP14Parser.ExceptionDeclarationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#throwExpression}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitThrowExpression(CPP14Parser.ThrowExpressionContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#exceptionSpecification}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitExceptionSpecification(CPP14Parser.ExceptionSpecificationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#dynamicExceptionSpecification}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitDynamicExceptionSpecification(CPP14Parser.DynamicExceptionSpecificationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#typeIdList}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTypeIdList(CPP14Parser.TypeIdListContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#noeExceptSpecification}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitNoeExceptSpecification(CPP14Parser.NoeExceptSpecificationContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#theOperator}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitTheOperator(CPP14Parser.TheOperatorContext ctx); + /** + * Visit a parse tree produced by {@link CPP14Parser#literal}. + * @param ctx the parse tree + * @return the visitor result + */ + T visitLiteral(CPP14Parser.LiteralContext ctx); +} \ No newline at end of file -- Gitee From a832971eebcdb3517a1af54ce7dbc1de923ba2ef Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:28:35 +0800 Subject: [PATCH 11/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1973 +++++++++++++++++ 1 file changed, 1973 insertions(+) create mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java new file mode 100644 index 00000000..9d748f3d --- /dev/null +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -0,0 +1,1973 @@ +/* + * Copyright (c) 2025 Shenzhen Kaihong Digital. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package antlr.typescript; + +// Generated from TypeScriptParser.g4 by ANTLR 4.13.2 +import org.antlr.v4.runtime.atn.*; +import org.antlr.v4.runtime.dfa.DFA; +import org.antlr.v4.runtime.*; +import org.antlr.v4.runtime.tree.*; +import java.util.List; + +@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast", "CheckReturnValue", "this-escape"}) +public class TypeScriptParser extends TypeScriptParserBase { + static { RuntimeMetaData.checkVersion("4.13.2", RuntimeMetaData.VERSION); } + + protected static final DFA[] _decisionToDFA; + protected static final PredictionContextCache _sharedContextCache = + new PredictionContextCache(); + public static final int + MultiLineComment=1, SingleLineComment=2, RegularExpressionLiteral=3, OpenBracket=4, + CloseBracket=5, OpenParen=6, CloseParen=7, OpenBrace=8, TemplateCloseBrace=9, + CloseBrace=10, SemiColon=11, Comma=12, Assign=13, QuestionMark=14, QuestionMarkDot=15, + Colon=16, Ellipsis=17, Dot=18, PlusPlus=19, MinusMinus=20, Plus=21, Minus=22, + BitNot=23, Not=24, Multiply=25, Divide=26, Modulus=27, Power=28, NullCoalesce=29, + Hashtag=30, LeftShiftArithmetic=31, LessThan=32, MoreThan=33, LessThanEquals=34, + GreaterThanEquals=35, Equals_=36, NotEquals=37, IdentityEquals=38, IdentityNotEquals=39, + BitAnd=40, BitXOr=41, BitOr=42, And=43, Or=44, MultiplyAssign=45, DivideAssign=46, + ModulusAssign=47, PlusAssign=48, MinusAssign=49, LeftShiftArithmeticAssign=50, + RightShiftArithmeticAssign=51, RightShiftLogicalAssign=52, BitAndAssign=53, + BitXorAssign=54, BitOrAssign=55, PowerAssign=56, NullishCoalescingAssign=57, + ARROW=58, NullLiteral=59, BooleanLiteral=60, DecimalLiteral=61, HexIntegerLiteral=62, + OctalIntegerLiteral=63, OctalIntegerLiteral2=64, BinaryIntegerLiteral=65, + BigHexIntegerLiteral=66, BigOctalIntegerLiteral=67, BigBinaryIntegerLiteral=68, + BigDecimalIntegerLiteral=69, Break=70, Do=71, Instanceof=72, Typeof=73, + Case=74, Else=75, New=76, Var=77, Catch=78, Finally=79, Return=80, Void=81, + Continue=82, For=83, Switch=84, While=85, Debugger=86, Function_=87, This=88, + With=89, Default=90, If=91, Throw=92, Delete=93, In=94, Try=95, As=96, + From=97, ReadOnly=98, Async=99, Await=100, Yield=101, YieldStar=102, Class=103, + Enum=104, Extends=105, Super=106, Const=107, Export=108, Import=109, Implements=110, + Let=111, Private=112, Public=113, Interface=114, Package=115, Protected=116, + Static=117, Any=118, Number=119, Never=120, Boolean=121, String=122, Unique=123, + Symbol=124, Undefined=125, Object=126, Of=127, KeyOf=128, TypeAlias=129, + Constructor=130, Namespace=131, Require=132, Module=133, Declare=134, + Abstract=135, Is=136, At=137, Identifier=138, StringLiteral=139, BackTick=140, + WhiteSpaces=141, LineTerminator=142, HtmlComment=143, CDataComment=144, + UnexpectedCharacter=145, TemplateStringEscapeAtom=146, TemplateStringStartExpression=147, + TemplateStringAtom=148; + public static final int + RULE_initializer = 0, RULE_bindingPattern = 1, RULE_typeParameters = 2, + RULE_typeParameterList = 3, RULE_typeParameter = 4, RULE_constraint = 5, + RULE_typeArguments = 6, RULE_typeArgumentList = 7, RULE_typeArgument = 8, + RULE_type_ = 9, RULE_unionOrIntersectionOrPrimaryType = 10, RULE_primaryType = 11, + RULE_predefinedType = 12, RULE_typeReference = 13, RULE_typeGeneric = 14, + RULE_typeName = 15, RULE_objectType = 16, RULE_typeBody = 17, RULE_typeMemberList = 18, + RULE_typeMember = 19, RULE_arrayType = 20, RULE_tupleType = 21, RULE_tupleElementTypes = 22, + RULE_functionType = 23, RULE_constructorType = 24, RULE_typeQuery = 25, + RULE_typeQueryExpression = 26, RULE_propertySignatur = 27, RULE_typeAnnotation = 28, + RULE_callSignature = 29, RULE_parameterList = 30, RULE_requiredParameterList = 31, + RULE_parameter = 32, RULE_optionalParameter = 33, RULE_restParameter = 34, + RULE_requiredParameter = 35, RULE_accessibilityModifier = 36, RULE_identifierOrPattern = 37, + RULE_constructSignature = 38, RULE_indexSignature = 39, RULE_methodSignature = 40, + RULE_typeAliasDeclaration = 41, RULE_constructorDeclaration = 42, RULE_interfaceDeclaration = 43, + RULE_interfaceExtendsClause = 44, RULE_classOrInterfaceTypeList = 45, + RULE_enumDeclaration = 46, RULE_enumBody = 47, RULE_enumMemberList = 48, + RULE_enumMember = 49, RULE_namespaceDeclaration = 50, RULE_namespaceName = 51, + RULE_importAliasDeclaration = 52, RULE_decoratorList = 53, RULE_decorator = 54, + RULE_decoratorMemberExpression = 55, RULE_decoratorCallExpression = 56, + RULE_program = 57, RULE_sourceElement = 58, RULE_statement = 59, RULE_block = 60, + RULE_statementList = 61, RULE_abstractDeclaration = 62, RULE_importStatement = 63, + RULE_importFromBlock = 64, RULE_importModuleItems = 65, RULE_importAliasName = 66, + RULE_moduleExportName = 67, RULE_importedBinding = 68, RULE_importDefault = 69, + RULE_importNamespace = 70, RULE_importFrom = 71, RULE_aliasName = 72, + RULE_exportStatement = 73, RULE_exportFromBlock = 74, RULE_exportModuleItems = 75, + RULE_exportAliasName = 76, RULE_declaration = 77, RULE_variableStatement = 78, + RULE_variableDeclarationList = 79, RULE_variableDeclaration = 80, RULE_emptyStatement_ = 81, + RULE_expressionStatement = 82, RULE_ifStatement = 83, RULE_iterationStatement = 84, + RULE_varModifier = 85, RULE_continueStatement = 86, RULE_breakStatement = 87, + RULE_returnStatement = 88, RULE_yieldStatement = 89, RULE_withStatement = 90, + RULE_switchStatement = 91, RULE_caseBlock = 92, RULE_caseClauses = 93, + RULE_caseClause = 94, RULE_defaultClause = 95, RULE_labelledStatement = 96, + RULE_throwStatement = 97, RULE_tryStatement = 98, RULE_catchProduction = 99, + RULE_finallyProduction = 100, RULE_debuggerStatement = 101, RULE_functionDeclaration = 102, + RULE_classDeclaration = 103, RULE_classHeritage = 104, RULE_classTail = 105, + RULE_classExtendsClause = 106, RULE_implementsClause = 107, RULE_classElement = 108, + RULE_propertyMemberDeclaration = 109, RULE_propertyMemberBase = 110, RULE_indexMemberDeclaration = 111, + RULE_generatorMethod = 112, RULE_generatorFunctionDeclaration = 113, RULE_generatorBlock = 114, + RULE_generatorDefinition = 115, RULE_iteratorBlock = 116, RULE_iteratorDefinition = 117, + RULE_classElementName = 118, RULE_privateIdentifier = 119, RULE_formalParameterList = 120, + RULE_formalParameterArg = 121, RULE_lastFormalParameterArg = 122, RULE_functionBody = 123, + RULE_sourceElements = 124, RULE_arrayLiteral = 125, RULE_elementList = 126, + RULE_arrayElement = 127, RULE_objectLiteral = 128, RULE_propertyAssignment = 129, + RULE_getAccessor = 130, RULE_setAccessor = 131, RULE_propertyName = 132, + RULE_arguments = 133, RULE_argumentList = 134, RULE_argument = 135, RULE_expressionSequence = 136, + RULE_singleExpression = 137, RULE_asExpression = 138, RULE_assignable = 139, + RULE_anonymousFunction = 140, RULE_arrowFunctionDeclaration = 141, RULE_arrowFunctionParameters = 142, + RULE_arrowFunctionBody = 143, RULE_assignmentOperator = 144, RULE_literal = 145, + RULE_templateStringLiteral = 146, RULE_templateStringAtom = 147, RULE_numericLiteral = 148, + RULE_bigintLiteral = 149, RULE_getter = 150, RULE_setter = 151, RULE_identifierName = 152, + RULE_identifier = 153, RULE_identifierOrKeyWord = 154, RULE_reservedWord = 155, + RULE_keyword = 156, RULE_eos = 157; + private static String[] makeRuleNames() { + return new String[] { + "initializer", "bindingPattern", "typeParameters", "typeParameterList", + "typeParameter", "constraint", "typeArguments", "typeArgumentList", "typeArgument", + "type_", "unionOrIntersectionOrPrimaryType", "primaryType", "predefinedType", + "typeReference", "typeGeneric", "typeName", "objectType", "typeBody", + "typeMemberList", "typeMember", "arrayType", "tupleType", "tupleElementTypes", + "functionType", "constructorType", "typeQuery", "typeQueryExpression", + "propertySignatur", "typeAnnotation", "callSignature", "parameterList", + "requiredParameterList", "parameter", "optionalParameter", "restParameter", + "requiredParameter", "accessibilityModifier", "identifierOrPattern", + "constructSignature", "indexSignature", "methodSignature", "typeAliasDeclaration", + "constructorDeclaration", "interfaceDeclaration", "interfaceExtendsClause", + "classOrInterfaceTypeList", "enumDeclaration", "enumBody", "enumMemberList", + "enumMember", "namespaceDeclaration", "namespaceName", "importAliasDeclaration", + "decoratorList", "decorator", "decoratorMemberExpression", "decoratorCallExpression", + "program", "sourceElement", "statement", "block", "statementList", "abstractDeclaration", + "importStatement", "importFromBlock", "importModuleItems", "importAliasName", + "moduleExportName", "importedBinding", "importDefault", "importNamespace", + "importFrom", "aliasName", "exportStatement", "exportFromBlock", "exportModuleItems", + "exportAliasName", "declaration", "variableStatement", "variableDeclarationList", + "variableDeclaration", "emptyStatement_", "expressionStatement", "ifStatement", + "iterationStatement", "varModifier", "continueStatement", "breakStatement", + "returnStatement", "yieldStatement", "withStatement", "switchStatement", + "caseBlock", "caseClauses", "caseClause", "defaultClause", "labelledStatement", + "throwStatement", "tryStatement", "catchProduction", "finallyProduction", + "debuggerStatement", "functionDeclaration", "classDeclaration", "classHeritage", + "classTail", "classExtendsClause", "implementsClause", "classElement", + "propertyMemberDeclaration", "propertyMemberBase", "indexMemberDeclaration", + "generatorMethod", "generatorFunctionDeclaration", "generatorBlock", + "generatorDefinition", "iteratorBlock", "iteratorDefinition", "classElementName", + "privateIdentifier", "formalParameterList", "formalParameterArg", "lastFormalParameterArg", + "functionBody", "sourceElements", "arrayLiteral", "elementList", "arrayElement", + "objectLiteral", "propertyAssignment", "getAccessor", "setAccessor", + "propertyName", "arguments", "argumentList", "argument", "expressionSequence", + "singleExpression", "asExpression", "assignable", "anonymousFunction", + "arrowFunctionDeclaration", "arrowFunctionParameters", "arrowFunctionBody", + "assignmentOperator", "literal", "templateStringLiteral", "templateStringAtom", + "numericLiteral", "bigintLiteral", "getter", "setter", "identifierName", + "identifier", "identifierOrKeyWord", "reservedWord", "keyword", "eos" + }; + } + public static final String[] ruleNames = makeRuleNames(); + + private static String[] makeLiteralNames() { + return new String[] { + null, null, null, null, "'['", "']'", "'('", "')'", "'{'", null, "'}'", + "';'", "','", "'='", "'?'", "'?.'", "':'", "'...'", "'.'", "'++'", "'--'", + "'+'", "'-'", "'~'", "'!'", "'*'", "'/'", "'%'", "'**'", "'??'", "'#'", + "'<<'", "'<'", "'>'", "'<='", "'>='", "'=='", "'!='", "'==='", "'!=='", + "'&'", "'^'", "'|'", "'&&'", "'||'", "'*='", "'/='", "'%='", "'+='", + "'-='", "'<<='", "'>>='", "'>>>='", "'&='", "'^='", "'|='", "'**='", + "'??='", "'=>'", "'null'", null, null, null, null, null, null, null, + null, null, null, "'break'", "'do'", "'instanceof'", "'typeof'", "'case'", + "'else'", "'new'", "'var'", "'catch'", "'finally'", "'return'", "'void'", + "'continue'", "'for'", "'switch'", "'while'", "'debugger'", "'function'", + "'this'", "'with'", "'default'", "'if'", "'throw'", "'delete'", "'in'", + "'try'", "'as'", "'from'", "'readonly'", "'async'", "'await'", "'yield'", + "'yield*'", "'class'", "'enum'", "'extends'", "'super'", "'const'", "'export'", + "'import'", "'implements'", "'let'", "'private'", "'public'", "'interface'", + "'package'", "'protected'", "'static'", "'any'", "'number'", "'never'", + "'boolean'", "'string'", "'unique'", "'symbol'", "'undefined'", "'object'", + "'of'", "'keyof'", "'type'", "'constructor'", "'namespace'", "'require'", + "'module'", "'declare'", "'abstract'", "'is'", "'@'" + }; + } + private static final String[] _LITERAL_NAMES = makeLiteralNames(); + private static String[] makeSymbolicNames() { + return new String[] { + null, "MultiLineComment", "SingleLineComment", "RegularExpressionLiteral", + "OpenBracket", "CloseBracket", "OpenParen", "CloseParen", "OpenBrace", + "TemplateCloseBrace", "CloseBrace", "SemiColon", "Comma", "Assign", "QuestionMark", + "QuestionMarkDot", "Colon", "Ellipsis", "Dot", "PlusPlus", "MinusMinus", + "Plus", "Minus", "BitNot", "Not", "Multiply", "Divide", "Modulus", "Power", + "NullCoalesce", "Hashtag", "LeftShiftArithmetic", "LessThan", "MoreThan", + "LessThanEquals", "GreaterThanEquals", "Equals_", "NotEquals", "IdentityEquals", + "IdentityNotEquals", "BitAnd", "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", + "DivideAssign", "ModulusAssign", "PlusAssign", "MinusAssign", "LeftShiftArithmeticAssign", + "RightShiftArithmeticAssign", "RightShiftLogicalAssign", "BitAndAssign", + "BitXorAssign", "BitOrAssign", "PowerAssign", "NullishCoalescingAssign", + "ARROW", "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", + "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", + "BigHexIntegerLiteral", "BigOctalIntegerLiteral", "BigBinaryIntegerLiteral", + "BigDecimalIntegerLiteral", "Break", "Do", "Instanceof", "Typeof", "Case", + "Else", "New", "Var", "Catch", "Finally", "Return", "Void", "Continue", + "For", "Switch", "While", "Debugger", "Function_", "This", "With", "Default", + "If", "Throw", "Delete", "In", "Try", "As", "From", "ReadOnly", "Async", + "Await", "Yield", "YieldStar", "Class", "Enum", "Extends", "Super", "Const", + "Export", "Import", "Implements", "Let", "Private", "Public", "Interface", + "Package", "Protected", "Static", "Any", "Number", "Never", "Boolean", + "String", "Unique", "Symbol", "Undefined", "Object", "Of", "KeyOf", "TypeAlias", + "Constructor", "Namespace", "Require", "Module", "Declare", "Abstract", + "Is", "At", "Identifier", "StringLiteral", "BackTick", "WhiteSpaces", + "LineTerminator", "HtmlComment", "CDataComment", "UnexpectedCharacter", + "TemplateStringEscapeAtom", "TemplateStringStartExpression", "TemplateStringAtom" + }; + } + private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames(); + public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); + + /** + * @deprecated Use {@link #VOCABULARY} instead. + */ + @Deprecated + public static final String[] tokenNames; + static { + tokenNames = new String[_SYMBOLIC_NAMES.length]; + for (int i = 0; i < tokenNames.length; i++) { + tokenNames[i] = VOCABULARY.getLiteralName(i); + if (tokenNames[i] == null) { + tokenNames[i] = VOCABULARY.getSymbolicName(i); + } + + if (tokenNames[i] == null) { + tokenNames[i] = ""; + } + } + } + + @Override + @Deprecated + public String[] getTokenNames() { + return tokenNames; + } + + @Override + + public Vocabulary getVocabulary() { + return VOCABULARY; + } + + @Override + public String getGrammarFileName() { return "TypeScriptParser.g4"; } + + @Override + public String[] getRuleNames() { return ruleNames; } + + @Override + public String getSerializedATN() { return _serializedATN; } + + @Override + public ATN getATN() { return _ATN; } + + public TypeScriptParser(TokenStream input) { + super(input); + _interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); + } + + @SuppressWarnings("CheckReturnValue") + public static class InitializerContext extends ParserRuleContext { + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public InitializerContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_initializer; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInitializer(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInitializer(this); + } + } + + public final InitializerContext initializer() throws RecognitionException { + InitializerContext _localctx = new InitializerContext(_ctx, getState()); + enterRule(_localctx, 0, RULE_initializer); + try { + enterOuterAlt(_localctx, 1); + { + setState(316); + match(Assign); + setState(317); + singleExpression(0); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class BindingPatternContext extends ParserRuleContext { + public ArrayLiteralContext arrayLiteral() { + return getRuleContext(ArrayLiteralContext.class,0); + } + public ObjectLiteralContext objectLiteral() { + return getRuleContext(ObjectLiteralContext.class,0); + } + public BindingPatternContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_bindingPattern; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBindingPattern(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBindingPattern(this); + } + } + + public final BindingPatternContext bindingPattern() throws RecognitionException { + BindingPatternContext _localctx = new BindingPatternContext(_ctx, getState()); + enterRule(_localctx, 2, RULE_bindingPattern); + try { + enterOuterAlt(_localctx, 1); + { + setState(321); + _errHandler.sync(this); + switch (_input.LA(1)) { + case OpenBracket: + { + setState(319); + arrayLiteral(); + } + break; + case OpenBrace: + { + setState(320); + objectLiteral(); + } + break; + default: + throw new NoViableAltException(this); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeParametersContext extends ParserRuleContext { + public TerminalNode LessThan() { return getToken(TypeScriptParser.LessThan, 0); } + public TerminalNode MoreThan() { return getToken(TypeScriptParser.MoreThan, 0); } + public TypeParameterListContext typeParameterList() { + return getRuleContext(TypeParameterListContext.class,0); + } + public TypeParametersContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeParameters; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeParameters(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeParameters(this); + } + } + + public final TypeParametersContext typeParameters() throws RecognitionException { + TypeParametersContext _localctx = new TypeParametersContext(_ctx, getState()); + enterRule(_localctx, 4, RULE_typeParameters); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(323); + match(LessThan); + setState(325); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan || ((((_la - 96)) & ~0x3f) == 0 && ((1L << (_la - 96)) & 5016517607467L) != 0)) { + { + setState(324); + typeParameterList(); + } + } + + setState(327); + match(MoreThan); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeParameterListContext extends ParserRuleContext { + public List typeParameter() { + return getRuleContexts(TypeParameterContext.class); + } + public TypeParameterContext typeParameter(int i) { + return getRuleContext(TypeParameterContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public TypeParameterListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeParameterList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeParameterList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeParameterList(this); + } + } + + public final TypeParameterListContext typeParameterList() throws RecognitionException { + TypeParameterListContext _localctx = new TypeParameterListContext(_ctx, getState()); + enterRule(_localctx, 6, RULE_typeParameterList); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(329); + typeParameter(); + setState(334); + _errHandler.sync(this); + _la = _input.LA(1); + while (_la==Comma) { + { + { + setState(330); + match(Comma); + setState(331); + typeParameter(); + } + } + setState(336); + _errHandler.sync(this); + _la = _input.LA(1); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeParameterContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ConstraintContext constraint() { + return getRuleContext(ConstraintContext.class,0); + } + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public TypeArgumentContext typeArgument() { + return getRuleContext(TypeArgumentContext.class,0); + } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public TypeParameterContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeParameter; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeParameter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeParameter(this); + } + } + + public final TypeParameterContext typeParameter() throws RecognitionException { + TypeParameterContext _localctx = new TypeParameterContext(_ctx, getState()); + enterRule(_localctx, 8, RULE_typeParameter); + int _la; + try { + setState(346); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,4,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(337); + identifier(); + setState(339); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Extends) { + { + setState(338); + constraint(); + } + } + + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(341); + identifier(); + setState(342); + match(Assign); + setState(343); + typeArgument(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(345); + typeParameters(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ConstraintContext extends ParserRuleContext { + public TerminalNode Extends() { return getToken(TypeScriptParser.Extends, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public ConstraintContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_constraint; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterConstraint(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitConstraint(this); + } + } + + public final ConstraintContext constraint() throws RecognitionException { + ConstraintContext _localctx = new ConstraintContext(_ctx, getState()); + enterRule(_localctx, 10, RULE_constraint); + try { + enterOuterAlt(_localctx, 1); + { + setState(348); + match(Extends); + setState(349); + type_(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeArgumentsContext extends ParserRuleContext { + public TerminalNode LessThan() { return getToken(TypeScriptParser.LessThan, 0); } + public TerminalNode MoreThan() { return getToken(TypeScriptParser.MoreThan, 0); } + public TypeArgumentListContext typeArgumentList() { + return getRuleContext(TypeArgumentListContext.class,0); + } + public TypeArgumentsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeArguments; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeArguments(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeArguments(this); + } + } + + public final TypeArgumentsContext typeArguments() throws RecognitionException { + TypeArgumentsContext _localctx = new TypeArgumentsContext(_ctx, getState()); + enterRule(_localctx, 12, RULE_typeArguments); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(351); + match(LessThan); + setState(353); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 4035230767977070928L) != 0) || ((((_la - 73)) & ~0x3f) == 0 && ((1L << (_la - 73)) & 5188111586719465737L) != 0) || _la==Identifier || _la==StringLiteral) { + { + setState(352); + typeArgumentList(); + } + } + + setState(355); + match(MoreThan); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeArgumentListContext extends ParserRuleContext { + public List typeArgument() { + return getRuleContexts(TypeArgumentContext.class); + } + public TypeArgumentContext typeArgument(int i) { + return getRuleContext(TypeArgumentContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public TypeArgumentListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeArgumentList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeArgumentList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeArgumentList(this); + } + } + + public final TypeArgumentListContext typeArgumentList() throws RecognitionException { + TypeArgumentListContext _localctx = new TypeArgumentListContext(_ctx, getState()); + enterRule(_localctx, 14, RULE_typeArgumentList); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(357); + typeArgument(); + setState(362); + _errHandler.sync(this); + _la = _input.LA(1); + while (_la==Comma) { + { + { + setState(358); + match(Comma); + setState(359); + typeArgument(); + } + } + setState(364); + _errHandler.sync(this); + _la = _input.LA(1); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeArgumentContext extends ParserRuleContext { + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public TypeArgumentContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeArgument; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeArgument(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeArgument(this); + } + } + + public final TypeArgumentContext typeArgument() throws RecognitionException { + TypeArgumentContext _localctx = new TypeArgumentContext(_ctx, getState()); + enterRule(_localctx, 16, RULE_typeArgument); + try { + enterOuterAlt(_localctx, 1); + { + setState(365); + type_(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class Type_Context extends ParserRuleContext { + public UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType() { + return getRuleContext(UnionOrIntersectionOrPrimaryTypeContext.class,0); + } + public TerminalNode BitOr() { return getToken(TypeScriptParser.BitOr, 0); } + public TerminalNode BitAnd() { return getToken(TypeScriptParser.BitAnd, 0); } + public FunctionTypeContext functionType() { + return getRuleContext(FunctionTypeContext.class,0); + } + public ConstructorTypeContext constructorType() { + return getRuleContext(ConstructorTypeContext.class,0); + } + public TypeGenericContext typeGeneric() { + return getRuleContext(TypeGenericContext.class,0); + } + public Type_Context(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_type_; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterType_(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitType_(this); + } + } + + public final Type_Context type_() throws RecognitionException { + Type_Context _localctx = new Type_Context(_ctx, getState()); + enterRule(_localctx, 18, RULE_type_); + int _la; + try { + setState(374); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,8,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(368); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==BitAnd || _la==BitOr) { + { + setState(367); + _la = _input.LA(1); + if ( !(_la==BitAnd || _la==BitOr) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + + setState(370); + unionOrIntersectionOrPrimaryType(0); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(371); + functionType(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(372); + constructorType(); + } + break; + case 4: + enterOuterAlt(_localctx, 4); + { + setState(373); + typeGeneric(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class UnionOrIntersectionOrPrimaryTypeContext extends ParserRuleContext { + public UnionOrIntersectionOrPrimaryTypeContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_unionOrIntersectionOrPrimaryType; } + + public UnionOrIntersectionOrPrimaryTypeContext() { } + public void copyFrom(UnionOrIntersectionOrPrimaryTypeContext ctx) { + super.copyFrom(ctx); + } + } + @SuppressWarnings("CheckReturnValue") + public static class IntersectionContext extends UnionOrIntersectionOrPrimaryTypeContext { + public List unionOrIntersectionOrPrimaryType() { + return getRuleContexts(UnionOrIntersectionOrPrimaryTypeContext.class); + } + public UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType(int i) { + return getRuleContext(UnionOrIntersectionOrPrimaryTypeContext.class,i); + } + public TerminalNode BitAnd() { return getToken(TypeScriptParser.BitAnd, 0); } + public IntersectionContext(UnionOrIntersectionOrPrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIntersection(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIntersection(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PrimaryContext extends UnionOrIntersectionOrPrimaryTypeContext { + public PrimaryTypeContext primaryType() { + return getRuleContext(PrimaryTypeContext.class,0); + } + public PrimaryContext(UnionOrIntersectionOrPrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPrimary(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPrimary(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class UnionContext extends UnionOrIntersectionOrPrimaryTypeContext { + public List unionOrIntersectionOrPrimaryType() { + return getRuleContexts(UnionOrIntersectionOrPrimaryTypeContext.class); + } + public UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType(int i) { + return getRuleContext(UnionOrIntersectionOrPrimaryTypeContext.class,i); + } + public TerminalNode BitOr() { return getToken(TypeScriptParser.BitOr, 0); } + public UnionContext(UnionOrIntersectionOrPrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterUnion(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitUnion(this); + } + } + + public final UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType() throws RecognitionException { + return unionOrIntersectionOrPrimaryType(0); + } + + private UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType(int _p) throws RecognitionException { + ParserRuleContext _parentctx = _ctx; + int _parentState = getState(); + UnionOrIntersectionOrPrimaryTypeContext _localctx = new UnionOrIntersectionOrPrimaryTypeContext(_ctx, _parentState); + UnionOrIntersectionOrPrimaryTypeContext _prevctx = _localctx; + int _startState = 20; + enterRecursionRule(_localctx, 20, RULE_unionOrIntersectionOrPrimaryType, _p); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + { + _localctx = new PrimaryContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + + setState(377); + primaryType(0); + } + _ctx.stop = _input.LT(-1); + setState(387); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,10,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + if ( _parseListeners!=null ) triggerExitRuleEvent(); + _prevctx = _localctx; + { + setState(385); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,9,_ctx) ) { + case 1: + { + _localctx = new UnionContext(new UnionOrIntersectionOrPrimaryTypeContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_unionOrIntersectionOrPrimaryType); + setState(379); + if (!(precpred(_ctx, 3))) throw new FailedPredicateException(this, "precpred(_ctx, 3)"); + setState(380); + match(BitOr); + setState(381); + unionOrIntersectionOrPrimaryType(4); + } + break; + case 2: + { + _localctx = new IntersectionContext(new UnionOrIntersectionOrPrimaryTypeContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_unionOrIntersectionOrPrimaryType); + setState(382); + if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)"); + setState(383); + match(BitAnd); + setState(384); + unionOrIntersectionOrPrimaryType(3); + } + break; + } + } + } + setState(389); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,10,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + unrollRecursionContexts(_parentctx); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class PrimaryTypeContext extends ParserRuleContext { + public PrimaryTypeContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_primaryType; } + + public PrimaryTypeContext() { } + public void copyFrom(PrimaryTypeContext ctx) { + super.copyFrom(ctx); + } + } + @SuppressWarnings("CheckReturnValue") + public static class RedefinitionOfTypeContext extends PrimaryTypeContext { + public TypeReferenceContext typeReference() { + return getRuleContext(TypeReferenceContext.class,0); + } + public TerminalNode Is() { return getToken(TypeScriptParser.Is, 0); } + public PrimaryTypeContext primaryType() { + return getRuleContext(PrimaryTypeContext.class,0); + } + public RedefinitionOfTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRedefinitionOfType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRedefinitionOfType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PredefinedPrimTypeContext extends PrimaryTypeContext { + public PredefinedTypeContext predefinedType() { + return getRuleContext(PredefinedTypeContext.class,0); + } + public PredefinedPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPredefinedPrimType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPredefinedPrimType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ArrayPrimTypeContext extends PrimaryTypeContext { + public List primaryType() { + return getRuleContexts(PrimaryTypeContext.class); + } + public PrimaryTypeContext primaryType(int i) { + return getRuleContext(PrimaryTypeContext.class,i); + } + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public ArrayPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayPrimType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayPrimType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ParenthesizedPrimTypeContext extends PrimaryTypeContext { + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public ParenthesizedPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterParenthesizedPrimType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitParenthesizedPrimType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ThisPrimTypeContext extends PrimaryTypeContext { + public TerminalNode This() { return getToken(TypeScriptParser.This, 0); } + public ThisPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterThisPrimType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitThisPrimType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class TuplePrimTypeContext extends PrimaryTypeContext { + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public TupleElementTypesContext tupleElementTypes() { + return getRuleContext(TupleElementTypesContext.class,0); + } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public TuplePrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTuplePrimType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTuplePrimType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class KeyOfTypeContext extends PrimaryTypeContext { + public TerminalNode KeyOf() { return getToken(TypeScriptParser.KeyOf, 0); } + public PrimaryTypeContext primaryType() { + return getRuleContext(PrimaryTypeContext.class,0); + } + public KeyOfTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterKeyOfType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitKeyOfType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ObjectPrimTypeContext extends PrimaryTypeContext { + public ObjectTypeContext objectType() { + return getRuleContext(ObjectTypeContext.class,0); + } + public ObjectPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterObjectPrimType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitObjectPrimType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ReferencePrimTypeContext extends PrimaryTypeContext { + public TypeReferenceContext typeReference() { + return getRuleContext(TypeReferenceContext.class,0); + } + public ReferencePrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterReferencePrimType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitReferencePrimType(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class QueryPrimTypeContext extends PrimaryTypeContext { + public TypeQueryContext typeQuery() { + return getRuleContext(TypeQueryContext.class,0); + } + public QueryPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterQueryPrimType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitQueryPrimType(this); + } + } + + public final PrimaryTypeContext primaryType() throws RecognitionException { + return primaryType(0); + } + + private PrimaryTypeContext primaryType(int _p) throws RecognitionException { + ParserRuleContext _parentctx = _ctx; + int _parentState = getState(); + PrimaryTypeContext _localctx = new PrimaryTypeContext(_ctx, _parentState); + PrimaryTypeContext _prevctx = _localctx; + int _startState = 22; + enterRecursionRule(_localctx, 22, RULE_primaryType, _p); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(410); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,11,_ctx) ) { + case 1: + { + _localctx = new ParenthesizedPrimTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + + setState(391); + match(OpenParen); + setState(392); + type_(); + setState(393); + match(CloseParen); + } + break; + case 2: + { + _localctx = new PredefinedPrimTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(395); + predefinedType(); + } + break; + case 3: + { + _localctx = new ReferencePrimTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(396); + typeReference(); + } + break; + case 4: + { + _localctx = new ObjectPrimTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(397); + objectType(); + } + break; + case 5: + { + _localctx = new TuplePrimTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(398); + match(OpenBracket); + setState(399); + tupleElementTypes(); + setState(400); + match(CloseBracket); + } + break; + case 6: + { + _localctx = new QueryPrimTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(402); + typeQuery(); + } + break; + case 7: + { + _localctx = new ThisPrimTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(403); + match(This); + } + break; + case 8: + { + _localctx = new RedefinitionOfTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(404); + typeReference(); + setState(405); + match(Is); + setState(406); + primaryType(2); + } + break; + case 9: + { + _localctx = new KeyOfTypeContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(408); + match(KeyOf); + setState(409); + primaryType(1); + } + break; + } + _ctx.stop = _input.LT(-1); + setState(421); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,13,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + if ( _parseListeners!=null ) triggerExitRuleEvent(); + _prevctx = _localctx; + { + { + _localctx = new ArrayPrimTypeContext(new PrimaryTypeContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_primaryType); + setState(412); + if (!(precpred(_ctx, 6))) throw new FailedPredicateException(this, "precpred(_ctx, 6)"); + setState(413); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(414); + match(OpenBracket); + setState(416); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 4035225266123964752L) != 0) || ((((_la - 73)) & ~0x3f) == 0 && ((1L << (_la - 73)) & 5188111586719465729L) != 0) || _la==Identifier || _la==StringLiteral) { + { + setState(415); + primaryType(0); + } + } + + setState(418); + match(CloseBracket); + } + } + } + setState(423); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,13,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + unrollRecursionContexts(_parentctx); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class PredefinedTypeContext extends ParserRuleContext { + public TerminalNode Any() { return getToken(TypeScriptParser.Any, 0); } + public TerminalNode NullLiteral() { return getToken(TypeScriptParser.NullLiteral, 0); } + public TerminalNode Number() { return getToken(TypeScriptParser.Number, 0); } + public TerminalNode DecimalLiteral() { return getToken(TypeScriptParser.DecimalLiteral, 0); } + public TerminalNode Boolean() { return getToken(TypeScriptParser.Boolean, 0); } + public TerminalNode BooleanLiteral() { return getToken(TypeScriptParser.BooleanLiteral, 0); } + public TerminalNode String() { return getToken(TypeScriptParser.String, 0); } + public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } + public TerminalNode Symbol() { return getToken(TypeScriptParser.Symbol, 0); } + public TerminalNode Unique() { return getToken(TypeScriptParser.Unique, 0); } + public TerminalNode Never() { return getToken(TypeScriptParser.Never, 0); } + public TerminalNode Undefined() { return getToken(TypeScriptParser.Undefined, 0); } + public TerminalNode Object() { return getToken(TypeScriptParser.Object, 0); } + public TerminalNode Void() { return getToken(TypeScriptParser.Void, 0); } + public PredefinedTypeContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_predefinedType; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPredefinedType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPredefinedType(this); + } + } + + public final PredefinedTypeContext predefinedType() throws RecognitionException { + PredefinedTypeContext _localctx = new PredefinedTypeContext(_ctx, getState()); + enterRule(_localctx, 24, RULE_predefinedType); + int _la; + try { + setState(440); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Any: + enterOuterAlt(_localctx, 1); + { + setState(424); + match(Any); + } + break; + case NullLiteral: + enterOuterAlt(_localctx, 2); + { + setState(425); + match(NullLiteral); + } + break; + case Number: + enterOuterAlt(_localctx, 3); + { + setState(426); + match(Number); + } + break; + case DecimalLiteral: + enterOuterAlt(_localctx, 4); + { + setState(427); + match(DecimalLiteral); + } + break; + case Boolean: + enterOuterAlt(_localctx, 5); + { + setState(428); + match(Boolean); + } + break; + case BooleanLiteral: + enterOuterAlt(_localctx, 6); + { + setState(429); + match(BooleanLiteral); + } + break; + case String: + enterOuterAlt(_localctx, 7); + { + setState(430); + match(String); + } + break; + case StringLiteral: + enterOuterAlt(_localctx, 8); + { + setState(431); + match(StringLiteral); + } + break; + case Unique: + case Symbol: + enterOuterAlt(_localctx, 9); + { + setState(433); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Unique) { + { + setState(432); + match(Unique); + } + } + + setState(435); + match(Symbol); + } + break; + case Never: + enterOuterAlt(_localctx, 10); + { + setState(436); + match(Never); + } + break; + case Undefined: + enterOuterAlt(_localctx, 11); + { + setState(437); + match(Undefined); + } + break; + case Object: + enterOuterAlt(_localctx, 12); + { + setState(438); + match(Object); + } + break; + case Void: + enterOuterAlt(_localctx, 13); + { + setState(439); + match(Void); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeReferenceContext extends ParserRuleContext { + public TypeNameContext typeName() { + return getRuleContext(TypeNameContext.class,0); + } + public TypeGenericContext typeGeneric() { + return getRuleContext(TypeGenericContext.class,0); + } + public TypeReferenceContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeReference; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeReference(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeReference(this); + } + } + + public final TypeReferenceContext typeReference() throws RecognitionException { + TypeReferenceContext _localctx = new TypeReferenceContext(_ctx, getState()); + enterRule(_localctx, 26, RULE_typeReference); + try { + enterOuterAlt(_localctx, 1); + { + setState(442); + typeName(); + setState(444); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,16,_ctx) ) { + case 1: + { + setState(443); + typeGeneric(); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeGenericContext extends ParserRuleContext { + public TerminalNode LessThan() { return getToken(TypeScriptParser.LessThan, 0); } + public TypeArgumentListContext typeArgumentList() { + return getRuleContext(TypeArgumentListContext.class,0); + } + public TerminalNode MoreThan() { return getToken(TypeScriptParser.MoreThan, 0); } + public TypeGenericContext typeGeneric() { + return getRuleContext(TypeGenericContext.class,0); + } + public TypeGenericContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeGeneric; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeGeneric(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeGeneric(this); + } + } + + public final TypeGenericContext typeGeneric() throws RecognitionException { + TypeGenericContext _localctx = new TypeGenericContext(_ctx, getState()); + enterRule(_localctx, 28, RULE_typeGeneric); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(446); + match(LessThan); + setState(447); + typeArgumentList(); + setState(449); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(448); + typeGeneric(); + } + } + + setState(451); + match(MoreThan); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeNameContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public NamespaceNameContext namespaceName() { + return getRuleContext(NamespaceNameContext.class,0); + } + public TypeNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeName(this); + } + } + + public final TypeNameContext typeName() throws RecognitionException { + TypeNameContext _localctx = new TypeNameContext(_ctx, getState()); + enterRule(_localctx, 30, RULE_typeName); + try { + setState(455); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,18,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(453); + identifier(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(454); + namespaceName(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ObjectTypeContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public TypeBodyContext typeBody() { + return getRuleContext(TypeBodyContext.class,0); + } + public ObjectTypeContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_objectType; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterObjectType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitObjectType(this); + } + } + + public final ObjectTypeContext objectType() throws RecognitionException { + ObjectTypeContext _localctx = new ObjectTypeContext(_ctx, getState()); + enterRule(_localctx, 32, RULE_objectType); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(457); + match(OpenBrace); + setState(459); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460748008456112L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -274877907005L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 3263L) != 0)) { + { + setState(458); + typeBody(); + } + } + + setState(461); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeBodyContext extends ParserRuleContext { + public TypeMemberListContext typeMemberList() { + return getRuleContext(TypeMemberListContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } + public TypeBodyContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeBody; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeBody(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeBody(this); + } + } + + public final TypeBodyContext typeBody() throws RecognitionException { + TypeBodyContext _localctx = new TypeBodyContext(_ctx, getState()); + enterRule(_localctx, 34, RULE_typeBody); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(463); + typeMemberList(); + setState(465); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==SemiColon || _la==Comma) { + { + setState(464); + _la = _input.LA(1); + if ( !(_la==SemiColon || _la==Comma) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeMemberListContext extends ParserRuleContext { + public List typeMember() { + return getRuleContexts(TypeMemberContext.class); + } + public TypeMemberContext typeMember(int i) { + return getRuleContext(TypeMemberContext.class,i); + } + public List SemiColon() { return getTokens(TypeScriptParser.SemiColon); } + public TerminalNode SemiColon(int i) { + return getToken(TypeScriptParser.SemiColon, i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public TypeMemberListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeMemberList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeMemberList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeMemberList(this); + } + } + + public final TypeMemberListContext typeMemberList() throws RecognitionException { + TypeMemberListContext _localctx = new TypeMemberListContext(_ctx, getState()); + enterRule(_localctx, 36, RULE_typeMemberList); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(467); + typeMember(); + setState(472); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,21,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(468); + _la = _input.LA(1); + if ( !(_la==SemiColon || _la==Comma) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(469); + typeMember(); + } + } + } + setState(474); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,21,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeMemberContext extends ParserRuleContext { + public PropertySignaturContext propertySignatur() { + return getRuleContext(PropertySignaturContext.class,0); + } + public CallSignatureContext callSignature() { + return getRuleContext(CallSignatureContext.class,0); + } + public ConstructSignatureContext constructSignature() { + return getRuleContext(ConstructSignatureContext.class,0); + } + public IndexSignatureContext indexSignature() { + return getRuleContext(IndexSignatureContext.class,0); + } + public MethodSignatureContext methodSignature() { + return getRuleContext(MethodSignatureContext.class,0); + } + public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public TypeMemberContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeMember; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeMember(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeMember(this); + } + } + + public final TypeMemberContext typeMember() throws RecognitionException { + TypeMemberContext _localctx = new TypeMemberContext(_ctx, getState()); + enterRule(_localctx, 38, RULE_typeMember); + int _la; + try { + setState(484); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,23,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(475); + propertySignatur(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(476); + callSignature(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(477); + constructSignature(); + } + break; + case 4: + enterOuterAlt(_localctx, 4); + { + setState(478); + indexSignature(); + } + break; + case 5: + enterOuterAlt(_localctx, 5); + { + setState(479); + methodSignature(); + setState(482); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==ARROW) { + { + setState(480); + match(ARROW); + setState(481); + type_(); + } + } + + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } -- Gitee From 5f64e1567b6a1fa76c308fe1a20e1d3544528c90 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:29:40 +0800 Subject: [PATCH 12/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1932 +++++++++++++++++ 1 file changed, 1932 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java index 9d748f3d..aba4974c 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -1971,3 +1971,1935 @@ public class TypeScriptParser extends TypeScriptParserBase { } return _localctx; } + + @SuppressWarnings("CheckReturnValue") + public static class ArrayTypeContext extends ParserRuleContext { + public PrimaryTypeContext primaryType() { + return getRuleContext(PrimaryTypeContext.class,0); + } + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public ArrayTypeContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_arrayType; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayType(this); + } + } + + public final ArrayTypeContext arrayType() throws RecognitionException { + ArrayTypeContext _localctx = new ArrayTypeContext(_ctx, getState()); + enterRule(_localctx, 40, RULE_arrayType); + try { + enterOuterAlt(_localctx, 1); + { + setState(486); + primaryType(0); + setState(487); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(488); + match(OpenBracket); + setState(489); + match(CloseBracket); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TupleTypeContext extends ParserRuleContext { + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public TupleElementTypesContext tupleElementTypes() { + return getRuleContext(TupleElementTypesContext.class,0); + } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public TupleTypeContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_tupleType; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTupleType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTupleType(this); + } + } + + public final TupleTypeContext tupleType() throws RecognitionException { + TupleTypeContext _localctx = new TupleTypeContext(_ctx, getState()); + enterRule(_localctx, 42, RULE_tupleType); + try { + enterOuterAlt(_localctx, 1); + { + setState(491); + match(OpenBracket); + setState(492); + tupleElementTypes(); + setState(493); + match(CloseBracket); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TupleElementTypesContext extends ParserRuleContext { + public List type_() { + return getRuleContexts(Type_Context.class); + } + public Type_Context type_(int i) { + return getRuleContext(Type_Context.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public TupleElementTypesContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_tupleElementTypes; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTupleElementTypes(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTupleElementTypes(this); + } + } + + public final TupleElementTypesContext tupleElementTypes() throws RecognitionException { + TupleElementTypesContext _localctx = new TupleElementTypesContext(_ctx, getState()); + enterRule(_localctx, 44, RULE_tupleElementTypes); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(495); + type_(); + setState(500); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,24,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(496); + match(Comma); + setState(497); + type_(); + } + } + } + setState(502); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,24,_ctx); + } + setState(504); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(503); + match(Comma); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class FunctionTypeContext extends ParserRuleContext { + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public ParameterListContext parameterList() { + return getRuleContext(ParameterListContext.class,0); + } + public FunctionTypeContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_functionType; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFunctionType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFunctionType(this); + } + } + + public final FunctionTypeContext functionType() throws RecognitionException { + FunctionTypeContext _localctx = new FunctionTypeContext(_ctx, getState()); + enterRule(_localctx, 46, RULE_functionType); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(507); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(506); + typeParameters(); + } + } + + setState(509); + match(OpenParen); + setState(511); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1729382256910401808L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(510); + parameterList(); + } + } + + setState(513); + match(CloseParen); + setState(514); + match(ARROW); + setState(515); + type_(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ConstructorTypeContext extends ParserRuleContext { + public TerminalNode New() { return getToken(TypeScriptParser.New, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public ParameterListContext parameterList() { + return getRuleContext(ParameterListContext.class,0); + } + public ConstructorTypeContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_constructorType; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterConstructorType(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitConstructorType(this); + } + } + + public final ConstructorTypeContext constructorType() throws RecognitionException { + ConstructorTypeContext _localctx = new ConstructorTypeContext(_ctx, getState()); + enterRule(_localctx, 48, RULE_constructorType); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(517); + match(New); + setState(519); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(518); + typeParameters(); + } + } + + setState(521); + match(OpenParen); + setState(523); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1729382256910401808L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(522); + parameterList(); + } + } + + setState(525); + match(CloseParen); + setState(526); + match(ARROW); + setState(527); + type_(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeQueryContext extends ParserRuleContext { + public TerminalNode Typeof() { return getToken(TypeScriptParser.Typeof, 0); } + public TypeQueryExpressionContext typeQueryExpression() { + return getRuleContext(TypeQueryExpressionContext.class,0); + } + public TypeQueryContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeQuery; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeQuery(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeQuery(this); + } + } + + public final TypeQueryContext typeQuery() throws RecognitionException { + TypeQueryContext _localctx = new TypeQueryContext(_ctx, getState()); + enterRule(_localctx, 50, RULE_typeQuery); + try { + enterOuterAlt(_localctx, 1); + { + setState(529); + match(Typeof); + setState(530); + typeQueryExpression(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeQueryExpressionContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public List identifierName() { + return getRuleContexts(IdentifierNameContext.class); + } + public IdentifierNameContext identifierName(int i) { + return getRuleContext(IdentifierNameContext.class,i); + } + public List Dot() { return getTokens(TypeScriptParser.Dot); } + public TerminalNode Dot(int i) { + return getToken(TypeScriptParser.Dot, i); + } + public TypeQueryExpressionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeQueryExpression; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeQueryExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeQueryExpression(this); + } + } + + public final TypeQueryExpressionContext typeQueryExpression() throws RecognitionException { + TypeQueryExpressionContext _localctx = new TypeQueryExpressionContext(_ctx, getState()); + enterRule(_localctx, 52, RULE_typeQueryExpression); + try { + int _alt; + setState(542); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,31,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(532); + identifier(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(536); + _errHandler.sync(this); + _alt = 1; + do { + switch (_alt) { + case 1: + { + { + setState(533); + identifierName(); + setState(534); + match(Dot); + } + } + break; + default: + throw new NoViableAltException(this); + } + setState(538); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,30,_ctx); + } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); + setState(540); + identifierName(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class PropertySignaturContext extends ParserRuleContext { + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public TerminalNode ReadOnly() { return getToken(TypeScriptParser.ReadOnly, 0); } + public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public PropertySignaturContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_propertySignatur; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertySignatur(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertySignatur(this); + } + } + + public final PropertySignaturContext propertySignatur() throws RecognitionException { + PropertySignaturContext _localctx = new PropertySignaturContext(_ctx, getState()); + enterRule(_localctx, 54, RULE_propertySignatur); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(545); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,32,_ctx) ) { + case 1: + { + setState(544); + match(ReadOnly); + } + break; + } + setState(547); + propertyName(); + setState(549); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==QuestionMark) { + { + setState(548); + match(QuestionMark); + } + } + + setState(552); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(551); + typeAnnotation(); + } + } + + setState(556); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==ARROW) { + { + setState(554); + match(ARROW); + setState(555); + type_(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeAnnotationContext extends ParserRuleContext { + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public TypeAnnotationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeAnnotation; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeAnnotation(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeAnnotation(this); + } + } + + public final TypeAnnotationContext typeAnnotation() throws RecognitionException { + TypeAnnotationContext _localctx = new TypeAnnotationContext(_ctx, getState()); + enterRule(_localctx, 56, RULE_typeAnnotation); + try { + enterOuterAlt(_localctx, 1); + { + setState(558); + match(Colon); + setState(559); + type_(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class CallSignatureContext extends ParserRuleContext { + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public ParameterListContext parameterList() { + return getRuleContext(ParameterListContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public CallSignatureContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_callSignature; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCallSignature(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCallSignature(this); + } + } + + public final CallSignatureContext callSignature() throws RecognitionException { + CallSignatureContext _localctx = new CallSignatureContext(_ctx, getState()); + enterRule(_localctx, 58, RULE_callSignature); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(562); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(561); + typeParameters(); + } + } + + setState(564); + match(OpenParen); + setState(566); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1729382256910401808L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(565); + parameterList(); + } + } + + setState(568); + match(CloseParen); + setState(570); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,38,_ctx) ) { + case 1: + { + setState(569); + typeAnnotation(); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ParameterListContext extends ParserRuleContext { + public RestParameterContext restParameter() { + return getRuleContext(RestParameterContext.class,0); + } + public List parameter() { + return getRuleContexts(ParameterContext.class); + } + public ParameterContext parameter(int i) { + return getRuleContext(ParameterContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public ParameterListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_parameterList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterParameterList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitParameterList(this); + } + } + + public final ParameterListContext parameterList() throws RecognitionException { + ParameterListContext _localctx = new ParameterListContext(_ctx, getState()); + enterRule(_localctx, 60, RULE_parameterList); + int _la; + try { + int _alt; + setState(588); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Ellipsis: + enterOuterAlt(_localctx, 1); + { + setState(572); + restParameter(); + } + break; + case OpenBracket: + case OpenBrace: + case NullLiteral: + case BooleanLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case At: + case Identifier: + enterOuterAlt(_localctx, 2); + { + setState(573); + parameter(); + setState(578); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,39,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(574); + match(Comma); + setState(575); + parameter(); + } + } + } + setState(580); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,39,_ctx); + } + setState(583); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,40,_ctx) ) { + case 1: + { + setState(581); + match(Comma); + setState(582); + restParameter(); + } + break; + } + setState(586); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(585); + match(Comma); + } + } + + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class RequiredParameterListContext extends ParserRuleContext { + public List requiredParameter() { + return getRuleContexts(RequiredParameterContext.class); + } + public RequiredParameterContext requiredParameter(int i) { + return getRuleContext(RequiredParameterContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public RequiredParameterListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_requiredParameterList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRequiredParameterList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRequiredParameterList(this); + } + } + + public final RequiredParameterListContext requiredParameterList() throws RecognitionException { + RequiredParameterListContext _localctx = new RequiredParameterListContext(_ctx, getState()); + enterRule(_localctx, 62, RULE_requiredParameterList); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(590); + requiredParameter(); + setState(595); + _errHandler.sync(this); + _la = _input.LA(1); + while (_la==Comma) { + { + { + setState(591); + match(Comma); + setState(592); + requiredParameter(); + } + } + setState(597); + _errHandler.sync(this); + _la = _input.LA(1); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ParameterContext extends ParserRuleContext { + public RequiredParameterContext requiredParameter() { + return getRuleContext(RequiredParameterContext.class,0); + } + public OptionalParameterContext optionalParameter() { + return getRuleContext(OptionalParameterContext.class,0); + } + public ParameterContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_parameter; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterParameter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitParameter(this); + } + } + + public final ParameterContext parameter() throws RecognitionException { + ParameterContext _localctx = new ParameterContext(_ctx, getState()); + enterRule(_localctx, 64, RULE_parameter); + try { + setState(600); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,44,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(598); + requiredParameter(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(599); + optionalParameter(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class OptionalParameterContext extends ParserRuleContext { + public IdentifierOrPatternContext identifierOrPattern() { + return getRuleContext(IdentifierOrPatternContext.class,0); + } + public DecoratorListContext decoratorList() { + return getRuleContext(DecoratorListContext.class,0); + } + public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } + public InitializerContext initializer() { + return getRuleContext(InitializerContext.class,0); + } + public AccessibilityModifierContext accessibilityModifier() { + return getRuleContext(AccessibilityModifierContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public OptionalParameterContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_optionalParameter; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterOptionalParameter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitOptionalParameter(this); + } + } + + public final OptionalParameterContext optionalParameter() throws RecognitionException { + OptionalParameterContext _localctx = new OptionalParameterContext(_ctx, getState()); + enterRule(_localctx, 66, RULE_optionalParameter); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(603); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==At) { + { + setState(602); + decoratorList(); + } + } + + { + setState(606); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,46,_ctx) ) { + case 1: + { + setState(605); + accessibilityModifier(); + } + break; + } + setState(608); + identifierOrPattern(); + setState(617); + _errHandler.sync(this); + switch (_input.LA(1)) { + case QuestionMark: + { + setState(609); + match(QuestionMark); + setState(611); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(610); + typeAnnotation(); + } + } + + } + break; + case Assign: + case Colon: + { + setState(614); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(613); + typeAnnotation(); + } + } + + setState(616); + initializer(); + } + break; + default: + throw new NoViableAltException(this); + } + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class RestParameterContext extends ParserRuleContext { + public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public RestParameterContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_restParameter; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRestParameter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRestParameter(this); + } + } + + public final RestParameterContext restParameter() throws RecognitionException { + RestParameterContext _localctx = new RestParameterContext(_ctx, getState()); + enterRule(_localctx, 68, RULE_restParameter); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(619); + match(Ellipsis); + setState(620); + singleExpression(0); + setState(622); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(621); + typeAnnotation(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class RequiredParameterContext extends ParserRuleContext { + public IdentifierOrPatternContext identifierOrPattern() { + return getRuleContext(IdentifierOrPatternContext.class,0); + } + public DecoratorListContext decoratorList() { + return getRuleContext(DecoratorListContext.class,0); + } + public AccessibilityModifierContext accessibilityModifier() { + return getRuleContext(AccessibilityModifierContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public RequiredParameterContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_requiredParameter; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRequiredParameter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRequiredParameter(this); + } + } + + public final RequiredParameterContext requiredParameter() throws RecognitionException { + RequiredParameterContext _localctx = new RequiredParameterContext(_ctx, getState()); + enterRule(_localctx, 70, RULE_requiredParameter); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(625); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==At) { + { + setState(624); + decoratorList(); + } + } + + setState(628); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,52,_ctx) ) { + case 1: + { + setState(627); + accessibilityModifier(); + } + break; + } + setState(630); + identifierOrPattern(); + setState(632); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(631); + typeAnnotation(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class AccessibilityModifierContext extends ParserRuleContext { + public TerminalNode Public() { return getToken(TypeScriptParser.Public, 0); } + public TerminalNode Private() { return getToken(TypeScriptParser.Private, 0); } + public TerminalNode Protected() { return getToken(TypeScriptParser.Protected, 0); } + public AccessibilityModifierContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_accessibilityModifier; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAccessibilityModifier(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAccessibilityModifier(this); + } + } + + public final AccessibilityModifierContext accessibilityModifier() throws RecognitionException { + AccessibilityModifierContext _localctx = new AccessibilityModifierContext(_ctx, getState()); + enterRule(_localctx, 72, RULE_accessibilityModifier); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(634); + _la = _input.LA(1); + if ( !(((((_la - 112)) & ~0x3f) == 0 && ((1L << (_la - 112)) & 19L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IdentifierOrPatternContext extends ParserRuleContext { + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class,0); + } + public BindingPatternContext bindingPattern() { + return getRuleContext(BindingPatternContext.class,0); + } + public IdentifierOrPatternContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_identifierOrPattern; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifierOrPattern(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifierOrPattern(this); + } + } + + public final IdentifierOrPatternContext identifierOrPattern() throws RecognitionException { + IdentifierOrPatternContext _localctx = new IdentifierOrPatternContext(_ctx, getState()); + enterRule(_localctx, 74, RULE_identifierOrPattern); + try { + setState(638); + _errHandler.sync(this); + switch (_input.LA(1)) { + case NullLiteral: + case BooleanLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + enterOuterAlt(_localctx, 1); + { + setState(636); + identifierName(); + } + break; + case OpenBracket: + case OpenBrace: + enterOuterAlt(_localctx, 2); + { + setState(637); + bindingPattern(); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ConstructSignatureContext extends ParserRuleContext { + public TerminalNode New() { return getToken(TypeScriptParser.New, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public ParameterListContext parameterList() { + return getRuleContext(ParameterListContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public ConstructSignatureContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_constructSignature; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterConstructSignature(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitConstructSignature(this); + } + } + + public final ConstructSignatureContext constructSignature() throws RecognitionException { + ConstructSignatureContext _localctx = new ConstructSignatureContext(_ctx, getState()); + enterRule(_localctx, 76, RULE_constructSignature); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(640); + match(New); + setState(642); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(641); + typeParameters(); + } + } + + setState(644); + match(OpenParen); + setState(646); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1729382256910401808L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(645); + parameterList(); + } + } + + setState(648); + match(CloseParen); + setState(650); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(649); + typeAnnotation(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IndexSignatureContext extends ParserRuleContext { + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public TerminalNode Number() { return getToken(TypeScriptParser.Number, 0); } + public TerminalNode String() { return getToken(TypeScriptParser.String, 0); } + public IndexSignatureContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_indexSignature; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIndexSignature(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIndexSignature(this); + } + } + + public final IndexSignatureContext indexSignature() throws RecognitionException { + IndexSignatureContext _localctx = new IndexSignatureContext(_ctx, getState()); + enterRule(_localctx, 78, RULE_indexSignature); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(652); + match(OpenBracket); + setState(653); + identifier(); + setState(654); + match(Colon); + setState(655); + _la = _input.LA(1); + if ( !(_la==Number || _la==String) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(656); + match(CloseBracket); + setState(657); + typeAnnotation(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class MethodSignatureContext extends ParserRuleContext { + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public CallSignatureContext callSignature() { + return getRuleContext(CallSignatureContext.class,0); + } + public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } + public MethodSignatureContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_methodSignature; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMethodSignature(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMethodSignature(this); + } + } + + public final MethodSignatureContext methodSignature() throws RecognitionException { + MethodSignatureContext _localctx = new MethodSignatureContext(_ctx, getState()); + enterRule(_localctx, 80, RULE_methodSignature); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(659); + propertyName(); + setState(661); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==QuestionMark) { + { + setState(660); + match(QuestionMark); + } + } + + setState(663); + callSignature(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TypeAliasDeclarationContext extends ParserRuleContext { + public TerminalNode TypeAlias() { return getToken(TypeScriptParser.TypeAlias, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public TypeAliasDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_typeAliasDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeAliasDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeAliasDeclaration(this); + } + } + + public final TypeAliasDeclarationContext typeAliasDeclaration() throws RecognitionException { + TypeAliasDeclarationContext _localctx = new TypeAliasDeclarationContext(_ctx, getState()); + enterRule(_localctx, 82, RULE_typeAliasDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(666); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Export) { + { + setState(665); + match(Export); + } + } + + setState(668); + match(TypeAlias); + setState(669); + identifier(); + setState(671); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(670); + typeParameters(); + } + } + + setState(673); + match(Assign); + setState(674); + type_(); + setState(675); + eos(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ConstructorDeclarationContext extends ParserRuleContext { + public TerminalNode Constructor() { return getToken(TypeScriptParser.Constructor, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public AccessibilityModifierContext accessibilityModifier() { + return getRuleContext(AccessibilityModifierContext.class,0); + } + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public ConstructorDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_constructorDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterConstructorDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitConstructorDeclaration(this); + } + } + + public final ConstructorDeclarationContext constructorDeclaration() throws RecognitionException { + ConstructorDeclarationContext _localctx = new ConstructorDeclarationContext(_ctx, getState()); + enterRule(_localctx, 84, RULE_constructorDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(678); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 112)) & ~0x3f) == 0 && ((1L << (_la - 112)) & 19L) != 0)) { + { + setState(677); + accessibilityModifier(); + } + } + + setState(680); + match(Constructor); + setState(681); + match(OpenParen); + setState(683); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(682); + formalParameterList(); + } + } + + setState(685); + match(CloseParen); + setState(691); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,63,_ctx) ) { + case 1: + { + { + setState(686); + match(OpenBrace); + setState(687); + functionBody(); + setState(688); + match(CloseBrace); + } + } + break; + case 2: + { + setState(690); + match(SemiColon); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class InterfaceDeclarationContext extends ParserRuleContext { + public TerminalNode Interface() { return getToken(TypeScriptParser.Interface, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ObjectTypeContext objectType() { + return getRuleContext(ObjectTypeContext.class,0); + } + public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } + public TerminalNode Declare() { return getToken(TypeScriptParser.Declare, 0); } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public InterfaceExtendsClauseContext interfaceExtendsClause() { + return getRuleContext(InterfaceExtendsClauseContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public InterfaceDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_interfaceDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInterfaceDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInterfaceDeclaration(this); + } + } + + public final InterfaceDeclarationContext interfaceDeclaration() throws RecognitionException { + InterfaceDeclarationContext _localctx = new InterfaceDeclarationContext(_ctx, getState()); + enterRule(_localctx, 86, RULE_interfaceDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(694); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Export) { + { + setState(693); + match(Export); + } + } + + setState(697); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Declare) { + { + setState(696); + match(Declare); + } + } + + setState(699); + match(Interface); + setState(700); + identifier(); + setState(702); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(701); + typeParameters(); + } + } + + setState(705); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Extends) { + { + setState(704); + interfaceExtendsClause(); + } + } + + setState(707); + objectType(); + setState(709); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,68,_ctx) ) { + case 1: + { + setState(708); + match(SemiColon); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class InterfaceExtendsClauseContext extends ParserRuleContext { + public TerminalNode Extends() { return getToken(TypeScriptParser.Extends, 0); } + public ClassOrInterfaceTypeListContext classOrInterfaceTypeList() { + return getRuleContext(ClassOrInterfaceTypeListContext.class,0); + } + public InterfaceExtendsClauseContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_interfaceExtendsClause; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInterfaceExtendsClause(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInterfaceExtendsClause(this); + } + } + + public final InterfaceExtendsClauseContext interfaceExtendsClause() throws RecognitionException { + InterfaceExtendsClauseContext _localctx = new InterfaceExtendsClauseContext(_ctx, getState()); + enterRule(_localctx, 88, RULE_interfaceExtendsClause); + try { + enterOuterAlt(_localctx, 1); + { + setState(711); + match(Extends); + setState(712); + classOrInterfaceTypeList(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } -- Gitee From 49ad0741936d4d54b804e774123fccd5dd1babfd Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:30:38 +0800 Subject: [PATCH 13/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1983 +++++++++++++++++ 1 file changed, 1983 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java index aba4974c..71f4a04d 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -3903,3 +3903,1986 @@ public class TypeScriptParser extends TypeScriptParserBase { } return _localctx; } + + @SuppressWarnings("CheckReturnValue") + public static class ClassOrInterfaceTypeListContext extends ParserRuleContext { + public List typeReference() { + return getRuleContexts(TypeReferenceContext.class); + } + public TypeReferenceContext typeReference(int i) { + return getRuleContext(TypeReferenceContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public ClassOrInterfaceTypeListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_classOrInterfaceTypeList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassOrInterfaceTypeList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassOrInterfaceTypeList(this); + } + } + + public final ClassOrInterfaceTypeListContext classOrInterfaceTypeList() throws RecognitionException { + ClassOrInterfaceTypeListContext _localctx = new ClassOrInterfaceTypeListContext(_ctx, getState()); + enterRule(_localctx, 90, RULE_classOrInterfaceTypeList); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(714); + typeReference(); + setState(719); + _errHandler.sync(this); + _la = _input.LA(1); + while (_la==Comma) { + { + { + setState(715); + match(Comma); + setState(716); + typeReference(); + } + } + setState(721); + _errHandler.sync(this); + _la = _input.LA(1); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class EnumDeclarationContext extends ParserRuleContext { + public TerminalNode Enum() { return getToken(TypeScriptParser.Enum, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public TerminalNode Const() { return getToken(TypeScriptParser.Const, 0); } + public EnumBodyContext enumBody() { + return getRuleContext(EnumBodyContext.class,0); + } + public EnumDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_enumDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEnumDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEnumDeclaration(this); + } + } + + public final EnumDeclarationContext enumDeclaration() throws RecognitionException { + EnumDeclarationContext _localctx = new EnumDeclarationContext(_ctx, getState()); + enterRule(_localctx, 92, RULE_enumDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(723); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Const) { + { + setState(722); + match(Const); + } + } + + setState(725); + match(Enum); + setState(726); + identifier(); + setState(727); + match(OpenBrace); + setState(729); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460752303423472L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -274877907005L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 3263L) != 0)) { + { + setState(728); + enumBody(); + } + } + + setState(731); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class EnumBodyContext extends ParserRuleContext { + public EnumMemberListContext enumMemberList() { + return getRuleContext(EnumMemberListContext.class,0); + } + public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } + public EnumBodyContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_enumBody; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEnumBody(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEnumBody(this); + } + } + + public final EnumBodyContext enumBody() throws RecognitionException { + EnumBodyContext _localctx = new EnumBodyContext(_ctx, getState()); + enterRule(_localctx, 94, RULE_enumBody); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(733); + enumMemberList(); + setState(735); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(734); + match(Comma); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class EnumMemberListContext extends ParserRuleContext { + public List enumMember() { + return getRuleContexts(EnumMemberContext.class); + } + public EnumMemberContext enumMember(int i) { + return getRuleContext(EnumMemberContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public EnumMemberListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_enumMemberList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEnumMemberList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEnumMemberList(this); + } + } + + public final EnumMemberListContext enumMemberList() throws RecognitionException { + EnumMemberListContext _localctx = new EnumMemberListContext(_ctx, getState()); + enterRule(_localctx, 96, RULE_enumMemberList); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(737); + enumMember(); + setState(742); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,73,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(738); + match(Comma); + setState(739); + enumMember(); + } + } + } + setState(744); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,73,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class EnumMemberContext extends ParserRuleContext { + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public EnumMemberContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_enumMember; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEnumMember(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEnumMember(this); + } + } + + public final EnumMemberContext enumMember() throws RecognitionException { + EnumMemberContext _localctx = new EnumMemberContext(_ctx, getState()); + enterRule(_localctx, 98, RULE_enumMember); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(745); + propertyName(); + setState(748); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Assign) { + { + setState(746); + match(Assign); + setState(747); + singleExpression(0); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class NamespaceDeclarationContext extends ParserRuleContext { + public TerminalNode Namespace() { return getToken(TypeScriptParser.Namespace, 0); } + public NamespaceNameContext namespaceName() { + return getRuleContext(NamespaceNameContext.class,0); + } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public TerminalNode Declare() { return getToken(TypeScriptParser.Declare, 0); } + public StatementListContext statementList() { + return getRuleContext(StatementListContext.class,0); + } + public NamespaceDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_namespaceDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNamespaceDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNamespaceDeclaration(this); + } + } + + public final NamespaceDeclarationContext namespaceDeclaration() throws RecognitionException { + NamespaceDeclarationContext _localctx = new NamespaceDeclarationContext(_ctx, getState()); + enterRule(_localctx, 100, RULE_namespaceDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(751); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Declare) { + { + setState(750); + match(Declare); + } + } + + setState(753); + match(Namespace); + setState(754); + namespaceName(); + setState(755); + match(OpenBrace); + setState(757); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,76,_ctx) ) { + case 1: + { + setState(756); + statementList(); + } + break; + } + setState(759); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class NamespaceNameContext extends ParserRuleContext { + public List identifier() { + return getRuleContexts(IdentifierContext.class); + } + public IdentifierContext identifier(int i) { + return getRuleContext(IdentifierContext.class,i); + } + public List Dot() { return getTokens(TypeScriptParser.Dot); } + public TerminalNode Dot(int i) { + return getToken(TypeScriptParser.Dot, i); + } + public NamespaceNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_namespaceName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNamespaceName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNamespaceName(this); + } + } + + public final NamespaceNameContext namespaceName() throws RecognitionException { + NamespaceNameContext _localctx = new NamespaceNameContext(_ctx, getState()); + enterRule(_localctx, 102, RULE_namespaceName); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(761); + identifier(); + setState(770); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,78,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(763); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(762); + match(Dot); + } + } + setState(765); + _errHandler.sync(this); + _la = _input.LA(1); + } while ( _la==Dot ); + setState(767); + identifier(); + } + } + } + setState(772); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,78,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportAliasDeclarationContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public NamespaceNameContext namespaceName() { + return getRuleContext(NamespaceNameContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public ImportAliasDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importAliasDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportAliasDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportAliasDeclaration(this); + } + } + + public final ImportAliasDeclarationContext importAliasDeclaration() throws RecognitionException { + ImportAliasDeclarationContext _localctx = new ImportAliasDeclarationContext(_ctx, getState()); + enterRule(_localctx, 104, RULE_importAliasDeclaration); + try { + enterOuterAlt(_localctx, 1); + { + setState(773); + identifier(); + setState(774); + match(Assign); + setState(775); + namespaceName(); + setState(776); + match(SemiColon); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class DecoratorListContext extends ParserRuleContext { + public List decorator() { + return getRuleContexts(DecoratorContext.class); + } + public DecoratorContext decorator(int i) { + return getRuleContext(DecoratorContext.class,i); + } + public DecoratorListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_decoratorList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDecoratorList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDecoratorList(this); + } + } + + public final DecoratorListContext decoratorList() throws RecognitionException { + DecoratorListContext _localctx = new DecoratorListContext(_ctx, getState()); + enterRule(_localctx, 106, RULE_decoratorList); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(779); + _errHandler.sync(this); + _alt = 1; + do { + switch (_alt) { + case 1: + { + { + setState(778); + decorator(); + } + } + break; + default: + throw new NoViableAltException(this); + } + setState(781); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,79,_ctx); + } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class DecoratorContext extends ParserRuleContext { + public TerminalNode At() { return getToken(TypeScriptParser.At, 0); } + public DecoratorMemberExpressionContext decoratorMemberExpression() { + return getRuleContext(DecoratorMemberExpressionContext.class,0); + } + public DecoratorCallExpressionContext decoratorCallExpression() { + return getRuleContext(DecoratorCallExpressionContext.class,0); + } + public DecoratorContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_decorator; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDecorator(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDecorator(this); + } + } + + public final DecoratorContext decorator() throws RecognitionException { + DecoratorContext _localctx = new DecoratorContext(_ctx, getState()); + enterRule(_localctx, 108, RULE_decorator); + try { + enterOuterAlt(_localctx, 1); + { + setState(783); + match(At); + setState(786); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,80,_ctx) ) { + case 1: + { + setState(784); + decoratorMemberExpression(0); + } + break; + case 2: + { + setState(785); + decoratorCallExpression(); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class DecoratorMemberExpressionContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public DecoratorMemberExpressionContext decoratorMemberExpression() { + return getRuleContext(DecoratorMemberExpressionContext.class,0); + } + public TerminalNode Dot() { return getToken(TypeScriptParser.Dot, 0); } + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class,0); + } + public DecoratorMemberExpressionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_decoratorMemberExpression; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDecoratorMemberExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDecoratorMemberExpression(this); + } + } + + public final DecoratorMemberExpressionContext decoratorMemberExpression() throws RecognitionException { + return decoratorMemberExpression(0); + } + + private DecoratorMemberExpressionContext decoratorMemberExpression(int _p) throws RecognitionException { + ParserRuleContext _parentctx = _ctx; + int _parentState = getState(); + DecoratorMemberExpressionContext _localctx = new DecoratorMemberExpressionContext(_ctx, _parentState); + DecoratorMemberExpressionContext _prevctx = _localctx; + int _startState = 110; + enterRecursionRule(_localctx, 110, RULE_decoratorMemberExpression, _p); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(794); + _errHandler.sync(this); + switch (_input.LA(1)) { + case As: + case From: + case Async: + case Yield: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Abstract: + case Identifier: + { + setState(789); + identifier(); + } + break; + case OpenParen: + { + setState(790); + match(OpenParen); + setState(791); + singleExpression(0); + setState(792); + match(CloseParen); + } + break; + default: + throw new NoViableAltException(this); + } + _ctx.stop = _input.LT(-1); + setState(801); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,82,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + if ( _parseListeners!=null ) triggerExitRuleEvent(); + _prevctx = _localctx; + { + { + _localctx = new DecoratorMemberExpressionContext(_parentctx, _parentState); + pushNewRecursionContext(_localctx, _startState, RULE_decoratorMemberExpression); + setState(796); + if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)"); + setState(797); + match(Dot); + setState(798); + identifierName(); + } + } + } + setState(803); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,82,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + unrollRecursionContexts(_parentctx); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class DecoratorCallExpressionContext extends ParserRuleContext { + public DecoratorMemberExpressionContext decoratorMemberExpression() { + return getRuleContext(DecoratorMemberExpressionContext.class,0); + } + public ArgumentsContext arguments() { + return getRuleContext(ArgumentsContext.class,0); + } + public DecoratorCallExpressionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_decoratorCallExpression; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDecoratorCallExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDecoratorCallExpression(this); + } + } + + public final DecoratorCallExpressionContext decoratorCallExpression() throws RecognitionException { + DecoratorCallExpressionContext _localctx = new DecoratorCallExpressionContext(_ctx, getState()); + enterRule(_localctx, 112, RULE_decoratorCallExpression); + try { + enterOuterAlt(_localctx, 1); + { + setState(804); + decoratorMemberExpression(0); + setState(805); + arguments(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ProgramContext extends ParserRuleContext { + public TerminalNode EOF() { return getToken(TypeScriptParser.EOF, 0); } + public SourceElementsContext sourceElements() { + return getRuleContext(SourceElementsContext.class,0); + } + public ProgramContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_program; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterProgram(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitProgram(this); + } + } + + public final ProgramContext program() throws RecognitionException { + ProgramContext _localctx = new ProgramContext(_ctx, getState()); + enterRule(_localctx, 114, RULE_program); + try { + enterOuterAlt(_localctx, 1); + { + setState(808); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,83,_ctx) ) { + case 1: + { + setState(807); + sourceElements(); + } + break; + } + setState(810); + match(EOF); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class SourceElementContext extends ParserRuleContext { + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } + public SourceElementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_sourceElement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSourceElement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSourceElement(this); + } + } + + public final SourceElementContext sourceElement() throws RecognitionException { + SourceElementContext _localctx = new SourceElementContext(_ctx, getState()); + enterRule(_localctx, 116, RULE_sourceElement); + try { + enterOuterAlt(_localctx, 1); + { + setState(813); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,84,_ctx) ) { + case 1: + { + setState(812); + match(Export); + } + break; + } + setState(815); + statement(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class StatementContext extends ParserRuleContext { + public BlockContext block() { + return getRuleContext(BlockContext.class,0); + } + public VariableStatementContext variableStatement() { + return getRuleContext(VariableStatementContext.class,0); + } + public ImportStatementContext importStatement() { + return getRuleContext(ImportStatementContext.class,0); + } + public ExportStatementContext exportStatement() { + return getRuleContext(ExportStatementContext.class,0); + } + public EmptyStatement_Context emptyStatement_() { + return getRuleContext(EmptyStatement_Context.class,0); + } + public AbstractDeclarationContext abstractDeclaration() { + return getRuleContext(AbstractDeclarationContext.class,0); + } + public ClassDeclarationContext classDeclaration() { + return getRuleContext(ClassDeclarationContext.class,0); + } + public FunctionDeclarationContext functionDeclaration() { + return getRuleContext(FunctionDeclarationContext.class,0); + } + public ExpressionStatementContext expressionStatement() { + return getRuleContext(ExpressionStatementContext.class,0); + } + public InterfaceDeclarationContext interfaceDeclaration() { + return getRuleContext(InterfaceDeclarationContext.class,0); + } + public NamespaceDeclarationContext namespaceDeclaration() { + return getRuleContext(NamespaceDeclarationContext.class,0); + } + public IfStatementContext ifStatement() { + return getRuleContext(IfStatementContext.class,0); + } + public IterationStatementContext iterationStatement() { + return getRuleContext(IterationStatementContext.class,0); + } + public ContinueStatementContext continueStatement() { + return getRuleContext(ContinueStatementContext.class,0); + } + public BreakStatementContext breakStatement() { + return getRuleContext(BreakStatementContext.class,0); + } + public ReturnStatementContext returnStatement() { + return getRuleContext(ReturnStatementContext.class,0); + } + public YieldStatementContext yieldStatement() { + return getRuleContext(YieldStatementContext.class,0); + } + public WithStatementContext withStatement() { + return getRuleContext(WithStatementContext.class,0); + } + public LabelledStatementContext labelledStatement() { + return getRuleContext(LabelledStatementContext.class,0); + } + public SwitchStatementContext switchStatement() { + return getRuleContext(SwitchStatementContext.class,0); + } + public ThrowStatementContext throwStatement() { + return getRuleContext(ThrowStatementContext.class,0); + } + public TryStatementContext tryStatement() { + return getRuleContext(TryStatementContext.class,0); + } + public DebuggerStatementContext debuggerStatement() { + return getRuleContext(DebuggerStatementContext.class,0); + } + public ArrowFunctionDeclarationContext arrowFunctionDeclaration() { + return getRuleContext(ArrowFunctionDeclarationContext.class,0); + } + public GeneratorFunctionDeclarationContext generatorFunctionDeclaration() { + return getRuleContext(GeneratorFunctionDeclarationContext.class,0); + } + public TypeAliasDeclarationContext typeAliasDeclaration() { + return getRuleContext(TypeAliasDeclarationContext.class,0); + } + public EnumDeclarationContext enumDeclaration() { + return getRuleContext(EnumDeclarationContext.class,0); + } + public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public StatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_statement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitStatement(this); + } + } + + public final StatementContext statement() throws RecognitionException { + StatementContext _localctx = new StatementContext(_ctx, getState()); + enterRule(_localctx, 118, RULE_statement); + try { + setState(846); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,85,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(817); + block(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(818); + variableStatement(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(819); + importStatement(); + } + break; + case 4: + enterOuterAlt(_localctx, 4); + { + setState(820); + exportStatement(); + } + break; + case 5: + enterOuterAlt(_localctx, 5); + { + setState(821); + emptyStatement_(); + } + break; + case 6: + enterOuterAlt(_localctx, 6); + { + setState(822); + abstractDeclaration(); + } + break; + case 7: + enterOuterAlt(_localctx, 7); + { + setState(823); + classDeclaration(); + } + break; + case 8: + enterOuterAlt(_localctx, 8); + { + setState(824); + functionDeclaration(); + } + break; + case 9: + enterOuterAlt(_localctx, 9); + { + setState(825); + expressionStatement(); + } + break; + case 10: + enterOuterAlt(_localctx, 10); + { + setState(826); + interfaceDeclaration(); + } + break; + case 11: + enterOuterAlt(_localctx, 11); + { + setState(827); + namespaceDeclaration(); + } + break; + case 12: + enterOuterAlt(_localctx, 12); + { + setState(828); + ifStatement(); + } + break; + case 13: + enterOuterAlt(_localctx, 13); + { + setState(829); + iterationStatement(); + } + break; + case 14: + enterOuterAlt(_localctx, 14); + { + setState(830); + continueStatement(); + } + break; + case 15: + enterOuterAlt(_localctx, 15); + { + setState(831); + breakStatement(); + } + break; + case 16: + enterOuterAlt(_localctx, 16); + { + setState(832); + returnStatement(); + } + break; + case 17: + enterOuterAlt(_localctx, 17); + { + setState(833); + yieldStatement(); + } + break; + case 18: + enterOuterAlt(_localctx, 18); + { + setState(834); + withStatement(); + } + break; + case 19: + enterOuterAlt(_localctx, 19); + { + setState(835); + labelledStatement(); + } + break; + case 20: + enterOuterAlt(_localctx, 20); + { + setState(836); + switchStatement(); + } + break; + case 21: + enterOuterAlt(_localctx, 21); + { + setState(837); + throwStatement(); + } + break; + case 22: + enterOuterAlt(_localctx, 22); + { + setState(838); + tryStatement(); + } + break; + case 23: + enterOuterAlt(_localctx, 23); + { + setState(839); + debuggerStatement(); + } + break; + case 24: + enterOuterAlt(_localctx, 24); + { + setState(840); + arrowFunctionDeclaration(); + } + break; + case 25: + enterOuterAlt(_localctx, 25); + { + setState(841); + generatorFunctionDeclaration(); + } + break; + case 26: + enterOuterAlt(_localctx, 26); + { + setState(842); + typeAliasDeclaration(); + } + break; + case 27: + enterOuterAlt(_localctx, 27); + { + setState(843); + enumDeclaration(); + } + break; + case 28: + enterOuterAlt(_localctx, 28); + { + setState(844); + match(Export); + setState(845); + statement(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class BlockContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public StatementListContext statementList() { + return getRuleContext(StatementListContext.class,0); + } + public BlockContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_block; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBlock(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBlock(this); + } + } + + public final BlockContext block() throws RecognitionException { + BlockContext _localctx = new BlockContext(_ctx, getState()); + enterRule(_localctx, 120, RULE_block); + try { + enterOuterAlt(_localctx, 1); + { + setState(848); + match(OpenBrace); + setState(850); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,86,_ctx) ) { + case 1: + { + setState(849); + statementList(); + } + break; + } + setState(852); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class StatementListContext extends ParserRuleContext { + public List statement() { + return getRuleContexts(StatementContext.class); + } + public StatementContext statement(int i) { + return getRuleContext(StatementContext.class,i); + } + public StatementListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_statementList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterStatementList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitStatementList(this); + } + } + + public final StatementListContext statementList() throws RecognitionException { + StatementListContext _localctx = new StatementListContext(_ctx, getState()); + enterRule(_localctx, 122, RULE_statementList); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(855); + _errHandler.sync(this); + _alt = 1; + do { + switch (_alt) { + case 1: + { + { + setState(854); + statement(); + } + } + break; + default: + throw new NoViableAltException(this); + } + setState(857); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,87,_ctx); + } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class AbstractDeclarationContext extends ParserRuleContext { + public TerminalNode Abstract() { return getToken(TypeScriptParser.Abstract, 0); } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public CallSignatureContext callSignature() { + return getRuleContext(CallSignatureContext.class,0); + } + public VariableStatementContext variableStatement() { + return getRuleContext(VariableStatementContext.class,0); + } + public AbstractDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_abstractDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAbstractDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAbstractDeclaration(this); + } + } + + public final AbstractDeclarationContext abstractDeclaration() throws RecognitionException { + AbstractDeclarationContext _localctx = new AbstractDeclarationContext(_ctx, getState()); + enterRule(_localctx, 124, RULE_abstractDeclaration); + try { + enterOuterAlt(_localctx, 1); + { + setState(859); + match(Abstract); + setState(864); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,88,_ctx) ) { + case 1: + { + setState(860); + identifier(); + setState(861); + callSignature(); + } + break; + case 2: + { + setState(863); + variableStatement(); + } + break; + } + setState(866); + eos(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportStatementContext extends ParserRuleContext { + public TerminalNode Import() { return getToken(TypeScriptParser.Import, 0); } + public ImportFromBlockContext importFromBlock() { + return getRuleContext(ImportFromBlockContext.class,0); + } + public ImportStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportStatement(this); + } + } + + public final ImportStatementContext importStatement() throws RecognitionException { + ImportStatementContext _localctx = new ImportStatementContext(_ctx, getState()); + enterRule(_localctx, 126, RULE_importStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(868); + match(Import); + setState(869); + importFromBlock(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportFromBlockContext extends ParserRuleContext { + public ImportFromContext importFrom() { + return getRuleContext(ImportFromContext.class,0); + } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public ImportNamespaceContext importNamespace() { + return getRuleContext(ImportNamespaceContext.class,0); + } + public ImportModuleItemsContext importModuleItems() { + return getRuleContext(ImportModuleItemsContext.class,0); + } + public ImportDefaultContext importDefault() { + return getRuleContext(ImportDefaultContext.class,0); + } + public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } + public ImportFromBlockContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importFromBlock; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportFromBlock(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportFromBlock(this); + } + } + + public final ImportFromBlockContext importFromBlock() throws RecognitionException { + ImportFromBlockContext _localctx = new ImportFromBlockContext(_ctx, getState()); + enterRule(_localctx, 128, RULE_importFromBlock); + try { + setState(883); + _errHandler.sync(this); + switch (_input.LA(1)) { + case OpenBrace: + case Multiply: + case NullLiteral: + case BooleanLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + enterOuterAlt(_localctx, 1); + { + setState(872); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,89,_ctx) ) { + case 1: + { + setState(871); + importDefault(); + } + break; + } + setState(876); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Multiply: + case NullLiteral: + case BooleanLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + { + setState(874); + importNamespace(); + } + break; + case OpenBrace: + { + setState(875); + importModuleItems(); + } + break; + default: + throw new NoViableAltException(this); + } + setState(878); + importFrom(); + setState(879); + eos(); + } + break; + case StringLiteral: + enterOuterAlt(_localctx, 2); + { + setState(881); + match(StringLiteral); + setState(882); + eos(); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportModuleItemsContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public List importAliasName() { + return getRuleContexts(ImportAliasNameContext.class); + } + public ImportAliasNameContext importAliasName(int i) { + return getRuleContext(ImportAliasNameContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public ImportModuleItemsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importModuleItems; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportModuleItems(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportModuleItems(this); + } + } + + public final ImportModuleItemsContext importModuleItems() throws RecognitionException { + ImportModuleItemsContext _localctx = new ImportModuleItemsContext(_ctx, getState()); + enterRule(_localctx, 130, RULE_importModuleItems); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(885); + match(OpenBrace); + setState(891); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,92,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(886); + importAliasName(); + setState(887); + match(Comma); + } + } + } + setState(893); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,92,_ctx); + } + setState(898); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 59)) & ~0x3f) == 0 && ((1L << (_la - 59)) & -8796093024253L) != 0) || ((((_la - 123)) & ~0x3f) == 0 && ((1L << (_la - 123)) & 104447L) != 0)) { + { + setState(894); + importAliasName(); + setState(896); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(895); + match(Comma); + } + } + + } + } + + setState(900); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportAliasNameContext extends ParserRuleContext { + public ModuleExportNameContext moduleExportName() { + return getRuleContext(ModuleExportNameContext.class,0); + } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public ImportedBindingContext importedBinding() { + return getRuleContext(ImportedBindingContext.class,0); + } + public ImportAliasNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importAliasName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportAliasName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportAliasName(this); + } + } + + public final ImportAliasNameContext importAliasName() throws RecognitionException { + ImportAliasNameContext _localctx = new ImportAliasNameContext(_ctx, getState()); + enterRule(_localctx, 132, RULE_importAliasName); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(902); + moduleExportName(); + setState(905); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==As) { + { + setState(903); + match(As); + setState(904); + importedBinding(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ModuleExportNameContext extends ParserRuleContext { + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class,0); + } + public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } + public ModuleExportNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_moduleExportName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterModuleExportName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitModuleExportName(this); + } + } + + public final ModuleExportNameContext moduleExportName() throws RecognitionException { + ModuleExportNameContext _localctx = new ModuleExportNameContext(_ctx, getState()); + enterRule(_localctx, 134, RULE_moduleExportName); + try { + setState(909); + _errHandler.sync(this); + switch (_input.LA(1)) { + case NullLiteral: + case BooleanLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + enterOuterAlt(_localctx, 1); + { + setState(907); + identifierName(); + } + break; + case StringLiteral: + enterOuterAlt(_localctx, 2); + { + setState(908); + match(StringLiteral); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportedBindingContext extends ParserRuleContext { + public TerminalNode Identifier() { return getToken(TypeScriptParser.Identifier, 0); } + public TerminalNode Yield() { return getToken(TypeScriptParser.Yield, 0); } + public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } + public ImportedBindingContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importedBinding; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportedBinding(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportedBinding(this); + } + } -- Gitee From 1fd34956607509258eed369311f2c91ff4300d09 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:31:04 +0800 Subject: [PATCH 14/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1981 +++++++++++++++++ 1 file changed, 1981 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java index 71f4a04d..bde4210e 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -5886,3 +5886,1984 @@ public class TypeScriptParser extends TypeScriptParserBase { if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportedBinding(this); } } + + public final ImportedBindingContext importedBinding() throws RecognitionException { + ImportedBindingContext _localctx = new ImportedBindingContext(_ctx, getState()); + enterRule(_localctx, 136, RULE_importedBinding); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(911); + _la = _input.LA(1); + if ( !(((((_la - 100)) & ~0x3f) == 0 && ((1L << (_la - 100)) & 274877906947L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportDefaultContext extends ParserRuleContext { + public AliasNameContext aliasName() { + return getRuleContext(AliasNameContext.class,0); + } + public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } + public ImportDefaultContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importDefault; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportDefault(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportDefault(this); + } + } + + public final ImportDefaultContext importDefault() throws RecognitionException { + ImportDefaultContext _localctx = new ImportDefaultContext(_ctx, getState()); + enterRule(_localctx, 138, RULE_importDefault); + try { + enterOuterAlt(_localctx, 1); + { + setState(913); + aliasName(); + setState(914); + match(Comma); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportNamespaceContext extends ParserRuleContext { + public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } + public List identifierName() { + return getRuleContexts(IdentifierNameContext.class); + } + public IdentifierNameContext identifierName(int i) { + return getRuleContext(IdentifierNameContext.class,i); + } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public ImportNamespaceContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importNamespace; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportNamespace(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportNamespace(this); + } + } + + public final ImportNamespaceContext importNamespace() throws RecognitionException { + ImportNamespaceContext _localctx = new ImportNamespaceContext(_ctx, getState()); + enterRule(_localctx, 140, RULE_importNamespace); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(918); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Multiply: + { + setState(916); + match(Multiply); + } + break; + case NullLiteral: + case BooleanLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + { + setState(917); + identifierName(); + } + break; + default: + throw new NoViableAltException(this); + } + setState(922); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==As) { + { + setState(920); + match(As); + setState(921); + identifierName(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImportFromContext extends ParserRuleContext { + public TerminalNode From() { return getToken(TypeScriptParser.From, 0); } + public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } + public ImportFromContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_importFrom; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportFrom(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportFrom(this); + } + } + + public final ImportFromContext importFrom() throws RecognitionException { + ImportFromContext _localctx = new ImportFromContext(_ctx, getState()); + enterRule(_localctx, 142, RULE_importFrom); + try { + enterOuterAlt(_localctx, 1); + { + setState(924); + match(From); + setState(925); + match(StringLiteral); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class AliasNameContext extends ParserRuleContext { + public List identifierName() { + return getRuleContexts(IdentifierNameContext.class); + } + public IdentifierNameContext identifierName(int i) { + return getRuleContext(IdentifierNameContext.class,i); + } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public AliasNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_aliasName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAliasName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAliasName(this); + } + } + + public final AliasNameContext aliasName() throws RecognitionException { + AliasNameContext _localctx = new AliasNameContext(_ctx, getState()); + enterRule(_localctx, 144, RULE_aliasName); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(927); + identifierName(); + setState(930); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==As) { + { + setState(928); + match(As); + setState(929); + identifierName(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ExportStatementContext extends ParserRuleContext { + public ExportStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_exportStatement; } + + public ExportStatementContext() { } + public void copyFrom(ExportStatementContext ctx) { + super.copyFrom(ctx); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ExportDefaultDeclarationContext extends ExportStatementContext { + public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } + public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public ExportDefaultDeclarationContext(ExportStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportDefaultDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportDefaultDeclaration(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ExportDeclarationContext extends ExportStatementContext { + public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public ExportFromBlockContext exportFromBlock() { + return getRuleContext(ExportFromBlockContext.class,0); + } + public DeclarationContext declaration() { + return getRuleContext(DeclarationContext.class,0); + } + public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } + public ExportDeclarationContext(ExportStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportDeclaration(this); + } + } + + public final ExportStatementContext exportStatement() throws RecognitionException { + ExportStatementContext _localctx = new ExportStatementContext(_ctx, getState()); + enterRule(_localctx, 146, RULE_exportStatement); + try { + setState(947); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,102,_ctx) ) { + case 1: + _localctx = new ExportDeclarationContext(_localctx); + enterOuterAlt(_localctx, 1); + { + setState(932); + match(Export); + setState(934); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,100,_ctx) ) { + case 1: + { + setState(933); + match(Default); + } + break; + } + setState(938); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,101,_ctx) ) { + case 1: + { + setState(936); + exportFromBlock(); + } + break; + case 2: + { + setState(937); + declaration(); + } + break; + } + setState(940); + eos(); + } + break; + case 2: + _localctx = new ExportDefaultDeclarationContext(_localctx); + enterOuterAlt(_localctx, 2); + { + setState(942); + match(Export); + setState(943); + match(Default); + setState(944); + singleExpression(0); + setState(945); + eos(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ExportFromBlockContext extends ParserRuleContext { + public ImportNamespaceContext importNamespace() { + return getRuleContext(ImportNamespaceContext.class,0); + } + public ImportFromContext importFrom() { + return getRuleContext(ImportFromContext.class,0); + } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public ExportModuleItemsContext exportModuleItems() { + return getRuleContext(ExportModuleItemsContext.class,0); + } + public ExportFromBlockContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_exportFromBlock; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportFromBlock(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportFromBlock(this); + } + } + + public final ExportFromBlockContext exportFromBlock() throws RecognitionException { + ExportFromBlockContext _localctx = new ExportFromBlockContext(_ctx, getState()); + enterRule(_localctx, 148, RULE_exportFromBlock); + try { + setState(959); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Multiply: + case NullLiteral: + case BooleanLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + enterOuterAlt(_localctx, 1); + { + setState(949); + importNamespace(); + setState(950); + importFrom(); + setState(951); + eos(); + } + break; + case OpenBrace: + enterOuterAlt(_localctx, 2); + { + setState(953); + exportModuleItems(); + setState(955); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,103,_ctx) ) { + case 1: + { + setState(954); + importFrom(); + } + break; + } + setState(957); + eos(); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ExportModuleItemsContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public List exportAliasName() { + return getRuleContexts(ExportAliasNameContext.class); + } + public ExportAliasNameContext exportAliasName(int i) { + return getRuleContext(ExportAliasNameContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public ExportModuleItemsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_exportModuleItems; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportModuleItems(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportModuleItems(this); + } + } + + public final ExportModuleItemsContext exportModuleItems() throws RecognitionException { + ExportModuleItemsContext _localctx = new ExportModuleItemsContext(_ctx, getState()); + enterRule(_localctx, 150, RULE_exportModuleItems); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(961); + match(OpenBrace); + setState(967); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,105,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(962); + exportAliasName(); + setState(963); + match(Comma); + } + } + } + setState(969); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,105,_ctx); + } + setState(974); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 59)) & ~0x3f) == 0 && ((1L << (_la - 59)) & -8796093024253L) != 0) || ((((_la - 123)) & ~0x3f) == 0 && ((1L << (_la - 123)) & 104447L) != 0)) { + { + setState(970); + exportAliasName(); + setState(972); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(971); + match(Comma); + } + } + + } + } + + setState(976); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ExportAliasNameContext extends ParserRuleContext { + public List moduleExportName() { + return getRuleContexts(ModuleExportNameContext.class); + } + public ModuleExportNameContext moduleExportName(int i) { + return getRuleContext(ModuleExportNameContext.class,i); + } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public ExportAliasNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_exportAliasName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportAliasName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportAliasName(this); + } + } + + public final ExportAliasNameContext exportAliasName() throws RecognitionException { + ExportAliasNameContext _localctx = new ExportAliasNameContext(_ctx, getState()); + enterRule(_localctx, 152, RULE_exportAliasName); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(978); + moduleExportName(); + setState(981); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==As) { + { + setState(979); + match(As); + setState(980); + moduleExportName(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class DeclarationContext extends ParserRuleContext { + public VariableStatementContext variableStatement() { + return getRuleContext(VariableStatementContext.class,0); + } + public ClassDeclarationContext classDeclaration() { + return getRuleContext(ClassDeclarationContext.class,0); + } + public FunctionDeclarationContext functionDeclaration() { + return getRuleContext(FunctionDeclarationContext.class,0); + } + public DeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_declaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDeclaration(this); + } + } + + public final DeclarationContext declaration() throws RecognitionException { + DeclarationContext _localctx = new DeclarationContext(_ctx, getState()); + enterRule(_localctx, 154, RULE_declaration); + try { + setState(986); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,109,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(983); + variableStatement(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(984); + classDeclaration(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(985); + functionDeclaration(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class VariableStatementContext extends ParserRuleContext { + public BindingPatternContext bindingPattern() { + return getRuleContext(BindingPatternContext.class,0); + } + public InitializerContext initializer() { + return getRuleContext(InitializerContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public VariableDeclarationListContext variableDeclarationList() { + return getRuleContext(VariableDeclarationListContext.class,0); + } + public AccessibilityModifierContext accessibilityModifier() { + return getRuleContext(AccessibilityModifierContext.class,0); + } + public VarModifierContext varModifier() { + return getRuleContext(VarModifierContext.class,0); + } + public TerminalNode ReadOnly() { return getToken(TypeScriptParser.ReadOnly, 0); } + public TerminalNode Declare() { return getToken(TypeScriptParser.Declare, 0); } + public VariableStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_variableStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVariableStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVariableStatement(this); + } + } + + public final VariableStatementContext variableStatement() throws RecognitionException { + VariableStatementContext _localctx = new VariableStatementContext(_ctx, getState()); + enterRule(_localctx, 156, RULE_variableStatement); + int _la; + try { + setState(1017); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,118,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(988); + bindingPattern(); + setState(990); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(989); + typeAnnotation(); + } + } + + setState(992); + initializer(); + setState(994); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,111,_ctx) ) { + case 1: + { + setState(993); + match(SemiColon); + } + break; + } + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(997); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 112)) & ~0x3f) == 0 && ((1L << (_la - 112)) & 19L) != 0)) { + { + setState(996); + accessibilityModifier(); + } + } + + setState(1000); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 77)) & ~0x3f) == 0 && ((1L << (_la - 77)) & 18253611009L) != 0)) { + { + setState(999); + varModifier(); + } + } + + setState(1003); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==ReadOnly) { + { + setState(1002); + match(ReadOnly); + } + } + + setState(1005); + variableDeclarationList(); + setState(1007); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,115,_ctx) ) { + case 1: + { + setState(1006); + match(SemiColon); + } + break; + } + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(1009); + match(Declare); + setState(1011); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 77)) & ~0x3f) == 0 && ((1L << (_la - 77)) & 18253611009L) != 0)) { + { + setState(1010); + varModifier(); + } + } + + setState(1013); + variableDeclarationList(); + setState(1015); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,117,_ctx) ) { + case 1: + { + setState(1014); + match(SemiColon); + } + break; + } + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class VariableDeclarationListContext extends ParserRuleContext { + public List variableDeclaration() { + return getRuleContexts(VariableDeclarationContext.class); + } + public VariableDeclarationContext variableDeclaration(int i) { + return getRuleContext(VariableDeclarationContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public VariableDeclarationListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_variableDeclarationList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVariableDeclarationList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVariableDeclarationList(this); + } + } + + public final VariableDeclarationListContext variableDeclarationList() throws RecognitionException { + VariableDeclarationListContext _localctx = new VariableDeclarationListContext(_ctx, getState()); + enterRule(_localctx, 158, RULE_variableDeclarationList); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1019); + variableDeclaration(); + setState(1024); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,119,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1020); + match(Comma); + setState(1021); + variableDeclaration(); + } + } + } + setState(1026); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,119,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class VariableDeclarationContext extends ParserRuleContext { + public IdentifierOrKeyWordContext identifierOrKeyWord() { + return getRuleContext(IdentifierOrKeyWordContext.class,0); + } + public ArrayLiteralContext arrayLiteral() { + return getRuleContext(ArrayLiteralContext.class,0); + } + public ObjectLiteralContext objectLiteral() { + return getRuleContext(ObjectLiteralContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public VariableDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_variableDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVariableDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVariableDeclaration(this); + } + } + + public final VariableDeclarationContext variableDeclaration() throws RecognitionException { + VariableDeclarationContext _localctx = new VariableDeclarationContext(_ctx, getState()); + enterRule(_localctx, 160, RULE_variableDeclaration); + try { + enterOuterAlt(_localctx, 1); + { + setState(1030); + _errHandler.sync(this); + switch (_input.LA(1)) { + case As: + case From: + case Async: + case Yield: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Abstract: + case Identifier: + { + setState(1027); + identifierOrKeyWord(); + } + break; + case OpenBracket: + { + setState(1028); + arrayLiteral(); + } + break; + case OpenBrace: + { + setState(1029); + objectLiteral(); + } + break; + default: + throw new NoViableAltException(this); + } + setState(1033); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,121,_ctx) ) { + case 1: + { + setState(1032); + typeAnnotation(); + } + break; + } + setState(1036); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,122,_ctx) ) { + case 1: + { + setState(1035); + singleExpression(0); + } + break; + } + setState(1043); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,124,_ctx) ) { + case 1: + { + setState(1038); + match(Assign); + setState(1040); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,123,_ctx) ) { + case 1: + { + setState(1039); + typeParameters(); + } + break; + } + setState(1042); + singleExpression(0); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class EmptyStatement_Context extends ParserRuleContext { + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public EmptyStatement_Context(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_emptyStatement_; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEmptyStatement_(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEmptyStatement_(this); + } + } + + public final EmptyStatement_Context emptyStatement_() throws RecognitionException { + EmptyStatement_Context _localctx = new EmptyStatement_Context(_ctx, getState()); + enterRule(_localctx, 162, RULE_emptyStatement_); + try { + enterOuterAlt(_localctx, 1); + { + setState(1045); + match(SemiColon); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ExpressionStatementContext extends ParserRuleContext { + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public ExpressionStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_expressionStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExpressionStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExpressionStatement(this); + } + } + + public final ExpressionStatementContext expressionStatement() throws RecognitionException { + ExpressionStatementContext _localctx = new ExpressionStatementContext(_ctx, getState()); + enterRule(_localctx, 164, RULE_expressionStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1047); + if (!(this.notOpenBraceAndNotFunctionAndNotInterface())) throw new FailedPredicateException(this, "this.notOpenBraceAndNotFunctionAndNotInterface()"); + setState(1048); + expressionSequence(); + setState(1050); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,125,_ctx) ) { + case 1: + { + setState(1049); + match(SemiColon); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IfStatementContext extends ParserRuleContext { + public TerminalNode If() { return getToken(TypeScriptParser.If, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public List statement() { + return getRuleContexts(StatementContext.class); + } + public StatementContext statement(int i) { + return getRuleContext(StatementContext.class,i); + } + public TerminalNode Else() { return getToken(TypeScriptParser.Else, 0); } + public IfStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_ifStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIfStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIfStatement(this); + } + } + + public final IfStatementContext ifStatement() throws RecognitionException { + IfStatementContext _localctx = new IfStatementContext(_ctx, getState()); + enterRule(_localctx, 166, RULE_ifStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1052); + match(If); + setState(1053); + match(OpenParen); + setState(1054); + expressionSequence(); + setState(1055); + match(CloseParen); + setState(1056); + statement(); + setState(1059); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,126,_ctx) ) { + case 1: + { + setState(1057); + match(Else); + setState(1058); + statement(); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IterationStatementContext extends ParserRuleContext { + public IterationStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_iterationStatement; } + + public IterationStatementContext() { } + public void copyFrom(IterationStatementContext ctx) { + super.copyFrom(ctx); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ForVarOfStatementContext extends IterationStatementContext { + public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public VarModifierContext varModifier() { + return getRuleContext(VarModifierContext.class,0); + } + public VariableDeclarationContext variableDeclaration() { + return getRuleContext(VariableDeclarationContext.class,0); + } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public ForVarOfStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForVarOfStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForVarOfStatement(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class DoStatementContext extends IterationStatementContext { + public TerminalNode Do() { return getToken(TypeScriptParser.Do, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public TerminalNode While() { return getToken(TypeScriptParser.While, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public DoStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDoStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDoStatement(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ForVarStatementContext extends IterationStatementContext { + public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public VarModifierContext varModifier() { + return getRuleContext(VarModifierContext.class,0); + } + public VariableDeclarationListContext variableDeclarationList() { + return getRuleContext(VariableDeclarationListContext.class,0); + } + public List SemiColon() { return getTokens(TypeScriptParser.SemiColon); } + public TerminalNode SemiColon(int i) { + return getToken(TypeScriptParser.SemiColon, i); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public List expressionSequence() { + return getRuleContexts(ExpressionSequenceContext.class); + } + public ExpressionSequenceContext expressionSequence(int i) { + return getRuleContext(ExpressionSequenceContext.class,i); + } + public ForVarStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForVarStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForVarStatement(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ForVarInStatementContext extends IterationStatementContext { + public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public VarModifierContext varModifier() { + return getRuleContext(VarModifierContext.class,0); + } + public VariableDeclarationContext variableDeclaration() { + return getRuleContext(VariableDeclarationContext.class,0); + } + public TerminalNode In() { return getToken(TypeScriptParser.In, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public ForVarInStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForVarInStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForVarInStatement(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class WhileStatementContext extends IterationStatementContext { + public TerminalNode While() { return getToken(TypeScriptParser.While, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public WhileStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterWhileStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitWhileStatement(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ForStatementContext extends IterationStatementContext { + public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public List SemiColon() { return getTokens(TypeScriptParser.SemiColon); } + public TerminalNode SemiColon(int i) { + return getToken(TypeScriptParser.SemiColon, i); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public List expressionSequence() { + return getRuleContexts(ExpressionSequenceContext.class); + } + public ExpressionSequenceContext expressionSequence(int i) { + return getRuleContext(ExpressionSequenceContext.class,i); + } + public ForStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForStatement(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ForInStatementContext extends IterationStatementContext { + public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode In() { return getToken(TypeScriptParser.In, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public ForInStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForInStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForInStatement(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ForOfStatementContext extends IterationStatementContext { + public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public Type_Context type_() { + return getRuleContext(Type_Context.class,0); + } + public ForOfStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForOfStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForOfStatement(this); + } + } + + public final IterationStatementContext iterationStatement() throws RecognitionException { + IterationStatementContext _localctx = new IterationStatementContext(_ctx, getState()); + enterRule(_localctx, 168, RULE_iterationStatement); + int _la; + try { + setState(1155); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,136,_ctx) ) { + case 1: + _localctx = new DoStatementContext(_localctx); + enterOuterAlt(_localctx, 1); + { + setState(1061); + match(Do); + setState(1062); + statement(); + setState(1063); + match(While); + setState(1064); + match(OpenParen); + setState(1065); + expressionSequence(); + setState(1066); + match(CloseParen); + setState(1067); + eos(); + } + break; + case 2: + _localctx = new WhileStatementContext(_localctx); + enterOuterAlt(_localctx, 2); + { + setState(1069); + match(While); + setState(1070); + match(OpenParen); + setState(1071); + expressionSequence(); + setState(1072); + match(CloseParen); + setState(1073); + statement(); + } + break; + case 3: + _localctx = new ForStatementContext(_localctx); + enterOuterAlt(_localctx, 3); + { + setState(1075); + match(For); + setState(1076); + match(OpenParen); + setState(1078); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { + { + setState(1077); + expressionSequence(); + } + } + + setState(1080); + match(SemiColon); + setState(1082); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { + { + setState(1081); + expressionSequence(); + } + } + + setState(1084); + match(SemiColon); + setState(1086); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { + { + setState(1085); + expressionSequence(); + } + } + + setState(1088); + match(CloseParen); + setState(1089); + statement(); + } + break; + case 4: + _localctx = new ForVarStatementContext(_localctx); + enterOuterAlt(_localctx, 4); + { + setState(1090); + match(For); + setState(1091); + match(OpenParen); + setState(1092); + varModifier(); + setState(1093); + variableDeclarationList(); + setState(1094); + match(SemiColon); + setState(1096); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { + { + setState(1095); + expressionSequence(); + } + } + + setState(1098); + match(SemiColon); + setState(1100); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { + { + setState(1099); + expressionSequence(); + } + } + + setState(1102); + match(CloseParen); + setState(1103); + statement(); + } + break; + case 5: + _localctx = new ForInStatementContext(_localctx); + enterOuterAlt(_localctx, 5); + { + setState(1105); + match(For); + setState(1106); + match(OpenParen); + setState(1107); + singleExpression(0); + setState(1108); + match(In); + setState(1109); + expressionSequence(); + setState(1110); + match(CloseParen); + setState(1111); + statement(); + } + break; + case 6: + _localctx = new ForVarInStatementContext(_localctx); + enterOuterAlt(_localctx, 6); + { + setState(1113); + match(For); + setState(1114); + match(OpenParen); + setState(1115); + varModifier(); + setState(1116); + variableDeclaration(); + setState(1117); + match(In); + setState(1118); + expressionSequence(); + setState(1119); + match(CloseParen); + setState(1120); + statement(); + } + break; + case 7: + _localctx = new ForOfStatementContext(_localctx); + enterOuterAlt(_localctx, 7); + { + setState(1122); + match(For); + setState(1124); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Await) { + { + setState(1123); + match(Await); + } + } + + setState(1126); + match(OpenParen); + setState(1127); + singleExpression(0); + setState(1128); + identifier(); + setState(1129); + if (!(this.p("of"))) throw new FailedPredicateException(this, "this.p(\"of\")"); + setState(1130); + expressionSequence(); + setState(1133); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==As) { + { + setState(1131); + match(As); + setState(1132); + type_(); + } + } + + setState(1135); + match(CloseParen); + setState(1136); + statement(); + } + break; + case 8: + _localctx = new ForVarOfStatementContext(_localctx); + enterOuterAlt(_localctx, 8); + { + setState(1138); + match(For); + setState(1140); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Await) { + { + setState(1139); + match(Await); + } + } + + setState(1142); + match(OpenParen); + setState(1143); + varModifier(); + setState(1144); + variableDeclaration(); + setState(1145); + identifier(); + setState(1146); + if (!(this.p("of"))) throw new FailedPredicateException(this, "this.p(\"of\")"); + setState(1147); + expressionSequence(); + setState(1150); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==As) { + { + setState(1148); + match(As); + setState(1149); + type_(); + } + } + + setState(1152); + match(CloseParen); + setState(1153); + statement(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class VarModifierContext extends ParserRuleContext { + public TerminalNode Var() { return getToken(TypeScriptParser.Var, 0); } + public TerminalNode Let() { return getToken(TypeScriptParser.Let, 0); } + public TerminalNode Const() { return getToken(TypeScriptParser.Const, 0); } + public VarModifierContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_varModifier; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVarModifier(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVarModifier(this); + } + } + + public final VarModifierContext varModifier() throws RecognitionException { + VarModifierContext _localctx = new VarModifierContext(_ctx, getState()); + enterRule(_localctx, 170, RULE_varModifier); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1157); + _la = _input.LA(1); + if ( !(((((_la - 77)) & ~0x3f) == 0 && ((1L << (_la - 77)) & 18253611009L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ContinueStatementContext extends ParserRuleContext { + public TerminalNode Continue() { return getToken(TypeScriptParser.Continue, 0); } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ContinueStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_continueStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterContinueStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitContinueStatement(this); + } + } + + public final ContinueStatementContext continueStatement() throws RecognitionException { + ContinueStatementContext _localctx = new ContinueStatementContext(_ctx, getState()); + enterRule(_localctx, 172, RULE_continueStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1159); + match(Continue); + setState(1162); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,137,_ctx) ) { + case 1: + { + setState(1160); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(1161); + identifier(); + } + break; + } + setState(1164); + eos(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class BreakStatementContext extends ParserRuleContext { + public TerminalNode Break() { return getToken(TypeScriptParser.Break, 0); } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public BreakStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_breakStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBreakStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBreakStatement(this); + } + } -- Gitee From 03521599122b508f7fd9606391606590d0b3600b Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:33:11 +0800 Subject: [PATCH 15/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1947 +++++++++++++++++ 1 file changed, 1947 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java index bde4210e..7d2f0fa4 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -7867,3 +7867,1950 @@ public class TypeScriptParser extends TypeScriptParserBase { if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBreakStatement(this); } } + + public final BreakStatementContext breakStatement() throws RecognitionException { + BreakStatementContext _localctx = new BreakStatementContext(_ctx, getState()); + enterRule(_localctx, 174, RULE_breakStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1166); + match(Break); + setState(1169); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,138,_ctx) ) { + case 1: + { + setState(1167); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(1168); + identifier(); + } + break; + } + setState(1171); + eos(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ReturnStatementContext extends ParserRuleContext { + public TerminalNode Return() { return getToken(TypeScriptParser.Return, 0); } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public ReturnStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_returnStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterReturnStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitReturnStatement(this); + } + } + + public final ReturnStatementContext returnStatement() throws RecognitionException { + ReturnStatementContext _localctx = new ReturnStatementContext(_ctx, getState()); + enterRule(_localctx, 176, RULE_returnStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1173); + match(Return); + setState(1176); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,139,_ctx) ) { + case 1: + { + setState(1174); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(1175); + expressionSequence(); + } + break; + } + setState(1178); + eos(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class YieldStatementContext extends ParserRuleContext { + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public TerminalNode Yield() { return getToken(TypeScriptParser.Yield, 0); } + public TerminalNode YieldStar() { return getToken(TypeScriptParser.YieldStar, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public YieldStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_yieldStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterYieldStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitYieldStatement(this); + } + } + + public final YieldStatementContext yieldStatement() throws RecognitionException { + YieldStatementContext _localctx = new YieldStatementContext(_ctx, getState()); + enterRule(_localctx, 178, RULE_yieldStatement); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1180); + _la = _input.LA(1); + if ( !(_la==Yield || _la==YieldStar) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(1183); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,140,_ctx) ) { + case 1: + { + setState(1181); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(1182); + expressionSequence(); + } + break; + } + setState(1185); + eos(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class WithStatementContext extends ParserRuleContext { + public TerminalNode With() { return getToken(TypeScriptParser.With, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public WithStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_withStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterWithStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitWithStatement(this); + } + } + + public final WithStatementContext withStatement() throws RecognitionException { + WithStatementContext _localctx = new WithStatementContext(_ctx, getState()); + enterRule(_localctx, 180, RULE_withStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1187); + match(With); + setState(1188); + match(OpenParen); + setState(1189); + expressionSequence(); + setState(1190); + match(CloseParen); + setState(1191); + statement(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class SwitchStatementContext extends ParserRuleContext { + public TerminalNode Switch() { return getToken(TypeScriptParser.Switch, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public CaseBlockContext caseBlock() { + return getRuleContext(CaseBlockContext.class,0); + } + public SwitchStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_switchStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSwitchStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSwitchStatement(this); + } + } + + public final SwitchStatementContext switchStatement() throws RecognitionException { + SwitchStatementContext _localctx = new SwitchStatementContext(_ctx, getState()); + enterRule(_localctx, 182, RULE_switchStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1193); + match(Switch); + setState(1194); + match(OpenParen); + setState(1195); + expressionSequence(); + setState(1196); + match(CloseParen); + setState(1197); + caseBlock(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class CaseBlockContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public List caseClauses() { + return getRuleContexts(CaseClausesContext.class); + } + public CaseClausesContext caseClauses(int i) { + return getRuleContext(CaseClausesContext.class,i); + } + public DefaultClauseContext defaultClause() { + return getRuleContext(DefaultClauseContext.class,0); + } + public CaseBlockContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_caseBlock; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCaseBlock(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCaseBlock(this); + } + } + + public final CaseBlockContext caseBlock() throws RecognitionException { + CaseBlockContext _localctx = new CaseBlockContext(_ctx, getState()); + enterRule(_localctx, 184, RULE_caseBlock); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1199); + match(OpenBrace); + setState(1201); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Case) { + { + setState(1200); + caseClauses(); + } + } + + setState(1207); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Default) { + { + setState(1203); + defaultClause(); + setState(1205); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Case) { + { + setState(1204); + caseClauses(); + } + } + + } + } + + setState(1209); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class CaseClausesContext extends ParserRuleContext { + public List caseClause() { + return getRuleContexts(CaseClauseContext.class); + } + public CaseClauseContext caseClause(int i) { + return getRuleContext(CaseClauseContext.class,i); + } + public CaseClausesContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_caseClauses; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCaseClauses(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCaseClauses(this); + } + } + + public final CaseClausesContext caseClauses() throws RecognitionException { + CaseClausesContext _localctx = new CaseClausesContext(_ctx, getState()); + enterRule(_localctx, 186, RULE_caseClauses); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1212); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(1211); + caseClause(); + } + } + setState(1214); + _errHandler.sync(this); + _la = _input.LA(1); + } while ( _la==Case ); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class CaseClauseContext extends ParserRuleContext { + public TerminalNode Case() { return getToken(TypeScriptParser.Case, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public StatementListContext statementList() { + return getRuleContext(StatementListContext.class,0); + } + public CaseClauseContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_caseClause; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCaseClause(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCaseClause(this); + } + } + + public final CaseClauseContext caseClause() throws RecognitionException { + CaseClauseContext _localctx = new CaseClauseContext(_ctx, getState()); + enterRule(_localctx, 188, RULE_caseClause); + try { + enterOuterAlt(_localctx, 1); + { + setState(1216); + match(Case); + setState(1217); + expressionSequence(); + setState(1218); + match(Colon); + setState(1220); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,145,_ctx) ) { + case 1: + { + setState(1219); + statementList(); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class DefaultClauseContext extends ParserRuleContext { + public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public StatementListContext statementList() { + return getRuleContext(StatementListContext.class,0); + } + public DefaultClauseContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_defaultClause; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDefaultClause(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDefaultClause(this); + } + } + + public final DefaultClauseContext defaultClause() throws RecognitionException { + DefaultClauseContext _localctx = new DefaultClauseContext(_ctx, getState()); + enterRule(_localctx, 190, RULE_defaultClause); + try { + enterOuterAlt(_localctx, 1); + { + setState(1222); + match(Default); + setState(1223); + match(Colon); + setState(1225); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,146,_ctx) ) { + case 1: + { + setState(1224); + statementList(); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class LabelledStatementContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public LabelledStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_labelledStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLabelledStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLabelledStatement(this); + } + } + + public final LabelledStatementContext labelledStatement() throws RecognitionException { + LabelledStatementContext _localctx = new LabelledStatementContext(_ctx, getState()); + enterRule(_localctx, 192, RULE_labelledStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1227); + identifier(); + setState(1228); + match(Colon); + setState(1229); + statement(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ThrowStatementContext extends ParserRuleContext { + public TerminalNode Throw() { return getToken(TypeScriptParser.Throw, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public ThrowStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_throwStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterThrowStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitThrowStatement(this); + } + } + + public final ThrowStatementContext throwStatement() throws RecognitionException { + ThrowStatementContext _localctx = new ThrowStatementContext(_ctx, getState()); + enterRule(_localctx, 194, RULE_throwStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1231); + match(Throw); + setState(1232); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(1233); + expressionSequence(); + setState(1234); + eos(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TryStatementContext extends ParserRuleContext { + public TerminalNode Try() { return getToken(TypeScriptParser.Try, 0); } + public BlockContext block() { + return getRuleContext(BlockContext.class,0); + } + public CatchProductionContext catchProduction() { + return getRuleContext(CatchProductionContext.class,0); + } + public FinallyProductionContext finallyProduction() { + return getRuleContext(FinallyProductionContext.class,0); + } + public TryStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_tryStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTryStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTryStatement(this); + } + } + + public final TryStatementContext tryStatement() throws RecognitionException { + TryStatementContext _localctx = new TryStatementContext(_ctx, getState()); + enterRule(_localctx, 196, RULE_tryStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1236); + match(Try); + setState(1237); + block(); + setState(1243); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Catch: + { + setState(1238); + catchProduction(); + setState(1240); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,147,_ctx) ) { + case 1: + { + setState(1239); + finallyProduction(); + } + break; + } + } + break; + case Finally: + { + setState(1242); + finallyProduction(); + } + break; + default: + throw new NoViableAltException(this); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class CatchProductionContext extends ParserRuleContext { + public TerminalNode Catch() { return getToken(TypeScriptParser.Catch, 0); } + public BlockContext block() { + return getRuleContext(BlockContext.class,0); + } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public CatchProductionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_catchProduction; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCatchProduction(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCatchProduction(this); + } + } + + public final CatchProductionContext catchProduction() throws RecognitionException { + CatchProductionContext _localctx = new CatchProductionContext(_ctx, getState()); + enterRule(_localctx, 198, RULE_catchProduction); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1245); + match(Catch); + setState(1253); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==OpenParen) { + { + setState(1246); + match(OpenParen); + setState(1247); + identifier(); + setState(1249); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(1248); + typeAnnotation(); + } + } + + setState(1251); + match(CloseParen); + } + } + + setState(1255); + block(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class FinallyProductionContext extends ParserRuleContext { + public TerminalNode Finally() { return getToken(TypeScriptParser.Finally, 0); } + public BlockContext block() { + return getRuleContext(BlockContext.class,0); + } + public FinallyProductionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_finallyProduction; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFinallyProduction(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFinallyProduction(this); + } + } + + public final FinallyProductionContext finallyProduction() throws RecognitionException { + FinallyProductionContext _localctx = new FinallyProductionContext(_ctx, getState()); + enterRule(_localctx, 200, RULE_finallyProduction); + try { + enterOuterAlt(_localctx, 1); + { + setState(1257); + match(Finally); + setState(1258); + block(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class DebuggerStatementContext extends ParserRuleContext { + public TerminalNode Debugger() { return getToken(TypeScriptParser.Debugger, 0); } + public EosContext eos() { + return getRuleContext(EosContext.class,0); + } + public DebuggerStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_debuggerStatement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDebuggerStatement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDebuggerStatement(this); + } + } + + public final DebuggerStatementContext debuggerStatement() throws RecognitionException { + DebuggerStatementContext _localctx = new DebuggerStatementContext(_ctx, getState()); + enterRule(_localctx, 202, RULE_debuggerStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(1260); + match(Debugger); + setState(1261); + eos(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class FunctionDeclarationContext extends ParserRuleContext { + public TerminalNode Function_() { return getToken(TypeScriptParser.Function_, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public CallSignatureContext callSignature() { + return getRuleContext(CallSignatureContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } + public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public FunctionDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_functionDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFunctionDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFunctionDeclaration(this); + } + } + + public final FunctionDeclarationContext functionDeclaration() throws RecognitionException { + FunctionDeclarationContext _localctx = new FunctionDeclarationContext(_ctx, getState()); + enterRule(_localctx, 204, RULE_functionDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1264); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Async) { + { + setState(1263); + match(Async); + } + } + + setState(1266); + match(Function_); + setState(1268); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Multiply) { + { + setState(1267); + match(Multiply); + } + } + + setState(1270); + identifier(); + setState(1271); + callSignature(); + setState(1277); + _errHandler.sync(this); + switch (_input.LA(1)) { + case OpenBrace: + { + { + setState(1272); + match(OpenBrace); + setState(1273); + functionBody(); + setState(1274); + match(CloseBrace); + } + } + break; + case SemiColon: + { + setState(1276); + match(SemiColon); + } + break; + default: + throw new NoViableAltException(this); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ClassDeclarationContext extends ParserRuleContext { + public TerminalNode Class() { return getToken(TypeScriptParser.Class, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ClassHeritageContext classHeritage() { + return getRuleContext(ClassHeritageContext.class,0); + } + public ClassTailContext classTail() { + return getRuleContext(ClassTailContext.class,0); + } + public DecoratorListContext decoratorList() { + return getRuleContext(DecoratorListContext.class,0); + } + public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } + public TerminalNode Abstract() { return getToken(TypeScriptParser.Abstract, 0); } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } + public ClassDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_classDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassDeclaration(this); + } + } + + public final ClassDeclarationContext classDeclaration() throws RecognitionException { + ClassDeclarationContext _localctx = new ClassDeclarationContext(_ctx, getState()); + enterRule(_localctx, 206, RULE_classDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1280); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==At) { + { + setState(1279); + decoratorList(); + } + } + + setState(1286); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Export) { + { + setState(1282); + match(Export); + setState(1284); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Default) { + { + setState(1283); + match(Default); + } + } + + } + } + + setState(1289); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Abstract) { + { + setState(1288); + match(Abstract); + } + } + + setState(1291); + match(Class); + setState(1292); + identifier(); + setState(1294); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(1293); + typeParameters(); + } + } + + setState(1296); + classHeritage(); + setState(1297); + classTail(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ClassHeritageContext extends ParserRuleContext { + public ClassExtendsClauseContext classExtendsClause() { + return getRuleContext(ClassExtendsClauseContext.class,0); + } + public ImplementsClauseContext implementsClause() { + return getRuleContext(ImplementsClauseContext.class,0); + } + public ClassHeritageContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_classHeritage; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassHeritage(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassHeritage(this); + } + } + + public final ClassHeritageContext classHeritage() throws RecognitionException { + ClassHeritageContext _localctx = new ClassHeritageContext(_ctx, getState()); + enterRule(_localctx, 208, RULE_classHeritage); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1300); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Extends) { + { + setState(1299); + classExtendsClause(); + } + } + + setState(1303); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Implements) { + { + setState(1302); + implementsClause(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ClassTailContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public List classElement() { + return getRuleContexts(ClassElementContext.class); + } + public ClassElementContext classElement(int i) { + return getRuleContext(ClassElementContext.class,i); + } + public ClassTailContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_classTail; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassTail(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassTail(this); + } + } + + public final ClassTailContext classTail() throws RecognitionException { + ClassTailContext _localctx = new ClassTailContext(_ctx, getState()); + enterRule(_localctx, 210, RULE_classTail); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1305); + match(OpenBrace); + setState(1309); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,161,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1306); + classElement(); + } + } + } + setState(1311); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,161,_ctx); + } + setState(1312); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ClassExtendsClauseContext extends ParserRuleContext { + public TerminalNode Extends() { return getToken(TypeScriptParser.Extends, 0); } + public TypeReferenceContext typeReference() { + return getRuleContext(TypeReferenceContext.class,0); + } + public ClassExtendsClauseContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_classExtendsClause; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassExtendsClause(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassExtendsClause(this); + } + } + + public final ClassExtendsClauseContext classExtendsClause() throws RecognitionException { + ClassExtendsClauseContext _localctx = new ClassExtendsClauseContext(_ctx, getState()); + enterRule(_localctx, 212, RULE_classExtendsClause); + try { + enterOuterAlt(_localctx, 1); + { + setState(1314); + match(Extends); + setState(1315); + typeReference(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ImplementsClauseContext extends ParserRuleContext { + public TerminalNode Implements() { return getToken(TypeScriptParser.Implements, 0); } + public ClassOrInterfaceTypeListContext classOrInterfaceTypeList() { + return getRuleContext(ClassOrInterfaceTypeListContext.class,0); + } + public ImplementsClauseContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_implementsClause; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImplementsClause(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImplementsClause(this); + } + } + + public final ImplementsClauseContext implementsClause() throws RecognitionException { + ImplementsClauseContext _localctx = new ImplementsClauseContext(_ctx, getState()); + enterRule(_localctx, 214, RULE_implementsClause); + try { + enterOuterAlt(_localctx, 1); + { + setState(1317); + match(Implements); + setState(1318); + classOrInterfaceTypeList(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ClassElementContext extends ParserRuleContext { + public ConstructorDeclarationContext constructorDeclaration() { + return getRuleContext(ConstructorDeclarationContext.class,0); + } + public PropertyMemberDeclarationContext propertyMemberDeclaration() { + return getRuleContext(PropertyMemberDeclarationContext.class,0); + } + public DecoratorListContext decoratorList() { + return getRuleContext(DecoratorListContext.class,0); + } + public IndexMemberDeclarationContext indexMemberDeclaration() { + return getRuleContext(IndexMemberDeclarationContext.class,0); + } + public StatementContext statement() { + return getRuleContext(StatementContext.class,0); + } + public ClassElementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_classElement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassElement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassElement(this); + } + } + + public final ClassElementContext classElement() throws RecognitionException { + ClassElementContext _localctx = new ClassElementContext(_ctx, getState()); + enterRule(_localctx, 216, RULE_classElement); + try { + setState(1327); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,163,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1320); + constructorDeclaration(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1322); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,162,_ctx) ) { + case 1: + { + setState(1321); + decoratorList(); + } + break; + } + setState(1324); + propertyMemberDeclaration(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(1325); + indexMemberDeclaration(); + } + break; + case 4: + enterOuterAlt(_localctx, 4); + { + setState(1326); + statement(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class PropertyMemberDeclarationContext extends ParserRuleContext { + public PropertyMemberDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_propertyMemberDeclaration; } + + public PropertyMemberDeclarationContext() { } + public void copyFrom(PropertyMemberDeclarationContext ctx) { + super.copyFrom(ctx); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PropertyDeclarationExpressionContext extends PropertyMemberDeclarationContext { + public PropertyMemberBaseContext propertyMemberBase() { + return getRuleContext(PropertyMemberBaseContext.class,0); + } + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public InitializerContext initializer() { + return getRuleContext(InitializerContext.class,0); + } + public PropertyDeclarationExpressionContext(PropertyMemberDeclarationContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyDeclarationExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyDeclarationExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class MethodDeclarationExpressionContext extends PropertyMemberDeclarationContext { + public PropertyMemberBaseContext propertyMemberBase() { + return getRuleContext(PropertyMemberBaseContext.class,0); + } + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public CallSignatureContext callSignature() { + return getRuleContext(CallSignatureContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public MethodDeclarationExpressionContext(PropertyMemberDeclarationContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMethodDeclarationExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMethodDeclarationExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class GetterSetterDeclarationExpressionContext extends PropertyMemberDeclarationContext { + public PropertyMemberBaseContext propertyMemberBase() { + return getRuleContext(PropertyMemberBaseContext.class,0); + } + public GetAccessorContext getAccessor() { + return getRuleContext(GetAccessorContext.class,0); + } + public SetAccessorContext setAccessor() { + return getRuleContext(SetAccessorContext.class,0); + } + public GetterSetterDeclarationExpressionContext(PropertyMemberDeclarationContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGetterSetterDeclarationExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGetterSetterDeclarationExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class AbstractMemberDeclarationContext extends PropertyMemberDeclarationContext { + public AbstractDeclarationContext abstractDeclaration() { + return getRuleContext(AbstractDeclarationContext.class,0); + } + public AbstractMemberDeclarationContext(PropertyMemberDeclarationContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAbstractMemberDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAbstractMemberDeclaration(this); + } + } + + public final PropertyMemberDeclarationContext propertyMemberDeclaration() throws RecognitionException { + PropertyMemberDeclarationContext _localctx = new PropertyMemberDeclarationContext(_ctx, getState()); + enterRule(_localctx, 218, RULE_propertyMemberDeclaration); + int _la; + try { + setState(1358); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,169,_ctx) ) { + case 1: + _localctx = new PropertyDeclarationExpressionContext(_localctx); + enterOuterAlt(_localctx, 1); + { + setState(1329); + propertyMemberBase(); + setState(1330); + propertyName(); + setState(1332); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==QuestionMark) { + { + setState(1331); + match(QuestionMark); + } + } + + setState(1335); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(1334); + typeAnnotation(); + } + } + + setState(1338); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Assign) { + { + setState(1337); + initializer(); + } + } + + setState(1340); + match(SemiColon); + } + break; + case 2: + _localctx = new MethodDeclarationExpressionContext(_localctx); + enterOuterAlt(_localctx, 2); + { + setState(1342); + propertyMemberBase(); + setState(1343); + propertyName(); + setState(1344); + callSignature(); + setState(1350); + _errHandler.sync(this); + switch (_input.LA(1)) { + case OpenBrace: + { + { + setState(1345); + match(OpenBrace); + setState(1346); + functionBody(); + setState(1347); + match(CloseBrace); + } + } + break; + case SemiColon: + { + setState(1349); + match(SemiColon); + } + break; + default: + throw new NoViableAltException(this); + } + } + break; + case 3: + _localctx = new GetterSetterDeclarationExpressionContext(_localctx); + enterOuterAlt(_localctx, 3); + { + setState(1352); + propertyMemberBase(); + setState(1355); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,168,_ctx) ) { + case 1: + { + setState(1353); + getAccessor(); + } + break; + case 2: + { + setState(1354); + setAccessor(); + } + break; + } + } + break; + case 4: + _localctx = new AbstractMemberDeclarationContext(_localctx); + enterOuterAlt(_localctx, 4); + { + setState(1357); + abstractDeclaration(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class PropertyMemberBaseContext extends ParserRuleContext { + public AccessibilityModifierContext accessibilityModifier() { + return getRuleContext(AccessibilityModifierContext.class,0); + } + public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } + public TerminalNode Static() { return getToken(TypeScriptParser.Static, 0); } + public TerminalNode ReadOnly() { return getToken(TypeScriptParser.ReadOnly, 0); } + public PropertyMemberBaseContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_propertyMemberBase; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyMemberBase(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyMemberBase(this); + } + } + + public final PropertyMemberBaseContext propertyMemberBase() throws RecognitionException { + PropertyMemberBaseContext _localctx = new PropertyMemberBaseContext(_ctx, getState()); + enterRule(_localctx, 220, RULE_propertyMemberBase); + try { + enterOuterAlt(_localctx, 1); + { + setState(1361); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,170,_ctx) ) { + case 1: + { + setState(1360); + accessibilityModifier(); + } + break; + } + setState(1364); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,171,_ctx) ) { + case 1: + { + setState(1363); + match(Async); + } + break; + } + setState(1367); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,172,_ctx) ) { + case 1: + { + setState(1366); + match(Static); + } + break; + } + setState(1370); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,173,_ctx) ) { + case 1: + { + setState(1369); + match(ReadOnly); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IndexMemberDeclarationContext extends ParserRuleContext { + public IndexSignatureContext indexSignature() { + return getRuleContext(IndexSignatureContext.class,0); + } + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public IndexMemberDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_indexMemberDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIndexMemberDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIndexMemberDeclaration(this); + } + } + + public final IndexMemberDeclarationContext indexMemberDeclaration() throws RecognitionException { + IndexMemberDeclarationContext _localctx = new IndexMemberDeclarationContext(_ctx, getState()); + enterRule(_localctx, 222, RULE_indexMemberDeclaration); + try { + enterOuterAlt(_localctx, 1); + { + setState(1372); + indexSignature(); + setState(1373); + match(SemiColon); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class GeneratorMethodContext extends ParserRuleContext { + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } + public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class,0); + } + public GeneratorMethodContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_generatorMethod; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorMethod(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorMethod(this); + } + } + + public final GeneratorMethodContext generatorMethod() throws RecognitionException { + GeneratorMethodContext _localctx = new GeneratorMethodContext(_ctx, getState()); + enterRule(_localctx, 224, RULE_generatorMethod); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1377); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,174,_ctx) ) { + case 1: + { + setState(1375); + match(Async); + setState(1376); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + } + break; + } + setState(1380); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Multiply) { + { + setState(1379); + match(Multiply); + } + } + + setState(1382); + propertyName(); + setState(1383); + match(OpenParen); + setState(1385); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(1384); + formalParameterList(); + } + } + + setState(1387); + match(CloseParen); + setState(1388); + match(OpenBrace); + setState(1389); + functionBody(); + setState(1390); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class GeneratorFunctionDeclarationContext extends ParserRuleContext { + public TerminalNode Function_() { return getToken(TypeScriptParser.Function_, 0); } + public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class,0); + } + public GeneratorFunctionDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_generatorFunctionDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorFunctionDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorFunctionDeclaration(this); + } + } + + public final GeneratorFunctionDeclarationContext generatorFunctionDeclaration() throws RecognitionException { + GeneratorFunctionDeclarationContext _localctx = new GeneratorFunctionDeclarationContext(_ctx, getState()); + enterRule(_localctx, 226, RULE_generatorFunctionDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1393); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Async) { + { + setState(1392); + match(Async); + } + } + + setState(1395); + match(Function_); + setState(1396); + match(Multiply); + setState(1398); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 96)) & ~0x3f) == 0 && ((1L << (_la - 96)) & 5016517607467L) != 0)) { + { + setState(1397); + identifier(); + } + } + + setState(1400); + match(OpenParen); + setState(1402); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(1401); + formalParameterList(); + } + } + + setState(1404); + match(CloseParen); + setState(1405); + match(OpenBrace); + setState(1406); + functionBody(); + setState(1407); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class GeneratorBlockContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public List generatorDefinition() { + return getRuleContexts(GeneratorDefinitionContext.class); + } + public GeneratorDefinitionContext generatorDefinition(int i) { + return getRuleContext(GeneratorDefinitionContext.class,i); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public GeneratorBlockContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_generatorBlock; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorBlock(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorBlock(this); + } + } -- Gitee From d7c6b4a063da07c9cdb24cf052771eef0ed283c5 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:33:41 +0800 Subject: [PATCH 16/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1964 +++++++++++++++++ 1 file changed, 1964 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java index 7d2f0fa4..866c61bf 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -9814,3 +9814,1967 @@ public class TypeScriptParser extends TypeScriptParserBase { if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorBlock(this); } } + + public final GeneratorBlockContext generatorBlock() throws RecognitionException { + GeneratorBlockContext _localctx = new GeneratorBlockContext(_ctx, getState()); + enterRule(_localctx, 228, RULE_generatorBlock); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1409); + match(OpenBrace); + setState(1410); + generatorDefinition(); + setState(1415); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,180,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1411); + match(Comma); + setState(1412); + generatorDefinition(); + } + } + } + setState(1417); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,180,_ctx); + } + setState(1419); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(1418); + match(Comma); + } + } + + setState(1421); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class GeneratorDefinitionContext extends ParserRuleContext { + public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } + public IteratorDefinitionContext iteratorDefinition() { + return getRuleContext(IteratorDefinitionContext.class,0); + } + public GeneratorDefinitionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_generatorDefinition; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorDefinition(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorDefinition(this); + } + } + + public final GeneratorDefinitionContext generatorDefinition() throws RecognitionException { + GeneratorDefinitionContext _localctx = new GeneratorDefinitionContext(_ctx, getState()); + enterRule(_localctx, 230, RULE_generatorDefinition); + try { + enterOuterAlt(_localctx, 1); + { + setState(1423); + match(Multiply); + setState(1424); + iteratorDefinition(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IteratorBlockContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public List iteratorDefinition() { + return getRuleContexts(IteratorDefinitionContext.class); + } + public IteratorDefinitionContext iteratorDefinition(int i) { + return getRuleContext(IteratorDefinitionContext.class,i); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public IteratorBlockContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_iteratorBlock; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIteratorBlock(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIteratorBlock(this); + } + } + + public final IteratorBlockContext iteratorBlock() throws RecognitionException { + IteratorBlockContext _localctx = new IteratorBlockContext(_ctx, getState()); + enterRule(_localctx, 232, RULE_iteratorBlock); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1426); + match(OpenBrace); + setState(1427); + iteratorDefinition(); + setState(1432); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,182,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1428); + match(Comma); + setState(1429); + iteratorDefinition(); + } + } + } + setState(1434); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,182,_ctx); + } + setState(1436); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(1435); + match(Comma); + } + } + + setState(1438); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IteratorDefinitionContext extends ParserRuleContext { + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class,0); + } + public IteratorDefinitionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_iteratorDefinition; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIteratorDefinition(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIteratorDefinition(this); + } + } + + public final IteratorDefinitionContext iteratorDefinition() throws RecognitionException { + IteratorDefinitionContext _localctx = new IteratorDefinitionContext(_ctx, getState()); + enterRule(_localctx, 234, RULE_iteratorDefinition); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1440); + match(OpenBracket); + setState(1441); + singleExpression(0); + setState(1442); + match(CloseBracket); + setState(1443); + match(OpenParen); + setState(1445); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(1444); + formalParameterList(); + } + } + + setState(1447); + match(CloseParen); + setState(1448); + match(OpenBrace); + setState(1449); + functionBody(); + setState(1450); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ClassElementNameContext extends ParserRuleContext { + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public PrivateIdentifierContext privateIdentifier() { + return getRuleContext(PrivateIdentifierContext.class,0); + } + public ClassElementNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_classElementName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassElementName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassElementName(this); + } + } + + public final ClassElementNameContext classElementName() throws RecognitionException { + ClassElementNameContext _localctx = new ClassElementNameContext(_ctx, getState()); + enterRule(_localctx, 236, RULE_classElementName); + try { + setState(1454); + _errHandler.sync(this); + switch (_input.LA(1)) { + case OpenBracket: + case NullLiteral: + case BooleanLiteral: + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + case StringLiteral: + enterOuterAlt(_localctx, 1); + { + setState(1452); + propertyName(); + } + break; + case Hashtag: + enterOuterAlt(_localctx, 2); + { + setState(1453); + privateIdentifier(); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class PrivateIdentifierContext extends ParserRuleContext { + public TerminalNode Hashtag() { return getToken(TypeScriptParser.Hashtag, 0); } + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class,0); + } + public PrivateIdentifierContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_privateIdentifier; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPrivateIdentifier(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPrivateIdentifier(this); + } + } + + public final PrivateIdentifierContext privateIdentifier() throws RecognitionException { + PrivateIdentifierContext _localctx = new PrivateIdentifierContext(_ctx, getState()); + enterRule(_localctx, 238, RULE_privateIdentifier); + try { + enterOuterAlt(_localctx, 1); + { + setState(1456); + match(Hashtag); + setState(1457); + identifierName(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class FormalParameterListContext extends ParserRuleContext { + public List formalParameterArg() { + return getRuleContexts(FormalParameterArgContext.class); + } + public FormalParameterArgContext formalParameterArg(int i) { + return getRuleContext(FormalParameterArgContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public LastFormalParameterArgContext lastFormalParameterArg() { + return getRuleContext(LastFormalParameterArgContext.class,0); + } + public ArrayLiteralContext arrayLiteral() { + return getRuleContext(ArrayLiteralContext.class,0); + } + public ObjectLiteralContext objectLiteral() { + return getRuleContext(ObjectLiteralContext.class,0); + } + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class,0); + } + public FormalParameterListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_formalParameterList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFormalParameterList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFormalParameterList(this); + } + } + + public final FormalParameterListContext formalParameterList() throws RecognitionException { + FormalParameterListContext _localctx = new FormalParameterListContext(_ctx, getState()); + enterRule(_localctx, 240, RULE_formalParameterList); + int _la; + try { + int _alt; + setState(1481); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,190,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1459); + formalParameterArg(); + setState(1464); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,186,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1460); + match(Comma); + setState(1461); + formalParameterArg(); + } + } + } + setState(1466); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,186,_ctx); + } + setState(1469); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,187,_ctx) ) { + case 1: + { + setState(1467); + match(Comma); + setState(1468); + lastFormalParameterArg(); + } + break; + } + setState(1472); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(1471); + match(Comma); + } + } + + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1474); + lastFormalParameterArg(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(1475); + arrayLiteral(); + } + break; + case 4: + enterOuterAlt(_localctx, 4); + { + setState(1476); + objectLiteral(); + setState(1479); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(1477); + match(Colon); + setState(1478); + formalParameterList(); + } + } + + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class FormalParameterArgContext extends ParserRuleContext { + public AssignableContext assignable() { + return getRuleContext(AssignableContext.class,0); + } + public DecoratorContext decorator() { + return getRuleContext(DecoratorContext.class,0); + } + public AccessibilityModifierContext accessibilityModifier() { + return getRuleContext(AccessibilityModifierContext.class,0); + } + public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public FormalParameterArgContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_formalParameterArg; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFormalParameterArg(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFormalParameterArg(this); + } + } + + public final FormalParameterArgContext formalParameterArg() throws RecognitionException { + FormalParameterArgContext _localctx = new FormalParameterArgContext(_ctx, getState()); + enterRule(_localctx, 242, RULE_formalParameterArg); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1484); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==At) { + { + setState(1483); + decorator(); + } + } + + setState(1487); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,192,_ctx) ) { + case 1: + { + setState(1486); + accessibilityModifier(); + } + break; + } + setState(1489); + assignable(); + setState(1491); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==QuestionMark) { + { + setState(1490); + match(QuestionMark); + } + } + + setState(1494); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(1493); + typeAnnotation(); + } + } + + setState(1498); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Assign) { + { + setState(1496); + match(Assign); + setState(1497); + singleExpression(0); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class LastFormalParameterArgContext extends ParserRuleContext { + public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public LastFormalParameterArgContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_lastFormalParameterArg; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLastFormalParameterArg(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLastFormalParameterArg(this); + } + } + + public final LastFormalParameterArgContext lastFormalParameterArg() throws RecognitionException { + LastFormalParameterArgContext _localctx = new LastFormalParameterArgContext(_ctx, getState()); + enterRule(_localctx, 244, RULE_lastFormalParameterArg); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1500); + match(Ellipsis); + setState(1501); + identifier(); + setState(1503); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(1502); + typeAnnotation(); + } + } + + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class FunctionBodyContext extends ParserRuleContext { + public SourceElementsContext sourceElements() { + return getRuleContext(SourceElementsContext.class,0); + } + public FunctionBodyContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_functionBody; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFunctionBody(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFunctionBody(this); + } + } + + public final FunctionBodyContext functionBody() throws RecognitionException { + FunctionBodyContext _localctx = new FunctionBodyContext(_ctx, getState()); + enterRule(_localctx, 246, RULE_functionBody); + try { + enterOuterAlt(_localctx, 1); + { + setState(1506); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,197,_ctx) ) { + case 1: + { + setState(1505); + sourceElements(); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class SourceElementsContext extends ParserRuleContext { + public List sourceElement() { + return getRuleContexts(SourceElementContext.class); + } + public SourceElementContext sourceElement(int i) { + return getRuleContext(SourceElementContext.class,i); + } + public SourceElementsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_sourceElements; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSourceElements(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSourceElements(this); + } + } + + public final SourceElementsContext sourceElements() throws RecognitionException { + SourceElementsContext _localctx = new SourceElementsContext(_ctx, getState()); + enterRule(_localctx, 248, RULE_sourceElements); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1509); + _errHandler.sync(this); + _alt = 1; + do { + switch (_alt) { + case 1: + { + { + setState(1508); + sourceElement(); + } + } + break; + default: + throw new NoViableAltException(this); + } + setState(1511); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,198,_ctx); + } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ArrayLiteralContext extends ParserRuleContext { + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public ElementListContext elementList() { + return getRuleContext(ElementListContext.class,0); + } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public ArrayLiteralContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_arrayLiteral; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayLiteral(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayLiteral(this); + } + } + + public final ArrayLiteralContext arrayLiteral() throws RecognitionException { + ArrayLiteralContext _localctx = new ArrayLiteralContext(_ctx, getState()); + enterRule(_localctx, 250, RULE_arrayLiteral); + try { + enterOuterAlt(_localctx, 1); + { + { + setState(1513); + match(OpenBracket); + setState(1514); + elementList(); + setState(1515); + match(CloseBracket); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ElementListContext extends ParserRuleContext { + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public List arrayElement() { + return getRuleContexts(ArrayElementContext.class); + } + public ArrayElementContext arrayElement(int i) { + return getRuleContext(ArrayElementContext.class,i); + } + public ElementListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_elementList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterElementList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitElementList(this); + } + } + + public final ElementListContext elementList() throws RecognitionException { + ElementListContext _localctx = new ElementListContext(_ctx, getState()); + enterRule(_localctx, 252, RULE_elementList); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1520); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,199,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1517); + match(Comma); + } + } + } + setState(1522); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,199,_ctx); + } + setState(1524); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975294632L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { + { + setState(1523); + arrayElement(); + } + } + + setState(1534); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,202,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1527); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(1526); + match(Comma); + } + } + setState(1529); + _errHandler.sync(this); + _la = _input.LA(1); + } while ( _la==Comma ); + setState(1531); + arrayElement(); + } + } + } + setState(1536); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,202,_ctx); + } + setState(1540); + _errHandler.sync(this); + _la = _input.LA(1); + while (_la==Comma) { + { + { + setState(1537); + match(Comma); + } + } + setState(1542); + _errHandler.sync(this); + _la = _input.LA(1); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ArrayElementContext extends ParserRuleContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } + public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } + public ArrayElementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_arrayElement; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayElement(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayElement(this); + } + } + + public final ArrayElementContext arrayElement() throws RecognitionException { + ArrayElementContext _localctx = new ArrayElementContext(_ctx, getState()); + enterRule(_localctx, 254, RULE_arrayElement); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1544); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Ellipsis) { + { + setState(1543); + match(Ellipsis); + } + } + + setState(1548); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,205,_ctx) ) { + case 1: + { + setState(1546); + singleExpression(0); + } + break; + case 2: + { + setState(1547); + identifier(); + } + break; + } + setState(1551); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,206,_ctx) ) { + case 1: + { + setState(1550); + match(Comma); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ObjectLiteralContext extends ParserRuleContext { + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public List propertyAssignment() { + return getRuleContexts(PropertyAssignmentContext.class); + } + public PropertyAssignmentContext propertyAssignment(int i) { + return getRuleContext(PropertyAssignmentContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public ObjectLiteralContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_objectLiteral; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterObjectLiteral(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitObjectLiteral(this); + } + } + + public final ObjectLiteralContext objectLiteral() throws RecognitionException { + ObjectLiteralContext _localctx = new ObjectLiteralContext(_ctx, getState()); + enterRule(_localctx, 256, RULE_objectLiteral); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1553); + match(OpenBrace); + setState(1565); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,209,_ctx) ) { + case 1: + { + setState(1554); + propertyAssignment(); + setState(1559); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,207,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1555); + match(Comma); + setState(1556); + propertyAssignment(); + } + } + } + setState(1561); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,207,_ctx); + } + setState(1563); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(1562); + match(Comma); + } + } + + } + break; + } + setState(1567); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class PropertyAssignmentContext extends ParserRuleContext { + public PropertyAssignmentContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_propertyAssignment; } + + public PropertyAssignmentContext() { } + public void copyFrom(PropertyAssignmentContext ctx) { + super.copyFrom(ctx); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PropertyExpressionAssignmentContext extends PropertyAssignmentContext { + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public PropertyExpressionAssignmentContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyExpressionAssignment(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyExpressionAssignment(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ComputedPropertyExpressionAssignmentContext extends PropertyAssignmentContext { + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public ComputedPropertyExpressionAssignmentContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterComputedPropertyExpressionAssignment(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitComputedPropertyExpressionAssignment(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class SpreadOperatorContext extends PropertyAssignmentContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } + public SpreadOperatorContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSpreadOperator(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSpreadOperator(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PropertyShorthandContext extends PropertyAssignmentContext { + public IdentifierOrKeyWordContext identifierOrKeyWord() { + return getRuleContext(IdentifierOrKeyWordContext.class,0); + } + public PropertyShorthandContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyShorthand(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyShorthand(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PropertySetterContext extends PropertyAssignmentContext { + public SetAccessorContext setAccessor() { + return getRuleContext(SetAccessorContext.class,0); + } + public PropertySetterContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertySetter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertySetter(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PropertyGetterContext extends PropertyAssignmentContext { + public GetAccessorContext getAccessor() { + return getRuleContext(GetAccessorContext.class,0); + } + public PropertyGetterContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyGetter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyGetter(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class RestParameterInObjectContext extends PropertyAssignmentContext { + public RestParameterContext restParameter() { + return getRuleContext(RestParameterContext.class,0); + } + public RestParameterInObjectContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRestParameterInObject(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRestParameterInObject(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class MethodPropertyContext extends PropertyAssignmentContext { + public GeneratorMethodContext generatorMethod() { + return getRuleContext(GeneratorMethodContext.class,0); + } + public MethodPropertyContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMethodProperty(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMethodProperty(this); + } + } + + public final PropertyAssignmentContext propertyAssignment() throws RecognitionException { + PropertyAssignmentContext _localctx = new PropertyAssignmentContext(_ctx, getState()); + enterRule(_localctx, 258, RULE_propertyAssignment); + int _la; + try { + setState(1588); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,211,_ctx) ) { + case 1: + _localctx = new PropertyExpressionAssignmentContext(_localctx); + enterOuterAlt(_localctx, 1); + { + setState(1569); + propertyName(); + setState(1570); + _la = _input.LA(1); + if ( !(_la==Assign || _la==Colon) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(1571); + singleExpression(0); + } + break; + case 2: + _localctx = new ComputedPropertyExpressionAssignmentContext(_localctx); + enterOuterAlt(_localctx, 2); + { + setState(1573); + match(OpenBracket); + setState(1574); + singleExpression(0); + setState(1575); + match(CloseBracket); + setState(1576); + match(Colon); + setState(1577); + singleExpression(0); + } + break; + case 3: + _localctx = new PropertyGetterContext(_localctx); + enterOuterAlt(_localctx, 3); + { + setState(1579); + getAccessor(); + } + break; + case 4: + _localctx = new PropertySetterContext(_localctx); + enterOuterAlt(_localctx, 4); + { + setState(1580); + setAccessor(); + } + break; + case 5: + _localctx = new MethodPropertyContext(_localctx); + enterOuterAlt(_localctx, 5); + { + setState(1581); + generatorMethod(); + } + break; + case 6: + _localctx = new PropertyShorthandContext(_localctx); + enterOuterAlt(_localctx, 6); + { + setState(1582); + identifierOrKeyWord(); + } + break; + case 7: + _localctx = new SpreadOperatorContext(_localctx); + enterOuterAlt(_localctx, 7); + { + setState(1584); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Ellipsis) { + { + setState(1583); + match(Ellipsis); + } + } + + setState(1586); + singleExpression(0); + } + break; + case 8: + _localctx = new RestParameterInObjectContext(_localctx); + enterOuterAlt(_localctx, 8); + { + setState(1587); + restParameter(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class GetAccessorContext extends ParserRuleContext { + public GetterContext getter() { + return getRuleContext(GetterContext.class,0); + } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public GetAccessorContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_getAccessor; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGetAccessor(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGetAccessor(this); + } + } + + public final GetAccessorContext getAccessor() throws RecognitionException { + GetAccessorContext _localctx = new GetAccessorContext(_ctx, getState()); + enterRule(_localctx, 260, RULE_getAccessor); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1590); + getter(); + setState(1591); + match(OpenParen); + setState(1592); + match(CloseParen); + setState(1594); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(1593); + typeAnnotation(); + } + } + + setState(1596); + match(OpenBrace); + setState(1597); + functionBody(); + setState(1598); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class SetAccessorContext extends ParserRuleContext { + public SetterContext setter() { + return getRuleContext(SetterContext.class,0); + } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class,0); + } + public SetAccessorContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_setAccessor; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSetAccessor(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSetAccessor(this); + } + } + + public final SetAccessorContext setAccessor() throws RecognitionException { + SetAccessorContext _localctx = new SetAccessorContext(_ctx, getState()); + enterRule(_localctx, 262, RULE_setAccessor); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1600); + setter(); + setState(1601); + match(OpenParen); + setState(1603); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(1602); + formalParameterList(); + } + } + + setState(1605); + match(CloseParen); + setState(1606); + match(OpenBrace); + setState(1607); + functionBody(); + setState(1608); + match(CloseBrace); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class PropertyNameContext extends ParserRuleContext { + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class,0); + } + public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } + public NumericLiteralContext numericLiteral() { + return getRuleContext(NumericLiteralContext.class,0); + } + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public PropertyNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_propertyName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyName(this); + } + } + + public final PropertyNameContext propertyName() throws RecognitionException { + PropertyNameContext _localctx = new PropertyNameContext(_ctx, getState()); + enterRule(_localctx, 264, RULE_propertyName); + try { + setState(1617); + _errHandler.sync(this); + switch (_input.LA(1)) { + case NullLiteral: + case BooleanLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + enterOuterAlt(_localctx, 1); + { + setState(1610); + identifierName(); + } + break; + case StringLiteral: + enterOuterAlt(_localctx, 2); + { + setState(1611); + match(StringLiteral); + } + break; + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + enterOuterAlt(_localctx, 3); + { + setState(1612); + numericLiteral(); + } + break; + case OpenBracket: + enterOuterAlt(_localctx, 4); + { + setState(1613); + match(OpenBracket); + setState(1614); + singleExpression(0); + setState(1615); + match(CloseBracket); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ArgumentsContext extends ParserRuleContext { + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public ArgumentListContext argumentList() { + return getRuleContext(ArgumentListContext.class,0); + } + public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } + public ArgumentsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_arguments; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArguments(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArguments(this); + } + } + + public final ArgumentsContext arguments() throws RecognitionException { + ArgumentsContext _localctx = new ArgumentsContext(_ctx, getState()); + enterRule(_localctx, 266, RULE_arguments); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1619); + match(OpenParen); + setState(1624); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975294632L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { + { + setState(1620); + argumentList(); + setState(1622); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Comma) { + { + setState(1621); + match(Comma); + } + } + + } + } + + setState(1626); + match(CloseParen); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ArgumentListContext extends ParserRuleContext { + public List argument() { + return getRuleContexts(ArgumentContext.class); + } + public ArgumentContext argument(int i) { + return getRuleContext(ArgumentContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public ArgumentListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_argumentList; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArgumentList(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArgumentList(this); + } + } + + public final ArgumentListContext argumentList() throws RecognitionException { + ArgumentListContext _localctx = new ArgumentListContext(_ctx, getState()); + enterRule(_localctx, 268, RULE_argumentList); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1628); + argument(); + setState(1633); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,217,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1629); + match(Comma); + setState(1630); + argument(); + } + } + } + setState(1635); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,217,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ArgumentContext extends ParserRuleContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } + public ArgumentContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_argument; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArgument(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArgument(this); + } + } + + public final ArgumentContext argument() throws RecognitionException { + ArgumentContext _localctx = new ArgumentContext(_ctx, getState()); + enterRule(_localctx, 270, RULE_argument); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1637); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Ellipsis) { + { + setState(1636); + match(Ellipsis); + } + } + + setState(1641); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,219,_ctx) ) { + case 1: + { + setState(1639); + singleExpression(0); + } + break; + case 2: + { + setState(1640); + identifier(); + } + break; + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ExpressionSequenceContext extends ParserRuleContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public List Comma() { return getTokens(TypeScriptParser.Comma); } + public TerminalNode Comma(int i) { + return getToken(TypeScriptParser.Comma, i); + } + public ExpressionSequenceContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_expressionSequence; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExpressionSequence(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExpressionSequence(this); + } + } -- Gitee From 88b767f5a568b94c438d68cebe86276fb6dcdb4f Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:34:11 +0800 Subject: [PATCH 17/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1983 +++++++++++++++++ 1 file changed, 1983 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java index 866c61bf..0732d84d 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -11778,3 +11778,1986 @@ public class TypeScriptParser extends TypeScriptParserBase { if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExpressionSequence(this); } } + + public final ExpressionSequenceContext expressionSequence() throws RecognitionException { + ExpressionSequenceContext _localctx = new ExpressionSequenceContext(_ctx, getState()); + enterRule(_localctx, 272, RULE_expressionSequence); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1643); + singleExpression(0); + setState(1648); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,220,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + { + { + setState(1644); + match(Comma); + setState(1645); + singleExpression(0); + } + } + } + setState(1650); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,220,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class SingleExpressionContext extends ParserRuleContext { + public SingleExpressionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_singleExpression; } + + public SingleExpressionContext() { } + public void copyFrom(SingleExpressionContext ctx) { + super.copyFrom(ctx); + } + } + @SuppressWarnings("CheckReturnValue") + public static class TemplateStringExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TemplateStringLiteralContext templateStringLiteral() { + return getRuleContext(TemplateStringLiteralContext.class,0); + } + public TemplateStringExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTemplateStringExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTemplateStringExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class GeneratorsExpressionContext extends SingleExpressionContext { + public GeneratorBlockContext generatorBlock() { + return getRuleContext(GeneratorBlockContext.class,0); + } + public GeneratorsExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorsExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorsExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PowerExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode Power() { return getToken(TypeScriptParser.Power, 0); } + public PowerExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPowerExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPowerExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class InExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode In() { return getToken(TypeScriptParser.In, 0); } + public InExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class GenericTypesContext extends SingleExpressionContext { + public TypeArgumentsContext typeArguments() { + return getRuleContext(TypeArgumentsContext.class,0); + } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public GenericTypesContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGenericTypes(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGenericTypes(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class OptionalChainExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode QuestionMarkDot() { return getToken(TypeScriptParser.QuestionMarkDot, 0); } + public OptionalChainExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterOptionalChainExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitOptionalChainExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ArgumentsExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public ArgumentsContext arguments() { + return getRuleContext(ArgumentsContext.class,0); + } + public ArgumentsExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArgumentsExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArgumentsExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ThisExpressionContext extends SingleExpressionContext { + public TerminalNode This() { return getToken(TypeScriptParser.This, 0); } + public ThisExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterThisExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitThisExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class TypeofExpressionContext extends SingleExpressionContext { + public TerminalNode Typeof() { return getToken(TypeScriptParser.Typeof, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TypeofExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeofExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeofExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class GeneratorsFunctionExpressionContext extends SingleExpressionContext { + public GeneratorFunctionDeclarationContext generatorFunctionDeclaration() { + return getRuleContext(GeneratorFunctionDeclarationContext.class,0); + } + public GeneratorsFunctionExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorsFunctionExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorsFunctionExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class EqualityExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode Equals_() { return getToken(TypeScriptParser.Equals_, 0); } + public TerminalNode NotEquals() { return getToken(TypeScriptParser.NotEquals, 0); } + public TerminalNode IdentityEquals() { return getToken(TypeScriptParser.IdentityEquals, 0); } + public TerminalNode IdentityNotEquals() { return getToken(TypeScriptParser.IdentityNotEquals, 0); } + public EqualityExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEqualityExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEqualityExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class BitXOrExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode BitXOr() { return getToken(TypeScriptParser.BitXOr, 0); } + public BitXOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitXOrExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitXOrExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class CastAsExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public AsExpressionContext asExpression() { + return getRuleContext(AsExpressionContext.class,0); + } + public CastAsExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCastAsExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCastAsExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class MultiplicativeExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } + public TerminalNode Divide() { return getToken(TypeScriptParser.Divide, 0); } + public TerminalNode Modulus() { return getToken(TypeScriptParser.Modulus, 0); } + public MultiplicativeExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMultiplicativeExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMultiplicativeExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class BitShiftExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode LeftShiftArithmetic() { return getToken(TypeScriptParser.LeftShiftArithmetic, 0); } + public List MoreThan() { return getTokens(TypeScriptParser.MoreThan); } + public TerminalNode MoreThan(int i) { + return getToken(TypeScriptParser.MoreThan, i); + } + public BitShiftExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitShiftExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitShiftExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class AdditiveExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode Plus() { return getToken(TypeScriptParser.Plus, 0); } + public TerminalNode Minus() { return getToken(TypeScriptParser.Minus, 0); } + public AdditiveExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAdditiveExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAdditiveExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class RelationalExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode LessThan() { return getToken(TypeScriptParser.LessThan, 0); } + public TerminalNode MoreThan() { return getToken(TypeScriptParser.MoreThan, 0); } + public TerminalNode LessThanEquals() { return getToken(TypeScriptParser.LessThanEquals, 0); } + public TerminalNode GreaterThanEquals() { return getToken(TypeScriptParser.GreaterThanEquals, 0); } + public RelationalExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRelationalExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRelationalExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class BitNotExpressionContext extends SingleExpressionContext { + public TerminalNode BitNot() { return getToken(TypeScriptParser.BitNot, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public BitNotExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitNotExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitNotExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class NewExpressionContext extends SingleExpressionContext { + public TerminalNode New() { return getToken(TypeScriptParser.New, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public ArgumentsContext arguments() { + return getRuleContext(ArgumentsContext.class,0); + } + public TypeArgumentsContext typeArguments() { + return getRuleContext(TypeArgumentsContext.class,0); + } + public NewExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNewExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNewExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class LiteralExpressionContext extends SingleExpressionContext { + public LiteralContext literal() { + return getRuleContext(LiteralContext.class,0); + } + public LiteralExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLiteralExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLiteralExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ArrayLiteralExpressionContext extends SingleExpressionContext { + public ArrayLiteralContext arrayLiteral() { + return getRuleContext(ArrayLiteralContext.class,0); + } + public ArrayLiteralExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayLiteralExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayLiteralExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class MemberDotExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode Dot() { return getToken(TypeScriptParser.Dot, 0); } + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class,0); + } + public TerminalNode Not() { return getToken(TypeScriptParser.Not, 0); } + public TerminalNode Hashtag() { return getToken(TypeScriptParser.Hashtag, 0); } + public TypeGenericContext typeGeneric() { + return getRuleContext(TypeGenericContext.class,0); + } + public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } + public MemberDotExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMemberDotExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMemberDotExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class MemberIndexExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public TerminalNode QuestionMarkDot() { return getToken(TypeScriptParser.QuestionMarkDot, 0); } + public MemberIndexExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMemberIndexExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMemberIndexExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class BitAndExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode BitAnd() { return getToken(TypeScriptParser.BitAnd, 0); } + public BitAndExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitAndExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitAndExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class BitOrExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode BitOr() { return getToken(TypeScriptParser.BitOr, 0); } + public BitOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitOrExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitOrExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class AssignmentOperatorExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public AssignmentOperatorContext assignmentOperator() { + return getRuleContext(AssignmentOperatorContext.class,0); + } + public AssignmentOperatorExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAssignmentOperatorExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAssignmentOperatorExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class VoidExpressionContext extends SingleExpressionContext { + public TerminalNode Void() { return getToken(TypeScriptParser.Void, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public VoidExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVoidExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVoidExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class TernaryExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } + public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } + public TernaryExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTernaryExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTernaryExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class LogicalAndExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode And() { return getToken(TypeScriptParser.And, 0); } + public LogicalAndExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLogicalAndExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLogicalAndExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PreIncrementExpressionContext extends SingleExpressionContext { + public TerminalNode PlusPlus() { return getToken(TypeScriptParser.PlusPlus, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public PreIncrementExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPreIncrementExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPreIncrementExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ObjectLiteralExpressionContext extends SingleExpressionContext { + public ObjectLiteralContext objectLiteral() { + return getRuleContext(ObjectLiteralContext.class,0); + } + public ObjectLiteralExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterObjectLiteralExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitObjectLiteralExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class LogicalOrExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode Or() { return getToken(TypeScriptParser.Or, 0); } + public LogicalOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLogicalOrExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLogicalOrExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class NonNullAssertionExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode Not() { return getToken(TypeScriptParser.Not, 0); } + public NonNullAssertionExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNonNullAssertionExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNonNullAssertionExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class NotExpressionContext extends SingleExpressionContext { + public TerminalNode Not() { return getToken(TypeScriptParser.Not, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public NotExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNotExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNotExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PreDecreaseExpressionContext extends SingleExpressionContext { + public TerminalNode MinusMinus() { return getToken(TypeScriptParser.MinusMinus, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public PreDecreaseExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPreDecreaseExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPreDecreaseExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class AwaitExpressionContext extends SingleExpressionContext { + public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public AwaitExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAwaitExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAwaitExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class FunctionExpressionContext extends SingleExpressionContext { + public AnonymousFunctionContext anonymousFunction() { + return getRuleContext(AnonymousFunctionContext.class,0); + } + public FunctionExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFunctionExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFunctionExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class UnaryMinusExpressionContext extends SingleExpressionContext { + public TerminalNode Minus() { return getToken(TypeScriptParser.Minus, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public UnaryMinusExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterUnaryMinusExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitUnaryMinusExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class AssignmentExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } + public AssignmentExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAssignmentExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAssignmentExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PostDecreaseExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode MinusMinus() { return getToken(TypeScriptParser.MinusMinus, 0); } + public PostDecreaseExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPostDecreaseExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPostDecreaseExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class InstanceofExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode Instanceof() { return getToken(TypeScriptParser.Instanceof, 0); } + public InstanceofExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInstanceofExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInstanceofExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class UnaryPlusExpressionContext extends SingleExpressionContext { + public TerminalNode Plus() { return getToken(TypeScriptParser.Plus, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public UnaryPlusExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterUnaryPlusExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitUnaryPlusExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class DeleteExpressionContext extends SingleExpressionContext { + public TerminalNode Delete() { return getToken(TypeScriptParser.Delete, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public DeleteExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDeleteExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDeleteExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class IteratorsExpressionContext extends SingleExpressionContext { + public IteratorBlockContext iteratorBlock() { + return getRuleContext(IteratorBlockContext.class,0); + } + public IteratorsExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIteratorsExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIteratorsExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class SuperExpressionContext extends SingleExpressionContext { + public TerminalNode Super() { return getToken(TypeScriptParser.Super, 0); } + public SuperExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSuperExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSuperExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ParenthesizedExpressionContext extends SingleExpressionContext { + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class,0); + } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public ParenthesizedExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterParenthesizedExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitParenthesizedExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class PostIncrementExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode PlusPlus() { return getToken(TypeScriptParser.PlusPlus, 0); } + public PostIncrementExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPostIncrementExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPostIncrementExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class YieldExpressionContext extends SingleExpressionContext { + public YieldStatementContext yieldStatement() { + return getRuleContext(YieldStatementContext.class,0); + } + public YieldExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterYieldExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitYieldExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class ClassExpressionContext extends SingleExpressionContext { + public TerminalNode Class() { return getToken(TypeScriptParser.Class, 0); } + public ClassHeritageContext classHeritage() { + return getRuleContext(ClassHeritageContext.class,0); + } + public ClassTailContext classTail() { + return getRuleContext(ClassTailContext.class,0); + } + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TypeParametersContext typeParameters() { + return getRuleContext(TypeParametersContext.class,0); + } + public ClassExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class IdentifierExpressionContext extends SingleExpressionContext { + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class,0); + } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public IdentifierExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifierExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifierExpression(this); + } + } + @SuppressWarnings("CheckReturnValue") + public static class CoalesceExpressionContext extends SingleExpressionContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class,i); + } + public TerminalNode NullCoalesce() { return getToken(TypeScriptParser.NullCoalesce, 0); } + public CoalesceExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCoalesceExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCoalesceExpression(this); + } + } + + public final SingleExpressionContext singleExpression() throws RecognitionException { + return singleExpression(0); + } + + private SingleExpressionContext singleExpression(int _p) throws RecognitionException { + ParserRuleContext _parentctx = _ctx; + int _parentState = getState(); + SingleExpressionContext _localctx = new SingleExpressionContext(_ctx, _parentState); + SingleExpressionContext _prevctx = _localctx; + int _startState = 274; + enterRecursionRule(_localctx, 274, RULE_singleExpression, _p); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(1716); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,227,_ctx) ) { + case 1: + { + _localctx = new FunctionExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + + setState(1652); + anonymousFunction(); + } + break; + case 2: + { + _localctx = new ClassExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1653); + match(Class); + setState(1655); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 96)) & ~0x3f) == 0 && ((1L << (_la - 96)) & 5016517607467L) != 0)) { + { + setState(1654); + identifier(); + } + } + + setState(1658); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(1657); + typeParameters(); + } + } + + setState(1660); + classHeritage(); + setState(1661); + classTail(); + } + break; + case 3: + { + _localctx = new NewExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1663); + match(New); + setState(1664); + singleExpression(0); + setState(1666); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==LessThan) { + { + setState(1665); + typeArguments(); + } + } + + setState(1668); + arguments(); + } + break; + case 4: + { + _localctx = new NewExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1670); + match(New); + setState(1671); + singleExpression(0); + setState(1673); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,224,_ctx) ) { + case 1: + { + setState(1672); + typeArguments(); + } + break; + } + } + break; + case 5: + { + _localctx = new DeleteExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1675); + match(Delete); + setState(1676); + singleExpression(42); + } + break; + case 6: + { + _localctx = new VoidExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1677); + match(Void); + setState(1678); + singleExpression(41); + } + break; + case 7: + { + _localctx = new TypeofExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1679); + match(Typeof); + setState(1680); + singleExpression(40); + } + break; + case 8: + { + _localctx = new PreIncrementExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1681); + match(PlusPlus); + setState(1682); + singleExpression(39); + } + break; + case 9: + { + _localctx = new PreDecreaseExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1683); + match(MinusMinus); + setState(1684); + singleExpression(38); + } + break; + case 10: + { + _localctx = new UnaryPlusExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1685); + match(Plus); + setState(1686); + singleExpression(37); + } + break; + case 11: + { + _localctx = new UnaryMinusExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1687); + match(Minus); + setState(1688); + singleExpression(36); + } + break; + case 12: + { + _localctx = new BitNotExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1689); + match(BitNot); + setState(1690); + singleExpression(35); + } + break; + case 13: + { + _localctx = new NotExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1691); + match(Not); + setState(1692); + singleExpression(34); + } + break; + case 14: + { + _localctx = new AwaitExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1693); + match(Await); + setState(1694); + singleExpression(33); + } + break; + case 15: + { + _localctx = new IteratorsExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1695); + iteratorBlock(); + } + break; + case 16: + { + _localctx = new GeneratorsExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1696); + generatorBlock(); + } + break; + case 17: + { + _localctx = new GeneratorsFunctionExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1697); + generatorFunctionDeclaration(); + } + break; + case 18: + { + _localctx = new YieldExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1698); + yieldStatement(); + } + break; + case 19: + { + _localctx = new ThisExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1699); + match(This); + } + break; + case 20: + { + _localctx = new IdentifierExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1700); + identifierName(); + setState(1702); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,225,_ctx) ) { + case 1: + { + setState(1701); + singleExpression(0); + } + break; + } + } + break; + case 21: + { + _localctx = new SuperExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1704); + match(Super); + } + break; + case 22: + { + _localctx = new LiteralExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1705); + literal(); + } + break; + case 23: + { + _localctx = new ArrayLiteralExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1706); + arrayLiteral(); + } + break; + case 24: + { + _localctx = new ObjectLiteralExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1707); + objectLiteral(); + } + break; + case 25: + { + _localctx = new ParenthesizedExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1708); + match(OpenParen); + setState(1709); + expressionSequence(); + setState(1710); + match(CloseParen); + } + break; + case 26: + { + _localctx = new GenericTypesContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(1712); + typeArguments(); + setState(1714); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,226,_ctx) ) { + case 1: + { + setState(1713); + expressionSequence(); + } + break; + } + } + break; + } + _ctx.stop = _input.LT(-1); + setState(1832); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,237,_ctx); + while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { + if ( _alt==1 ) { + if ( _parseListeners!=null ) triggerExitRuleEvent(); + _prevctx = _localctx; + { + setState(1830); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,236,_ctx) ) { + case 1: + { + _localctx = new OptionalChainExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1718); + if (!(precpred(_ctx, 50))) throw new FailedPredicateException(this, "precpred(_ctx, 50)"); + setState(1719); + match(QuestionMarkDot); + setState(1720); + singleExpression(51); + } + break; + case 2: + { + _localctx = new PowerExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1721); + if (!(precpred(_ctx, 32))) throw new FailedPredicateException(this, "precpred(_ctx, 32)"); + setState(1722); + match(Power); + setState(1723); + singleExpression(32); + } + break; + case 3: + { + _localctx = new MultiplicativeExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1724); + if (!(precpred(_ctx, 31))) throw new FailedPredicateException(this, "precpred(_ctx, 31)"); + setState(1725); + _la = _input.LA(1); + if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 234881024L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(1726); + singleExpression(32); + } + break; + case 4: + { + _localctx = new AdditiveExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1727); + if (!(precpred(_ctx, 30))) throw new FailedPredicateException(this, "precpred(_ctx, 30)"); + setState(1728); + _la = _input.LA(1); + if ( !(_la==Plus || _la==Minus) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(1729); + singleExpression(31); + } + break; + case 5: + { + _localctx = new CoalesceExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1730); + if (!(precpred(_ctx, 29))) throw new FailedPredicateException(this, "precpred(_ctx, 29)"); + setState(1731); + match(NullCoalesce); + setState(1732); + singleExpression(30); + } + break; + case 6: + { + _localctx = new BitShiftExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1733); + if (!(precpred(_ctx, 28))) throw new FailedPredicateException(this, "precpred(_ctx, 28)"); + setState(1740); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,228,_ctx) ) { + case 1: + { + setState(1734); + match(LeftShiftArithmetic); + } + break; + case 2: + { + setState(1735); + match(MoreThan); + setState(1736); + match(MoreThan); + } + break; + case 3: + { + setState(1737); + match(MoreThan); + setState(1738); + match(MoreThan); + setState(1739); + match(MoreThan); + } + break; + } + setState(1742); + singleExpression(29); + } + break; + case 7: + { + _localctx = new RelationalExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1743); + if (!(precpred(_ctx, 27))) throw new FailedPredicateException(this, "precpred(_ctx, 27)"); + setState(1744); + _la = _input.LA(1); + if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 64424509440L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(1745); + singleExpression(28); + } + break; + case 8: + { + _localctx = new InstanceofExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1746); + if (!(precpred(_ctx, 26))) throw new FailedPredicateException(this, "precpred(_ctx, 26)"); + setState(1747); + match(Instanceof); + setState(1748); + singleExpression(27); + } + break; + case 9: + { + _localctx = new InExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1749); + if (!(precpred(_ctx, 25))) throw new FailedPredicateException(this, "precpred(_ctx, 25)"); + setState(1750); + match(In); + setState(1751); + singleExpression(26); + } + break; + case 10: + { + _localctx = new EqualityExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1752); + if (!(precpred(_ctx, 24))) throw new FailedPredicateException(this, "precpred(_ctx, 24)"); + setState(1753); + _la = _input.LA(1); + if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 1030792151040L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(1754); + singleExpression(25); + } + break; + case 11: + { + _localctx = new BitAndExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1755); + if (!(precpred(_ctx, 23))) throw new FailedPredicateException(this, "precpred(_ctx, 23)"); + setState(1756); + match(BitAnd); + setState(1757); + singleExpression(24); + } + break; + case 12: + { + _localctx = new BitXOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1758); + if (!(precpred(_ctx, 22))) throw new FailedPredicateException(this, "precpred(_ctx, 22)"); + setState(1759); + match(BitXOr); + setState(1760); + singleExpression(23); + } + break; + case 13: + { + _localctx = new BitOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1761); + if (!(precpred(_ctx, 21))) throw new FailedPredicateException(this, "precpred(_ctx, 21)"); + setState(1762); + match(BitOr); + setState(1763); + singleExpression(22); + } + break; + case 14: + { + _localctx = new LogicalAndExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1764); + if (!(precpred(_ctx, 20))) throw new FailedPredicateException(this, "precpred(_ctx, 20)"); + setState(1765); + match(And); + setState(1766); + singleExpression(21); + } + break; + case 15: + { + _localctx = new LogicalOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1767); + if (!(precpred(_ctx, 19))) throw new FailedPredicateException(this, "precpred(_ctx, 19)"); + setState(1768); + match(Or); + setState(1769); + singleExpression(20); + } + break; + case 16: + { + _localctx = new TernaryExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1770); + if (!(precpred(_ctx, 18))) throw new FailedPredicateException(this, "precpred(_ctx, 18)"); + setState(1771); + match(QuestionMark); + setState(1772); + singleExpression(0); + setState(1773); + match(Colon); + setState(1774); + singleExpression(19); + } + break; + case 17: + { + _localctx = new AssignmentExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1776); + if (!(precpred(_ctx, 17))) throw new FailedPredicateException(this, "precpred(_ctx, 17)"); + setState(1777); + match(Assign); + setState(1778); + singleExpression(18); + } + break; + case 18: + { + _localctx = new AssignmentOperatorExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1779); + if (!(precpred(_ctx, 16))) throw new FailedPredicateException(this, "precpred(_ctx, 16)"); + setState(1780); + assignmentOperator(); + setState(1781); + singleExpression(17); + } + break; + case 19: + { + _localctx = new MemberIndexExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1783); + if (!(precpred(_ctx, 51))) throw new FailedPredicateException(this, "precpred(_ctx, 51)"); + setState(1785); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==QuestionMarkDot) { + { + setState(1784); + match(QuestionMarkDot); + } + } + + setState(1787); + match(OpenBracket); + setState(1788); + expressionSequence(); + setState(1789); + match(CloseBracket); + } + break; + case 20: + { + _localctx = new MemberDotExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1791); + if (!(precpred(_ctx, 49))) throw new FailedPredicateException(this, "precpred(_ctx, 49)"); + setState(1793); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Not) { + { + setState(1792); + match(Not); + } + } + + setState(1795); + match(Dot); + setState(1797); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Hashtag) { + { + setState(1796); + match(Hashtag); + } + } + + setState(1799); + identifierName(); + setState(1801); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,232,_ctx) ) { + case 1: + { + setState(1800); + typeGeneric(); + } + break; + } + } + break; + case 21: + { + _localctx = new MemberDotExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1803); + if (!(precpred(_ctx, 48))) throw new FailedPredicateException(this, "precpred(_ctx, 48)"); + setState(1805); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==QuestionMark) { + { + setState(1804); + match(QuestionMark); + } + } + + setState(1807); + match(Dot); + setState(1809); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Hashtag) { + { + setState(1808); + match(Hashtag); + } + } + + setState(1811); + identifierName(); + setState(1813); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,235,_ctx) ) { + case 1: + { + setState(1812); + typeGeneric(); + } + break; + } + } + break; + case 22: + { + _localctx = new ArgumentsExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1815); + if (!(precpred(_ctx, 45))) throw new FailedPredicateException(this, "precpred(_ctx, 45)"); + setState(1816); + arguments(); + } + break; + case 23: + { + _localctx = new PostIncrementExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1817); + if (!(precpred(_ctx, 44))) throw new FailedPredicateException(this, "precpred(_ctx, 44)"); + setState(1818); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(1819); + match(PlusPlus); + } + break; + case 24: + { + _localctx = new PostDecreaseExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1820); + if (!(precpred(_ctx, 43))) throw new FailedPredicateException(this, "precpred(_ctx, 43)"); + setState(1821); + if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); + setState(1822); + match(MinusMinus); + } + break; + case 25: + { + _localctx = new TemplateStringExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1823); + if (!(precpred(_ctx, 15))) throw new FailedPredicateException(this, "precpred(_ctx, 15)"); + setState(1824); + templateStringLiteral(); + } + break; + case 26: + { + _localctx = new CastAsExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1825); + if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)"); + setState(1826); + match(As); + setState(1827); + asExpression(); + } + break; + case 27: + { + _localctx = new NonNullAssertionExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); + setState(1828); + if (!(precpred(_ctx, 1))) throw new FailedPredicateException(this, "precpred(_ctx, 1)"); + setState(1829); + match(Not); + } + break; + } + } + } + setState(1834); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input,237,_ctx); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + unrollRecursionContexts(_parentctx); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class AsExpressionContext extends ParserRuleContext { + public PredefinedTypeContext predefinedType() { + return getRuleContext(PredefinedTypeContext.class,0); + } + public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } + public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public AsExpressionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_asExpression; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAsExpression(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAsExpression(this); + } + } + + public final AsExpressionContext asExpression() throws RecognitionException { + AsExpressionContext _localctx = new AsExpressionContext(_ctx, getState()); + enterRule(_localctx, 276, RULE_asExpression); + try { + setState(1841); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,239,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1835); + predefinedType(); + setState(1838); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,238,_ctx) ) { + case 1: + { + setState(1836); + match(OpenBracket); + setState(1837); + match(CloseBracket); + } + break; + } + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1840); + singleExpression(0); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class AssignableContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public KeywordContext keyword() { + return getRuleContext(KeywordContext.class,0); + } + public ArrayLiteralContext arrayLiteral() { + return getRuleContext(ArrayLiteralContext.class,0); + } + public ObjectLiteralContext objectLiteral() { + return getRuleContext(ObjectLiteralContext.class,0); + } + public AssignableContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_assignable; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAssignable(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAssignable(this); + } + } + + public final AssignableContext assignable() throws RecognitionException { + AssignableContext _localctx = new AssignableContext(_ctx, getState()); + enterRule(_localctx, 278, RULE_assignable); + try { + setState(1847); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,240,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1843); + identifier(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1844); + keyword(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(1845); + arrayLiteral(); + } + break; + case 4: + enterOuterAlt(_localctx, 4); + { + setState(1846); + objectLiteral(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class AnonymousFunctionContext extends ParserRuleContext { + public FunctionDeclarationContext functionDeclaration() { + return getRuleContext(FunctionDeclarationContext.class,0); + } + public TerminalNode Function_() { return getToken(TypeScriptParser.Function_, 0); } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } + public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class,0); + } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public ArrowFunctionDeclarationContext arrowFunctionDeclaration() { + return getRuleContext(ArrowFunctionDeclarationContext.class,0); + } + public AnonymousFunctionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_anonymousFunction; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAnonymousFunction(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAnonymousFunction(this); + } + } -- Gitee From 5cb394e5056e6e148ae000eb7db45807e6ce1a35 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:34:47 +0800 Subject: [PATCH 18/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1547 +++++++++++++++++ 1 file changed, 1547 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java index 0732d84d..32417ab9 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -13761,3 +13761,1550 @@ public class TypeScriptParser extends TypeScriptParserBase { if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAnonymousFunction(this); } } + + public final AnonymousFunctionContext anonymousFunction() throws RecognitionException { + AnonymousFunctionContext _localctx = new AnonymousFunctionContext(_ctx, getState()); + enterRule(_localctx, 280, RULE_anonymousFunction); + int _la; + try { + setState(1870); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,245,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1849); + functionDeclaration(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1851); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Async) { + { + setState(1850); + match(Async); + } + } + + setState(1853); + match(Function_); + setState(1855); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Multiply) { + { + setState(1854); + match(Multiply); + } + } + + setState(1857); + match(OpenParen); + setState(1859); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(1858); + formalParameterList(); + } + } + + setState(1861); + match(CloseParen); + setState(1863); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(1862); + typeAnnotation(); + } + } + + setState(1865); + match(OpenBrace); + setState(1866); + functionBody(); + setState(1867); + match(CloseBrace); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(1869); + arrowFunctionDeclaration(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ArrowFunctionDeclarationContext extends ParserRuleContext { + public ArrowFunctionParametersContext arrowFunctionParameters() { + return getRuleContext(ArrowFunctionParametersContext.class,0); + } + public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } + public ArrowFunctionBodyContext arrowFunctionBody() { + return getRuleContext(ArrowFunctionBodyContext.class,0); + } + public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } + public TypeAnnotationContext typeAnnotation() { + return getRuleContext(TypeAnnotationContext.class,0); + } + public ArrowFunctionDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_arrowFunctionDeclaration; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrowFunctionDeclaration(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrowFunctionDeclaration(this); + } + } + + public final ArrowFunctionDeclarationContext arrowFunctionDeclaration() throws RecognitionException { + ArrowFunctionDeclarationContext _localctx = new ArrowFunctionDeclarationContext(_ctx, getState()); + enterRule(_localctx, 282, RULE_arrowFunctionDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1873); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,246,_ctx) ) { + case 1: + { + setState(1872); + match(Async); + } + break; + } + setState(1875); + arrowFunctionParameters(); + setState(1877); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la==Colon) { + { + setState(1876); + typeAnnotation(); + } + } + + setState(1879); + match(ARROW); + setState(1880); + arrowFunctionBody(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ArrowFunctionParametersContext extends ParserRuleContext { + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class,0); + } + public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } + public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class,0); + } + public ArrowFunctionParametersContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_arrowFunctionParameters; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrowFunctionParameters(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrowFunctionParameters(this); + } + } + + public final ArrowFunctionParametersContext arrowFunctionParameters() throws RecognitionException { + ArrowFunctionParametersContext _localctx = new ArrowFunctionParametersContext(_ctx, getState()); + enterRule(_localctx, 284, RULE_arrowFunctionParameters); + int _la; + try { + setState(1888); + _errHandler.sync(this); + switch (_input.LA(1)) { + case OpenBracket: + case NullLiteral: + case BooleanLiteral: + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Any: + case Number: + case Never: + case Boolean: + case String: + case Unique: + case Symbol: + case Undefined: + case Object: + case Of: + case KeyOf: + case TypeAlias: + case Constructor: + case Namespace: + case Require: + case Module: + case Abstract: + case Identifier: + case StringLiteral: + enterOuterAlt(_localctx, 1); + { + setState(1882); + propertyName(); + } + break; + case OpenParen: + enterOuterAlt(_localctx, 2); + { + setState(1883); + match(OpenParen); + setState(1885); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { + { + setState(1884); + formalParameterList(); + } + } + + setState(1887); + match(CloseParen); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ArrowFunctionBodyContext extends ParserRuleContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class,0); + } + public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } + public ArrowFunctionBodyContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_arrowFunctionBody; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrowFunctionBody(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrowFunctionBody(this); + } + } + + public final ArrowFunctionBodyContext arrowFunctionBody() throws RecognitionException { + ArrowFunctionBodyContext _localctx = new ArrowFunctionBodyContext(_ctx, getState()); + enterRule(_localctx, 286, RULE_arrowFunctionBody); + try { + setState(1895); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,250,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1890); + singleExpression(0); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1891); + match(OpenBrace); + setState(1892); + functionBody(); + setState(1893); + match(CloseBrace); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class AssignmentOperatorContext extends ParserRuleContext { + public TerminalNode MultiplyAssign() { return getToken(TypeScriptParser.MultiplyAssign, 0); } + public TerminalNode DivideAssign() { return getToken(TypeScriptParser.DivideAssign, 0); } + public TerminalNode ModulusAssign() { return getToken(TypeScriptParser.ModulusAssign, 0); } + public TerminalNode PlusAssign() { return getToken(TypeScriptParser.PlusAssign, 0); } + public TerminalNode MinusAssign() { return getToken(TypeScriptParser.MinusAssign, 0); } + public TerminalNode LeftShiftArithmeticAssign() { return getToken(TypeScriptParser.LeftShiftArithmeticAssign, 0); } + public TerminalNode RightShiftArithmeticAssign() { return getToken(TypeScriptParser.RightShiftArithmeticAssign, 0); } + public TerminalNode RightShiftLogicalAssign() { return getToken(TypeScriptParser.RightShiftLogicalAssign, 0); } + public TerminalNode BitAndAssign() { return getToken(TypeScriptParser.BitAndAssign, 0); } + public TerminalNode BitXorAssign() { return getToken(TypeScriptParser.BitXorAssign, 0); } + public TerminalNode BitOrAssign() { return getToken(TypeScriptParser.BitOrAssign, 0); } + public TerminalNode PowerAssign() { return getToken(TypeScriptParser.PowerAssign, 0); } + public TerminalNode NullishCoalescingAssign() { return getToken(TypeScriptParser.NullishCoalescingAssign, 0); } + public AssignmentOperatorContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_assignmentOperator; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAssignmentOperator(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAssignmentOperator(this); + } + } + + public final AssignmentOperatorContext assignmentOperator() throws RecognitionException { + AssignmentOperatorContext _localctx = new AssignmentOperatorContext(_ctx, getState()); + enterRule(_localctx, 288, RULE_assignmentOperator); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1897); + _la = _input.LA(1); + if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 288195191779622912L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class LiteralContext extends ParserRuleContext { + public TerminalNode NullLiteral() { return getToken(TypeScriptParser.NullLiteral, 0); } + public TerminalNode BooleanLiteral() { return getToken(TypeScriptParser.BooleanLiteral, 0); } + public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } + public TemplateStringLiteralContext templateStringLiteral() { + return getRuleContext(TemplateStringLiteralContext.class,0); + } + public TerminalNode RegularExpressionLiteral() { return getToken(TypeScriptParser.RegularExpressionLiteral, 0); } + public NumericLiteralContext numericLiteral() { + return getRuleContext(NumericLiteralContext.class,0); + } + public BigintLiteralContext bigintLiteral() { + return getRuleContext(BigintLiteralContext.class,0); + } + public LiteralContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_literal; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLiteral(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLiteral(this); + } + } + + public final LiteralContext literal() throws RecognitionException { + LiteralContext _localctx = new LiteralContext(_ctx, getState()); + enterRule(_localctx, 290, RULE_literal); + try { + setState(1906); + _errHandler.sync(this); + switch (_input.LA(1)) { + case NullLiteral: + enterOuterAlt(_localctx, 1); + { + setState(1899); + match(NullLiteral); + } + break; + case BooleanLiteral: + enterOuterAlt(_localctx, 2); + { + setState(1900); + match(BooleanLiteral); + } + break; + case StringLiteral: + enterOuterAlt(_localctx, 3); + { + setState(1901); + match(StringLiteral); + } + break; + case BackTick: + enterOuterAlt(_localctx, 4); + { + setState(1902); + templateStringLiteral(); + } + break; + case RegularExpressionLiteral: + enterOuterAlt(_localctx, 5); + { + setState(1903); + match(RegularExpressionLiteral); + } + break; + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + enterOuterAlt(_localctx, 6); + { + setState(1904); + numericLiteral(); + } + break; + case BigHexIntegerLiteral: + case BigOctalIntegerLiteral: + case BigBinaryIntegerLiteral: + case BigDecimalIntegerLiteral: + enterOuterAlt(_localctx, 7); + { + setState(1905); + bigintLiteral(); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TemplateStringLiteralContext extends ParserRuleContext { + public List BackTick() { return getTokens(TypeScriptParser.BackTick); } + public TerminalNode BackTick(int i) { + return getToken(TypeScriptParser.BackTick, i); + } + public List templateStringAtom() { + return getRuleContexts(TemplateStringAtomContext.class); + } + public TemplateStringAtomContext templateStringAtom(int i) { + return getRuleContext(TemplateStringAtomContext.class,i); + } + public TemplateStringLiteralContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_templateStringLiteral; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTemplateStringLiteral(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTemplateStringLiteral(this); + } + } + + public final TemplateStringLiteralContext templateStringLiteral() throws RecognitionException { + TemplateStringLiteralContext _localctx = new TemplateStringLiteralContext(_ctx, getState()); + enterRule(_localctx, 292, RULE_templateStringLiteral); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1908); + match(BackTick); + setState(1912); + _errHandler.sync(this); + _la = _input.LA(1); + while (((((_la - 146)) & ~0x3f) == 0 && ((1L << (_la - 146)) & 7L) != 0)) { + { + { + setState(1909); + templateStringAtom(); + } + } + setState(1914); + _errHandler.sync(this); + _la = _input.LA(1); + } + setState(1915); + match(BackTick); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class TemplateStringAtomContext extends ParserRuleContext { + public TerminalNode TemplateStringAtom() { return getToken(TypeScriptParser.TemplateStringAtom, 0); } + public TerminalNode TemplateStringStartExpression() { return getToken(TypeScriptParser.TemplateStringStartExpression, 0); } + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class,0); + } + public TerminalNode TemplateCloseBrace() { return getToken(TypeScriptParser.TemplateCloseBrace, 0); } + public TerminalNode TemplateStringEscapeAtom() { return getToken(TypeScriptParser.TemplateStringEscapeAtom, 0); } + public TemplateStringAtomContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_templateStringAtom; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTemplateStringAtom(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTemplateStringAtom(this); + } + } + + public final TemplateStringAtomContext templateStringAtom() throws RecognitionException { + TemplateStringAtomContext _localctx = new TemplateStringAtomContext(_ctx, getState()); + enterRule(_localctx, 294, RULE_templateStringAtom); + try { + setState(1923); + _errHandler.sync(this); + switch (_input.LA(1)) { + case TemplateStringAtom: + enterOuterAlt(_localctx, 1); + { + setState(1917); + match(TemplateStringAtom); + } + break; + case TemplateStringStartExpression: + enterOuterAlt(_localctx, 2); + { + setState(1918); + match(TemplateStringStartExpression); + setState(1919); + singleExpression(0); + setState(1920); + match(TemplateCloseBrace); + } + break; + case TemplateStringEscapeAtom: + enterOuterAlt(_localctx, 3); + { + setState(1922); + match(TemplateStringEscapeAtom); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class NumericLiteralContext extends ParserRuleContext { + public TerminalNode DecimalLiteral() { return getToken(TypeScriptParser.DecimalLiteral, 0); } + public TerminalNode HexIntegerLiteral() { return getToken(TypeScriptParser.HexIntegerLiteral, 0); } + public TerminalNode OctalIntegerLiteral() { return getToken(TypeScriptParser.OctalIntegerLiteral, 0); } + public TerminalNode OctalIntegerLiteral2() { return getToken(TypeScriptParser.OctalIntegerLiteral2, 0); } + public TerminalNode BinaryIntegerLiteral() { return getToken(TypeScriptParser.BinaryIntegerLiteral, 0); } + public NumericLiteralContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_numericLiteral; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNumericLiteral(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNumericLiteral(this); + } + } + + public final NumericLiteralContext numericLiteral() throws RecognitionException { + NumericLiteralContext _localctx = new NumericLiteralContext(_ctx, getState()); + enterRule(_localctx, 296, RULE_numericLiteral); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1925); + _la = _input.LA(1); + if ( !(((((_la - 61)) & ~0x3f) == 0 && ((1L << (_la - 61)) & 31L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class BigintLiteralContext extends ParserRuleContext { + public TerminalNode BigDecimalIntegerLiteral() { return getToken(TypeScriptParser.BigDecimalIntegerLiteral, 0); } + public TerminalNode BigHexIntegerLiteral() { return getToken(TypeScriptParser.BigHexIntegerLiteral, 0); } + public TerminalNode BigOctalIntegerLiteral() { return getToken(TypeScriptParser.BigOctalIntegerLiteral, 0); } + public TerminalNode BigBinaryIntegerLiteral() { return getToken(TypeScriptParser.BigBinaryIntegerLiteral, 0); } + public BigintLiteralContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_bigintLiteral; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBigintLiteral(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBigintLiteral(this); + } + } + + public final BigintLiteralContext bigintLiteral() throws RecognitionException { + BigintLiteralContext _localctx = new BigintLiteralContext(_ctx, getState()); + enterRule(_localctx, 298, RULE_bigintLiteral); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1927); + _la = _input.LA(1); + if ( !(((((_la - 66)) & ~0x3f) == 0 && ((1L << (_la - 66)) & 15L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class GetterContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ClassElementNameContext classElementName() { + return getRuleContext(ClassElementNameContext.class,0); + } + public GetterContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_getter; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGetter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGetter(this); + } + } + + public final GetterContext getter() throws RecognitionException { + GetterContext _localctx = new GetterContext(_ctx, getState()); + enterRule(_localctx, 300, RULE_getter); + try { + enterOuterAlt(_localctx, 1); + { + setState(1929); + if (!(this.n("get"))) throw new FailedPredicateException(this, "this.n(\"get\")"); + setState(1930); + identifier(); + setState(1931); + classElementName(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class SetterContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ClassElementNameContext classElementName() { + return getRuleContext(ClassElementNameContext.class,0); + } + public SetterContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_setter; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSetter(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSetter(this); + } + } + + public final SetterContext setter() throws RecognitionException { + SetterContext _localctx = new SetterContext(_ctx, getState()); + enterRule(_localctx, 302, RULE_setter); + try { + enterOuterAlt(_localctx, 1); + { + setState(1933); + if (!(this.n("set"))) throw new FailedPredicateException(this, "this.n(\"set\")"); + setState(1934); + identifier(); + setState(1935); + classElementName(); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IdentifierNameContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public ReservedWordContext reservedWord() { + return getRuleContext(ReservedWordContext.class,0); + } + public IdentifierNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_identifierName; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifierName(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifierName(this); + } + } + + public final IdentifierNameContext identifierName() throws RecognitionException { + IdentifierNameContext _localctx = new IdentifierNameContext(_ctx, getState()); + enterRule(_localctx, 304, RULE_identifierName); + try { + setState(1939); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,254,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1937); + identifier(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1938); + reservedWord(); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IdentifierContext extends ParserRuleContext { + public TerminalNode Identifier() { return getToken(TypeScriptParser.Identifier, 0); } + public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public TerminalNode From() { return getToken(TypeScriptParser.From, 0); } + public TerminalNode Yield() { return getToken(TypeScriptParser.Yield, 0); } + public TerminalNode Of() { return getToken(TypeScriptParser.Of, 0); } + public TerminalNode Any() { return getToken(TypeScriptParser.Any, 0); } + public TerminalNode Number() { return getToken(TypeScriptParser.Number, 0); } + public TerminalNode Boolean() { return getToken(TypeScriptParser.Boolean, 0); } + public TerminalNode String() { return getToken(TypeScriptParser.String, 0); } + public TerminalNode Unique() { return getToken(TypeScriptParser.Unique, 0); } + public TerminalNode Symbol() { return getToken(TypeScriptParser.Symbol, 0); } + public TerminalNode Never() { return getToken(TypeScriptParser.Never, 0); } + public TerminalNode Undefined() { return getToken(TypeScriptParser.Undefined, 0); } + public TerminalNode Object() { return getToken(TypeScriptParser.Object, 0); } + public TerminalNode KeyOf() { return getToken(TypeScriptParser.KeyOf, 0); } + public TerminalNode TypeAlias() { return getToken(TypeScriptParser.TypeAlias, 0); } + public TerminalNode Constructor() { return getToken(TypeScriptParser.Constructor, 0); } + public TerminalNode Namespace() { return getToken(TypeScriptParser.Namespace, 0); } + public TerminalNode Abstract() { return getToken(TypeScriptParser.Abstract, 0); } + public IdentifierContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_identifier; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifier(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifier(this); + } + } + + public final IdentifierContext identifier() throws RecognitionException { + IdentifierContext _localctx = new IdentifierContext(_ctx, getState()); + enterRule(_localctx, 306, RULE_identifier); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1941); + _la = _input.LA(1); + if ( !(((((_la - 96)) & ~0x3f) == 0 && ((1L << (_la - 96)) & 5016517607467L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class IdentifierOrKeyWordContext extends ParserRuleContext { + public IdentifierContext identifier() { + return getRuleContext(IdentifierContext.class,0); + } + public TerminalNode TypeAlias() { return getToken(TypeScriptParser.TypeAlias, 0); } + public TerminalNode Require() { return getToken(TypeScriptParser.Require, 0); } + public IdentifierOrKeyWordContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_identifierOrKeyWord; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifierOrKeyWord(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifierOrKeyWord(this); + } + } + + public final IdentifierOrKeyWordContext identifierOrKeyWord() throws RecognitionException { + IdentifierOrKeyWordContext _localctx = new IdentifierOrKeyWordContext(_ctx, getState()); + enterRule(_localctx, 308, RULE_identifierOrKeyWord); + try { + setState(1946); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,255,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1943); + identifier(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1944); + match(TypeAlias); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(1945); + match(Require); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class ReservedWordContext extends ParserRuleContext { + public KeywordContext keyword() { + return getRuleContext(KeywordContext.class,0); + } + public TerminalNode NullLiteral() { return getToken(TypeScriptParser.NullLiteral, 0); } + public TerminalNode BooleanLiteral() { return getToken(TypeScriptParser.BooleanLiteral, 0); } + public ReservedWordContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_reservedWord; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterReservedWord(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitReservedWord(this); + } + } + + public final ReservedWordContext reservedWord() throws RecognitionException { + ReservedWordContext _localctx = new ReservedWordContext(_ctx, getState()); + enterRule(_localctx, 310, RULE_reservedWord); + try { + setState(1951); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Break: + case Do: + case Instanceof: + case Typeof: + case Case: + case Else: + case New: + case Var: + case Catch: + case Finally: + case Return: + case Void: + case Continue: + case For: + case Switch: + case While: + case Debugger: + case Function_: + case This: + case With: + case Default: + case If: + case Throw: + case Delete: + case In: + case Try: + case As: + case From: + case ReadOnly: + case Async: + case Await: + case Yield: + case Class: + case Enum: + case Extends: + case Super: + case Const: + case Export: + case Import: + case Implements: + case Let: + case Private: + case Public: + case Interface: + case Package: + case Protected: + case Static: + case Number: + case Boolean: + case String: + case TypeAlias: + case Require: + case Module: + enterOuterAlt(_localctx, 1); + { + setState(1948); + keyword(); + } + break; + case NullLiteral: + enterOuterAlt(_localctx, 2); + { + setState(1949); + match(NullLiteral); + } + break; + case BooleanLiteral: + enterOuterAlt(_localctx, 3); + { + setState(1950); + match(BooleanLiteral); + } + break; + default: + throw new NoViableAltException(this); + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class KeywordContext extends ParserRuleContext { + public TerminalNode Break() { return getToken(TypeScriptParser.Break, 0); } + public TerminalNode Do() { return getToken(TypeScriptParser.Do, 0); } + public TerminalNode Instanceof() { return getToken(TypeScriptParser.Instanceof, 0); } + public TerminalNode Typeof() { return getToken(TypeScriptParser.Typeof, 0); } + public TerminalNode Case() { return getToken(TypeScriptParser.Case, 0); } + public TerminalNode Else() { return getToken(TypeScriptParser.Else, 0); } + public TerminalNode New() { return getToken(TypeScriptParser.New, 0); } + public TerminalNode Var() { return getToken(TypeScriptParser.Var, 0); } + public TerminalNode Catch() { return getToken(TypeScriptParser.Catch, 0); } + public TerminalNode Finally() { return getToken(TypeScriptParser.Finally, 0); } + public TerminalNode Return() { return getToken(TypeScriptParser.Return, 0); } + public TerminalNode Void() { return getToken(TypeScriptParser.Void, 0); } + public TerminalNode Continue() { return getToken(TypeScriptParser.Continue, 0); } + public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } + public TerminalNode Switch() { return getToken(TypeScriptParser.Switch, 0); } + public TerminalNode While() { return getToken(TypeScriptParser.While, 0); } + public TerminalNode Debugger() { return getToken(TypeScriptParser.Debugger, 0); } + public TerminalNode Function_() { return getToken(TypeScriptParser.Function_, 0); } + public TerminalNode This() { return getToken(TypeScriptParser.This, 0); } + public TerminalNode With() { return getToken(TypeScriptParser.With, 0); } + public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } + public TerminalNode If() { return getToken(TypeScriptParser.If, 0); } + public TerminalNode Throw() { return getToken(TypeScriptParser.Throw, 0); } + public TerminalNode Delete() { return getToken(TypeScriptParser.Delete, 0); } + public TerminalNode In() { return getToken(TypeScriptParser.In, 0); } + public TerminalNode Try() { return getToken(TypeScriptParser.Try, 0); } + public TerminalNode Class() { return getToken(TypeScriptParser.Class, 0); } + public TerminalNode Enum() { return getToken(TypeScriptParser.Enum, 0); } + public TerminalNode Extends() { return getToken(TypeScriptParser.Extends, 0); } + public TerminalNode Super() { return getToken(TypeScriptParser.Super, 0); } + public TerminalNode Const() { return getToken(TypeScriptParser.Const, 0); } + public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } + public TerminalNode Import() { return getToken(TypeScriptParser.Import, 0); } + public TerminalNode Implements() { return getToken(TypeScriptParser.Implements, 0); } + public TerminalNode Let() { return getToken(TypeScriptParser.Let, 0); } + public TerminalNode Private() { return getToken(TypeScriptParser.Private, 0); } + public TerminalNode Public() { return getToken(TypeScriptParser.Public, 0); } + public TerminalNode Interface() { return getToken(TypeScriptParser.Interface, 0); } + public TerminalNode Package() { return getToken(TypeScriptParser.Package, 0); } + public TerminalNode Protected() { return getToken(TypeScriptParser.Protected, 0); } + public TerminalNode Static() { return getToken(TypeScriptParser.Static, 0); } + public TerminalNode Yield() { return getToken(TypeScriptParser.Yield, 0); } + public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } + public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } + public TerminalNode ReadOnly() { return getToken(TypeScriptParser.ReadOnly, 0); } + public TerminalNode From() { return getToken(TypeScriptParser.From, 0); } + public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } + public TerminalNode Require() { return getToken(TypeScriptParser.Require, 0); } + public TerminalNode TypeAlias() { return getToken(TypeScriptParser.TypeAlias, 0); } + public TerminalNode String() { return getToken(TypeScriptParser.String, 0); } + public TerminalNode Boolean() { return getToken(TypeScriptParser.Boolean, 0); } + public TerminalNode Number() { return getToken(TypeScriptParser.Number, 0); } + public TerminalNode Module() { return getToken(TypeScriptParser.Module, 0); } + public KeywordContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_keyword; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterKeyword(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitKeyword(this); + } + } + + public final KeywordContext keyword() throws RecognitionException { + KeywordContext _localctx = new KeywordContext(_ctx, getState()); + enterRule(_localctx, 312, RULE_keyword); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(1953); + _la = _input.LA(1); + if ( !(((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4027625446047744001L) != 0)) ) { + _errHandler.recoverInline(this); + } + else { + if ( _input.LA(1)==Token.EOF ) matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + @SuppressWarnings("CheckReturnValue") + public static class EosContext extends ParserRuleContext { + public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } + public TerminalNode EOF() { return getToken(TypeScriptParser.EOF, 0); } + public EosContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + @Override public int getRuleIndex() { return RULE_eos; } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEos(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEos(this); + } + } + + public final EosContext eos() throws RecognitionException { + EosContext _localctx = new EosContext(_ctx, getState()); + enterRule(_localctx, 314, RULE_eos); + try { + setState(1959); + _errHandler.sync(this); + switch ( getInterpreter().adaptivePredict(_input,257,_ctx) ) { + case 1: + enterOuterAlt(_localctx, 1); + { + setState(1955); + match(SemiColon); + } + break; + case 2: + enterOuterAlt(_localctx, 2); + { + setState(1956); + match(EOF); + } + break; + case 3: + enterOuterAlt(_localctx, 3); + { + setState(1957); + if (!(this.lineTerminatorAhead())) throw new FailedPredicateException(this, "this.lineTerminatorAhead()"); + } + break; + case 4: + enterOuterAlt(_localctx, 4); + { + setState(1958); + if (!(this.closeBrace())) throw new FailedPredicateException(this, "this.closeBrace()"); + } + break; + } + } + catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally { + exitRule(); + } + return _localctx; + } + + public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) { + switch (ruleIndex) { + case 10: + return unionOrIntersectionOrPrimaryType_sempred((UnionOrIntersectionOrPrimaryTypeContext)_localctx, predIndex); + case 11: + return primaryType_sempred((PrimaryTypeContext)_localctx, predIndex); + case 20: + return arrayType_sempred((ArrayTypeContext)_localctx, predIndex); + case 55: + return decoratorMemberExpression_sempred((DecoratorMemberExpressionContext)_localctx, predIndex); + case 82: + return expressionStatement_sempred((ExpressionStatementContext)_localctx, predIndex); + case 84: + return iterationStatement_sempred((IterationStatementContext)_localctx, predIndex); + case 86: + return continueStatement_sempred((ContinueStatementContext)_localctx, predIndex); + case 87: + return breakStatement_sempred((BreakStatementContext)_localctx, predIndex); + case 88: + return returnStatement_sempred((ReturnStatementContext)_localctx, predIndex); + case 89: + return yieldStatement_sempred((YieldStatementContext)_localctx, predIndex); + case 97: + return throwStatement_sempred((ThrowStatementContext)_localctx, predIndex); + case 112: + return generatorMethod_sempred((GeneratorMethodContext)_localctx, predIndex); + case 137: + return singleExpression_sempred((SingleExpressionContext)_localctx, predIndex); + case 150: + return getter_sempred((GetterContext)_localctx, predIndex); + case 151: + return setter_sempred((SetterContext)_localctx, predIndex); + case 157: + return eos_sempred((EosContext)_localctx, predIndex); + } + return true; + } + private boolean unionOrIntersectionOrPrimaryType_sempred(UnionOrIntersectionOrPrimaryTypeContext _localctx, int predIndex) { + switch (predIndex) { + case 0: + return precpred(_ctx, 3); + case 1: + return precpred(_ctx, 2); + } + return true; + } + private boolean primaryType_sempred(PrimaryTypeContext _localctx, int predIndex) { + switch (predIndex) { + case 2: + return precpred(_ctx, 6); + case 3: + return this.notLineTerminator(); + } + return true; + } + private boolean arrayType_sempred(ArrayTypeContext _localctx, int predIndex) { + switch (predIndex) { + case 4: + return this.notLineTerminator(); + } + return true; + } + private boolean decoratorMemberExpression_sempred(DecoratorMemberExpressionContext _localctx, int predIndex) { + switch (predIndex) { + case 5: + return precpred(_ctx, 2); + } + return true; + } + private boolean expressionStatement_sempred(ExpressionStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 6: + return this.notOpenBraceAndNotFunctionAndNotInterface(); + } + return true; + } + private boolean iterationStatement_sempred(IterationStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 7: + return this.p("of"); + case 8: + return this.p("of"); + } + return true; + } + private boolean continueStatement_sempred(ContinueStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 9: + return this.notLineTerminator(); + } + return true; + } + private boolean breakStatement_sempred(BreakStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 10: + return this.notLineTerminator(); + } + return true; + } + private boolean returnStatement_sempred(ReturnStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 11: + return this.notLineTerminator(); + } + return true; + } + private boolean yieldStatement_sempred(YieldStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 12: + return this.notLineTerminator(); + } + return true; + } + private boolean throwStatement_sempred(ThrowStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 13: + return this.notLineTerminator(); + } + return true; + } + private boolean generatorMethod_sempred(GeneratorMethodContext _localctx, int predIndex) { + switch (predIndex) { + case 14: + return this.notLineTerminator(); + } + return true; + } + private boolean singleExpression_sempred(SingleExpressionContext _localctx, int predIndex) { + switch (predIndex) { + case 15: + return precpred(_ctx, 50); + case 16: + return precpred(_ctx, 32); + case 17: + return precpred(_ctx, 31); + case 18: + return precpred(_ctx, 30); + case 19: + return precpred(_ctx, 29); + case 20: + return precpred(_ctx, 28); + case 21: + return precpred(_ctx, 27); + case 22: + return precpred(_ctx, 26); + case 23: + return precpred(_ctx, 25); + case 24: + return precpred(_ctx, 24); + case 25: + return precpred(_ctx, 23); + case 26: + return precpred(_ctx, 22); + case 27: + return precpred(_ctx, 21); + case 28: + return precpred(_ctx, 20); + case 29: + return precpred(_ctx, 19); + case 30: + return precpred(_ctx, 18); + case 31: + return precpred(_ctx, 17); + case 32: + return precpred(_ctx, 16); + case 33: + return precpred(_ctx, 51); + case 34: + return precpred(_ctx, 49); + case 35: + return precpred(_ctx, 48); + case 36: + return precpred(_ctx, 45); + case 37: + return precpred(_ctx, 44); + case 38: + return this.notLineTerminator(); + case 39: + return precpred(_ctx, 43); + case 40: + return this.notLineTerminator(); + case 41: + return precpred(_ctx, 15); + case 42: + return precpred(_ctx, 2); + case 43: + return precpred(_ctx, 1); + } + return true; + } + private boolean getter_sempred(GetterContext _localctx, int predIndex) { + switch (predIndex) { + case 44: + return this.n("get"); + } + return true; + } + private boolean setter_sempred(SetterContext _localctx, int predIndex) { + switch (predIndex) { + case 45: + return this.n("set"); + } + return true; + } + private boolean eos_sempred(EosContext _localctx, int predIndex) { + switch (predIndex) { + case 46: + return this.lineTerminatorAhead(); + case 47: + return this.closeBrace(); + } + return true; + } -- Gitee From 1ff43a46e0dbdd0942c78f3818ea9cc9822d085e Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:35:04 +0800 Subject: [PATCH 19/45] update typescript parser Signed-off-by: wangshi --- .../antlr/typescript/TypeScriptParser.java | 1349 +++++++++++++++++ 1 file changed, 1349 insertions(+) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java index 32417ab9..e4a2fddb 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/typescript/TypeScriptParser.java @@ -15308,3 +15308,1352 @@ public class TypeScriptParser extends TypeScriptParserBase { } return true; } + + public static final String _serializedATN = + "\u0004\u0001\u0094\u07aa\u0002\u0000\u0007\u0000\u0002\u0001\u0007\u0001"+ + "\u0002\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002\u0004\u0007\u0004"+ + "\u0002\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002\u0007\u0007\u0007"+ + "\u0002\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002\u000b\u0007\u000b"+ + "\u0002\f\u0007\f\u0002\r\u0007\r\u0002\u000e\u0007\u000e\u0002\u000f\u0007"+ + "\u000f\u0002\u0010\u0007\u0010\u0002\u0011\u0007\u0011\u0002\u0012\u0007"+ + "\u0012\u0002\u0013\u0007\u0013\u0002\u0014\u0007\u0014\u0002\u0015\u0007"+ + "\u0015\u0002\u0016\u0007\u0016\u0002\u0017\u0007\u0017\u0002\u0018\u0007"+ + "\u0018\u0002\u0019\u0007\u0019\u0002\u001a\u0007\u001a\u0002\u001b\u0007"+ + "\u001b\u0002\u001c\u0007\u001c\u0002\u001d\u0007\u001d\u0002\u001e\u0007"+ + "\u001e\u0002\u001f\u0007\u001f\u0002 \u0007 \u0002!\u0007!\u0002\"\u0007"+ + "\"\u0002#\u0007#\u0002$\u0007$\u0002%\u0007%\u0002&\u0007&\u0002\'\u0007"+ + "\'\u0002(\u0007(\u0002)\u0007)\u0002*\u0007*\u0002+\u0007+\u0002,\u0007"+ + ",\u0002-\u0007-\u0002.\u0007.\u0002/\u0007/\u00020\u00070\u00021\u0007"+ + "1\u00022\u00072\u00023\u00073\u00024\u00074\u00025\u00075\u00026\u0007"+ + "6\u00027\u00077\u00028\u00078\u00029\u00079\u0002:\u0007:\u0002;\u0007"+ + ";\u0002<\u0007<\u0002=\u0007=\u0002>\u0007>\u0002?\u0007?\u0002@\u0007"+ + "@\u0002A\u0007A\u0002B\u0007B\u0002C\u0007C\u0002D\u0007D\u0002E\u0007"+ + "E\u0002F\u0007F\u0002G\u0007G\u0002H\u0007H\u0002I\u0007I\u0002J\u0007"+ + "J\u0002K\u0007K\u0002L\u0007L\u0002M\u0007M\u0002N\u0007N\u0002O\u0007"+ + "O\u0002P\u0007P\u0002Q\u0007Q\u0002R\u0007R\u0002S\u0007S\u0002T\u0007"+ + "T\u0002U\u0007U\u0002V\u0007V\u0002W\u0007W\u0002X\u0007X\u0002Y\u0007"+ + "Y\u0002Z\u0007Z\u0002[\u0007[\u0002\\\u0007\\\u0002]\u0007]\u0002^\u0007"+ + "^\u0002_\u0007_\u0002`\u0007`\u0002a\u0007a\u0002b\u0007b\u0002c\u0007"+ + "c\u0002d\u0007d\u0002e\u0007e\u0002f\u0007f\u0002g\u0007g\u0002h\u0007"+ + "h\u0002i\u0007i\u0002j\u0007j\u0002k\u0007k\u0002l\u0007l\u0002m\u0007"+ + "m\u0002n\u0007n\u0002o\u0007o\u0002p\u0007p\u0002q\u0007q\u0002r\u0007"+ + "r\u0002s\u0007s\u0002t\u0007t\u0002u\u0007u\u0002v\u0007v\u0002w\u0007"+ + "w\u0002x\u0007x\u0002y\u0007y\u0002z\u0007z\u0002{\u0007{\u0002|\u0007"+ + "|\u0002}\u0007}\u0002~\u0007~\u0002\u007f\u0007\u007f\u0002\u0080\u0007"+ + "\u0080\u0002\u0081\u0007\u0081\u0002\u0082\u0007\u0082\u0002\u0083\u0007"+ + "\u0083\u0002\u0084\u0007\u0084\u0002\u0085\u0007\u0085\u0002\u0086\u0007"+ + "\u0086\u0002\u0087\u0007\u0087\u0002\u0088\u0007\u0088\u0002\u0089\u0007"+ + "\u0089\u0002\u008a\u0007\u008a\u0002\u008b\u0007\u008b\u0002\u008c\u0007"+ + "\u008c\u0002\u008d\u0007\u008d\u0002\u008e\u0007\u008e\u0002\u008f\u0007"+ + "\u008f\u0002\u0090\u0007\u0090\u0002\u0091\u0007\u0091\u0002\u0092\u0007"+ + "\u0092\u0002\u0093\u0007\u0093\u0002\u0094\u0007\u0094\u0002\u0095\u0007"+ + "\u0095\u0002\u0096\u0007\u0096\u0002\u0097\u0007\u0097\u0002\u0098\u0007"+ + "\u0098\u0002\u0099\u0007\u0099\u0002\u009a\u0007\u009a\u0002\u009b\u0007"+ + "\u009b\u0002\u009c\u0007\u009c\u0002\u009d\u0007\u009d\u0001\u0000\u0001"+ + "\u0000\u0001\u0000\u0001\u0001\u0001\u0001\u0003\u0001\u0142\b\u0001\u0001"+ + "\u0002\u0001\u0002\u0003\u0002\u0146\b\u0002\u0001\u0002\u0001\u0002\u0001"+ + "\u0003\u0001\u0003\u0001\u0003\u0005\u0003\u014d\b\u0003\n\u0003\f\u0003"+ + "\u0150\t\u0003\u0001\u0004\u0001\u0004\u0003\u0004\u0154\b\u0004\u0001"+ + "\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0003\u0004\u015b"+ + "\b\u0004\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0006\u0001\u0006\u0003"+ + "\u0006\u0162\b\u0006\u0001\u0006\u0001\u0006\u0001\u0007\u0001\u0007\u0001"+ + "\u0007\u0005\u0007\u0169\b\u0007\n\u0007\f\u0007\u016c\t\u0007\u0001\b"+ + "\u0001\b\u0001\t\u0003\t\u0171\b\t\u0001\t\u0001\t\u0001\t\u0001\t\u0003"+ + "\t\u0177\b\t\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001"+ + "\n\u0001\n\u0005\n\u0182\b\n\n\n\f\n\u0185\t\n\u0001\u000b\u0001\u000b"+ + "\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b"+ + "\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b"+ + "\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b"+ + "\u0003\u000b\u019b\b\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b"+ + "\u0003\u000b\u01a1\b\u000b\u0001\u000b\u0005\u000b\u01a4\b\u000b\n\u000b"+ + "\f\u000b\u01a7\t\u000b\u0001\f\u0001\f\u0001\f\u0001\f\u0001\f\u0001\f"+ + "\u0001\f\u0001\f\u0001\f\u0003\f\u01b2\b\f\u0001\f\u0001\f\u0001\f\u0001"+ + "\f\u0001\f\u0003\f\u01b9\b\f\u0001\r\u0001\r\u0003\r\u01bd\b\r\u0001\u000e"+ + "\u0001\u000e\u0001\u000e\u0003\u000e\u01c2\b\u000e\u0001\u000e\u0001\u000e"+ + "\u0001\u000f\u0001\u000f\u0003\u000f\u01c8\b\u000f\u0001\u0010\u0001\u0010"+ + "\u0003\u0010\u01cc\b\u0010\u0001\u0010\u0001\u0010\u0001\u0011\u0001\u0011"+ + "\u0003\u0011\u01d2\b\u0011\u0001\u0012\u0001\u0012\u0001\u0012\u0005\u0012"+ + "\u01d7\b\u0012\n\u0012\f\u0012\u01da\t\u0012\u0001\u0013\u0001\u0013\u0001"+ + "\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0003\u0013\u01e3"+ + "\b\u0013\u0003\u0013\u01e5\b\u0013\u0001\u0014\u0001\u0014\u0001\u0014"+ + "\u0001\u0014\u0001\u0014\u0001\u0015\u0001\u0015\u0001\u0015\u0001\u0015"+ + "\u0001\u0016\u0001\u0016\u0001\u0016\u0005\u0016\u01f3\b\u0016\n\u0016"+ + "\f\u0016\u01f6\t\u0016\u0001\u0016\u0003\u0016\u01f9\b\u0016\u0001\u0017"+ + "\u0003\u0017\u01fc\b\u0017\u0001\u0017\u0001\u0017\u0003\u0017\u0200\b"+ + "\u0017\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0018\u0001"+ + "\u0018\u0003\u0018\u0208\b\u0018\u0001\u0018\u0001\u0018\u0003\u0018\u020c"+ + "\b\u0018\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0019\u0001"+ + "\u0019\u0001\u0019\u0001\u001a\u0001\u001a\u0001\u001a\u0001\u001a\u0004"+ + "\u001a\u0219\b\u001a\u000b\u001a\f\u001a\u021a\u0001\u001a\u0001\u001a"+ + "\u0003\u001a\u021f\b\u001a\u0001\u001b\u0003\u001b\u0222\b\u001b\u0001"+ + "\u001b\u0001\u001b\u0003\u001b\u0226\b\u001b\u0001\u001b\u0003\u001b\u0229"+ + "\b\u001b\u0001\u001b\u0001\u001b\u0003\u001b\u022d\b\u001b\u0001\u001c"+ + "\u0001\u001c\u0001\u001c\u0001\u001d\u0003\u001d\u0233\b\u001d\u0001\u001d"+ + "\u0001\u001d\u0003\u001d\u0237\b\u001d\u0001\u001d\u0001\u001d\u0003\u001d"+ + "\u023b\b\u001d\u0001\u001e\u0001\u001e\u0001\u001e\u0001\u001e\u0005\u001e"+ + "\u0241\b\u001e\n\u001e\f\u001e\u0244\t\u001e\u0001\u001e\u0001\u001e\u0003"+ + "\u001e\u0248\b\u001e\u0001\u001e\u0003\u001e\u024b\b\u001e\u0003\u001e"+ + "\u024d\b\u001e\u0001\u001f\u0001\u001f\u0001\u001f\u0005\u001f\u0252\b"+ + "\u001f\n\u001f\f\u001f\u0255\t\u001f\u0001 \u0001 \u0003 \u0259\b \u0001"+ + "!\u0003!\u025c\b!\u0001!\u0003!\u025f\b!\u0001!\u0001!\u0001!\u0003!\u0264"+ + "\b!\u0001!\u0003!\u0267\b!\u0001!\u0003!\u026a\b!\u0001\"\u0001\"\u0001"+ + "\"\u0003\"\u026f\b\"\u0001#\u0003#\u0272\b#\u0001#\u0003#\u0275\b#\u0001"+ + "#\u0001#\u0003#\u0279\b#\u0001$\u0001$\u0001%\u0001%\u0003%\u027f\b%\u0001"+ + "&\u0001&\u0003&\u0283\b&\u0001&\u0001&\u0003&\u0287\b&\u0001&\u0001&\u0003"+ + "&\u028b\b&\u0001\'\u0001\'\u0001\'\u0001\'\u0001\'\u0001\'\u0001\'\u0001"+ + "(\u0001(\u0003(\u0296\b(\u0001(\u0001(\u0001)\u0003)\u029b\b)\u0001)\u0001"+ + ")\u0001)\u0003)\u02a0\b)\u0001)\u0001)\u0001)\u0001)\u0001*\u0003*\u02a7"+ + "\b*\u0001*\u0001*\u0001*\u0003*\u02ac\b*\u0001*\u0001*\u0001*\u0001*\u0001"+ + "*\u0001*\u0003*\u02b4\b*\u0001+\u0003+\u02b7\b+\u0001+\u0003+\u02ba\b"+ + "+\u0001+\u0001+\u0001+\u0003+\u02bf\b+\u0001+\u0003+\u02c2\b+\u0001+\u0001"+ + "+\u0003+\u02c6\b+\u0001,\u0001,\u0001,\u0001-\u0001-\u0001-\u0005-\u02ce"+ + "\b-\n-\f-\u02d1\t-\u0001.\u0003.\u02d4\b.\u0001.\u0001.\u0001.\u0001."+ + "\u0003.\u02da\b.\u0001.\u0001.\u0001/\u0001/\u0003/\u02e0\b/\u00010\u0001"+ + "0\u00010\u00050\u02e5\b0\n0\f0\u02e8\t0\u00011\u00011\u00011\u00031\u02ed"+ + "\b1\u00012\u00032\u02f0\b2\u00012\u00012\u00012\u00012\u00032\u02f6\b"+ + "2\u00012\u00012\u00013\u00013\u00043\u02fc\b3\u000b3\f3\u02fd\u00013\u0005"+ + "3\u0301\b3\n3\f3\u0304\t3\u00014\u00014\u00014\u00014\u00014\u00015\u0004"+ + "5\u030c\b5\u000b5\f5\u030d\u00016\u00016\u00016\u00036\u0313\b6\u0001"+ + "7\u00017\u00017\u00017\u00017\u00017\u00037\u031b\b7\u00017\u00017\u0001"+ + "7\u00057\u0320\b7\n7\f7\u0323\t7\u00018\u00018\u00018\u00019\u00039\u0329"+ + "\b9\u00019\u00019\u0001:\u0003:\u032e\b:\u0001:\u0001:\u0001;\u0001;\u0001"+ + ";\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001"+ + ";\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001"+ + ";\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0003;\u034f\b;\u0001<\u0001"+ + "<\u0003<\u0353\b<\u0001<\u0001<\u0001=\u0004=\u0358\b=\u000b=\f=\u0359"+ + "\u0001>\u0001>\u0001>\u0001>\u0001>\u0003>\u0361\b>\u0001>\u0001>\u0001"+ + "?\u0001?\u0001?\u0001@\u0003@\u0369\b@\u0001@\u0001@\u0003@\u036d\b@\u0001"+ + "@\u0001@\u0001@\u0001@\u0001@\u0003@\u0374\b@\u0001A\u0001A\u0001A\u0001"+ + "A\u0005A\u037a\bA\nA\fA\u037d\tA\u0001A\u0001A\u0003A\u0381\bA\u0003A"+ + "\u0383\bA\u0001A\u0001A\u0001B\u0001B\u0001B\u0003B\u038a\bB\u0001C\u0001"+ + "C\u0003C\u038e\bC\u0001D\u0001D\u0001E\u0001E\u0001E\u0001F\u0001F\u0003"+ + "F\u0397\bF\u0001F\u0001F\u0003F\u039b\bF\u0001G\u0001G\u0001G\u0001H\u0001"+ + "H\u0001H\u0003H\u03a3\bH\u0001I\u0001I\u0003I\u03a7\bI\u0001I\u0001I\u0003"+ + "I\u03ab\bI\u0001I\u0001I\u0001I\u0001I\u0001I\u0001I\u0001I\u0003I\u03b4"+ + "\bI\u0001J\u0001J\u0001J\u0001J\u0001J\u0001J\u0003J\u03bc\bJ\u0001J\u0001"+ + "J\u0003J\u03c0\bJ\u0001K\u0001K\u0001K\u0001K\u0005K\u03c6\bK\nK\fK\u03c9"+ + "\tK\u0001K\u0001K\u0003K\u03cd\bK\u0003K\u03cf\bK\u0001K\u0001K\u0001"+ + "L\u0001L\u0001L\u0003L\u03d6\bL\u0001M\u0001M\u0001M\u0003M\u03db\bM\u0001"+ + "N\u0001N\u0003N\u03df\bN\u0001N\u0001N\u0003N\u03e3\bN\u0001N\u0003N\u03e6"+ + "\bN\u0001N\u0003N\u03e9\bN\u0001N\u0003N\u03ec\bN\u0001N\u0001N\u0003"+ + "N\u03f0\bN\u0001N\u0001N\u0003N\u03f4\bN\u0001N\u0001N\u0003N\u03f8\b"+ + "N\u0003N\u03fa\bN\u0001O\u0001O\u0001O\u0005O\u03ff\bO\nO\fO\u0402\tO"+ + "\u0001P\u0001P\u0001P\u0003P\u0407\bP\u0001P\u0003P\u040a\bP\u0001P\u0003"+ + "P\u040d\bP\u0001P\u0001P\u0003P\u0411\bP\u0001P\u0003P\u0414\bP\u0001"+ + "Q\u0001Q\u0001R\u0001R\u0001R\u0003R\u041b\bR\u0001S\u0001S\u0001S\u0001"+ + "S\u0001S\u0001S\u0001S\u0003S\u0424\bS\u0001T\u0001T\u0001T\u0001T\u0001"+ + "T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001"+ + "T\u0001T\u0001T\u0003T\u0437\bT\u0001T\u0001T\u0003T\u043b\bT\u0001T\u0001"+ + "T\u0003T\u043f\bT\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001"+ + "T\u0003T\u0449\bT\u0001T\u0001T\u0003T\u044d\bT\u0001T\u0001T\u0001T\u0001"+ + "T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001"+ + "T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0003T\u0465"+ + "\bT\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0003T\u046e\bT\u0001"+ + "T\u0001T\u0001T\u0001T\u0001T\u0003T\u0475\bT\u0001T\u0001T\u0001T\u0001"+ + "T\u0001T\u0001T\u0001T\u0001T\u0003T\u047f\bT\u0001T\u0001T\u0001T\u0003"+ + "T\u0484\bT\u0001U\u0001U\u0001V\u0001V\u0001V\u0003V\u048b\bV\u0001V\u0001"+ + "V\u0001W\u0001W\u0001W\u0003W\u0492\bW\u0001W\u0001W\u0001X\u0001X\u0001"+ + "X\u0003X\u0499\bX\u0001X\u0001X\u0001Y\u0001Y\u0001Y\u0003Y\u04a0\bY\u0001"+ + "Y\u0001Y\u0001Z\u0001Z\u0001Z\u0001Z\u0001Z\u0001Z\u0001[\u0001[\u0001"+ + "[\u0001[\u0001[\u0001[\u0001\\\u0001\\\u0003\\\u04b2\b\\\u0001\\\u0001"+ + "\\\u0003\\\u04b6\b\\\u0003\\\u04b8\b\\\u0001\\\u0001\\\u0001]\u0004]\u04bd"+ + "\b]\u000b]\f]\u04be\u0001^\u0001^\u0001^\u0001^\u0003^\u04c5\b^\u0001"+ + "_\u0001_\u0001_\u0003_\u04ca\b_\u0001`\u0001`\u0001`\u0001`\u0001a\u0001"+ + "a\u0001a\u0001a\u0001a\u0001b\u0001b\u0001b\u0001b\u0003b\u04d9\bb\u0001"+ + "b\u0003b\u04dc\bb\u0001c\u0001c\u0001c\u0001c\u0003c\u04e2\bc\u0001c\u0001"+ + "c\u0003c\u04e6\bc\u0001c\u0001c\u0001d\u0001d\u0001d\u0001e\u0001e\u0001"+ + "e\u0001f\u0003f\u04f1\bf\u0001f\u0001f\u0003f\u04f5\bf\u0001f\u0001f\u0001"+ + "f\u0001f\u0001f\u0001f\u0001f\u0003f\u04fe\bf\u0001g\u0003g\u0501\bg\u0001"+ + "g\u0001g\u0003g\u0505\bg\u0003g\u0507\bg\u0001g\u0003g\u050a\bg\u0001"+ + "g\u0001g\u0001g\u0003g\u050f\bg\u0001g\u0001g\u0001g\u0001h\u0003h\u0515"+ + "\bh\u0001h\u0003h\u0518\bh\u0001i\u0001i\u0005i\u051c\bi\ni\fi\u051f\t"+ + "i\u0001i\u0001i\u0001j\u0001j\u0001j\u0001k\u0001k\u0001k\u0001l\u0001"+ + "l\u0003l\u052b\bl\u0001l\u0001l\u0001l\u0003l\u0530\bl\u0001m\u0001m\u0001"+ + "m\u0003m\u0535\bm\u0001m\u0003m\u0538\bm\u0001m\u0003m\u053b\bm\u0001"+ + "m\u0001m\u0001m\u0001m\u0001m\u0001m\u0001m\u0001m\u0001m\u0001m\u0003"+ + "m\u0547\bm\u0001m\u0001m\u0001m\u0003m\u054c\bm\u0001m\u0003m\u054f\b"+ + "m\u0001n\u0003n\u0552\bn\u0001n\u0003n\u0555\bn\u0001n\u0003n\u0558\b"+ + "n\u0001n\u0003n\u055b\bn\u0001o\u0001o\u0001o\u0001p\u0001p\u0003p\u0562"+ + "\bp\u0001p\u0003p\u0565\bp\u0001p\u0001p\u0001p\u0003p\u056a\bp\u0001"+ + "p\u0001p\u0001p\u0001p\u0001p\u0001q\u0003q\u0572\bq\u0001q\u0001q\u0001"+ + "q\u0003q\u0577\bq\u0001q\u0001q\u0003q\u057b\bq\u0001q\u0001q\u0001q\u0001"+ + "q\u0001q\u0001r\u0001r\u0001r\u0001r\u0005r\u0586\br\nr\fr\u0589\tr\u0001"+ + "r\u0003r\u058c\br\u0001r\u0001r\u0001s\u0001s\u0001s\u0001t\u0001t\u0001"+ + "t\u0001t\u0005t\u0597\bt\nt\ft\u059a\tt\u0001t\u0003t\u059d\bt\u0001t"+ + "\u0001t\u0001u\u0001u\u0001u\u0001u\u0001u\u0003u\u05a6\bu\u0001u\u0001"+ + "u\u0001u\u0001u\u0001u\u0001v\u0001v\u0003v\u05af\bv\u0001w\u0001w\u0001"+ + "w\u0001x\u0001x\u0001x\u0005x\u05b7\bx\nx\fx\u05ba\tx\u0001x\u0001x\u0003"+ + "x\u05be\bx\u0001x\u0003x\u05c1\bx\u0001x\u0001x\u0001x\u0001x\u0001x\u0003"+ + "x\u05c8\bx\u0003x\u05ca\bx\u0001y\u0003y\u05cd\by\u0001y\u0003y\u05d0"+ + "\by\u0001y\u0001y\u0003y\u05d4\by\u0001y\u0003y\u05d7\by\u0001y\u0001"+ + "y\u0003y\u05db\by\u0001z\u0001z\u0001z\u0003z\u05e0\bz\u0001{\u0003{\u05e3"+ + "\b{\u0001|\u0004|\u05e6\b|\u000b|\f|\u05e7\u0001}\u0001}\u0001}\u0001"+ + "}\u0001~\u0005~\u05ef\b~\n~\f~\u05f2\t~\u0001~\u0003~\u05f5\b~\u0001~"+ + "\u0004~\u05f8\b~\u000b~\f~\u05f9\u0001~\u0005~\u05fd\b~\n~\f~\u0600\t"+ + "~\u0001~\u0005~\u0603\b~\n~\f~\u0606\t~\u0001\u007f\u0003\u007f\u0609"+ + "\b\u007f\u0001\u007f\u0001\u007f\u0003\u007f\u060d\b\u007f\u0001\u007f"+ + "\u0003\u007f\u0610\b\u007f\u0001\u0080\u0001\u0080\u0001\u0080\u0001\u0080"+ + "\u0005\u0080\u0616\b\u0080\n\u0080\f\u0080\u0619\t\u0080\u0001\u0080\u0003"+ + "\u0080\u061c\b\u0080\u0003\u0080\u061e\b\u0080\u0001\u0080\u0001\u0080"+ + "\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081"+ + "\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081"+ + "\u0001\u0081\u0001\u0081\u0001\u0081\u0003\u0081\u0631\b\u0081\u0001\u0081"+ + "\u0001\u0081\u0003\u0081\u0635\b\u0081\u0001\u0082\u0001\u0082\u0001\u0082"+ + "\u0001\u0082\u0003\u0082\u063b\b\u0082\u0001\u0082\u0001\u0082\u0001\u0082"+ + "\u0001\u0082\u0001\u0083\u0001\u0083\u0001\u0083\u0003\u0083\u0644\b\u0083"+ + "\u0001\u0083\u0001\u0083\u0001\u0083\u0001\u0083\u0001\u0083\u0001\u0084"+ + "\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084"+ + "\u0003\u0084\u0652\b\u0084\u0001\u0085\u0001\u0085\u0001\u0085\u0003\u0085"+ + "\u0657\b\u0085\u0003\u0085\u0659\b\u0085\u0001\u0085\u0001\u0085\u0001"+ + "\u0086\u0001\u0086\u0001\u0086\u0005\u0086\u0660\b\u0086\n\u0086\f\u0086"+ + "\u0663\t\u0086\u0001\u0087\u0003\u0087\u0666\b\u0087\u0001\u0087\u0001"+ + "\u0087\u0003\u0087\u066a\b\u0087\u0001\u0088\u0001\u0088\u0001\u0088\u0005"+ + "\u0088\u066f\b\u0088\n\u0088\f\u0088\u0672\t\u0088\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0003\u0089\u0678\b\u0089\u0001\u0089\u0003\u0089"+ + "\u067b\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0003\u0089\u0683\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0003\u0089\u068a\b\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0003\u0089\u06a7\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0003\u0089\u06b3\b\u0089\u0003\u0089\u06b5\b\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0003\u0089\u06cd\b\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0003\u0089\u06fa\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ + "\u0089\u0001\u0089\u0001\u0089\u0003\u0089\u0702\b\u0089\u0001\u0089\u0001"+ + "\u0089\u0003\u0089\u0706\b\u0089\u0001\u0089\u0001\u0089\u0003\u0089\u070a"+ + "\b\u0089\u0001\u0089\u0001\u0089\u0003\u0089\u070e\b\u0089\u0001\u0089"+ + "\u0001\u0089\u0003\u0089\u0712\b\u0089\u0001\u0089\u0001\u0089\u0003\u0089"+ + "\u0716\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ + "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0005\u0089\u0727\b\u0089"+ + "\n\u0089\f\u0089\u072a\t\u0089\u0001\u008a\u0001\u008a\u0001\u008a\u0003"+ + "\u008a\u072f\b\u008a\u0001\u008a\u0003\u008a\u0732\b\u008a\u0001\u008b"+ + "\u0001\u008b\u0001\u008b\u0001\u008b\u0003\u008b\u0738\b\u008b\u0001\u008c"+ + "\u0001\u008c\u0003\u008c\u073c\b\u008c\u0001\u008c\u0001\u008c\u0003\u008c"+ + "\u0740\b\u008c\u0001\u008c\u0001\u008c\u0003\u008c\u0744\b\u008c\u0001"+ + "\u008c\u0001\u008c\u0003\u008c\u0748\b\u008c\u0001\u008c\u0001\u008c\u0001"+ + "\u008c\u0001\u008c\u0001\u008c\u0003\u008c\u074f\b\u008c\u0001\u008d\u0003"+ + "\u008d\u0752\b\u008d\u0001\u008d\u0001\u008d\u0003\u008d\u0756\b\u008d"+ + "\u0001\u008d\u0001\u008d\u0001\u008d\u0001\u008e\u0001\u008e\u0001\u008e"+ + "\u0003\u008e\u075e\b\u008e\u0001\u008e\u0003\u008e\u0761\b\u008e\u0001"+ + "\u008f\u0001\u008f\u0001\u008f\u0001\u008f\u0001\u008f\u0003\u008f\u0768"+ + "\b\u008f\u0001\u0090\u0001\u0090\u0001\u0091\u0001\u0091\u0001\u0091\u0001"+ + "\u0091\u0001\u0091\u0001\u0091\u0001\u0091\u0003\u0091\u0773\b\u0091\u0001"+ + "\u0092\u0001\u0092\u0005\u0092\u0777\b\u0092\n\u0092\f\u0092\u077a\t\u0092"+ + "\u0001\u0092\u0001\u0092\u0001\u0093\u0001\u0093\u0001\u0093\u0001\u0093"+ + "\u0001\u0093\u0001\u0093\u0003\u0093\u0784\b\u0093\u0001\u0094\u0001\u0094"+ + "\u0001\u0095\u0001\u0095\u0001\u0096\u0001\u0096\u0001\u0096\u0001\u0096"+ + "\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0098\u0001\u0098"+ + "\u0003\u0098\u0794\b\u0098\u0001\u0099\u0001\u0099\u0001\u009a\u0001\u009a"+ + "\u0001\u009a\u0003\u009a\u079b\b\u009a\u0001\u009b\u0001\u009b\u0001\u009b"+ + "\u0003\u009b\u07a0\b\u009b\u0001\u009c\u0001\u009c\u0001\u009d\u0001\u009d"+ + "\u0001\u009d\u0001\u009d\u0003\u009d\u07a8\b\u009d\u0001\u009d\u0000\u0004"+ + "\u0014\u0016n\u0112\u009e\u0000\u0002\u0004\u0006\b\n\f\u000e\u0010\u0012"+ + "\u0014\u0016\u0018\u001a\u001c\u001e \"$&(*,.02468:<>@BDFHJLNPRTVXZ\\"+ + "^`bdfhjlnprtvxz|~\u0080\u0082\u0084\u0086\u0088\u008a\u008c\u008e\u0090"+ + "\u0092\u0094\u0096\u0098\u009a\u009c\u009e\u00a0\u00a2\u00a4\u00a6\u00a8"+ + "\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6\u00b8\u00ba\u00bc\u00be\u00c0"+ + "\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc\u00ce\u00d0\u00d2\u00d4\u00d6\u00d8"+ + "\u00da\u00dc\u00de\u00e0\u00e2\u00e4\u00e6\u00e8\u00ea\u00ec\u00ee\u00f0"+ + "\u00f2\u00f4\u00f6\u00f8\u00fa\u00fc\u00fe\u0100\u0102\u0104\u0106\u0108"+ + "\u010a\u010c\u010e\u0110\u0112\u0114\u0116\u0118\u011a\u011c\u011e\u0120"+ + "\u0122\u0124\u0126\u0128\u012a\u012c\u012e\u0130\u0132\u0134\u0136\u0138"+ + "\u013a\u0000\u0011\u0002\u0000((**\u0001\u0000\u000b\f\u0002\u0000pqt"+ + "t\u0002\u0000wwzz\u0002\u0000de\u008a\u008a\u0003\u0000MMkkoo\u0001\u0000"+ + "ef\u0002\u0000\r\r\u0010\u0010\u0001\u0000\u0019\u001b\u0001\u0000\u0015"+ + "\u0016\u0001\u0000 #\u0001\u0000$\'\u0001\u0000-9\u0001\u0000=A\u0001"+ + "\u0000BE\u0006\u0000`acceev\u0083\u0087\u0087\u008a\u008a\u0006\u0000"+ + "Feguwwyz\u0081\u0081\u0084\u0085\u0896\u0000\u013c\u0001\u0000\u0000\u0000"+ + "\u0002\u0141\u0001\u0000\u0000\u0000\u0004\u0143\u0001\u0000\u0000\u0000"+ + "\u0006\u0149\u0001\u0000\u0000\u0000\b\u015a\u0001\u0000\u0000\u0000\n"+ + "\u015c\u0001\u0000\u0000\u0000\f\u015f\u0001\u0000\u0000\u0000\u000e\u0165"+ + "\u0001\u0000\u0000\u0000\u0010\u016d\u0001\u0000\u0000\u0000\u0012\u0176"+ + "\u0001\u0000\u0000\u0000\u0014\u0178\u0001\u0000\u0000\u0000\u0016\u019a"+ + "\u0001\u0000\u0000\u0000\u0018\u01b8\u0001\u0000\u0000\u0000\u001a\u01ba"+ + "\u0001\u0000\u0000\u0000\u001c\u01be\u0001\u0000\u0000\u0000\u001e\u01c7"+ + "\u0001\u0000\u0000\u0000 \u01c9\u0001\u0000\u0000\u0000\"\u01cf\u0001"+ + "\u0000\u0000\u0000$\u01d3\u0001\u0000\u0000\u0000&\u01e4\u0001\u0000\u0000"+ + "\u0000(\u01e6\u0001\u0000\u0000\u0000*\u01eb\u0001\u0000\u0000\u0000,"+ + "\u01ef\u0001\u0000\u0000\u0000.\u01fb\u0001\u0000\u0000\u00000\u0205\u0001"+ + "\u0000\u0000\u00002\u0211\u0001\u0000\u0000\u00004\u021e\u0001\u0000\u0000"+ + "\u00006\u0221\u0001\u0000\u0000\u00008\u022e\u0001\u0000\u0000\u0000:"+ + "\u0232\u0001\u0000\u0000\u0000<\u024c\u0001\u0000\u0000\u0000>\u024e\u0001"+ + "\u0000\u0000\u0000@\u0258\u0001\u0000\u0000\u0000B\u025b\u0001\u0000\u0000"+ + "\u0000D\u026b\u0001\u0000\u0000\u0000F\u0271\u0001\u0000\u0000\u0000H"+ + "\u027a\u0001\u0000\u0000\u0000J\u027e\u0001\u0000\u0000\u0000L\u0280\u0001"+ + "\u0000\u0000\u0000N\u028c\u0001\u0000\u0000\u0000P\u0293\u0001\u0000\u0000"+ + "\u0000R\u029a\u0001\u0000\u0000\u0000T\u02a6\u0001\u0000\u0000\u0000V"+ + "\u02b6\u0001\u0000\u0000\u0000X\u02c7\u0001\u0000\u0000\u0000Z\u02ca\u0001"+ + "\u0000\u0000\u0000\\\u02d3\u0001\u0000\u0000\u0000^\u02dd\u0001\u0000"+ + "\u0000\u0000`\u02e1\u0001\u0000\u0000\u0000b\u02e9\u0001\u0000\u0000\u0000"+ + "d\u02ef\u0001\u0000\u0000\u0000f\u02f9\u0001\u0000\u0000\u0000h\u0305"+ + "\u0001\u0000\u0000\u0000j\u030b\u0001\u0000\u0000\u0000l\u030f\u0001\u0000"+ + "\u0000\u0000n\u031a\u0001\u0000\u0000\u0000p\u0324\u0001\u0000\u0000\u0000"+ + "r\u0328\u0001\u0000\u0000\u0000t\u032d\u0001\u0000\u0000\u0000v\u034e"+ + "\u0001\u0000\u0000\u0000x\u0350\u0001\u0000\u0000\u0000z\u0357\u0001\u0000"+ + "\u0000\u0000|\u035b\u0001\u0000\u0000\u0000~\u0364\u0001\u0000\u0000\u0000"+ + "\u0080\u0373\u0001\u0000\u0000\u0000\u0082\u0375\u0001\u0000\u0000\u0000"+ + "\u0084\u0386\u0001\u0000\u0000\u0000\u0086\u038d\u0001\u0000\u0000\u0000"+ + "\u0088\u038f\u0001\u0000\u0000\u0000\u008a\u0391\u0001\u0000\u0000\u0000"+ + "\u008c\u0396\u0001\u0000\u0000\u0000\u008e\u039c\u0001\u0000\u0000\u0000"+ + "\u0090\u039f\u0001\u0000\u0000\u0000\u0092\u03b3\u0001\u0000\u0000\u0000"+ + "\u0094\u03bf\u0001\u0000\u0000\u0000\u0096\u03c1\u0001\u0000\u0000\u0000"+ + "\u0098\u03d2\u0001\u0000\u0000\u0000\u009a\u03da\u0001\u0000\u0000\u0000"+ + "\u009c\u03f9\u0001\u0000\u0000\u0000\u009e\u03fb\u0001\u0000\u0000\u0000"+ + "\u00a0\u0406\u0001\u0000\u0000\u0000\u00a2\u0415\u0001\u0000\u0000\u0000"+ + "\u00a4\u0417\u0001\u0000\u0000\u0000\u00a6\u041c\u0001\u0000\u0000\u0000"+ + "\u00a8\u0483\u0001\u0000\u0000\u0000\u00aa\u0485\u0001\u0000\u0000\u0000"+ + "\u00ac\u0487\u0001\u0000\u0000\u0000\u00ae\u048e\u0001\u0000\u0000\u0000"+ + "\u00b0\u0495\u0001\u0000\u0000\u0000\u00b2\u049c\u0001\u0000\u0000\u0000"+ + "\u00b4\u04a3\u0001\u0000\u0000\u0000\u00b6\u04a9\u0001\u0000\u0000\u0000"+ + "\u00b8\u04af\u0001\u0000\u0000\u0000\u00ba\u04bc\u0001\u0000\u0000\u0000"+ + "\u00bc\u04c0\u0001\u0000\u0000\u0000\u00be\u04c6\u0001\u0000\u0000\u0000"+ + "\u00c0\u04cb\u0001\u0000\u0000\u0000\u00c2\u04cf\u0001\u0000\u0000\u0000"+ + "\u00c4\u04d4\u0001\u0000\u0000\u0000\u00c6\u04dd\u0001\u0000\u0000\u0000"+ + "\u00c8\u04e9\u0001\u0000\u0000\u0000\u00ca\u04ec\u0001\u0000\u0000\u0000"+ + "\u00cc\u04f0\u0001\u0000\u0000\u0000\u00ce\u0500\u0001\u0000\u0000\u0000"+ + "\u00d0\u0514\u0001\u0000\u0000\u0000\u00d2\u0519\u0001\u0000\u0000\u0000"+ + "\u00d4\u0522\u0001\u0000\u0000\u0000\u00d6\u0525\u0001\u0000\u0000\u0000"+ + "\u00d8\u052f\u0001\u0000\u0000\u0000\u00da\u054e\u0001\u0000\u0000\u0000"+ + "\u00dc\u0551\u0001\u0000\u0000\u0000\u00de\u055c\u0001\u0000\u0000\u0000"+ + "\u00e0\u0561\u0001\u0000\u0000\u0000\u00e2\u0571\u0001\u0000\u0000\u0000"+ + "\u00e4\u0581\u0001\u0000\u0000\u0000\u00e6\u058f\u0001\u0000\u0000\u0000"+ + "\u00e8\u0592\u0001\u0000\u0000\u0000\u00ea\u05a0\u0001\u0000\u0000\u0000"+ + "\u00ec\u05ae\u0001\u0000\u0000\u0000\u00ee\u05b0\u0001\u0000\u0000\u0000"+ + "\u00f0\u05c9\u0001\u0000\u0000\u0000\u00f2\u05cc\u0001\u0000\u0000\u0000"+ + "\u00f4\u05dc\u0001\u0000\u0000\u0000\u00f6\u05e2\u0001\u0000\u0000\u0000"+ + "\u00f8\u05e5\u0001\u0000\u0000\u0000\u00fa\u05e9\u0001\u0000\u0000\u0000"+ + "\u00fc\u05f0\u0001\u0000\u0000\u0000\u00fe\u0608\u0001\u0000\u0000\u0000"+ + "\u0100\u0611\u0001\u0000\u0000\u0000\u0102\u0634\u0001\u0000\u0000\u0000"+ + "\u0104\u0636\u0001\u0000\u0000\u0000\u0106\u0640\u0001\u0000\u0000\u0000"+ + "\u0108\u0651\u0001\u0000\u0000\u0000\u010a\u0653\u0001\u0000\u0000\u0000"+ + "\u010c\u065c\u0001\u0000\u0000\u0000\u010e\u0665\u0001\u0000\u0000\u0000"+ + "\u0110\u066b\u0001\u0000\u0000\u0000\u0112\u06b4\u0001\u0000\u0000\u0000"+ + "\u0114\u0731\u0001\u0000\u0000\u0000\u0116\u0737\u0001\u0000\u0000\u0000"+ + "\u0118\u074e\u0001\u0000\u0000\u0000\u011a\u0751\u0001\u0000\u0000\u0000"+ + "\u011c\u0760\u0001\u0000\u0000\u0000\u011e\u0767\u0001\u0000\u0000\u0000"+ + "\u0120\u0769\u0001\u0000\u0000\u0000\u0122\u0772\u0001\u0000\u0000\u0000"+ + "\u0124\u0774\u0001\u0000\u0000\u0000\u0126\u0783\u0001\u0000\u0000\u0000"+ + "\u0128\u0785\u0001\u0000\u0000\u0000\u012a\u0787\u0001\u0000\u0000\u0000"+ + "\u012c\u0789\u0001\u0000\u0000\u0000\u012e\u078d\u0001\u0000\u0000\u0000"+ + "\u0130\u0793\u0001\u0000\u0000\u0000\u0132\u0795\u0001\u0000\u0000\u0000"+ + "\u0134\u079a\u0001\u0000\u0000\u0000\u0136\u079f\u0001\u0000\u0000\u0000"+ + "\u0138\u07a1\u0001\u0000\u0000\u0000\u013a\u07a7\u0001\u0000\u0000\u0000"+ + "\u013c\u013d\u0005\r\u0000\u0000\u013d\u013e\u0003\u0112\u0089\u0000\u013e"+ + "\u0001\u0001\u0000\u0000\u0000\u013f\u0142\u0003\u00fa}\u0000\u0140\u0142"+ + "\u0003\u0100\u0080\u0000\u0141\u013f\u0001\u0000\u0000\u0000\u0141\u0140"+ + "\u0001\u0000\u0000\u0000\u0142\u0003\u0001\u0000\u0000\u0000\u0143\u0145"+ + "\u0005 \u0000\u0000\u0144\u0146\u0003\u0006\u0003\u0000\u0145\u0144\u0001"+ + "\u0000\u0000\u0000\u0145\u0146\u0001\u0000\u0000\u0000\u0146\u0147\u0001"+ + "\u0000\u0000\u0000\u0147\u0148\u0005!\u0000\u0000\u0148\u0005\u0001\u0000"+ + "\u0000\u0000\u0149\u014e\u0003\b\u0004\u0000\u014a\u014b\u0005\f\u0000"+ + "\u0000\u014b\u014d\u0003\b\u0004\u0000\u014c\u014a\u0001\u0000\u0000\u0000"+ + "\u014d\u0150\u0001\u0000\u0000\u0000\u014e\u014c\u0001\u0000\u0000\u0000"+ + "\u014e\u014f\u0001\u0000\u0000\u0000\u014f\u0007\u0001\u0000\u0000\u0000"+ + "\u0150\u014e\u0001\u0000\u0000\u0000\u0151\u0153\u0003\u0132\u0099\u0000"+ + "\u0152\u0154\u0003\n\u0005\u0000\u0153\u0152\u0001\u0000\u0000\u0000\u0153"+ + "\u0154\u0001\u0000\u0000\u0000\u0154\u015b\u0001\u0000\u0000\u0000\u0155"+ + "\u0156\u0003\u0132\u0099\u0000\u0156\u0157\u0005\r\u0000\u0000\u0157\u0158"+ + "\u0003\u0010\b\u0000\u0158\u015b\u0001\u0000\u0000\u0000\u0159\u015b\u0003"+ + "\u0004\u0002\u0000\u015a\u0151\u0001\u0000\u0000\u0000\u015a\u0155\u0001"+ + "\u0000\u0000\u0000\u015a\u0159\u0001\u0000\u0000\u0000\u015b\t\u0001\u0000"+ + "\u0000\u0000\u015c\u015d\u0005i\u0000\u0000\u015d\u015e\u0003\u0012\t"+ + "\u0000\u015e\u000b\u0001\u0000\u0000\u0000\u015f\u0161\u0005 \u0000\u0000"+ + "\u0160\u0162\u0003\u000e\u0007\u0000\u0161\u0160\u0001\u0000\u0000\u0000"+ + "\u0161\u0162\u0001\u0000\u0000\u0000\u0162\u0163\u0001\u0000\u0000\u0000"+ + "\u0163\u0164\u0005!\u0000\u0000\u0164\r\u0001\u0000\u0000\u0000\u0165"+ + "\u016a\u0003\u0010\b\u0000\u0166\u0167\u0005\f\u0000\u0000\u0167\u0169"+ + "\u0003\u0010\b\u0000\u0168\u0166\u0001\u0000\u0000\u0000\u0169\u016c\u0001"+ + "\u0000\u0000\u0000\u016a\u0168\u0001\u0000\u0000\u0000\u016a\u016b\u0001"+ + "\u0000\u0000\u0000\u016b\u000f\u0001\u0000\u0000\u0000\u016c\u016a\u0001"+ + "\u0000\u0000\u0000\u016d\u016e\u0003\u0012\t\u0000\u016e\u0011\u0001\u0000"+ + "\u0000\u0000\u016f\u0171\u0007\u0000\u0000\u0000\u0170\u016f\u0001\u0000"+ + "\u0000\u0000\u0170\u0171\u0001\u0000\u0000\u0000\u0171\u0172\u0001\u0000"+ + "\u0000\u0000\u0172\u0177\u0003\u0014\n\u0000\u0173\u0177\u0003.\u0017"+ + "\u0000\u0174\u0177\u00030\u0018\u0000\u0175\u0177\u0003\u001c\u000e\u0000"+ + "\u0176\u0170\u0001\u0000\u0000\u0000\u0176\u0173\u0001\u0000\u0000\u0000"+ + "\u0176\u0174\u0001\u0000\u0000\u0000\u0176\u0175\u0001\u0000\u0000\u0000"+ + "\u0177\u0013\u0001\u0000\u0000\u0000\u0178\u0179\u0006\n\uffff\uffff\u0000"+ + "\u0179\u017a\u0003\u0016\u000b\u0000\u017a\u0183\u0001\u0000\u0000\u0000"+ + "\u017b\u017c\n\u0003\u0000\u0000\u017c\u017d\u0005*\u0000\u0000\u017d"+ + "\u0182\u0003\u0014\n\u0004\u017e\u017f\n\u0002\u0000\u0000\u017f\u0180"+ + "\u0005(\u0000\u0000\u0180\u0182\u0003\u0014\n\u0003\u0181\u017b\u0001"+ + "\u0000\u0000\u0000\u0181\u017e\u0001\u0000\u0000\u0000\u0182\u0185\u0001"+ + "\u0000\u0000\u0000\u0183\u0181\u0001\u0000\u0000\u0000\u0183\u0184\u0001"+ + "\u0000\u0000\u0000\u0184\u0015\u0001\u0000\u0000\u0000\u0185\u0183\u0001"+ + "\u0000\u0000\u0000\u0186\u0187\u0006\u000b\uffff\uffff\u0000\u0187\u0188"+ + "\u0005\u0006\u0000\u0000\u0188\u0189\u0003\u0012\t\u0000\u0189\u018a\u0005"+ + "\u0007\u0000\u0000\u018a\u019b\u0001\u0000\u0000\u0000\u018b\u019b\u0003"+ + "\u0018\f\u0000\u018c\u019b\u0003\u001a\r\u0000\u018d\u019b\u0003 \u0010"+ + "\u0000\u018e\u018f\u0005\u0004\u0000\u0000\u018f\u0190\u0003,\u0016\u0000"+ + "\u0190\u0191\u0005\u0005\u0000\u0000\u0191\u019b\u0001\u0000\u0000\u0000"+ + "\u0192\u019b\u00032\u0019\u0000\u0193\u019b\u0005X\u0000\u0000\u0194\u0195"+ + "\u0003\u001a\r\u0000\u0195\u0196\u0005\u0088\u0000\u0000\u0196\u0197\u0003"+ + "\u0016\u000b\u0002\u0197\u019b\u0001\u0000\u0000\u0000\u0198\u0199\u0005"+ + "\u0080\u0000\u0000\u0199\u019b\u0003\u0016\u000b\u0001\u019a\u0186\u0001"+ + "\u0000\u0000\u0000\u019a\u018b\u0001\u0000\u0000\u0000\u019a\u018c\u0001"+ + "\u0000\u0000\u0000\u019a\u018d\u0001\u0000\u0000\u0000\u019a\u018e\u0001"+ + "\u0000\u0000\u0000\u019a\u0192\u0001\u0000\u0000\u0000\u019a\u0193\u0001"+ + "\u0000\u0000\u0000\u019a\u0194\u0001\u0000\u0000\u0000\u019a\u0198\u0001"+ + "\u0000\u0000\u0000\u019b\u01a5\u0001\u0000\u0000\u0000\u019c\u019d\n\u0006"+ + "\u0000\u0000\u019d\u019e\u0004\u000b\u0003\u0000\u019e\u01a0\u0005\u0004"+ + "\u0000\u0000\u019f\u01a1\u0003\u0016\u000b\u0000\u01a0\u019f\u0001\u0000"+ + "\u0000\u0000\u01a0\u01a1\u0001\u0000\u0000\u0000\u01a1\u01a2\u0001\u0000"+ + "\u0000\u0000\u01a2\u01a4\u0005\u0005\u0000\u0000\u01a3\u019c\u0001\u0000"+ + "\u0000\u0000\u01a4\u01a7\u0001\u0000\u0000\u0000\u01a5\u01a3\u0001\u0000"+ + "\u0000\u0000\u01a5\u01a6\u0001\u0000\u0000\u0000\u01a6\u0017\u0001\u0000"+ + "\u0000\u0000\u01a7\u01a5\u0001\u0000\u0000\u0000\u01a8\u01b9\u0005v\u0000"+ + "\u0000\u01a9\u01b9\u0005;\u0000\u0000\u01aa\u01b9\u0005w\u0000\u0000\u01ab"+ + "\u01b9\u0005=\u0000\u0000\u01ac\u01b9\u0005y\u0000\u0000\u01ad\u01b9\u0005"+ + "<\u0000\u0000\u01ae\u01b9\u0005z\u0000\u0000\u01af\u01b9\u0005\u008b\u0000"+ + "\u0000\u01b0\u01b2\u0005{\u0000\u0000\u01b1\u01b0\u0001\u0000\u0000\u0000"+ + "\u01b1\u01b2\u0001\u0000\u0000\u0000\u01b2\u01b3\u0001\u0000\u0000\u0000"+ + "\u01b3\u01b9\u0005|\u0000\u0000\u01b4\u01b9\u0005x\u0000\u0000\u01b5\u01b9"+ + "\u0005}\u0000\u0000\u01b6\u01b9\u0005~\u0000\u0000\u01b7\u01b9\u0005Q"+ + "\u0000\u0000\u01b8\u01a8\u0001\u0000\u0000\u0000\u01b8\u01a9\u0001\u0000"+ + "\u0000\u0000\u01b8\u01aa\u0001\u0000\u0000\u0000\u01b8\u01ab\u0001\u0000"+ + "\u0000\u0000\u01b8\u01ac\u0001\u0000\u0000\u0000\u01b8\u01ad\u0001\u0000"+ + "\u0000\u0000\u01b8\u01ae\u0001\u0000\u0000\u0000\u01b8\u01af\u0001\u0000"+ + "\u0000\u0000\u01b8\u01b1\u0001\u0000\u0000\u0000\u01b8\u01b4\u0001\u0000"+ + "\u0000\u0000\u01b8\u01b5\u0001\u0000\u0000\u0000\u01b8\u01b6\u0001\u0000"+ + "\u0000\u0000\u01b8\u01b7\u0001\u0000\u0000\u0000\u01b9\u0019\u0001\u0000"+ + "\u0000\u0000\u01ba\u01bc\u0003\u001e\u000f\u0000\u01bb\u01bd\u0003\u001c"+ + "\u000e\u0000\u01bc\u01bb\u0001\u0000\u0000\u0000\u01bc\u01bd\u0001\u0000"+ + "\u0000\u0000\u01bd\u001b\u0001\u0000\u0000\u0000\u01be\u01bf\u0005 \u0000"+ + "\u0000\u01bf\u01c1\u0003\u000e\u0007\u0000\u01c0\u01c2\u0003\u001c\u000e"+ + "\u0000\u01c1\u01c0\u0001\u0000\u0000\u0000\u01c1\u01c2\u0001\u0000\u0000"+ + "\u0000\u01c2\u01c3\u0001\u0000\u0000\u0000\u01c3\u01c4\u0005!\u0000\u0000"+ + "\u01c4\u001d\u0001\u0000\u0000\u0000\u01c5\u01c8\u0003\u0132\u0099\u0000"+ + "\u01c6\u01c8\u0003f3\u0000\u01c7\u01c5\u0001\u0000\u0000\u0000\u01c7\u01c6"+ + "\u0001\u0000\u0000\u0000\u01c8\u001f\u0001\u0000\u0000\u0000\u01c9\u01cb"+ + "\u0005\b\u0000\u0000\u01ca\u01cc\u0003\"\u0011\u0000\u01cb\u01ca\u0001"+ + "\u0000\u0000\u0000\u01cb\u01cc\u0001\u0000\u0000\u0000\u01cc\u01cd\u0001"+ + "\u0000\u0000\u0000\u01cd\u01ce\u0005\n\u0000\u0000\u01ce!\u0001\u0000"+ + "\u0000\u0000\u01cf\u01d1\u0003$\u0012\u0000\u01d0\u01d2\u0007\u0001\u0000"+ + "\u0000\u01d1\u01d0\u0001\u0000\u0000\u0000\u01d1\u01d2\u0001\u0000\u0000"+ + "\u0000\u01d2#\u0001\u0000\u0000\u0000\u01d3\u01d8\u0003&\u0013\u0000\u01d4"+ + "\u01d5\u0007\u0001\u0000\u0000\u01d5\u01d7\u0003&\u0013\u0000\u01d6\u01d4"+ + "\u0001\u0000\u0000\u0000\u01d7\u01da\u0001\u0000\u0000\u0000\u01d8\u01d6"+ + "\u0001\u0000\u0000\u0000\u01d8\u01d9\u0001\u0000\u0000\u0000\u01d9%\u0001"+ + "\u0000\u0000\u0000\u01da\u01d8\u0001\u0000\u0000\u0000\u01db\u01e5\u0003"+ + "6\u001b\u0000\u01dc\u01e5\u0003:\u001d\u0000\u01dd\u01e5\u0003L&\u0000"+ + "\u01de\u01e5\u0003N\'\u0000\u01df\u01e2\u0003P(\u0000\u01e0\u01e1\u0005"+ + ":\u0000\u0000\u01e1\u01e3\u0003\u0012\t\u0000\u01e2\u01e0\u0001\u0000"+ + "\u0000\u0000\u01e2\u01e3\u0001\u0000\u0000\u0000\u01e3\u01e5\u0001\u0000"+ + "\u0000\u0000\u01e4\u01db\u0001\u0000\u0000\u0000\u01e4\u01dc\u0001\u0000"+ + "\u0000\u0000\u01e4\u01dd\u0001\u0000\u0000\u0000\u01e4\u01de\u0001\u0000"+ + "\u0000\u0000\u01e4\u01df\u0001\u0000\u0000\u0000\u01e5\'\u0001\u0000\u0000"+ + "\u0000\u01e6\u01e7\u0003\u0016\u000b\u0000\u01e7\u01e8\u0004\u0014\u0004"+ + "\u0000\u01e8\u01e9\u0005\u0004\u0000\u0000\u01e9\u01ea\u0005\u0005\u0000"+ + "\u0000\u01ea)\u0001\u0000\u0000\u0000\u01eb\u01ec\u0005\u0004\u0000\u0000"+ + "\u01ec\u01ed\u0003,\u0016\u0000\u01ed\u01ee\u0005\u0005\u0000\u0000\u01ee"+ + "+\u0001\u0000\u0000\u0000\u01ef\u01f4\u0003\u0012\t\u0000\u01f0\u01f1"+ + "\u0005\f\u0000\u0000\u01f1\u01f3\u0003\u0012\t\u0000\u01f2\u01f0\u0001"+ + "\u0000\u0000\u0000\u01f3\u01f6\u0001\u0000\u0000\u0000\u01f4\u01f2\u0001"+ + "\u0000\u0000\u0000\u01f4\u01f5\u0001\u0000\u0000\u0000\u01f5\u01f8\u0001"+ + "\u0000\u0000\u0000\u01f6\u01f4\u0001\u0000\u0000\u0000\u01f7\u01f9\u0005"+ + "\f\u0000\u0000\u01f8\u01f7\u0001\u0000\u0000\u0000\u01f8\u01f9\u0001\u0000"+ + "\u0000\u0000\u01f9-\u0001\u0000\u0000\u0000\u01fa\u01fc\u0003\u0004\u0002"+ + "\u0000\u01fb\u01fa\u0001\u0000\u0000\u0000\u01fb\u01fc\u0001\u0000\u0000"+ + "\u0000\u01fc\u01fd\u0001\u0000\u0000\u0000\u01fd\u01ff\u0005\u0006\u0000"+ + "\u0000\u01fe\u0200\u0003<\u001e\u0000\u01ff\u01fe\u0001\u0000\u0000\u0000"+ + "\u01ff\u0200\u0001\u0000\u0000\u0000\u0200\u0201\u0001\u0000\u0000\u0000"+ + "\u0201\u0202\u0005\u0007\u0000\u0000\u0202\u0203\u0005:\u0000\u0000\u0203"+ + "\u0204\u0003\u0012\t\u0000\u0204/\u0001\u0000\u0000\u0000\u0205\u0207"+ + "\u0005L\u0000\u0000\u0206\u0208\u0003\u0004\u0002\u0000\u0207\u0206\u0001"+ + "\u0000\u0000\u0000\u0207\u0208\u0001\u0000\u0000\u0000\u0208\u0209\u0001"+ + "\u0000\u0000\u0000\u0209\u020b\u0005\u0006\u0000\u0000\u020a\u020c\u0003"+ + "<\u001e\u0000\u020b\u020a\u0001\u0000\u0000\u0000\u020b\u020c\u0001\u0000"+ + "\u0000\u0000\u020c\u020d\u0001\u0000\u0000\u0000\u020d\u020e\u0005\u0007"+ + "\u0000\u0000\u020e\u020f\u0005:\u0000\u0000\u020f\u0210\u0003\u0012\t"+ + "\u0000\u02101\u0001\u0000\u0000\u0000\u0211\u0212\u0005I\u0000\u0000\u0212"+ + "\u0213\u00034\u001a\u0000\u02133\u0001\u0000\u0000\u0000\u0214\u021f\u0003"+ + "\u0132\u0099\u0000\u0215\u0216\u0003\u0130\u0098\u0000\u0216\u0217\u0005"+ + "\u0012\u0000\u0000\u0217\u0219\u0001\u0000\u0000\u0000\u0218\u0215\u0001"+ + "\u0000\u0000\u0000\u0219\u021a\u0001\u0000\u0000\u0000\u021a\u0218\u0001"+ + "\u0000\u0000\u0000\u021a\u021b\u0001\u0000\u0000\u0000\u021b\u021c\u0001"+ + "\u0000\u0000\u0000\u021c\u021d\u0003\u0130\u0098\u0000\u021d\u021f\u0001"+ + "\u0000\u0000\u0000\u021e\u0214\u0001\u0000\u0000\u0000\u021e\u0218\u0001"+ + "\u0000\u0000\u0000\u021f5\u0001\u0000\u0000\u0000\u0220\u0222\u0005b\u0000"+ + "\u0000\u0221\u0220\u0001\u0000\u0000\u0000\u0221\u0222\u0001\u0000\u0000"+ + "\u0000\u0222\u0223\u0001\u0000\u0000\u0000\u0223\u0225\u0003\u0108\u0084"+ + "\u0000\u0224\u0226\u0005\u000e\u0000\u0000\u0225\u0224\u0001\u0000\u0000"+ + "\u0000\u0225\u0226\u0001\u0000\u0000\u0000\u0226\u0228\u0001\u0000\u0000"+ + "\u0000\u0227\u0229\u00038\u001c\u0000\u0228\u0227\u0001\u0000\u0000\u0000"+ + "\u0228\u0229\u0001\u0000\u0000\u0000\u0229\u022c\u0001\u0000\u0000\u0000"+ + "\u022a\u022b\u0005:\u0000\u0000\u022b\u022d\u0003\u0012\t\u0000\u022c"+ + "\u022a\u0001\u0000\u0000\u0000\u022c\u022d\u0001\u0000\u0000\u0000\u022d"+ + "7\u0001\u0000\u0000\u0000\u022e\u022f\u0005\u0010\u0000\u0000\u022f\u0230"+ + "\u0003\u0012\t\u0000\u02309\u0001\u0000\u0000\u0000\u0231\u0233\u0003"+ + "\u0004\u0002\u0000\u0232\u0231\u0001\u0000\u0000\u0000\u0232\u0233\u0001"+ + "\u0000\u0000\u0000\u0233\u0234\u0001\u0000\u0000\u0000\u0234\u0236\u0005"+ + "\u0006\u0000\u0000\u0235\u0237\u0003<\u001e\u0000\u0236\u0235\u0001\u0000"+ + "\u0000\u0000\u0236\u0237\u0001\u0000\u0000\u0000\u0237\u0238\u0001\u0000"+ + "\u0000\u0000\u0238\u023a\u0005\u0007\u0000\u0000\u0239\u023b\u00038\u001c"+ + "\u0000\u023a\u0239\u0001\u0000\u0000\u0000\u023a\u023b\u0001\u0000\u0000"+ + "\u0000\u023b;\u0001\u0000\u0000\u0000\u023c\u024d\u0003D\"\u0000\u023d"+ + "\u0242\u0003@ \u0000\u023e\u023f\u0005\f\u0000\u0000\u023f\u0241\u0003"+ + "@ \u0000\u0240\u023e\u0001\u0000\u0000\u0000\u0241\u0244\u0001\u0000\u0000"+ + "\u0000\u0242\u0240\u0001\u0000\u0000\u0000\u0242\u0243\u0001\u0000\u0000"+ + "\u0000\u0243\u0247\u0001\u0000\u0000\u0000\u0244\u0242\u0001\u0000\u0000"+ + "\u0000\u0245\u0246\u0005\f\u0000\u0000\u0246\u0248\u0003D\"\u0000\u0247"+ + "\u0245\u0001\u0000\u0000\u0000\u0247\u0248\u0001\u0000\u0000\u0000\u0248"+ + "\u024a\u0001\u0000\u0000\u0000\u0249\u024b\u0005\f\u0000\u0000\u024a\u0249"+ + "\u0001\u0000\u0000\u0000\u024a\u024b\u0001\u0000\u0000\u0000\u024b\u024d"+ + "\u0001\u0000\u0000\u0000\u024c\u023c\u0001\u0000\u0000\u0000\u024c\u023d"+ + "\u0001\u0000\u0000\u0000\u024d=\u0001\u0000\u0000\u0000\u024e\u0253\u0003"+ + "F#\u0000\u024f\u0250\u0005\f\u0000\u0000\u0250\u0252\u0003F#\u0000\u0251"+ + "\u024f\u0001\u0000\u0000\u0000\u0252\u0255\u0001\u0000\u0000\u0000\u0253"+ + "\u0251\u0001\u0000\u0000\u0000\u0253\u0254\u0001\u0000\u0000\u0000\u0254"+ + "?\u0001\u0000\u0000\u0000\u0255\u0253\u0001\u0000\u0000\u0000\u0256\u0259"+ + "\u0003F#\u0000\u0257\u0259\u0003B!\u0000\u0258\u0256\u0001\u0000\u0000"+ + "\u0000\u0258\u0257\u0001\u0000\u0000\u0000\u0259A\u0001\u0000\u0000\u0000"+ + "\u025a\u025c\u0003j5\u0000\u025b\u025a\u0001\u0000\u0000\u0000\u025b\u025c"+ + "\u0001\u0000\u0000\u0000\u025c\u025e\u0001\u0000\u0000\u0000\u025d\u025f"+ + "\u0003H$\u0000\u025e\u025d\u0001\u0000\u0000\u0000\u025e\u025f\u0001\u0000"+ + "\u0000\u0000\u025f\u0260\u0001\u0000\u0000\u0000\u0260\u0269\u0003J%\u0000"+ + "\u0261\u0263\u0005\u000e\u0000\u0000\u0262\u0264\u00038\u001c\u0000\u0263"+ + "\u0262\u0001\u0000\u0000\u0000\u0263\u0264\u0001\u0000\u0000\u0000\u0264"+ + "\u026a\u0001\u0000\u0000\u0000\u0265\u0267\u00038\u001c\u0000\u0266\u0265"+ + "\u0001\u0000\u0000\u0000\u0266\u0267\u0001\u0000\u0000\u0000\u0267\u0268"+ + "\u0001\u0000\u0000\u0000\u0268\u026a\u0003\u0000\u0000\u0000\u0269\u0261"+ + "\u0001\u0000\u0000\u0000\u0269\u0266\u0001\u0000\u0000\u0000\u026aC\u0001"+ + "\u0000\u0000\u0000\u026b\u026c\u0005\u0011\u0000\u0000\u026c\u026e\u0003"+ + "\u0112\u0089\u0000\u026d\u026f\u00038\u001c\u0000\u026e\u026d\u0001\u0000"+ + "\u0000\u0000\u026e\u026f\u0001\u0000\u0000\u0000\u026fE\u0001\u0000\u0000"+ + "\u0000\u0270\u0272\u0003j5\u0000\u0271\u0270\u0001\u0000\u0000\u0000\u0271"+ + "\u0272\u0001\u0000\u0000\u0000\u0272\u0274\u0001\u0000\u0000\u0000\u0273"+ + "\u0275\u0003H$\u0000\u0274\u0273\u0001\u0000\u0000\u0000\u0274\u0275\u0001"+ + "\u0000\u0000\u0000\u0275\u0276\u0001\u0000\u0000\u0000\u0276\u0278\u0003"+ + "J%\u0000\u0277\u0279\u00038\u001c\u0000\u0278\u0277\u0001\u0000\u0000"+ + "\u0000\u0278\u0279\u0001\u0000\u0000\u0000\u0279G\u0001\u0000\u0000\u0000"+ + "\u027a\u027b\u0007\u0002\u0000\u0000\u027bI\u0001\u0000\u0000\u0000\u027c"+ + "\u027f\u0003\u0130\u0098\u0000\u027d\u027f\u0003\u0002\u0001\u0000\u027e"+ + "\u027c\u0001\u0000\u0000\u0000\u027e\u027d\u0001\u0000\u0000\u0000\u027f"+ + "K\u0001\u0000\u0000\u0000\u0280\u0282\u0005L\u0000\u0000\u0281\u0283\u0003"+ + "\u0004\u0002\u0000\u0282\u0281\u0001\u0000\u0000\u0000\u0282\u0283\u0001"+ + "\u0000\u0000\u0000\u0283\u0284\u0001\u0000\u0000\u0000\u0284\u0286\u0005"+ + "\u0006\u0000\u0000\u0285\u0287\u0003<\u001e\u0000\u0286\u0285\u0001\u0000"+ + "\u0000\u0000\u0286\u0287\u0001\u0000\u0000\u0000\u0287\u0288\u0001\u0000"+ + "\u0000\u0000\u0288\u028a\u0005\u0007\u0000\u0000\u0289\u028b\u00038\u001c"+ + "\u0000\u028a\u0289\u0001\u0000\u0000\u0000\u028a\u028b\u0001\u0000\u0000"+ + "\u0000\u028bM\u0001\u0000\u0000\u0000\u028c\u028d\u0005\u0004\u0000\u0000"+ + "\u028d\u028e\u0003\u0132\u0099\u0000\u028e\u028f\u0005\u0010\u0000\u0000"+ + "\u028f\u0290\u0007\u0003\u0000\u0000\u0290\u0291\u0005\u0005\u0000\u0000"+ + "\u0291\u0292\u00038\u001c\u0000\u0292O\u0001\u0000\u0000\u0000\u0293\u0295"+ + "\u0003\u0108\u0084\u0000\u0294\u0296\u0005\u000e\u0000\u0000\u0295\u0294"+ + "\u0001\u0000\u0000\u0000\u0295\u0296\u0001\u0000\u0000\u0000\u0296\u0297"+ + "\u0001\u0000\u0000\u0000\u0297\u0298\u0003:\u001d\u0000\u0298Q\u0001\u0000"+ + "\u0000\u0000\u0299\u029b\u0005l\u0000\u0000\u029a\u0299\u0001\u0000\u0000"+ + "\u0000\u029a\u029b\u0001\u0000\u0000\u0000\u029b\u029c\u0001\u0000\u0000"+ + "\u0000\u029c\u029d\u0005\u0081\u0000\u0000\u029d\u029f\u0003\u0132\u0099"+ + "\u0000\u029e\u02a0\u0003\u0004\u0002\u0000\u029f\u029e\u0001\u0000\u0000"+ + "\u0000\u029f\u02a0\u0001\u0000\u0000\u0000\u02a0\u02a1\u0001\u0000\u0000"+ + "\u0000\u02a1\u02a2\u0005\r\u0000\u0000\u02a2\u02a3\u0003\u0012\t\u0000"+ + "\u02a3\u02a4\u0003\u013a\u009d\u0000\u02a4S\u0001\u0000\u0000\u0000\u02a5"+ + "\u02a7\u0003H$\u0000\u02a6\u02a5\u0001\u0000\u0000\u0000\u02a6\u02a7\u0001"+ + "\u0000\u0000\u0000\u02a7\u02a8\u0001\u0000\u0000\u0000\u02a8\u02a9\u0005"+ + "\u0082\u0000\u0000\u02a9\u02ab\u0005\u0006\u0000\u0000\u02aa\u02ac\u0003"+ + "\u00f0x\u0000\u02ab\u02aa\u0001\u0000\u0000\u0000\u02ab\u02ac\u0001\u0000"+ + "\u0000\u0000\u02ac\u02ad\u0001\u0000\u0000\u0000\u02ad\u02b3\u0005\u0007"+ + "\u0000\u0000\u02ae\u02af\u0005\b\u0000\u0000\u02af\u02b0\u0003\u00f6{"+ + "\u0000\u02b0\u02b1\u0005\n\u0000\u0000\u02b1\u02b4\u0001\u0000\u0000\u0000"+ + "\u02b2\u02b4\u0005\u000b\u0000\u0000\u02b3\u02ae\u0001\u0000\u0000\u0000"+ + "\u02b3\u02b2\u0001\u0000\u0000\u0000\u02b3\u02b4\u0001\u0000\u0000\u0000"+ + "\u02b4U\u0001\u0000\u0000\u0000\u02b5\u02b7\u0005l\u0000\u0000\u02b6\u02b5"+ + "\u0001\u0000\u0000\u0000\u02b6\u02b7\u0001\u0000\u0000\u0000\u02b7\u02b9"+ + "\u0001\u0000\u0000\u0000\u02b8\u02ba\u0005\u0086\u0000\u0000\u02b9\u02b8"+ + "\u0001\u0000\u0000\u0000\u02b9\u02ba\u0001\u0000\u0000\u0000\u02ba\u02bb"+ + "\u0001\u0000\u0000\u0000\u02bb\u02bc\u0005r\u0000\u0000\u02bc\u02be\u0003"+ + "\u0132\u0099\u0000\u02bd\u02bf\u0003\u0004\u0002\u0000\u02be\u02bd\u0001"+ + "\u0000\u0000\u0000\u02be\u02bf\u0001\u0000\u0000\u0000\u02bf\u02c1\u0001"+ + "\u0000\u0000\u0000\u02c0\u02c2\u0003X,\u0000\u02c1\u02c0\u0001\u0000\u0000"+ + "\u0000\u02c1\u02c2\u0001\u0000\u0000\u0000\u02c2\u02c3\u0001\u0000\u0000"+ + "\u0000\u02c3\u02c5\u0003 \u0010\u0000\u02c4\u02c6\u0005\u000b\u0000\u0000"+ + "\u02c5\u02c4\u0001\u0000\u0000\u0000\u02c5\u02c6\u0001\u0000\u0000\u0000"+ + "\u02c6W\u0001\u0000\u0000\u0000\u02c7\u02c8\u0005i\u0000\u0000\u02c8\u02c9"+ + "\u0003Z-\u0000\u02c9Y\u0001\u0000\u0000\u0000\u02ca\u02cf\u0003\u001a"+ + "\r\u0000\u02cb\u02cc\u0005\f\u0000\u0000\u02cc\u02ce\u0003\u001a\r\u0000"+ + "\u02cd\u02cb\u0001\u0000\u0000\u0000\u02ce\u02d1\u0001\u0000\u0000\u0000"+ + "\u02cf\u02cd\u0001\u0000\u0000\u0000\u02cf\u02d0\u0001\u0000\u0000\u0000"+ + "\u02d0[\u0001\u0000\u0000\u0000\u02d1\u02cf\u0001\u0000\u0000\u0000\u02d2"+ + "\u02d4\u0005k\u0000\u0000\u02d3\u02d2\u0001\u0000\u0000\u0000\u02d3\u02d4"+ + "\u0001\u0000\u0000\u0000\u02d4\u02d5\u0001\u0000\u0000\u0000\u02d5\u02d6"+ + "\u0005h\u0000\u0000\u02d6\u02d7\u0003\u0132\u0099\u0000\u02d7\u02d9\u0005"+ + "\b\u0000\u0000\u02d8\u02da\u0003^/\u0000\u02d9\u02d8\u0001\u0000\u0000"+ + "\u0000\u02d9\u02da\u0001\u0000\u0000\u0000\u02da\u02db\u0001\u0000\u0000"+ + "\u0000\u02db\u02dc\u0005\n\u0000\u0000\u02dc]\u0001\u0000\u0000\u0000"+ + "\u02dd\u02df\u0003`0\u0000\u02de\u02e0\u0005\f\u0000\u0000\u02df\u02de"+ + "\u0001\u0000\u0000\u0000\u02df\u02e0\u0001\u0000\u0000\u0000\u02e0_\u0001"+ + "\u0000\u0000\u0000\u02e1\u02e6\u0003b1\u0000\u02e2\u02e3\u0005\f\u0000"+ + "\u0000\u02e3\u02e5\u0003b1\u0000\u02e4\u02e2\u0001\u0000\u0000\u0000\u02e5"+ + "\u02e8\u0001\u0000\u0000\u0000\u02e6\u02e4\u0001\u0000\u0000\u0000\u02e6"+ + "\u02e7\u0001\u0000\u0000\u0000\u02e7a\u0001\u0000\u0000\u0000\u02e8\u02e6"+ + "\u0001\u0000\u0000\u0000\u02e9\u02ec\u0003\u0108\u0084\u0000\u02ea\u02eb"+ + "\u0005\r\u0000\u0000\u02eb\u02ed\u0003\u0112\u0089\u0000\u02ec\u02ea\u0001"+ + "\u0000\u0000\u0000\u02ec\u02ed\u0001\u0000\u0000\u0000\u02edc\u0001\u0000"+ + "\u0000\u0000\u02ee\u02f0\u0005\u0086\u0000\u0000\u02ef\u02ee\u0001\u0000"+ + "\u0000\u0000\u02ef\u02f0\u0001\u0000\u0000\u0000\u02f0\u02f1\u0001\u0000"+ + "\u0000\u0000\u02f1\u02f2\u0005\u0083\u0000\u0000\u02f2\u02f3\u0003f3\u0000"+ + "\u02f3\u02f5\u0005\b\u0000\u0000\u02f4\u02f6\u0003z=\u0000\u02f5\u02f4"+ + "\u0001\u0000\u0000\u0000\u02f5\u02f6\u0001\u0000\u0000\u0000\u02f6\u02f7"+ + "\u0001\u0000\u0000\u0000\u02f7\u02f8\u0005\n\u0000\u0000\u02f8e\u0001"+ + "\u0000\u0000\u0000\u02f9\u0302\u0003\u0132\u0099\u0000\u02fa\u02fc\u0005"+ + "\u0012\u0000\u0000\u02fb\u02fa\u0001\u0000\u0000\u0000\u02fc\u02fd\u0001"+ + "\u0000\u0000\u0000\u02fd\u02fb\u0001\u0000\u0000\u0000\u02fd\u02fe\u0001"+ + "\u0000\u0000\u0000\u02fe\u02ff\u0001\u0000\u0000\u0000\u02ff\u0301\u0003"+ + "\u0132\u0099\u0000\u0300\u02fb\u0001\u0000\u0000\u0000\u0301\u0304\u0001"+ + "\u0000\u0000\u0000\u0302\u0300\u0001\u0000\u0000\u0000\u0302\u0303\u0001"+ + "\u0000\u0000\u0000\u0303g\u0001\u0000\u0000\u0000\u0304\u0302\u0001\u0000"+ + "\u0000\u0000\u0305\u0306\u0003\u0132\u0099\u0000\u0306\u0307\u0005\r\u0000"+ + "\u0000\u0307\u0308\u0003f3\u0000\u0308\u0309\u0005\u000b\u0000\u0000\u0309"+ + "i\u0001\u0000\u0000\u0000\u030a\u030c\u0003l6\u0000\u030b\u030a\u0001"+ + "\u0000\u0000\u0000\u030c\u030d\u0001\u0000\u0000\u0000\u030d\u030b\u0001"+ + "\u0000\u0000\u0000\u030d\u030e\u0001\u0000\u0000\u0000\u030ek\u0001\u0000"+ + "\u0000\u0000\u030f\u0312\u0005\u0089\u0000\u0000\u0310\u0313\u0003n7\u0000"+ + "\u0311\u0313\u0003p8\u0000\u0312\u0310\u0001\u0000\u0000\u0000\u0312\u0311"+ + "\u0001\u0000\u0000\u0000\u0313m\u0001\u0000\u0000\u0000\u0314\u0315\u0006"+ + "7\uffff\uffff\u0000\u0315\u031b\u0003\u0132\u0099\u0000\u0316\u0317\u0005"+ + "\u0006\u0000\u0000\u0317\u0318\u0003\u0112\u0089\u0000\u0318\u0319\u0005"+ + "\u0007\u0000\u0000\u0319\u031b\u0001\u0000\u0000\u0000\u031a\u0314\u0001"+ + "\u0000\u0000\u0000\u031a\u0316\u0001\u0000\u0000\u0000\u031b\u0321\u0001"+ + "\u0000\u0000\u0000\u031c\u031d\n\u0002\u0000\u0000\u031d\u031e\u0005\u0012"+ + "\u0000\u0000\u031e\u0320\u0003\u0130\u0098\u0000\u031f\u031c\u0001\u0000"+ + "\u0000\u0000\u0320\u0323\u0001\u0000\u0000\u0000\u0321\u031f\u0001\u0000"+ + "\u0000\u0000\u0321\u0322\u0001\u0000\u0000\u0000\u0322o\u0001\u0000\u0000"+ + "\u0000\u0323\u0321\u0001\u0000\u0000\u0000\u0324\u0325\u0003n7\u0000\u0325"+ + "\u0326\u0003\u010a\u0085\u0000\u0326q\u0001\u0000\u0000\u0000\u0327\u0329"+ + "\u0003\u00f8|\u0000\u0328\u0327\u0001\u0000\u0000\u0000\u0328\u0329\u0001"+ + "\u0000\u0000\u0000\u0329\u032a\u0001\u0000\u0000\u0000\u032a\u032b\u0005"+ + "\u0000\u0000\u0001\u032bs\u0001\u0000\u0000\u0000\u032c\u032e\u0005l\u0000"+ + "\u0000\u032d\u032c\u0001\u0000\u0000\u0000\u032d\u032e\u0001\u0000\u0000"+ + "\u0000\u032e\u032f\u0001\u0000\u0000\u0000\u032f\u0330\u0003v;\u0000\u0330"+ + "u\u0001\u0000\u0000\u0000\u0331\u034f\u0003x<\u0000\u0332\u034f\u0003"+ + "\u009cN\u0000\u0333\u034f\u0003~?\u0000\u0334\u034f\u0003\u0092I\u0000"+ + "\u0335\u034f\u0003\u00a2Q\u0000\u0336\u034f\u0003|>\u0000\u0337\u034f"+ + "\u0003\u00ceg\u0000\u0338\u034f\u0003\u00ccf\u0000\u0339\u034f\u0003\u00a4"+ + "R\u0000\u033a\u034f\u0003V+\u0000\u033b\u034f\u0003d2\u0000\u033c\u034f"+ + "\u0003\u00a6S\u0000\u033d\u034f\u0003\u00a8T\u0000\u033e\u034f\u0003\u00ac"+ + "V\u0000\u033f\u034f\u0003\u00aeW\u0000\u0340\u034f\u0003\u00b0X\u0000"+ + "\u0341\u034f\u0003\u00b2Y\u0000\u0342\u034f\u0003\u00b4Z\u0000\u0343\u034f"+ + "\u0003\u00c0`\u0000\u0344\u034f\u0003\u00b6[\u0000\u0345\u034f\u0003\u00c2"+ + "a\u0000\u0346\u034f\u0003\u00c4b\u0000\u0347\u034f\u0003\u00cae\u0000"+ + "\u0348\u034f\u0003\u011a\u008d\u0000\u0349\u034f\u0003\u00e2q\u0000\u034a"+ + "\u034f\u0003R)\u0000\u034b\u034f\u0003\\.\u0000\u034c\u034d\u0005l\u0000"+ + "\u0000\u034d\u034f\u0003v;\u0000\u034e\u0331\u0001\u0000\u0000\u0000\u034e"+ + "\u0332\u0001\u0000\u0000\u0000\u034e\u0333\u0001\u0000\u0000\u0000\u034e"+ + "\u0334\u0001\u0000\u0000\u0000\u034e\u0335\u0001\u0000\u0000\u0000\u034e"+ + "\u0336\u0001\u0000\u0000\u0000\u034e\u0337\u0001\u0000\u0000\u0000\u034e"+ + "\u0338\u0001\u0000\u0000\u0000\u034e\u0339\u0001\u0000\u0000\u0000\u034e"+ + "\u033a\u0001\u0000\u0000\u0000\u034e\u033b\u0001\u0000\u0000\u0000\u034e"+ + "\u033c\u0001\u0000\u0000\u0000\u034e\u033d\u0001\u0000\u0000\u0000\u034e"+ + "\u033e\u0001\u0000\u0000\u0000\u034e\u033f\u0001\u0000\u0000\u0000\u034e"+ + "\u0340\u0001\u0000\u0000\u0000\u034e\u0341\u0001\u0000\u0000\u0000\u034e"+ + "\u0342\u0001\u0000\u0000\u0000\u034e\u0343\u0001\u0000\u0000\u0000\u034e"+ + "\u0344\u0001\u0000\u0000\u0000\u034e\u0345\u0001\u0000\u0000\u0000\u034e"+ + "\u0346\u0001\u0000\u0000\u0000\u034e\u0347\u0001\u0000\u0000\u0000\u034e"+ + "\u0348\u0001\u0000\u0000\u0000\u034e\u0349\u0001\u0000\u0000\u0000\u034e"+ + "\u034a\u0001\u0000\u0000\u0000\u034e\u034b\u0001\u0000\u0000\u0000\u034e"+ + "\u034c\u0001\u0000\u0000\u0000\u034fw\u0001\u0000\u0000\u0000\u0350\u0352"+ + "\u0005\b\u0000\u0000\u0351\u0353\u0003z=\u0000\u0352\u0351\u0001\u0000"+ + "\u0000\u0000\u0352\u0353\u0001\u0000\u0000\u0000\u0353\u0354\u0001\u0000"+ + "\u0000\u0000\u0354\u0355\u0005\n\u0000\u0000\u0355y\u0001\u0000\u0000"+ + "\u0000\u0356\u0358\u0003v;\u0000\u0357\u0356\u0001\u0000\u0000\u0000\u0358"+ + "\u0359\u0001\u0000\u0000\u0000\u0359\u0357\u0001\u0000\u0000\u0000\u0359"+ + "\u035a\u0001\u0000\u0000\u0000\u035a{\u0001\u0000\u0000\u0000\u035b\u0360"+ + "\u0005\u0087\u0000\u0000\u035c\u035d\u0003\u0132\u0099\u0000\u035d\u035e"+ + "\u0003:\u001d\u0000\u035e\u0361\u0001\u0000\u0000\u0000\u035f\u0361\u0003"+ + "\u009cN\u0000\u0360\u035c\u0001\u0000\u0000\u0000\u0360\u035f\u0001\u0000"+ + "\u0000\u0000\u0361\u0362\u0001\u0000\u0000\u0000\u0362\u0363\u0003\u013a"+ + "\u009d\u0000\u0363}\u0001\u0000\u0000\u0000\u0364\u0365\u0005m\u0000\u0000"+ + "\u0365\u0366\u0003\u0080@\u0000\u0366\u007f\u0001\u0000\u0000\u0000\u0367"+ + "\u0369\u0003\u008aE\u0000\u0368\u0367\u0001\u0000\u0000\u0000\u0368\u0369"+ + "\u0001\u0000\u0000\u0000\u0369\u036c\u0001\u0000\u0000\u0000\u036a\u036d"+ + "\u0003\u008cF\u0000\u036b\u036d\u0003\u0082A\u0000\u036c\u036a\u0001\u0000"+ + "\u0000\u0000\u036c\u036b\u0001\u0000\u0000\u0000\u036d\u036e\u0001\u0000"+ + "\u0000\u0000\u036e\u036f\u0003\u008eG\u0000\u036f\u0370\u0003\u013a\u009d"+ + "\u0000\u0370\u0374\u0001\u0000\u0000\u0000\u0371\u0372\u0005\u008b\u0000"+ + "\u0000\u0372\u0374\u0003\u013a\u009d\u0000\u0373\u0368\u0001\u0000\u0000"+ + "\u0000\u0373\u0371\u0001\u0000\u0000\u0000\u0374\u0081\u0001\u0000\u0000"+ + "\u0000\u0375\u037b\u0005\b\u0000\u0000\u0376\u0377\u0003\u0084B\u0000"+ + "\u0377\u0378\u0005\f\u0000\u0000\u0378\u037a\u0001\u0000\u0000\u0000\u0379"+ + "\u0376\u0001\u0000\u0000\u0000\u037a\u037d\u0001\u0000\u0000\u0000\u037b"+ + "\u0379\u0001\u0000\u0000\u0000\u037b\u037c\u0001\u0000\u0000\u0000\u037c"+ + "\u0382\u0001\u0000\u0000\u0000\u037d\u037b\u0001\u0000\u0000\u0000\u037e"+ + "\u0380\u0003\u0084B\u0000\u037f\u0381\u0005\f\u0000\u0000\u0380\u037f"+ + "\u0001\u0000\u0000\u0000\u0380\u0381\u0001\u0000\u0000\u0000\u0381\u0383"+ + "\u0001\u0000\u0000\u0000\u0382\u037e\u0001\u0000\u0000\u0000\u0382\u0383"+ + "\u0001\u0000\u0000\u0000\u0383\u0384\u0001\u0000\u0000\u0000\u0384\u0385"+ + "\u0005\n\u0000\u0000\u0385\u0083\u0001\u0000\u0000\u0000\u0386\u0389\u0003"+ + "\u0086C\u0000\u0387\u0388\u0005`\u0000\u0000\u0388\u038a\u0003\u0088D"+ + "\u0000\u0389\u0387\u0001\u0000\u0000\u0000\u0389\u038a\u0001\u0000\u0000"+ + "\u0000\u038a\u0085\u0001\u0000\u0000\u0000\u038b\u038e\u0003\u0130\u0098"+ + "\u0000\u038c\u038e\u0005\u008b\u0000\u0000\u038d\u038b\u0001\u0000\u0000"+ + "\u0000\u038d\u038c\u0001\u0000\u0000\u0000\u038e\u0087\u0001\u0000\u0000"+ + "\u0000\u038f\u0390\u0007\u0004\u0000\u0000\u0390\u0089\u0001\u0000\u0000"+ + "\u0000\u0391\u0392\u0003\u0090H\u0000\u0392\u0393\u0005\f\u0000\u0000"+ + "\u0393\u008b\u0001\u0000\u0000\u0000\u0394\u0397\u0005\u0019\u0000\u0000"+ + "\u0395\u0397\u0003\u0130\u0098\u0000\u0396\u0394\u0001\u0000\u0000\u0000"+ + "\u0396\u0395\u0001\u0000\u0000\u0000\u0397\u039a\u0001\u0000\u0000\u0000"+ + "\u0398\u0399\u0005`\u0000\u0000\u0399\u039b\u0003\u0130\u0098\u0000\u039a"+ + "\u0398\u0001\u0000\u0000\u0000\u039a\u039b\u0001\u0000\u0000\u0000\u039b"+ + "\u008d\u0001\u0000\u0000\u0000\u039c\u039d\u0005a\u0000\u0000\u039d\u039e"+ + "\u0005\u008b\u0000\u0000\u039e\u008f\u0001\u0000\u0000\u0000\u039f\u03a2"+ + "\u0003\u0130\u0098\u0000\u03a0\u03a1\u0005`\u0000\u0000\u03a1\u03a3\u0003"+ + "\u0130\u0098\u0000\u03a2\u03a0\u0001\u0000\u0000\u0000\u03a2\u03a3\u0001"+ + "\u0000\u0000\u0000\u03a3\u0091\u0001\u0000\u0000\u0000\u03a4\u03a6\u0005"+ + "l\u0000\u0000\u03a5\u03a7\u0005Z\u0000\u0000\u03a6\u03a5\u0001\u0000\u0000"+ + "\u0000\u03a6\u03a7\u0001\u0000\u0000\u0000\u03a7\u03aa\u0001\u0000\u0000"+ + "\u0000\u03a8\u03ab\u0003\u0094J\u0000\u03a9\u03ab\u0003\u009aM\u0000\u03aa"+ + "\u03a8\u0001\u0000\u0000\u0000\u03aa\u03a9\u0001\u0000\u0000\u0000\u03ab"+ + "\u03ac\u0001\u0000\u0000\u0000\u03ac\u03ad\u0003\u013a\u009d\u0000\u03ad"+ + "\u03b4\u0001\u0000\u0000\u0000\u03ae\u03af\u0005l\u0000\u0000\u03af\u03b0"+ + "\u0005Z\u0000\u0000\u03b0\u03b1\u0003\u0112\u0089\u0000\u03b1\u03b2\u0003"+ + "\u013a\u009d\u0000\u03b2\u03b4\u0001\u0000\u0000\u0000\u03b3\u03a4\u0001"+ + "\u0000\u0000\u0000\u03b3\u03ae\u0001\u0000\u0000\u0000\u03b4\u0093\u0001"+ + "\u0000\u0000\u0000\u03b5\u03b6\u0003\u008cF\u0000\u03b6\u03b7\u0003\u008e"+ + "G\u0000\u03b7\u03b8\u0003\u013a\u009d\u0000\u03b8\u03c0\u0001\u0000\u0000"+ + "\u0000\u03b9\u03bb\u0003\u0096K\u0000\u03ba\u03bc\u0003\u008eG\u0000\u03bb"+ + "\u03ba\u0001\u0000\u0000\u0000\u03bb\u03bc\u0001\u0000\u0000\u0000\u03bc"+ + "\u03bd\u0001\u0000\u0000\u0000\u03bd\u03be\u0003\u013a\u009d\u0000\u03be"+ + "\u03c0\u0001\u0000\u0000\u0000\u03bf\u03b5\u0001\u0000\u0000\u0000\u03bf"+ + "\u03b9\u0001\u0000\u0000\u0000\u03c0\u0095\u0001\u0000\u0000\u0000\u03c1"+ + "\u03c7\u0005\b\u0000\u0000\u03c2\u03c3\u0003\u0098L\u0000\u03c3\u03c4"+ + "\u0005\f\u0000\u0000\u03c4\u03c6\u0001\u0000\u0000\u0000\u03c5\u03c2\u0001"+ + "\u0000\u0000\u0000\u03c6\u03c9\u0001\u0000\u0000\u0000\u03c7\u03c5\u0001"+ + "\u0000\u0000\u0000\u03c7\u03c8\u0001\u0000\u0000\u0000\u03c8\u03ce\u0001"+ + "\u0000\u0000\u0000\u03c9\u03c7\u0001\u0000\u0000\u0000\u03ca\u03cc\u0003"+ + "\u0098L\u0000\u03cb\u03cd\u0005\f\u0000\u0000\u03cc\u03cb\u0001\u0000"+ + "\u0000\u0000\u03cc\u03cd\u0001\u0000\u0000\u0000\u03cd\u03cf\u0001\u0000"+ + "\u0000\u0000\u03ce\u03ca\u0001\u0000\u0000\u0000\u03ce\u03cf\u0001\u0000"+ + "\u0000\u0000\u03cf\u03d0\u0001\u0000\u0000\u0000\u03d0\u03d1\u0005\n\u0000"+ + "\u0000\u03d1\u0097\u0001\u0000\u0000\u0000\u03d2\u03d5\u0003\u0086C\u0000"+ + "\u03d3\u03d4\u0005`\u0000\u0000\u03d4\u03d6\u0003\u0086C\u0000\u03d5\u03d3"+ + "\u0001\u0000\u0000\u0000\u03d5\u03d6\u0001\u0000\u0000\u0000\u03d6\u0099"+ + "\u0001\u0000\u0000\u0000\u03d7\u03db\u0003\u009cN\u0000\u03d8\u03db\u0003"+ + "\u00ceg\u0000\u03d9\u03db\u0003\u00ccf\u0000\u03da\u03d7\u0001\u0000\u0000"+ + "\u0000\u03da\u03d8\u0001\u0000\u0000\u0000\u03da\u03d9\u0001\u0000\u0000"+ + "\u0000\u03db\u009b\u0001\u0000\u0000\u0000\u03dc\u03de\u0003\u0002\u0001"+ + "\u0000\u03dd\u03df\u00038\u001c\u0000\u03de\u03dd\u0001\u0000\u0000\u0000"+ + "\u03de\u03df\u0001\u0000\u0000\u0000\u03df\u03e0\u0001\u0000\u0000\u0000"+ + "\u03e0\u03e2\u0003\u0000\u0000\u0000\u03e1\u03e3\u0005\u000b\u0000\u0000"+ + "\u03e2\u03e1\u0001\u0000\u0000\u0000\u03e2\u03e3\u0001\u0000\u0000\u0000"+ + "\u03e3\u03fa\u0001\u0000\u0000\u0000\u03e4\u03e6\u0003H$\u0000\u03e5\u03e4"+ + "\u0001\u0000\u0000\u0000\u03e5\u03e6\u0001\u0000\u0000\u0000\u03e6\u03e8"+ + "\u0001\u0000\u0000\u0000\u03e7\u03e9\u0003\u00aaU\u0000\u03e8\u03e7\u0001"+ + "\u0000\u0000\u0000\u03e8\u03e9\u0001\u0000\u0000\u0000\u03e9\u03eb\u0001"+ + "\u0000\u0000\u0000\u03ea\u03ec\u0005b\u0000\u0000\u03eb\u03ea\u0001\u0000"+ + "\u0000\u0000\u03eb\u03ec\u0001\u0000\u0000\u0000\u03ec\u03ed\u0001\u0000"+ + "\u0000\u0000\u03ed\u03ef\u0003\u009eO\u0000\u03ee\u03f0\u0005\u000b\u0000"+ + "\u0000\u03ef\u03ee\u0001\u0000\u0000\u0000\u03ef\u03f0\u0001\u0000\u0000"+ + "\u0000\u03f0\u03fa\u0001\u0000\u0000\u0000\u03f1\u03f3\u0005\u0086\u0000"+ + "\u0000\u03f2\u03f4\u0003\u00aaU\u0000\u03f3\u03f2\u0001\u0000\u0000\u0000"+ + "\u03f3\u03f4\u0001\u0000\u0000\u0000\u03f4\u03f5\u0001\u0000\u0000\u0000"+ + "\u03f5\u03f7\u0003\u009eO\u0000\u03f6\u03f8\u0005\u000b\u0000\u0000\u03f7"+ + "\u03f6\u0001\u0000\u0000\u0000\u03f7\u03f8\u0001\u0000\u0000\u0000\u03f8"+ + "\u03fa\u0001\u0000\u0000\u0000\u03f9\u03dc\u0001\u0000\u0000\u0000\u03f9"+ + "\u03e5\u0001\u0000\u0000\u0000\u03f9\u03f1\u0001\u0000\u0000\u0000\u03fa"+ + "\u009d\u0001\u0000\u0000\u0000\u03fb\u0400\u0003\u00a0P\u0000\u03fc\u03fd"+ + "\u0005\f\u0000\u0000\u03fd\u03ff\u0003\u00a0P\u0000\u03fe\u03fc\u0001"+ + "\u0000\u0000\u0000\u03ff\u0402\u0001\u0000\u0000\u0000\u0400\u03fe\u0001"+ + "\u0000\u0000\u0000\u0400\u0401\u0001\u0000\u0000\u0000\u0401\u009f\u0001"+ + "\u0000\u0000\u0000\u0402\u0400\u0001\u0000\u0000\u0000\u0403\u0407\u0003"+ + "\u0134\u009a\u0000\u0404\u0407\u0003\u00fa}\u0000\u0405\u0407\u0003\u0100"+ + "\u0080\u0000\u0406\u0403\u0001\u0000\u0000\u0000\u0406\u0404\u0001\u0000"+ + "\u0000\u0000\u0406\u0405\u0001\u0000\u0000\u0000\u0407\u0409\u0001\u0000"+ + "\u0000\u0000\u0408\u040a\u00038\u001c\u0000\u0409\u0408\u0001\u0000\u0000"+ + "\u0000\u0409\u040a\u0001\u0000\u0000\u0000\u040a\u040c\u0001\u0000\u0000"+ + "\u0000\u040b\u040d\u0003\u0112\u0089\u0000\u040c\u040b\u0001\u0000\u0000"+ + "\u0000\u040c\u040d\u0001\u0000\u0000\u0000\u040d\u0413\u0001\u0000\u0000"+ + "\u0000\u040e\u0410\u0005\r\u0000\u0000\u040f\u0411\u0003\u0004\u0002\u0000"+ + "\u0410\u040f\u0001\u0000\u0000\u0000\u0410\u0411\u0001\u0000\u0000\u0000"+ + "\u0411\u0412\u0001\u0000\u0000\u0000\u0412\u0414\u0003\u0112\u0089\u0000"+ + "\u0413\u040e\u0001\u0000\u0000\u0000\u0413\u0414\u0001\u0000\u0000\u0000"+ + "\u0414\u00a1\u0001\u0000\u0000\u0000\u0415\u0416\u0005\u000b\u0000\u0000"+ + "\u0416\u00a3\u0001\u0000\u0000\u0000\u0417\u0418\u0004R\u0006\u0000\u0418"+ + "\u041a\u0003\u0110\u0088\u0000\u0419\u041b\u0005\u000b\u0000\u0000\u041a"+ + "\u0419\u0001\u0000\u0000\u0000\u041a\u041b\u0001\u0000\u0000\u0000\u041b"+ + "\u00a5\u0001\u0000\u0000\u0000\u041c\u041d\u0005[\u0000\u0000\u041d\u041e"+ + "\u0005\u0006\u0000\u0000\u041e\u041f\u0003\u0110\u0088\u0000\u041f\u0420"+ + "\u0005\u0007\u0000\u0000\u0420\u0423\u0003v;\u0000\u0421\u0422\u0005K"+ + "\u0000\u0000\u0422\u0424\u0003v;\u0000\u0423\u0421\u0001\u0000\u0000\u0000"+ + "\u0423\u0424\u0001\u0000\u0000\u0000\u0424\u00a7\u0001\u0000\u0000\u0000"+ + "\u0425\u0426\u0005G\u0000\u0000\u0426\u0427\u0003v;\u0000\u0427\u0428"+ + "\u0005U\u0000\u0000\u0428\u0429\u0005\u0006\u0000\u0000\u0429\u042a\u0003"+ + "\u0110\u0088\u0000\u042a\u042b\u0005\u0007\u0000\u0000\u042b\u042c\u0003"+ + "\u013a\u009d\u0000\u042c\u0484\u0001\u0000\u0000\u0000\u042d\u042e\u0005"+ + "U\u0000\u0000\u042e\u042f\u0005\u0006\u0000\u0000\u042f\u0430\u0003\u0110"+ + "\u0088\u0000\u0430\u0431\u0005\u0007\u0000\u0000\u0431\u0432\u0003v;\u0000"+ + "\u0432\u0484\u0001\u0000\u0000\u0000\u0433\u0434\u0005S\u0000\u0000\u0434"+ + "\u0436\u0005\u0006\u0000\u0000\u0435\u0437\u0003\u0110\u0088\u0000\u0436"+ + "\u0435\u0001\u0000\u0000\u0000\u0436\u0437\u0001\u0000\u0000\u0000\u0437"+ + "\u0438\u0001\u0000\u0000\u0000\u0438\u043a\u0005\u000b\u0000\u0000\u0439"+ + "\u043b\u0003\u0110\u0088\u0000\u043a\u0439\u0001\u0000\u0000\u0000\u043a"+ + "\u043b\u0001\u0000\u0000\u0000\u043b\u043c\u0001\u0000\u0000\u0000\u043c"+ + "\u043e\u0005\u000b\u0000\u0000\u043d\u043f\u0003\u0110\u0088\u0000\u043e"+ + "\u043d\u0001\u0000\u0000\u0000\u043e\u043f\u0001\u0000\u0000\u0000\u043f"+ + "\u0440\u0001\u0000\u0000\u0000\u0440\u0441\u0005\u0007\u0000\u0000\u0441"+ + "\u0484\u0003v;\u0000\u0442\u0443\u0005S\u0000\u0000\u0443\u0444\u0005"+ + "\u0006\u0000\u0000\u0444\u0445\u0003\u00aaU\u0000\u0445\u0446\u0003\u009e"+ + "O\u0000\u0446\u0448\u0005\u000b\u0000\u0000\u0447\u0449\u0003\u0110\u0088"+ + "\u0000\u0448\u0447\u0001\u0000\u0000\u0000\u0448\u0449\u0001\u0000\u0000"+ + "\u0000\u0449\u044a\u0001\u0000\u0000\u0000\u044a\u044c\u0005\u000b\u0000"+ + "\u0000\u044b\u044d\u0003\u0110\u0088\u0000\u044c\u044b\u0001\u0000\u0000"+ + "\u0000\u044c\u044d\u0001\u0000\u0000\u0000\u044d\u044e\u0001\u0000\u0000"+ + "\u0000\u044e\u044f\u0005\u0007\u0000\u0000\u044f\u0450\u0003v;\u0000\u0450"+ + "\u0484\u0001\u0000\u0000\u0000\u0451\u0452\u0005S\u0000\u0000\u0452\u0453"+ + "\u0005\u0006\u0000\u0000\u0453\u0454\u0003\u0112\u0089\u0000\u0454\u0455"+ + "\u0005^\u0000\u0000\u0455\u0456\u0003\u0110\u0088\u0000\u0456\u0457\u0005"+ + "\u0007\u0000\u0000\u0457\u0458\u0003v;\u0000\u0458\u0484\u0001\u0000\u0000"+ + "\u0000\u0459\u045a\u0005S\u0000\u0000\u045a\u045b\u0005\u0006\u0000\u0000"+ + "\u045b\u045c\u0003\u00aaU\u0000\u045c\u045d\u0003\u00a0P\u0000\u045d\u045e"+ + "\u0005^\u0000\u0000\u045e\u045f\u0003\u0110\u0088\u0000\u045f\u0460\u0005"+ + "\u0007\u0000\u0000\u0460\u0461\u0003v;\u0000\u0461\u0484\u0001\u0000\u0000"+ + "\u0000\u0462\u0464\u0005S\u0000\u0000\u0463\u0465\u0005d\u0000\u0000\u0464"+ + "\u0463\u0001\u0000\u0000\u0000\u0464\u0465\u0001\u0000\u0000\u0000\u0465"+ + "\u0466\u0001\u0000\u0000\u0000\u0466\u0467\u0005\u0006\u0000\u0000\u0467"+ + "\u0468\u0003\u0112\u0089\u0000\u0468\u0469\u0003\u0132\u0099\u0000\u0469"+ + "\u046a\u0004T\u0007\u0000\u046a\u046d\u0003\u0110\u0088\u0000\u046b\u046c"+ + "\u0005`\u0000\u0000\u046c\u046e\u0003\u0012\t\u0000\u046d\u046b\u0001"+ + "\u0000\u0000\u0000\u046d\u046e\u0001\u0000\u0000\u0000\u046e\u046f\u0001"+ + "\u0000\u0000\u0000\u046f\u0470\u0005\u0007\u0000\u0000\u0470\u0471\u0003"+ + "v;\u0000\u0471\u0484\u0001\u0000\u0000\u0000\u0472\u0474\u0005S\u0000"+ + "\u0000\u0473\u0475\u0005d\u0000\u0000\u0474\u0473\u0001\u0000\u0000\u0000"+ + "\u0474\u0475\u0001\u0000\u0000\u0000\u0475\u0476\u0001\u0000\u0000\u0000"+ + "\u0476\u0477\u0005\u0006\u0000\u0000\u0477\u0478\u0003\u00aaU\u0000\u0478"+ + "\u0479\u0003\u00a0P\u0000\u0479\u047a\u0003\u0132\u0099\u0000\u047a\u047b"+ + "\u0004T\b\u0000\u047b\u047e\u0003\u0110\u0088\u0000\u047c\u047d\u0005"+ + "`\u0000\u0000\u047d\u047f\u0003\u0012\t\u0000\u047e\u047c\u0001\u0000"+ + "\u0000\u0000\u047e\u047f\u0001\u0000\u0000\u0000\u047f\u0480\u0001\u0000"+ + "\u0000\u0000\u0480\u0481\u0005\u0007\u0000\u0000\u0481\u0482\u0003v;\u0000"+ + "\u0482\u0484\u0001\u0000\u0000\u0000\u0483\u0425\u0001\u0000\u0000\u0000"+ + "\u0483\u042d\u0001\u0000\u0000\u0000\u0483\u0433\u0001\u0000\u0000\u0000"+ + "\u0483\u0442\u0001\u0000\u0000\u0000\u0483\u0451\u0001\u0000\u0000\u0000"+ + "\u0483\u0459\u0001\u0000\u0000\u0000\u0483\u0462\u0001\u0000\u0000\u0000"+ + "\u0483\u0472\u0001\u0000\u0000\u0000\u0484\u00a9\u0001\u0000\u0000\u0000"+ + "\u0485\u0486\u0007\u0005\u0000\u0000\u0486\u00ab\u0001\u0000\u0000\u0000"+ + "\u0487\u048a\u0005R\u0000\u0000\u0488\u0489\u0004V\t\u0000\u0489\u048b"+ + "\u0003\u0132\u0099\u0000\u048a\u0488\u0001\u0000\u0000\u0000\u048a\u048b"+ + "\u0001\u0000\u0000\u0000\u048b\u048c\u0001\u0000\u0000\u0000\u048c\u048d"+ + "\u0003\u013a\u009d\u0000\u048d\u00ad\u0001\u0000\u0000\u0000\u048e\u0491"+ + "\u0005F\u0000\u0000\u048f\u0490\u0004W\n\u0000\u0490\u0492\u0003\u0132"+ + "\u0099\u0000\u0491\u048f\u0001\u0000\u0000\u0000\u0491\u0492\u0001\u0000"+ + "\u0000\u0000\u0492\u0493\u0001\u0000\u0000\u0000\u0493\u0494\u0003\u013a"+ + "\u009d\u0000\u0494\u00af\u0001\u0000\u0000\u0000\u0495\u0498\u0005P\u0000"+ + "\u0000\u0496\u0497\u0004X\u000b\u0000\u0497\u0499\u0003\u0110\u0088\u0000"+ + "\u0498\u0496\u0001\u0000\u0000\u0000\u0498\u0499\u0001\u0000\u0000\u0000"+ + "\u0499\u049a\u0001\u0000\u0000\u0000\u049a\u049b\u0003\u013a\u009d\u0000"+ + "\u049b\u00b1\u0001\u0000\u0000\u0000\u049c\u049f\u0007\u0006\u0000\u0000"+ + "\u049d\u049e\u0004Y\f\u0000\u049e\u04a0\u0003\u0110\u0088\u0000\u049f"+ + "\u049d\u0001\u0000\u0000\u0000\u049f\u04a0\u0001\u0000\u0000\u0000\u04a0"+ + "\u04a1\u0001\u0000\u0000\u0000\u04a1\u04a2\u0003\u013a\u009d\u0000\u04a2"+ + "\u00b3\u0001\u0000\u0000\u0000\u04a3\u04a4\u0005Y\u0000\u0000\u04a4\u04a5"+ + "\u0005\u0006\u0000\u0000\u04a5\u04a6\u0003\u0110\u0088\u0000\u04a6\u04a7"+ + "\u0005\u0007\u0000\u0000\u04a7\u04a8\u0003v;\u0000\u04a8\u00b5\u0001\u0000"+ + "\u0000\u0000\u04a9\u04aa\u0005T\u0000\u0000\u04aa\u04ab\u0005\u0006\u0000"+ + "\u0000\u04ab\u04ac\u0003\u0110\u0088\u0000\u04ac\u04ad\u0005\u0007\u0000"+ + "\u0000\u04ad\u04ae\u0003\u00b8\\\u0000\u04ae\u00b7\u0001\u0000\u0000\u0000"+ + "\u04af\u04b1\u0005\b\u0000\u0000\u04b0\u04b2\u0003\u00ba]\u0000\u04b1"+ + "\u04b0\u0001\u0000\u0000\u0000\u04b1\u04b2\u0001\u0000\u0000\u0000\u04b2"+ + "\u04b7\u0001\u0000\u0000\u0000\u04b3\u04b5\u0003\u00be_\u0000\u04b4\u04b6"+ + "\u0003\u00ba]\u0000\u04b5\u04b4\u0001\u0000\u0000\u0000\u04b5\u04b6\u0001"+ + "\u0000\u0000\u0000\u04b6\u04b8\u0001\u0000\u0000\u0000\u04b7\u04b3\u0001"+ + "\u0000\u0000\u0000\u04b7\u04b8\u0001\u0000\u0000\u0000\u04b8\u04b9\u0001"+ + "\u0000\u0000\u0000\u04b9\u04ba\u0005\n\u0000\u0000\u04ba\u00b9\u0001\u0000"+ + "\u0000\u0000\u04bb\u04bd\u0003\u00bc^\u0000\u04bc\u04bb\u0001\u0000\u0000"+ + "\u0000\u04bd\u04be\u0001\u0000\u0000\u0000\u04be\u04bc\u0001\u0000\u0000"+ + "\u0000\u04be\u04bf\u0001\u0000\u0000\u0000\u04bf\u00bb\u0001\u0000\u0000"+ + "\u0000\u04c0\u04c1\u0005J\u0000\u0000\u04c1\u04c2\u0003\u0110\u0088\u0000"+ + "\u04c2\u04c4\u0005\u0010\u0000\u0000\u04c3\u04c5\u0003z=\u0000\u04c4\u04c3"+ + "\u0001\u0000\u0000\u0000\u04c4\u04c5\u0001\u0000\u0000\u0000\u04c5\u00bd"+ + "\u0001\u0000\u0000\u0000\u04c6\u04c7\u0005Z\u0000\u0000\u04c7\u04c9\u0005"+ + "\u0010\u0000\u0000\u04c8\u04ca\u0003z=\u0000\u04c9\u04c8\u0001\u0000\u0000"+ + "\u0000\u04c9\u04ca\u0001\u0000\u0000\u0000\u04ca\u00bf\u0001\u0000\u0000"+ + "\u0000\u04cb\u04cc\u0003\u0132\u0099\u0000\u04cc\u04cd\u0005\u0010\u0000"+ + "\u0000\u04cd\u04ce\u0003v;\u0000\u04ce\u00c1\u0001\u0000\u0000\u0000\u04cf"+ + "\u04d0\u0005\\\u0000\u0000\u04d0\u04d1\u0004a\r\u0000\u04d1\u04d2\u0003"+ + "\u0110\u0088\u0000\u04d2\u04d3\u0003\u013a\u009d\u0000\u04d3\u00c3\u0001"+ + "\u0000\u0000\u0000\u04d4\u04d5\u0005_\u0000\u0000\u04d5\u04db\u0003x<"+ + "\u0000\u04d6\u04d8\u0003\u00c6c\u0000\u04d7\u04d9\u0003\u00c8d\u0000\u04d8"+ + "\u04d7\u0001\u0000\u0000\u0000\u04d8\u04d9\u0001\u0000\u0000\u0000\u04d9"+ + "\u04dc\u0001\u0000\u0000\u0000\u04da\u04dc\u0003\u00c8d\u0000\u04db\u04d6"+ + "\u0001\u0000\u0000\u0000\u04db\u04da\u0001\u0000\u0000\u0000\u04dc\u00c5"+ + "\u0001\u0000\u0000\u0000\u04dd\u04e5\u0005N\u0000\u0000\u04de\u04df\u0005"+ + "\u0006\u0000\u0000\u04df\u04e1\u0003\u0132\u0099\u0000\u04e0\u04e2\u0003"+ + "8\u001c\u0000\u04e1\u04e0\u0001\u0000\u0000\u0000\u04e1\u04e2\u0001\u0000"+ + "\u0000\u0000\u04e2\u04e3\u0001\u0000\u0000\u0000\u04e3\u04e4\u0005\u0007"+ + "\u0000\u0000\u04e4\u04e6\u0001\u0000\u0000\u0000\u04e5\u04de\u0001\u0000"+ + "\u0000\u0000\u04e5\u04e6\u0001\u0000\u0000\u0000\u04e6\u04e7\u0001\u0000"+ + "\u0000\u0000\u04e7\u04e8\u0003x<\u0000\u04e8\u00c7\u0001\u0000\u0000\u0000"+ + "\u04e9\u04ea\u0005O\u0000\u0000\u04ea\u04eb\u0003x<\u0000\u04eb\u00c9"+ + "\u0001\u0000\u0000\u0000\u04ec\u04ed\u0005V\u0000\u0000\u04ed\u04ee\u0003"+ + "\u013a\u009d\u0000\u04ee\u00cb\u0001\u0000\u0000\u0000\u04ef\u04f1\u0005"+ + "c\u0000\u0000\u04f0\u04ef\u0001\u0000\u0000\u0000\u04f0\u04f1\u0001\u0000"+ + "\u0000\u0000\u04f1\u04f2\u0001\u0000\u0000\u0000\u04f2\u04f4\u0005W\u0000"+ + "\u0000\u04f3\u04f5\u0005\u0019\u0000\u0000\u04f4\u04f3\u0001\u0000\u0000"+ + "\u0000\u04f4\u04f5\u0001\u0000\u0000\u0000\u04f5\u04f6\u0001\u0000\u0000"+ + "\u0000\u04f6\u04f7\u0003\u0132\u0099\u0000\u04f7\u04fd\u0003:\u001d\u0000"+ + "\u04f8\u04f9\u0005\b\u0000\u0000\u04f9\u04fa\u0003\u00f6{\u0000\u04fa"+ + "\u04fb\u0005\n\u0000\u0000\u04fb\u04fe\u0001\u0000\u0000\u0000\u04fc\u04fe"+ + "\u0005\u000b\u0000\u0000\u04fd\u04f8\u0001\u0000\u0000\u0000\u04fd\u04fc"+ + "\u0001\u0000\u0000\u0000\u04fe\u00cd\u0001\u0000\u0000\u0000\u04ff\u0501"+ + "\u0003j5\u0000\u0500\u04ff\u0001\u0000\u0000\u0000\u0500\u0501\u0001\u0000"+ + "\u0000\u0000\u0501\u0506\u0001\u0000\u0000\u0000\u0502\u0504\u0005l\u0000"+ + "\u0000\u0503\u0505\u0005Z\u0000\u0000\u0504\u0503\u0001\u0000\u0000\u0000"+ + "\u0504\u0505\u0001\u0000\u0000\u0000\u0505\u0507\u0001\u0000\u0000\u0000"+ + "\u0506\u0502\u0001\u0000\u0000\u0000\u0506\u0507\u0001\u0000\u0000\u0000"+ + "\u0507\u0509\u0001\u0000\u0000\u0000\u0508\u050a\u0005\u0087\u0000\u0000"+ + "\u0509\u0508\u0001\u0000\u0000\u0000\u0509\u050a\u0001\u0000\u0000\u0000"+ + "\u050a\u050b\u0001\u0000\u0000\u0000\u050b\u050c\u0005g\u0000\u0000\u050c"+ + "\u050e\u0003\u0132\u0099\u0000\u050d\u050f\u0003\u0004\u0002\u0000\u050e"+ + "\u050d\u0001\u0000\u0000\u0000\u050e\u050f\u0001\u0000\u0000\u0000\u050f"+ + "\u0510\u0001\u0000\u0000\u0000\u0510\u0511\u0003\u00d0h\u0000\u0511\u0512"+ + "\u0003\u00d2i\u0000\u0512\u00cf\u0001\u0000\u0000\u0000\u0513\u0515\u0003"+ + "\u00d4j\u0000\u0514\u0513\u0001\u0000\u0000\u0000\u0514\u0515\u0001\u0000"+ + "\u0000\u0000\u0515\u0517\u0001\u0000\u0000\u0000\u0516\u0518\u0003\u00d6"+ + "k\u0000\u0517\u0516\u0001\u0000\u0000\u0000\u0517\u0518\u0001\u0000\u0000"+ + "\u0000\u0518\u00d1\u0001\u0000\u0000\u0000\u0519\u051d\u0005\b\u0000\u0000"+ + "\u051a\u051c\u0003\u00d8l\u0000\u051b\u051a\u0001\u0000\u0000\u0000\u051c"+ + "\u051f\u0001\u0000\u0000\u0000\u051d\u051b\u0001\u0000\u0000\u0000\u051d"+ + "\u051e\u0001\u0000\u0000\u0000\u051e\u0520\u0001\u0000\u0000\u0000\u051f"+ + "\u051d\u0001\u0000\u0000\u0000\u0520\u0521\u0005\n\u0000\u0000\u0521\u00d3"+ + "\u0001\u0000\u0000\u0000\u0522\u0523\u0005i\u0000\u0000\u0523\u0524\u0003"+ + "\u001a\r\u0000\u0524\u00d5\u0001\u0000\u0000\u0000\u0525\u0526\u0005n"+ + "\u0000\u0000\u0526\u0527\u0003Z-\u0000\u0527\u00d7\u0001\u0000\u0000\u0000"+ + "\u0528\u0530\u0003T*\u0000\u0529\u052b\u0003j5\u0000\u052a\u0529\u0001"+ + "\u0000\u0000\u0000\u052a\u052b\u0001\u0000\u0000\u0000\u052b\u052c\u0001"+ + "\u0000\u0000\u0000\u052c\u0530\u0003\u00dam\u0000\u052d\u0530\u0003\u00de"+ + "o\u0000\u052e\u0530\u0003v;\u0000\u052f\u0528\u0001\u0000\u0000\u0000"+ + "\u052f\u052a\u0001\u0000\u0000\u0000\u052f\u052d\u0001\u0000\u0000\u0000"+ + "\u052f\u052e\u0001\u0000\u0000\u0000\u0530\u00d9\u0001\u0000\u0000\u0000"+ + "\u0531\u0532\u0003\u00dcn\u0000\u0532\u0534\u0003\u0108\u0084\u0000\u0533"+ + "\u0535\u0005\u000e\u0000\u0000\u0534\u0533\u0001\u0000\u0000\u0000\u0534"+ + "\u0535\u0001\u0000\u0000\u0000\u0535\u0537\u0001\u0000\u0000\u0000\u0536"+ + "\u0538\u00038\u001c\u0000\u0537\u0536\u0001\u0000\u0000\u0000\u0537\u0538"+ + "\u0001\u0000\u0000\u0000\u0538\u053a\u0001\u0000\u0000\u0000\u0539\u053b"+ + "\u0003\u0000\u0000\u0000\u053a\u0539\u0001\u0000\u0000\u0000\u053a\u053b"+ + "\u0001\u0000\u0000\u0000\u053b\u053c\u0001\u0000\u0000\u0000\u053c\u053d"+ + "\u0005\u000b\u0000\u0000\u053d\u054f\u0001\u0000\u0000\u0000\u053e\u053f"+ + "\u0003\u00dcn\u0000\u053f\u0540\u0003\u0108\u0084\u0000\u0540\u0546\u0003"+ + ":\u001d\u0000\u0541\u0542\u0005\b\u0000\u0000\u0542\u0543\u0003\u00f6"+ + "{\u0000\u0543\u0544\u0005\n\u0000\u0000\u0544\u0547\u0001\u0000\u0000"+ + "\u0000\u0545\u0547\u0005\u000b\u0000\u0000\u0546\u0541\u0001\u0000\u0000"+ + "\u0000\u0546\u0545\u0001\u0000\u0000\u0000\u0547\u054f\u0001\u0000\u0000"+ + "\u0000\u0548\u054b\u0003\u00dcn\u0000\u0549\u054c\u0003\u0104\u0082\u0000"+ + "\u054a\u054c\u0003\u0106\u0083\u0000\u054b\u0549\u0001\u0000\u0000\u0000"+ + "\u054b\u054a\u0001\u0000\u0000\u0000\u054c\u054f\u0001\u0000\u0000\u0000"+ + "\u054d\u054f\u0003|>\u0000\u054e\u0531\u0001\u0000\u0000\u0000\u054e\u053e"+ + "\u0001\u0000\u0000\u0000\u054e\u0548\u0001\u0000\u0000\u0000\u054e\u054d"+ + "\u0001\u0000\u0000\u0000\u054f\u00db\u0001\u0000\u0000\u0000\u0550\u0552"+ + "\u0003H$\u0000\u0551\u0550\u0001\u0000\u0000\u0000\u0551\u0552\u0001\u0000"+ + "\u0000\u0000\u0552\u0554\u0001\u0000\u0000\u0000\u0553\u0555\u0005c\u0000"+ + "\u0000\u0554\u0553\u0001\u0000\u0000\u0000\u0554\u0555\u0001\u0000\u0000"+ + "\u0000\u0555\u0557\u0001\u0000\u0000\u0000\u0556\u0558\u0005u\u0000\u0000"+ + "\u0557\u0556\u0001\u0000\u0000\u0000\u0557\u0558\u0001\u0000\u0000\u0000"+ + "\u0558\u055a\u0001\u0000\u0000\u0000\u0559\u055b\u0005b\u0000\u0000\u055a"+ + "\u0559\u0001\u0000\u0000\u0000\u055a\u055b\u0001\u0000\u0000\u0000\u055b"+ + "\u00dd\u0001\u0000\u0000\u0000\u055c\u055d\u0003N\'\u0000\u055d\u055e"+ + "\u0005\u000b\u0000\u0000\u055e\u00df\u0001\u0000\u0000\u0000\u055f\u0560"+ + "\u0005c\u0000\u0000\u0560\u0562\u0004p\u000e\u0000\u0561\u055f\u0001\u0000"+ + "\u0000\u0000\u0561\u0562\u0001\u0000\u0000\u0000\u0562\u0564\u0001\u0000"+ + "\u0000\u0000\u0563\u0565\u0005\u0019\u0000\u0000\u0564\u0563\u0001\u0000"+ + "\u0000\u0000\u0564\u0565\u0001\u0000\u0000\u0000\u0565\u0566\u0001\u0000"+ + "\u0000\u0000\u0566\u0567\u0003\u0108\u0084\u0000\u0567\u0569\u0005\u0006"+ + "\u0000\u0000\u0568\u056a\u0003\u00f0x\u0000\u0569\u0568\u0001\u0000\u0000"+ + "\u0000\u0569\u056a\u0001\u0000\u0000\u0000\u056a\u056b\u0001\u0000\u0000"+ + "\u0000\u056b\u056c\u0005\u0007\u0000\u0000\u056c\u056d\u0005\b\u0000\u0000"+ + "\u056d\u056e\u0003\u00f6{\u0000\u056e\u056f\u0005\n\u0000\u0000\u056f"+ + "\u00e1\u0001\u0000\u0000\u0000\u0570\u0572\u0005c\u0000\u0000\u0571\u0570"+ + "\u0001\u0000\u0000\u0000\u0571\u0572\u0001\u0000\u0000\u0000\u0572\u0573"+ + "\u0001\u0000\u0000\u0000\u0573\u0574\u0005W\u0000\u0000\u0574\u0576\u0005"+ + "\u0019\u0000\u0000\u0575\u0577\u0003\u0132\u0099\u0000\u0576\u0575\u0001"+ + "\u0000\u0000\u0000\u0576\u0577\u0001\u0000\u0000\u0000\u0577\u0578\u0001"+ + "\u0000\u0000\u0000\u0578\u057a\u0005\u0006\u0000\u0000\u0579\u057b\u0003"+ + "\u00f0x\u0000\u057a\u0579\u0001\u0000\u0000\u0000\u057a\u057b\u0001\u0000"+ + "\u0000\u0000\u057b\u057c\u0001\u0000\u0000\u0000\u057c\u057d\u0005\u0007"+ + "\u0000\u0000\u057d\u057e\u0005\b\u0000\u0000\u057e\u057f\u0003\u00f6{"+ + "\u0000\u057f\u0580\u0005\n\u0000\u0000\u0580\u00e3\u0001\u0000\u0000\u0000"+ + "\u0581\u0582\u0005\b\u0000\u0000\u0582\u0587\u0003\u00e6s\u0000\u0583"+ + "\u0584\u0005\f\u0000\u0000\u0584\u0586\u0003\u00e6s\u0000\u0585\u0583"+ + "\u0001\u0000\u0000\u0000\u0586\u0589\u0001\u0000\u0000\u0000\u0587\u0585"+ + "\u0001\u0000\u0000\u0000\u0587\u0588\u0001\u0000\u0000\u0000\u0588\u058b"+ + "\u0001\u0000\u0000\u0000\u0589\u0587\u0001\u0000\u0000\u0000\u058a\u058c"+ + "\u0005\f\u0000\u0000\u058b\u058a\u0001\u0000\u0000\u0000\u058b\u058c\u0001"+ + "\u0000\u0000\u0000\u058c\u058d\u0001\u0000\u0000\u0000\u058d\u058e\u0005"+ + "\n\u0000\u0000\u058e\u00e5\u0001\u0000\u0000\u0000\u058f\u0590\u0005\u0019"+ + "\u0000\u0000\u0590\u0591\u0003\u00eau\u0000\u0591\u00e7\u0001\u0000\u0000"+ + "\u0000\u0592\u0593\u0005\b\u0000\u0000\u0593\u0598\u0003\u00eau\u0000"+ + "\u0594\u0595\u0005\f\u0000\u0000\u0595\u0597\u0003\u00eau\u0000\u0596"+ + "\u0594\u0001\u0000\u0000\u0000\u0597\u059a\u0001\u0000\u0000\u0000\u0598"+ + "\u0596\u0001\u0000\u0000\u0000\u0598\u0599\u0001\u0000\u0000\u0000\u0599"+ + "\u059c\u0001\u0000\u0000\u0000\u059a\u0598\u0001\u0000\u0000\u0000\u059b"+ + "\u059d\u0005\f\u0000\u0000\u059c\u059b\u0001\u0000\u0000\u0000\u059c\u059d"+ + "\u0001\u0000\u0000\u0000\u059d\u059e\u0001\u0000\u0000\u0000\u059e\u059f"+ + "\u0005\n\u0000\u0000\u059f\u00e9\u0001\u0000\u0000\u0000\u05a0\u05a1\u0005"+ + "\u0004\u0000\u0000\u05a1\u05a2\u0003\u0112\u0089\u0000\u05a2\u05a3\u0005"+ + "\u0005\u0000\u0000\u05a3\u05a5\u0005\u0006\u0000\u0000\u05a4\u05a6\u0003"+ + "\u00f0x\u0000\u05a5\u05a4\u0001\u0000\u0000\u0000\u05a5\u05a6\u0001\u0000"+ + "\u0000\u0000\u05a6\u05a7\u0001\u0000\u0000\u0000\u05a7\u05a8\u0005\u0007"+ + "\u0000\u0000\u05a8\u05a9\u0005\b\u0000\u0000\u05a9\u05aa\u0003\u00f6{"+ + "\u0000\u05aa\u05ab\u0005\n\u0000\u0000\u05ab\u00eb\u0001\u0000\u0000\u0000"+ + "\u05ac\u05af\u0003\u0108\u0084\u0000\u05ad\u05af\u0003\u00eew\u0000\u05ae"+ + "\u05ac\u0001\u0000\u0000\u0000\u05ae\u05ad\u0001\u0000\u0000\u0000\u05af"+ + "\u00ed\u0001\u0000\u0000\u0000\u05b0\u05b1\u0005\u001e\u0000\u0000\u05b1"+ + "\u05b2\u0003\u0130\u0098\u0000\u05b2\u00ef\u0001\u0000\u0000\u0000\u05b3"+ + "\u05b8\u0003\u00f2y\u0000\u05b4\u05b5\u0005\f\u0000\u0000\u05b5\u05b7"+ + "\u0003\u00f2y\u0000\u05b6\u05b4\u0001\u0000\u0000\u0000\u05b7\u05ba\u0001"+ + "\u0000\u0000\u0000\u05b8\u05b6\u0001\u0000\u0000\u0000\u05b8\u05b9\u0001"+ + "\u0000\u0000\u0000\u05b9\u05bd\u0001\u0000\u0000\u0000\u05ba\u05b8\u0001"+ + "\u0000\u0000\u0000\u05bb\u05bc\u0005\f\u0000\u0000\u05bc\u05be\u0003\u00f4"+ + "z\u0000\u05bd\u05bb\u0001\u0000\u0000\u0000\u05bd\u05be\u0001\u0000\u0000"+ + "\u0000\u05be\u05c0\u0001\u0000\u0000\u0000\u05bf\u05c1\u0005\f\u0000\u0000"+ + "\u05c0\u05bf\u0001\u0000\u0000\u0000\u05c0\u05c1\u0001\u0000\u0000\u0000"+ + "\u05c1\u05ca\u0001\u0000\u0000\u0000\u05c2\u05ca\u0003\u00f4z\u0000\u05c3"+ + "\u05ca\u0003\u00fa}\u0000\u05c4\u05c7\u0003\u0100\u0080\u0000\u05c5\u05c6"+ + "\u0005\u0010\u0000\u0000\u05c6\u05c8\u0003\u00f0x\u0000\u05c7\u05c5\u0001"+ + "\u0000\u0000\u0000\u05c7\u05c8\u0001\u0000\u0000\u0000\u05c8\u05ca\u0001"+ + "\u0000\u0000\u0000\u05c9\u05b3\u0001\u0000\u0000\u0000\u05c9\u05c2\u0001"+ + "\u0000\u0000\u0000\u05c9\u05c3\u0001\u0000\u0000\u0000\u05c9\u05c4\u0001"+ + "\u0000\u0000\u0000\u05ca\u00f1\u0001\u0000\u0000\u0000\u05cb\u05cd\u0003"+ + "l6\u0000\u05cc\u05cb\u0001\u0000\u0000\u0000\u05cc\u05cd\u0001\u0000\u0000"+ + "\u0000\u05cd\u05cf\u0001\u0000\u0000\u0000\u05ce\u05d0\u0003H$\u0000\u05cf"+ + "\u05ce\u0001\u0000\u0000\u0000\u05cf\u05d0\u0001\u0000\u0000\u0000\u05d0"+ + "\u05d1\u0001\u0000\u0000\u0000\u05d1\u05d3\u0003\u0116\u008b\u0000\u05d2"+ + "\u05d4\u0005\u000e\u0000\u0000\u05d3\u05d2\u0001\u0000\u0000\u0000\u05d3"+ + "\u05d4\u0001\u0000\u0000\u0000\u05d4\u05d6\u0001\u0000\u0000\u0000\u05d5"+ + "\u05d7\u00038\u001c\u0000\u05d6\u05d5\u0001\u0000\u0000\u0000\u05d6\u05d7"+ + "\u0001\u0000\u0000\u0000\u05d7\u05da\u0001\u0000\u0000\u0000\u05d8\u05d9"+ + "\u0005\r\u0000\u0000\u05d9\u05db\u0003\u0112\u0089\u0000\u05da\u05d8\u0001"+ + "\u0000\u0000\u0000\u05da\u05db\u0001\u0000\u0000\u0000\u05db\u00f3\u0001"+ + "\u0000\u0000\u0000\u05dc\u05dd\u0005\u0011\u0000\u0000\u05dd\u05df\u0003"+ + "\u0132\u0099\u0000\u05de\u05e0\u00038\u001c\u0000\u05df\u05de\u0001\u0000"+ + "\u0000\u0000\u05df\u05e0\u0001\u0000\u0000\u0000\u05e0\u00f5\u0001\u0000"+ + "\u0000\u0000\u05e1\u05e3\u0003\u00f8|\u0000\u05e2\u05e1\u0001\u0000\u0000"+ + "\u0000\u05e2\u05e3\u0001\u0000\u0000\u0000\u05e3\u00f7\u0001\u0000\u0000"+ + "\u0000\u05e4\u05e6\u0003t:\u0000\u05e5\u05e4\u0001\u0000\u0000\u0000\u05e6"+ + "\u05e7\u0001\u0000\u0000\u0000\u05e7\u05e5\u0001\u0000\u0000\u0000\u05e7"+ + "\u05e8\u0001\u0000\u0000\u0000\u05e8\u00f9\u0001\u0000\u0000\u0000\u05e9"+ + "\u05ea\u0005\u0004\u0000\u0000\u05ea\u05eb\u0003\u00fc~\u0000\u05eb\u05ec"+ + "\u0005\u0005\u0000\u0000\u05ec\u00fb\u0001\u0000\u0000\u0000\u05ed\u05ef"+ + "\u0005\f\u0000\u0000\u05ee\u05ed\u0001\u0000\u0000\u0000\u05ef\u05f2\u0001"+ + "\u0000\u0000\u0000\u05f0\u05ee\u0001\u0000\u0000\u0000\u05f0\u05f1\u0001"+ + "\u0000\u0000\u0000\u05f1\u05f4\u0001\u0000\u0000\u0000\u05f2\u05f0\u0001"+ + "\u0000\u0000\u0000\u05f3\u05f5\u0003\u00fe\u007f\u0000\u05f4\u05f3\u0001"+ + "\u0000\u0000\u0000\u05f4\u05f5\u0001\u0000\u0000\u0000\u05f5\u05fe\u0001"+ + "\u0000\u0000\u0000\u05f6\u05f8\u0005\f\u0000\u0000\u05f7\u05f6\u0001\u0000"+ + "\u0000\u0000\u05f8\u05f9\u0001\u0000\u0000\u0000\u05f9\u05f7\u0001\u0000"+ + "\u0000\u0000\u05f9\u05fa\u0001\u0000\u0000\u0000\u05fa\u05fb\u0001\u0000"+ + "\u0000\u0000\u05fb\u05fd\u0003\u00fe\u007f\u0000\u05fc\u05f7\u0001\u0000"+ + "\u0000\u0000\u05fd\u0600\u0001\u0000\u0000\u0000\u05fe\u05fc\u0001\u0000"+ + "\u0000\u0000\u05fe\u05ff\u0001\u0000\u0000\u0000\u05ff\u0604\u0001\u0000"+ + "\u0000\u0000\u0600\u05fe\u0001\u0000\u0000\u0000\u0601\u0603\u0005\f\u0000"+ + "\u0000\u0602\u0601\u0001\u0000\u0000\u0000\u0603\u0606\u0001\u0000\u0000"+ + "\u0000\u0604\u0602\u0001\u0000\u0000\u0000\u0604\u0605\u0001\u0000\u0000"+ + "\u0000\u0605\u00fd\u0001\u0000\u0000\u0000\u0606\u0604\u0001\u0000\u0000"+ + "\u0000\u0607\u0609\u0005\u0011\u0000\u0000\u0608\u0607\u0001\u0000\u0000"+ + "\u0000\u0608\u0609\u0001\u0000\u0000\u0000\u0609\u060c\u0001\u0000\u0000"+ + "\u0000\u060a\u060d\u0003\u0112\u0089\u0000\u060b\u060d\u0003\u0132\u0099"+ + "\u0000\u060c\u060a\u0001\u0000\u0000\u0000\u060c\u060b\u0001\u0000\u0000"+ + "\u0000\u060d\u060f\u0001\u0000\u0000\u0000\u060e\u0610\u0005\f\u0000\u0000"+ + "\u060f\u060e\u0001\u0000\u0000\u0000\u060f\u0610\u0001\u0000\u0000\u0000"+ + "\u0610\u00ff\u0001\u0000\u0000\u0000\u0611\u061d\u0005\b\u0000\u0000\u0612"+ + "\u0617\u0003\u0102\u0081\u0000\u0613\u0614\u0005\f\u0000\u0000\u0614\u0616"+ + "\u0003\u0102\u0081\u0000\u0615\u0613\u0001\u0000\u0000\u0000\u0616\u0619"+ + "\u0001\u0000\u0000\u0000\u0617\u0615\u0001\u0000\u0000\u0000\u0617\u0618"+ + "\u0001\u0000\u0000\u0000\u0618\u061b\u0001\u0000\u0000\u0000\u0619\u0617"+ + "\u0001\u0000\u0000\u0000\u061a\u061c\u0005\f\u0000\u0000\u061b\u061a\u0001"+ + "\u0000\u0000\u0000\u061b\u061c\u0001\u0000\u0000\u0000\u061c\u061e\u0001"+ + "\u0000\u0000\u0000\u061d\u0612\u0001\u0000\u0000\u0000\u061d\u061e\u0001"+ + "\u0000\u0000\u0000\u061e\u061f\u0001\u0000\u0000\u0000\u061f\u0620\u0005"+ + "\n\u0000\u0000\u0620\u0101\u0001\u0000\u0000\u0000\u0621\u0622\u0003\u0108"+ + "\u0084\u0000\u0622\u0623\u0007\u0007\u0000\u0000\u0623\u0624\u0003\u0112"+ + "\u0089\u0000\u0624\u0635\u0001\u0000\u0000\u0000\u0625\u0626\u0005\u0004"+ + "\u0000\u0000\u0626\u0627\u0003\u0112\u0089\u0000\u0627\u0628\u0005\u0005"+ + "\u0000\u0000\u0628\u0629\u0005\u0010\u0000\u0000\u0629\u062a\u0003\u0112"+ + "\u0089\u0000\u062a\u0635\u0001\u0000\u0000\u0000\u062b\u0635\u0003\u0104"+ + "\u0082\u0000\u062c\u0635\u0003\u0106\u0083\u0000\u062d\u0635\u0003\u00e0"+ + "p\u0000\u062e\u0635\u0003\u0134\u009a\u0000\u062f\u0631\u0005\u0011\u0000"+ + "\u0000\u0630\u062f\u0001\u0000\u0000\u0000\u0630\u0631\u0001\u0000\u0000"+ + "\u0000\u0631\u0632\u0001\u0000\u0000\u0000\u0632\u0635\u0003\u0112\u0089"+ + "\u0000\u0633\u0635\u0003D\"\u0000\u0634\u0621\u0001\u0000\u0000\u0000"+ + "\u0634\u0625\u0001\u0000\u0000\u0000\u0634\u062b\u0001\u0000\u0000\u0000"+ + "\u0634\u062c\u0001\u0000\u0000\u0000\u0634\u062d\u0001\u0000\u0000\u0000"+ + "\u0634\u062e\u0001\u0000\u0000\u0000\u0634\u0630\u0001\u0000\u0000\u0000"+ + "\u0634\u0633\u0001\u0000\u0000\u0000\u0635\u0103\u0001\u0000\u0000\u0000"+ + "\u0636\u0637\u0003\u012c\u0096\u0000\u0637\u0638\u0005\u0006\u0000\u0000"+ + "\u0638\u063a\u0005\u0007\u0000\u0000\u0639\u063b\u00038\u001c\u0000\u063a"+ + "\u0639\u0001\u0000\u0000\u0000\u063a\u063b\u0001\u0000\u0000\u0000\u063b"+ + "\u063c\u0001\u0000\u0000\u0000\u063c\u063d\u0005\b\u0000\u0000\u063d\u063e"+ + "\u0003\u00f6{\u0000\u063e\u063f\u0005\n\u0000\u0000\u063f\u0105\u0001"+ + "\u0000\u0000\u0000\u0640\u0641\u0003\u012e\u0097\u0000\u0641\u0643\u0005"+ + "\u0006\u0000\u0000\u0642\u0644\u0003\u00f0x\u0000\u0643\u0642\u0001\u0000"+ + "\u0000\u0000\u0643\u0644\u0001\u0000\u0000\u0000\u0644\u0645\u0001\u0000"+ + "\u0000\u0000\u0645\u0646\u0005\u0007\u0000\u0000\u0646\u0647\u0005\b\u0000"+ + "\u0000\u0647\u0648\u0003\u00f6{\u0000\u0648\u0649\u0005\n\u0000\u0000"+ + "\u0649\u0107\u0001\u0000\u0000\u0000\u064a\u0652\u0003\u0130\u0098\u0000"+ + "\u064b\u0652\u0005\u008b\u0000\u0000\u064c\u0652\u0003\u0128\u0094\u0000"+ + "\u064d\u064e\u0005\u0004\u0000\u0000\u064e\u064f\u0003\u0112\u0089\u0000"+ + "\u064f\u0650\u0005\u0005\u0000\u0000\u0650\u0652\u0001\u0000\u0000\u0000"+ + "\u0651\u064a\u0001\u0000\u0000\u0000\u0651\u064b\u0001\u0000\u0000\u0000"+ + "\u0651\u064c\u0001\u0000\u0000\u0000\u0651\u064d\u0001\u0000\u0000\u0000"+ + "\u0652\u0109\u0001\u0000\u0000\u0000\u0653\u0658\u0005\u0006\u0000\u0000"+ + "\u0654\u0656\u0003\u010c\u0086\u0000\u0655\u0657\u0005\f\u0000\u0000\u0656"+ + "\u0655\u0001\u0000\u0000\u0000\u0656\u0657\u0001\u0000\u0000\u0000\u0657"+ + "\u0659\u0001\u0000\u0000\u0000\u0658\u0654\u0001\u0000\u0000\u0000\u0658"+ + "\u0659\u0001\u0000\u0000\u0000\u0659\u065a\u0001\u0000\u0000\u0000\u065a"+ + "\u065b\u0005\u0007\u0000\u0000\u065b\u010b\u0001\u0000\u0000\u0000\u065c"+ + "\u0661\u0003\u010e\u0087\u0000\u065d\u065e\u0005\f\u0000\u0000\u065e\u0660"+ + "\u0003\u010e\u0087\u0000\u065f\u065d\u0001\u0000\u0000\u0000\u0660\u0663"+ + "\u0001\u0000\u0000\u0000\u0661\u065f\u0001\u0000\u0000\u0000\u0661\u0662"+ + "\u0001\u0000\u0000\u0000\u0662\u010d\u0001\u0000\u0000\u0000\u0663\u0661"+ + "\u0001\u0000\u0000\u0000\u0664\u0666\u0005\u0011\u0000\u0000\u0665\u0664"+ + "\u0001\u0000\u0000\u0000\u0665\u0666\u0001\u0000\u0000\u0000\u0666\u0669"+ + "\u0001\u0000\u0000\u0000\u0667\u066a\u0003\u0112\u0089\u0000\u0668\u066a"+ + "\u0003\u0132\u0099\u0000\u0669\u0667\u0001\u0000\u0000\u0000\u0669\u0668"+ + "\u0001\u0000\u0000\u0000\u066a\u010f\u0001\u0000\u0000\u0000\u066b\u0670"+ + "\u0003\u0112\u0089\u0000\u066c\u066d\u0005\f\u0000\u0000\u066d\u066f\u0003"+ + "\u0112\u0089\u0000\u066e\u066c\u0001\u0000\u0000\u0000\u066f\u0672\u0001"+ + "\u0000\u0000\u0000\u0670\u066e\u0001\u0000\u0000\u0000\u0670\u0671\u0001"+ + "\u0000\u0000\u0000\u0671\u0111\u0001\u0000\u0000\u0000\u0672\u0670\u0001"+ + "\u0000\u0000\u0000\u0673\u0674\u0006\u0089\uffff\uffff\u0000\u0674\u06b5"+ + "\u0003\u0118\u008c\u0000\u0675\u0677\u0005g\u0000\u0000\u0676\u0678\u0003"+ + "\u0132\u0099\u0000\u0677\u0676\u0001\u0000\u0000\u0000\u0677\u0678\u0001"+ + "\u0000\u0000\u0000\u0678\u067a\u0001\u0000\u0000\u0000\u0679\u067b\u0003"+ + "\u0004\u0002\u0000\u067a\u0679\u0001\u0000\u0000\u0000\u067a\u067b\u0001"+ + "\u0000\u0000\u0000\u067b\u067c\u0001\u0000\u0000\u0000\u067c\u067d\u0003"+ + "\u00d0h\u0000\u067d\u067e\u0003\u00d2i\u0000\u067e\u06b5\u0001\u0000\u0000"+ + "\u0000\u067f\u0680\u0005L\u0000\u0000\u0680\u0682\u0003\u0112\u0089\u0000"+ + "\u0681\u0683\u0003\f\u0006\u0000\u0682\u0681\u0001\u0000\u0000\u0000\u0682"+ + "\u0683\u0001\u0000\u0000\u0000\u0683\u0684\u0001\u0000\u0000\u0000\u0684"+ + "\u0685\u0003\u010a\u0085\u0000\u0685\u06b5\u0001\u0000\u0000\u0000\u0686"+ + "\u0687\u0005L\u0000\u0000\u0687\u0689\u0003\u0112\u0089\u0000\u0688\u068a"+ + "\u0003\f\u0006\u0000\u0689\u0688\u0001\u0000\u0000\u0000\u0689\u068a\u0001"+ + "\u0000\u0000\u0000\u068a\u06b5\u0001\u0000\u0000\u0000\u068b\u068c\u0005"+ + "]\u0000\u0000\u068c\u06b5\u0003\u0112\u0089*\u068d\u068e\u0005Q\u0000"+ + "\u0000\u068e\u06b5\u0003\u0112\u0089)\u068f\u0690\u0005I\u0000\u0000\u0690"+ + "\u06b5\u0003\u0112\u0089(\u0691\u0692\u0005\u0013\u0000\u0000\u0692\u06b5"+ + "\u0003\u0112\u0089\'\u0693\u0694\u0005\u0014\u0000\u0000\u0694\u06b5\u0003"+ + "\u0112\u0089&\u0695\u0696\u0005\u0015\u0000\u0000\u0696\u06b5\u0003\u0112"+ + "\u0089%\u0697\u0698\u0005\u0016\u0000\u0000\u0698\u06b5\u0003\u0112\u0089"+ + "$\u0699\u069a\u0005\u0017\u0000\u0000\u069a\u06b5\u0003\u0112\u0089#\u069b"+ + "\u069c\u0005\u0018\u0000\u0000\u069c\u06b5\u0003\u0112\u0089\"\u069d\u069e"+ + "\u0005d\u0000\u0000\u069e\u06b5\u0003\u0112\u0089!\u069f\u06b5\u0003\u00e8"+ + "t\u0000\u06a0\u06b5\u0003\u00e4r\u0000\u06a1\u06b5\u0003\u00e2q\u0000"+ + "\u06a2\u06b5\u0003\u00b2Y\u0000\u06a3\u06b5\u0005X\u0000\u0000\u06a4\u06a6"+ + "\u0003\u0130\u0098\u0000\u06a5\u06a7\u0003\u0112\u0089\u0000\u06a6\u06a5"+ + "\u0001\u0000\u0000\u0000\u06a6\u06a7\u0001\u0000\u0000\u0000\u06a7\u06b5"+ + "\u0001\u0000\u0000\u0000\u06a8\u06b5\u0005j\u0000\u0000\u06a9\u06b5\u0003"+ + "\u0122\u0091\u0000\u06aa\u06b5\u0003\u00fa}\u0000\u06ab\u06b5\u0003\u0100"+ + "\u0080\u0000\u06ac\u06ad\u0005\u0006\u0000\u0000\u06ad\u06ae\u0003\u0110"+ + "\u0088\u0000\u06ae\u06af\u0005\u0007\u0000\u0000\u06af\u06b5\u0001\u0000"+ + "\u0000\u0000\u06b0\u06b2\u0003\f\u0006\u0000\u06b1\u06b3\u0003\u0110\u0088"+ + "\u0000\u06b2\u06b1\u0001\u0000\u0000\u0000\u06b2\u06b3\u0001\u0000\u0000"+ + "\u0000\u06b3\u06b5\u0001\u0000\u0000\u0000\u06b4\u0673\u0001\u0000\u0000"+ + "\u0000\u06b4\u0675\u0001\u0000\u0000\u0000\u06b4\u067f\u0001\u0000\u0000"+ + "\u0000\u06b4\u0686\u0001\u0000\u0000\u0000\u06b4\u068b\u0001\u0000\u0000"+ + "\u0000\u06b4\u068d\u0001\u0000\u0000\u0000\u06b4\u068f\u0001\u0000\u0000"+ + "\u0000\u06b4\u0691\u0001\u0000\u0000\u0000\u06b4\u0693\u0001\u0000\u0000"+ + "\u0000\u06b4\u0695\u0001\u0000\u0000\u0000\u06b4\u0697\u0001\u0000\u0000"+ + "\u0000\u06b4\u0699\u0001\u0000\u0000\u0000\u06b4\u069b\u0001\u0000\u0000"+ + "\u0000\u06b4\u069d\u0001\u0000\u0000\u0000\u06b4\u069f\u0001\u0000\u0000"+ + "\u0000\u06b4\u06a0\u0001\u0000\u0000\u0000\u06b4\u06a1\u0001\u0000\u0000"+ + "\u0000\u06b4\u06a2\u0001\u0000\u0000\u0000\u06b4\u06a3\u0001\u0000\u0000"+ + "\u0000\u06b4\u06a4\u0001\u0000\u0000\u0000\u06b4\u06a8\u0001\u0000\u0000"+ + "\u0000\u06b4\u06a9\u0001\u0000\u0000\u0000\u06b4\u06aa\u0001\u0000\u0000"+ + "\u0000\u06b4\u06ab\u0001\u0000\u0000\u0000\u06b4\u06ac\u0001\u0000\u0000"+ + "\u0000\u06b4\u06b0\u0001\u0000\u0000\u0000\u06b5\u0728\u0001\u0000\u0000"+ + "\u0000\u06b6\u06b7\n2\u0000\u0000\u06b7\u06b8\u0005\u000f\u0000\u0000"+ + "\u06b8\u0727\u0003\u0112\u00893\u06b9\u06ba\n \u0000\u0000\u06ba\u06bb"+ + "\u0005\u001c\u0000\u0000\u06bb\u0727\u0003\u0112\u0089 \u06bc\u06bd\n"+ + "\u001f\u0000\u0000\u06bd\u06be\u0007\b\u0000\u0000\u06be\u0727\u0003\u0112"+ + "\u0089 \u06bf\u06c0\n\u001e\u0000\u0000\u06c0\u06c1\u0007\t\u0000\u0000"+ + "\u06c1\u0727\u0003\u0112\u0089\u001f\u06c2\u06c3\n\u001d\u0000\u0000\u06c3"+ + "\u06c4\u0005\u001d\u0000\u0000\u06c4\u0727\u0003\u0112\u0089\u001e\u06c5"+ + "\u06cc\n\u001c\u0000\u0000\u06c6\u06cd\u0005\u001f\u0000\u0000\u06c7\u06c8"+ + "\u0005!\u0000\u0000\u06c8\u06cd\u0005!\u0000\u0000\u06c9\u06ca\u0005!"+ + "\u0000\u0000\u06ca\u06cb\u0005!\u0000\u0000\u06cb\u06cd\u0005!\u0000\u0000"+ + "\u06cc\u06c6\u0001\u0000\u0000\u0000\u06cc\u06c7\u0001\u0000\u0000\u0000"+ + "\u06cc\u06c9\u0001\u0000\u0000\u0000\u06cd\u06ce\u0001\u0000\u0000\u0000"+ + "\u06ce\u0727\u0003\u0112\u0089\u001d\u06cf\u06d0\n\u001b\u0000\u0000\u06d0"+ + "\u06d1\u0007\n\u0000\u0000\u06d1\u0727\u0003\u0112\u0089\u001c\u06d2\u06d3"+ + "\n\u001a\u0000\u0000\u06d3\u06d4\u0005H\u0000\u0000\u06d4\u0727\u0003"+ + "\u0112\u0089\u001b\u06d5\u06d6\n\u0019\u0000\u0000\u06d6\u06d7\u0005^"+ + "\u0000\u0000\u06d7\u0727\u0003\u0112\u0089\u001a\u06d8\u06d9\n\u0018\u0000"+ + "\u0000\u06d9\u06da\u0007\u000b\u0000\u0000\u06da\u0727\u0003\u0112\u0089"+ + "\u0019\u06db\u06dc\n\u0017\u0000\u0000\u06dc\u06dd\u0005(\u0000\u0000"+ + "\u06dd\u0727\u0003\u0112\u0089\u0018\u06de\u06df\n\u0016\u0000\u0000\u06df"+ + "\u06e0\u0005)\u0000\u0000\u06e0\u0727\u0003\u0112\u0089\u0017\u06e1\u06e2"+ + "\n\u0015\u0000\u0000\u06e2\u06e3\u0005*\u0000\u0000\u06e3\u0727\u0003"+ + "\u0112\u0089\u0016\u06e4\u06e5\n\u0014\u0000\u0000\u06e5\u06e6\u0005+"+ + "\u0000\u0000\u06e6\u0727\u0003\u0112\u0089\u0015\u06e7\u06e8\n\u0013\u0000"+ + "\u0000\u06e8\u06e9\u0005,\u0000\u0000\u06e9\u0727\u0003\u0112\u0089\u0014"+ + "\u06ea\u06eb\n\u0012\u0000\u0000\u06eb\u06ec\u0005\u000e\u0000\u0000\u06ec"+ + "\u06ed\u0003\u0112\u0089\u0000\u06ed\u06ee\u0005\u0010\u0000\u0000\u06ee"+ + "\u06ef\u0003\u0112\u0089\u0013\u06ef\u0727\u0001\u0000\u0000\u0000\u06f0"+ + "\u06f1\n\u0011\u0000\u0000\u06f1\u06f2\u0005\r\u0000\u0000\u06f2\u0727"+ + "\u0003\u0112\u0089\u0012\u06f3\u06f4\n\u0010\u0000\u0000\u06f4\u06f5\u0003"+ + "\u0120\u0090\u0000\u06f5\u06f6\u0003\u0112\u0089\u0011\u06f6\u0727\u0001"+ + "\u0000\u0000\u0000\u06f7\u06f9\n3\u0000\u0000\u06f8\u06fa\u0005\u000f"+ + "\u0000\u0000\u06f9\u06f8\u0001\u0000\u0000\u0000\u06f9\u06fa\u0001\u0000"+ + "\u0000\u0000\u06fa\u06fb\u0001\u0000\u0000\u0000\u06fb\u06fc\u0005\u0004"+ + "\u0000\u0000\u06fc\u06fd\u0003\u0110\u0088\u0000\u06fd\u06fe\u0005\u0005"+ + "\u0000\u0000\u06fe\u0727\u0001\u0000\u0000\u0000\u06ff\u0701\n1\u0000"+ + "\u0000\u0700\u0702\u0005\u0018\u0000\u0000\u0701\u0700\u0001\u0000\u0000"+ + "\u0000\u0701\u0702\u0001\u0000\u0000\u0000\u0702\u0703\u0001\u0000\u0000"+ + "\u0000\u0703\u0705\u0005\u0012\u0000\u0000\u0704\u0706\u0005\u001e\u0000"+ + "\u0000\u0705\u0704\u0001\u0000\u0000\u0000\u0705\u0706\u0001\u0000\u0000"+ + "\u0000\u0706\u0707\u0001\u0000\u0000\u0000\u0707\u0709\u0003\u0130\u0098"+ + "\u0000\u0708\u070a\u0003\u001c\u000e\u0000\u0709\u0708\u0001\u0000\u0000"+ + "\u0000\u0709\u070a\u0001\u0000\u0000\u0000\u070a\u0727\u0001\u0000\u0000"+ + "\u0000\u070b\u070d\n0\u0000\u0000\u070c\u070e\u0005\u000e\u0000\u0000"+ + "\u070d\u070c\u0001\u0000\u0000\u0000\u070d\u070e\u0001\u0000\u0000\u0000"+ + "\u070e\u070f\u0001\u0000\u0000\u0000\u070f\u0711\u0005\u0012\u0000\u0000"+ + "\u0710\u0712\u0005\u001e\u0000\u0000\u0711\u0710\u0001\u0000\u0000\u0000"+ + "\u0711\u0712\u0001\u0000\u0000\u0000\u0712\u0713\u0001\u0000\u0000\u0000"+ + "\u0713\u0715\u0003\u0130\u0098\u0000\u0714\u0716\u0003\u001c\u000e\u0000"+ + "\u0715\u0714\u0001\u0000\u0000\u0000\u0715\u0716\u0001\u0000\u0000\u0000"+ + "\u0716\u0727\u0001\u0000\u0000\u0000\u0717\u0718\n-\u0000\u0000\u0718"+ + "\u0727\u0003\u010a\u0085\u0000\u0719\u071a\n,\u0000\u0000\u071a\u071b"+ + "\u0004\u0089&\u0000\u071b\u0727\u0005\u0013\u0000\u0000\u071c\u071d\n"+ + "+\u0000\u0000\u071d\u071e\u0004\u0089(\u0000\u071e\u0727\u0005\u0014\u0000"+ + "\u0000\u071f\u0720\n\u000f\u0000\u0000\u0720\u0727\u0003\u0124\u0092\u0000"+ + "\u0721\u0722\n\u0002\u0000\u0000\u0722\u0723\u0005`\u0000\u0000\u0723"+ + "\u0727\u0003\u0114\u008a\u0000\u0724\u0725\n\u0001\u0000\u0000\u0725\u0727"+ + "\u0005\u0018\u0000\u0000\u0726\u06b6\u0001\u0000\u0000\u0000\u0726\u06b9"+ + "\u0001\u0000\u0000\u0000\u0726\u06bc\u0001\u0000\u0000\u0000\u0726\u06bf"+ + "\u0001\u0000\u0000\u0000\u0726\u06c2\u0001\u0000\u0000\u0000\u0726\u06c5"+ + "\u0001\u0000\u0000\u0000\u0726\u06cf\u0001\u0000\u0000\u0000\u0726\u06d2"+ + "\u0001\u0000\u0000\u0000\u0726\u06d5\u0001\u0000\u0000\u0000\u0726\u06d8"+ + "\u0001\u0000\u0000\u0000\u0726\u06db\u0001\u0000\u0000\u0000\u0726\u06de"+ + "\u0001\u0000\u0000\u0000\u0726\u06e1\u0001\u0000\u0000\u0000\u0726\u06e4"+ + "\u0001\u0000\u0000\u0000\u0726\u06e7\u0001\u0000\u0000\u0000\u0726\u06ea"+ + "\u0001\u0000\u0000\u0000\u0726\u06f0\u0001\u0000\u0000\u0000\u0726\u06f3"+ + "\u0001\u0000\u0000\u0000\u0726\u06f7\u0001\u0000\u0000\u0000\u0726\u06ff"+ + "\u0001\u0000\u0000\u0000\u0726\u070b\u0001\u0000\u0000\u0000\u0726\u0717"+ + "\u0001\u0000\u0000\u0000\u0726\u0719\u0001\u0000\u0000\u0000\u0726\u071c"+ + "\u0001\u0000\u0000\u0000\u0726\u071f\u0001\u0000\u0000\u0000\u0726\u0721"+ + "\u0001\u0000\u0000\u0000\u0726\u0724\u0001\u0000\u0000\u0000\u0727\u072a"+ + "\u0001\u0000\u0000\u0000\u0728\u0726\u0001\u0000\u0000\u0000\u0728\u0729"+ + "\u0001\u0000\u0000\u0000\u0729\u0113\u0001\u0000\u0000\u0000\u072a\u0728"+ + "\u0001\u0000\u0000\u0000\u072b\u072e\u0003\u0018\f\u0000\u072c\u072d\u0005"+ + "\u0004\u0000\u0000\u072d\u072f\u0005\u0005\u0000\u0000\u072e\u072c\u0001"+ + "\u0000\u0000\u0000\u072e\u072f\u0001\u0000\u0000\u0000\u072f\u0732\u0001"+ + "\u0000\u0000\u0000\u0730\u0732\u0003\u0112\u0089\u0000\u0731\u072b\u0001"+ + "\u0000\u0000\u0000\u0731\u0730\u0001\u0000\u0000\u0000\u0732\u0115\u0001"+ + "\u0000\u0000\u0000\u0733\u0738\u0003\u0132\u0099\u0000\u0734\u0738\u0003"+ + "\u0138\u009c\u0000\u0735\u0738\u0003\u00fa}\u0000\u0736\u0738\u0003\u0100"+ + "\u0080\u0000\u0737\u0733\u0001\u0000\u0000\u0000\u0737\u0734\u0001\u0000"+ + "\u0000\u0000\u0737\u0735\u0001\u0000\u0000\u0000\u0737\u0736\u0001\u0000"+ + "\u0000\u0000\u0738\u0117\u0001\u0000\u0000\u0000\u0739\u074f\u0003\u00cc"+ + "f\u0000\u073a\u073c\u0005c\u0000\u0000\u073b\u073a\u0001\u0000\u0000\u0000"+ + "\u073b\u073c\u0001\u0000\u0000\u0000\u073c\u073d\u0001\u0000\u0000\u0000"+ + "\u073d\u073f\u0005W\u0000\u0000\u073e\u0740\u0005\u0019\u0000\u0000\u073f"+ + "\u073e\u0001\u0000\u0000\u0000\u073f\u0740\u0001\u0000\u0000\u0000\u0740"+ + "\u0741\u0001\u0000\u0000\u0000\u0741\u0743\u0005\u0006\u0000\u0000\u0742"+ + "\u0744\u0003\u00f0x\u0000\u0743\u0742\u0001\u0000\u0000\u0000\u0743\u0744"+ + "\u0001\u0000\u0000\u0000\u0744\u0745\u0001\u0000\u0000\u0000\u0745\u0747"+ + "\u0005\u0007\u0000\u0000\u0746\u0748\u00038\u001c\u0000\u0747\u0746\u0001"+ + "\u0000\u0000\u0000\u0747\u0748\u0001\u0000\u0000\u0000\u0748\u0749\u0001"+ + "\u0000\u0000\u0000\u0749\u074a\u0005\b\u0000\u0000\u074a\u074b\u0003\u00f6"+ + "{\u0000\u074b\u074c\u0005\n\u0000\u0000\u074c\u074f\u0001\u0000\u0000"+ + "\u0000\u074d\u074f\u0003\u011a\u008d\u0000\u074e\u0739\u0001\u0000\u0000"+ + "\u0000\u074e\u073b\u0001\u0000\u0000\u0000\u074e\u074d\u0001\u0000\u0000"+ + "\u0000\u074f\u0119\u0001\u0000\u0000\u0000\u0750\u0752\u0005c\u0000\u0000"+ + "\u0751\u0750\u0001\u0000\u0000\u0000\u0751\u0752\u0001\u0000\u0000\u0000"+ + "\u0752\u0753\u0001\u0000\u0000\u0000\u0753\u0755\u0003\u011c\u008e\u0000"+ + "\u0754\u0756\u00038\u001c\u0000\u0755\u0754\u0001\u0000\u0000\u0000\u0755"+ + "\u0756\u0001\u0000\u0000\u0000\u0756\u0757\u0001\u0000\u0000\u0000\u0757"+ + "\u0758\u0005:\u0000\u0000\u0758\u0759\u0003\u011e\u008f\u0000\u0759\u011b"+ + "\u0001\u0000\u0000\u0000\u075a\u0761\u0003\u0108\u0084\u0000\u075b\u075d"+ + "\u0005\u0006\u0000\u0000\u075c\u075e\u0003\u00f0x\u0000\u075d\u075c\u0001"+ + "\u0000\u0000\u0000\u075d\u075e\u0001\u0000\u0000\u0000\u075e\u075f\u0001"+ + "\u0000\u0000\u0000\u075f\u0761\u0005\u0007\u0000\u0000\u0760\u075a\u0001"+ + "\u0000\u0000\u0000\u0760\u075b\u0001\u0000\u0000\u0000\u0761\u011d\u0001"+ + "\u0000\u0000\u0000\u0762\u0768\u0003\u0112\u0089\u0000\u0763\u0764\u0005"+ + "\b\u0000\u0000\u0764\u0765\u0003\u00f6{\u0000\u0765\u0766\u0005\n\u0000"+ + "\u0000\u0766\u0768\u0001\u0000\u0000\u0000\u0767\u0762\u0001\u0000\u0000"+ + "\u0000\u0767\u0763\u0001\u0000\u0000\u0000\u0768\u011f\u0001\u0000\u0000"+ + "\u0000\u0769\u076a\u0007\f\u0000\u0000\u076a\u0121\u0001\u0000\u0000\u0000"+ + "\u076b\u0773\u0005;\u0000\u0000\u076c\u0773\u0005<\u0000\u0000\u076d\u0773"+ + "\u0005\u008b\u0000\u0000\u076e\u0773\u0003\u0124\u0092\u0000\u076f\u0773"+ + "\u0005\u0003\u0000\u0000\u0770\u0773\u0003\u0128\u0094\u0000\u0771\u0773"+ + "\u0003\u012a\u0095\u0000\u0772\u076b\u0001\u0000\u0000\u0000\u0772\u076c"+ + "\u0001\u0000\u0000\u0000\u0772\u076d\u0001\u0000\u0000\u0000\u0772\u076e"+ + "\u0001\u0000\u0000\u0000\u0772\u076f\u0001\u0000\u0000\u0000\u0772\u0770"+ + "\u0001\u0000\u0000\u0000\u0772\u0771\u0001\u0000\u0000\u0000\u0773\u0123"+ + "\u0001\u0000\u0000\u0000\u0774\u0778\u0005\u008c\u0000\u0000\u0775\u0777"+ + "\u0003\u0126\u0093\u0000\u0776\u0775\u0001\u0000\u0000\u0000\u0777\u077a"+ + "\u0001\u0000\u0000\u0000\u0778\u0776\u0001\u0000\u0000\u0000\u0778\u0779"+ + "\u0001\u0000\u0000\u0000\u0779\u077b\u0001\u0000\u0000\u0000\u077a\u0778"+ + "\u0001\u0000\u0000\u0000\u077b\u077c\u0005\u008c\u0000\u0000\u077c\u0125"+ + "\u0001\u0000\u0000\u0000\u077d\u0784\u0005\u0094\u0000\u0000\u077e\u077f"+ + "\u0005\u0093\u0000\u0000\u077f\u0780\u0003\u0112\u0089\u0000\u0780\u0781"+ + "\u0005\t\u0000\u0000\u0781\u0784\u0001\u0000\u0000\u0000\u0782\u0784\u0005"+ + "\u0092\u0000\u0000\u0783\u077d\u0001\u0000\u0000\u0000\u0783\u077e\u0001"+ + "\u0000\u0000\u0000\u0783\u0782\u0001\u0000\u0000\u0000\u0784\u0127\u0001"+ + "\u0000\u0000\u0000\u0785\u0786\u0007\r\u0000\u0000\u0786\u0129\u0001\u0000"+ + "\u0000\u0000\u0787\u0788\u0007\u000e\u0000\u0000\u0788\u012b\u0001\u0000"+ + "\u0000\u0000\u0789\u078a\u0004\u0096,\u0000\u078a\u078b\u0003\u0132\u0099"+ + "\u0000\u078b\u078c\u0003\u00ecv\u0000\u078c\u012d\u0001\u0000\u0000\u0000"+ + "\u078d\u078e\u0004\u0097-\u0000\u078e\u078f\u0003\u0132\u0099\u0000\u078f"+ + "\u0790\u0003\u00ecv\u0000\u0790\u012f\u0001\u0000\u0000\u0000\u0791\u0794"+ + "\u0003\u0132\u0099\u0000\u0792\u0794\u0003\u0136\u009b\u0000\u0793\u0791"+ + "\u0001\u0000\u0000\u0000\u0793\u0792\u0001\u0000\u0000\u0000\u0794\u0131"+ + "\u0001\u0000\u0000\u0000\u0795\u0796\u0007\u000f\u0000\u0000\u0796\u0133"+ + "\u0001\u0000\u0000\u0000\u0797\u079b\u0003\u0132\u0099\u0000\u0798\u079b"+ + "\u0005\u0081\u0000\u0000\u0799\u079b\u0005\u0084\u0000\u0000\u079a\u0797"+ + "\u0001\u0000\u0000\u0000\u079a\u0798\u0001\u0000\u0000\u0000\u079a\u0799"+ + "\u0001\u0000\u0000\u0000\u079b\u0135\u0001\u0000\u0000\u0000\u079c\u07a0"+ + "\u0003\u0138\u009c\u0000\u079d\u07a0\u0005;\u0000\u0000\u079e\u07a0\u0005"+ + "<\u0000\u0000\u079f\u079c\u0001\u0000\u0000\u0000\u079f\u079d\u0001\u0000"+ + "\u0000\u0000\u079f\u079e\u0001\u0000\u0000\u0000\u07a0\u0137\u0001\u0000"+ + "\u0000\u0000\u07a1\u07a2\u0007\u0010\u0000\u0000\u07a2\u0139\u0001\u0000"+ + "\u0000\u0000\u07a3\u07a8\u0005\u000b\u0000\u0000\u07a4\u07a8\u0005\u0000"+ + "\u0000\u0001\u07a5\u07a8\u0004\u009d.\u0000\u07a6\u07a8\u0004\u009d/\u0000"+ + "\u07a7\u07a3\u0001\u0000\u0000\u0000\u07a7\u07a4\u0001\u0000\u0000\u0000"+ + "\u07a7\u07a5\u0001\u0000\u0000\u0000\u07a7\u07a6\u0001\u0000\u0000\u0000"+ + "\u07a8\u013b\u0001\u0000\u0000\u0000\u0102\u0141\u0145\u014e\u0153\u015a"+ + "\u0161\u016a\u0170\u0176\u0181\u0183\u019a\u01a0\u01a5\u01b1\u01b8\u01bc"+ + "\u01c1\u01c7\u01cb\u01d1\u01d8\u01e2\u01e4\u01f4\u01f8\u01fb\u01ff\u0207"+ + "\u020b\u021a\u021e\u0221\u0225\u0228\u022c\u0232\u0236\u023a\u0242\u0247"+ + "\u024a\u024c\u0253\u0258\u025b\u025e\u0263\u0266\u0269\u026e\u0271\u0274"+ + "\u0278\u027e\u0282\u0286\u028a\u0295\u029a\u029f\u02a6\u02ab\u02b3\u02b6"+ + "\u02b9\u02be\u02c1\u02c5\u02cf\u02d3\u02d9\u02df\u02e6\u02ec\u02ef\u02f5"+ + "\u02fd\u0302\u030d\u0312\u031a\u0321\u0328\u032d\u034e\u0352\u0359\u0360"+ + "\u0368\u036c\u0373\u037b\u0380\u0382\u0389\u038d\u0396\u039a\u03a2\u03a6"+ + "\u03aa\u03b3\u03bb\u03bf\u03c7\u03cc\u03ce\u03d5\u03da\u03de\u03e2\u03e5"+ + "\u03e8\u03eb\u03ef\u03f3\u03f7\u03f9\u0400\u0406\u0409\u040c\u0410\u0413"+ + "\u041a\u0423\u0436\u043a\u043e\u0448\u044c\u0464\u046d\u0474\u047e\u0483"+ + "\u048a\u0491\u0498\u049f\u04b1\u04b5\u04b7\u04be\u04c4\u04c9\u04d8\u04db"+ + "\u04e1\u04e5\u04f0\u04f4\u04fd\u0500\u0504\u0506\u0509\u050e\u0514\u0517"+ + "\u051d\u052a\u052f\u0534\u0537\u053a\u0546\u054b\u054e\u0551\u0554\u0557"+ + "\u055a\u0561\u0564\u0569\u0571\u0576\u057a\u0587\u058b\u0598\u059c\u05a5"+ + "\u05ae\u05b8\u05bd\u05c0\u05c7\u05c9\u05cc\u05cf\u05d3\u05d6\u05da\u05df"+ + "\u05e2\u05e7\u05f0\u05f4\u05f9\u05fe\u0604\u0608\u060c\u060f\u0617\u061b"+ + "\u061d\u0630\u0634\u063a\u0643\u0651\u0656\u0658\u0661\u0665\u0669\u0670"+ + "\u0677\u067a\u0682\u0689\u06a6\u06b2\u06b4\u06cc\u06f9\u0701\u0705\u0709"+ + "\u070d\u0711\u0715\u0726\u0728\u072e\u0731\u0737\u073b\u073f\u0743\u0747"+ + "\u074e\u0751\u0755\u075d\u0760\u0767\u0772\u0778\u0783\u0793\u079a\u079f"+ + "\u07a7"; + public static final ATN _ATN = + new ATNDeserializer().deserialize(_serializedATN.toCharArray()); + static { + _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; + for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { + _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); + } + } +} \ No newline at end of file -- Gitee From 3ce1b402fe887d5a45dcf661f05b10aa34e2f768 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:37:48 +0800 Subject: [PATCH 20/45] update parse Signed-off-by: wangshi --- .../java/antlr/CPP14ParserBaseListener.java | 354 ------------------ 1 file changed, 354 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14ParserBaseListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14ParserBaseListener.java index 3217eadd..acf4c170 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14ParserBaseListener.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14ParserBaseListener.java @@ -1989,359 +1989,5 @@ public class CPP14ParserBaseListener implements CPP14ParserListener { *

The default implementation does nothing.

*/ @Override public void enterMemInitializer(CPP14Parser.MemInitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemInitializer(CPP14Parser.MemInitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMeminitializerid(CPP14Parser.MeminitializeridContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMeminitializerid(CPP14Parser.MeminitializeridContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterOperatorFunctionId(CPP14Parser.OperatorFunctionIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitOperatorFunctionId(CPP14Parser.OperatorFunctionIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLiteralOperatorId(CPP14Parser.LiteralOperatorIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLiteralOperatorId(CPP14Parser.LiteralOperatorIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateDeclaration(CPP14Parser.TemplateDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateparameterList(CPP14Parser.TemplateparameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateparameterList(CPP14Parser.TemplateparameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateParameter(CPP14Parser.TemplateParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateParameter(CPP14Parser.TemplateParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeParameter(CPP14Parser.TypeParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeParameter(CPP14Parser.TypeParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSimpleTemplateId(CPP14Parser.SimpleTemplateIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSimpleTemplateId(CPP14Parser.SimpleTemplateIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateId(CPP14Parser.TemplateIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateId(CPP14Parser.TemplateIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateName(CPP14Parser.TemplateNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateName(CPP14Parser.TemplateNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateArgumentList(CPP14Parser.TemplateArgumentListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateArgumentList(CPP14Parser.TemplateArgumentListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateArgument(CPP14Parser.TemplateArgumentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateArgument(CPP14Parser.TemplateArgumentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeNameSpecifier(CPP14Parser.TypeNameSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeNameSpecifier(CPP14Parser.TypeNameSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExplicitInstantiation(CPP14Parser.ExplicitInstantiationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExplicitInstantiation(CPP14Parser.ExplicitInstantiationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExplicitSpecialization(CPP14Parser.ExplicitSpecializationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExplicitSpecialization(CPP14Parser.ExplicitSpecializationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTryBlock(CPP14Parser.TryBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTryBlock(CPP14Parser.TryBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionTryBlock(CPP14Parser.FunctionTryBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionTryBlock(CPP14Parser.FunctionTryBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterHandlerSeq(CPP14Parser.HandlerSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitHandlerSeq(CPP14Parser.HandlerSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterHandler(CPP14Parser.HandlerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitHandler(CPP14Parser.HandlerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExceptionDeclaration(CPP14Parser.ExceptionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExceptionDeclaration(CPP14Parser.ExceptionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterThrowExpression(CPP14Parser.ThrowExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitThrowExpression(CPP14Parser.ThrowExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExceptionSpecification(CPP14Parser.ExceptionSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExceptionSpecification(CPP14Parser.ExceptionSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDynamicExceptionSpecification(CPP14Parser.DynamicExceptionSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDynamicExceptionSpecification(CPP14Parser.DynamicExceptionSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeIdList(CPP14Parser.TypeIdListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeIdList(CPP14Parser.TypeIdListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNoeExceptSpecification(CPP14Parser.NoeExceptSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNoeExceptSpecification(CPP14Parser.NoeExceptSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTheOperator(CPP14Parser.TheOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTheOperator(CPP14Parser.TheOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLiteral(CPP14Parser.LiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLiteral(CPP14Parser.LiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEveryRule(ParserRuleContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEveryRule(ParserRuleContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void visitTerminal(TerminalNode node) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void visitErrorNode(ErrorNode node) { } } \ No newline at end of file -- Gitee From baee7d7e346f0e9fe35e8ac7ebdba666eb3a1119 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:38:32 +0800 Subject: [PATCH 21/45] update parse Signed-off-by: wangshi --- .../java/antlr/CPP14ParserBaseListener.java | 1993 ----------------- 1 file changed, 1993 deletions(-) delete mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14ParserBaseListener.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14ParserBaseListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14ParserBaseListener.java deleted file mode 100644 index acf4c170..00000000 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14ParserBaseListener.java +++ /dev/null @@ -1,1993 +0,0 @@ -/* - * Copyright (c) 2025 Shenzhen Kaihong Digital. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package antlr; -// Generated from ./CPP14Parser.g4 by ANTLR 4.13.2 - -import org.antlr.v4.runtime.ParserRuleContext; -import org.antlr.v4.runtime.tree.ErrorNode; -import org.antlr.v4.runtime.tree.TerminalNode; - -/** - * This class provides an empty implementation of {@link CPP14ParserListener}, - * which can be extended to create a listener which only needs to handle a subset - * of the available methods. - */ -@SuppressWarnings("CheckReturnValue") -public class CPP14ParserBaseListener implements CPP14ParserListener { - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTranslationUnit(CPP14Parser.TranslationUnitContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTranslationUnit(CPP14Parser.TranslationUnitContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPrimaryExpression(CPP14Parser.PrimaryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPrimaryExpression(CPP14Parser.PrimaryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIdExpression(CPP14Parser.IdExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIdExpression(CPP14Parser.IdExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUnqualifiedId(CPP14Parser.UnqualifiedIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUnqualifiedId(CPP14Parser.UnqualifiedIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterQualifiedId(CPP14Parser.QualifiedIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitQualifiedId(CPP14Parser.QualifiedIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNestedNameSpecifier(CPP14Parser.NestedNameSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNestedNameSpecifier(CPP14Parser.NestedNameSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLambdaExpression(CPP14Parser.LambdaExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLambdaExpression(CPP14Parser.LambdaExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLambdaIntroducer(CPP14Parser.LambdaIntroducerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLambdaIntroducer(CPP14Parser.LambdaIntroducerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLambdaCapture(CPP14Parser.LambdaCaptureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLambdaCapture(CPP14Parser.LambdaCaptureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCaptureDefault(CPP14Parser.CaptureDefaultContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCaptureDefault(CPP14Parser.CaptureDefaultContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCaptureList(CPP14Parser.CaptureListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCaptureList(CPP14Parser.CaptureListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCapture(CPP14Parser.CaptureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCapture(CPP14Parser.CaptureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSimpleCapture(CPP14Parser.SimpleCaptureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSimpleCapture(CPP14Parser.SimpleCaptureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInitcapture(CPP14Parser.InitcaptureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInitcapture(CPP14Parser.InitcaptureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLambdaDeclarator(CPP14Parser.LambdaDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLambdaDeclarator(CPP14Parser.LambdaDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPostfixExpression(CPP14Parser.PostfixExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPostfixExpression(CPP14Parser.PostfixExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeIdOfTheTypeId(CPP14Parser.TypeIdOfTheTypeIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeIdOfTheTypeId(CPP14Parser.TypeIdOfTheTypeIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExpressionList(CPP14Parser.ExpressionListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExpressionList(CPP14Parser.ExpressionListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPseudoDestructorName(CPP14Parser.PseudoDestructorNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPseudoDestructorName(CPP14Parser.PseudoDestructorNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUnaryExpression(CPP14Parser.UnaryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUnaryExpression(CPP14Parser.UnaryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUnaryOperator(CPP14Parser.UnaryOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUnaryOperator(CPP14Parser.UnaryOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNewExpression_(CPP14Parser.NewExpression_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNewExpression_(CPP14Parser.NewExpression_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNewPlacement(CPP14Parser.NewPlacementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNewPlacement(CPP14Parser.NewPlacementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNewTypeId(CPP14Parser.NewTypeIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNewTypeId(CPP14Parser.NewTypeIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNewDeclarator_(CPP14Parser.NewDeclarator_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNewDeclarator_(CPP14Parser.NewDeclarator_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNoPointerNewDeclarator(CPP14Parser.NoPointerNewDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNoPointerNewDeclarator(CPP14Parser.NoPointerNewDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNewInitializer_(CPP14Parser.NewInitializer_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNewInitializer_(CPP14Parser.NewInitializer_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeleteExpression(CPP14Parser.DeleteExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeleteExpression(CPP14Parser.DeleteExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNoExceptExpression(CPP14Parser.NoExceptExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNoExceptExpression(CPP14Parser.NoExceptExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCastExpression(CPP14Parser.CastExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCastExpression(CPP14Parser.CastExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPointerMemberExpression(CPP14Parser.PointerMemberExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPointerMemberExpression(CPP14Parser.PointerMemberExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMultiplicativeExpression(CPP14Parser.MultiplicativeExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMultiplicativeExpression(CPP14Parser.MultiplicativeExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAdditiveExpression(CPP14Parser.AdditiveExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAdditiveExpression(CPP14Parser.AdditiveExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterShiftExpression(CPP14Parser.ShiftExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitShiftExpression(CPP14Parser.ShiftExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterShiftOperator(CPP14Parser.ShiftOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitShiftOperator(CPP14Parser.ShiftOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRelationalExpression(CPP14Parser.RelationalExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRelationalExpression(CPP14Parser.RelationalExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEqualityExpression(CPP14Parser.EqualityExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEqualityExpression(CPP14Parser.EqualityExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAndExpression(CPP14Parser.AndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAndExpression(CPP14Parser.AndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExclusiveOrExpression(CPP14Parser.ExclusiveOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExclusiveOrExpression(CPP14Parser.ExclusiveOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInclusiveOrExpression(CPP14Parser.InclusiveOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInclusiveOrExpression(CPP14Parser.InclusiveOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLogicalAndExpression(CPP14Parser.LogicalAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLogicalAndExpression(CPP14Parser.LogicalAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLogicalOrExpression(CPP14Parser.LogicalOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLogicalOrExpression(CPP14Parser.LogicalOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConditionalExpression(CPP14Parser.ConditionalExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConditionalExpression(CPP14Parser.ConditionalExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignmentExpression(CPP14Parser.AssignmentExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignmentExpression(CPP14Parser.AssignmentExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignmentOperator(CPP14Parser.AssignmentOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignmentOperator(CPP14Parser.AssignmentOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExpression(CPP14Parser.ExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExpression(CPP14Parser.ExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConstantExpression(CPP14Parser.ConstantExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConstantExpression(CPP14Parser.ConstantExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterStatement(CPP14Parser.StatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitStatement(CPP14Parser.StatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLabeledStatement(CPP14Parser.LabeledStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLabeledStatement(CPP14Parser.LabeledStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExpressionStatement(CPP14Parser.ExpressionStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExpressionStatement(CPP14Parser.ExpressionStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCompoundStatement(CPP14Parser.CompoundStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCompoundStatement(CPP14Parser.CompoundStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterStatementSeq(CPP14Parser.StatementSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitStatementSeq(CPP14Parser.StatementSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSelectionStatement(CPP14Parser.SelectionStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSelectionStatement(CPP14Parser.SelectionStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCondition(CPP14Parser.ConditionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCondition(CPP14Parser.ConditionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIterationStatement(CPP14Parser.IterationStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIterationStatement(CPP14Parser.IterationStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForInitStatement(CPP14Parser.ForInitStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForInitStatement(CPP14Parser.ForInitStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForRangeDeclaration(CPP14Parser.ForRangeDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForRangeDeclaration(CPP14Parser.ForRangeDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForRangeInitializer(CPP14Parser.ForRangeInitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForRangeInitializer(CPP14Parser.ForRangeInitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterJumpStatement(CPP14Parser.JumpStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitJumpStatement(CPP14Parser.JumpStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeclarationStatement(CPP14Parser.DeclarationStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeclarationStatement(CPP14Parser.DeclarationStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeclarationseq(CPP14Parser.DeclarationseqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeclarationseq(CPP14Parser.DeclarationseqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeclaration(CPP14Parser.DeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeclaration(CPP14Parser.DeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBlockDeclaration(CPP14Parser.BlockDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBlockDeclaration(CPP14Parser.BlockDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAliasDeclaration(CPP14Parser.AliasDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAliasDeclaration(CPP14Parser.AliasDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSimpleDeclaration(CPP14Parser.SimpleDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSimpleDeclaration(CPP14Parser.SimpleDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterStaticAssertDeclaration(CPP14Parser.StaticAssertDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitStaticAssertDeclaration(CPP14Parser.StaticAssertDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEmptyDeclaration_(CPP14Parser.EmptyDeclaration_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEmptyDeclaration_(CPP14Parser.EmptyDeclaration_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAttributeDeclaration(CPP14Parser.AttributeDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeclSpecifier(CPP14Parser.DeclSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeclSpecifier(CPP14Parser.DeclSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeclSpecifierSeq(CPP14Parser.DeclSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeclSpecifierSeq(CPP14Parser.DeclSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterStorageClassSpecifier(CPP14Parser.StorageClassSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitStorageClassSpecifier(CPP14Parser.StorageClassSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionSpecifier(CPP14Parser.FunctionSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypedefName(CPP14Parser.TypedefNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypedefName(CPP14Parser.TypedefNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeSpecifier(CPP14Parser.TypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTrailingTypeSpecifier(CPP14Parser.TrailingTypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTrailingTypeSpecifier(CPP14Parser.TrailingTypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeSpecifierSeq(CPP14Parser.TypeSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeSpecifierSeq(CPP14Parser.TypeSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTrailingTypeSpecifierSeq(CPP14Parser.TrailingTypeSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTrailingTypeSpecifierSeq(CPP14Parser.TrailingTypeSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSimpleTypeLengthModifier(CPP14Parser.SimpleTypeLengthModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSimpleTypeLengthModifier(CPP14Parser.SimpleTypeLengthModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSimpleTypeSignednessModifier(CPP14Parser.SimpleTypeSignednessModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSimpleTypeSignednessModifier(CPP14Parser.SimpleTypeSignednessModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSimpleTypeSpecifier(CPP14Parser.SimpleTypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSimpleTypeSpecifier(CPP14Parser.SimpleTypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTheTypeName(CPP14Parser.TheTypeNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTheTypeName(CPP14Parser.TheTypeNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDecltypeSpecifier(CPP14Parser.DecltypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDecltypeSpecifier(CPP14Parser.DecltypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterElaboratedTypeSpecifier(CPP14Parser.ElaboratedTypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitElaboratedTypeSpecifier(CPP14Parser.ElaboratedTypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumName(CPP14Parser.EnumNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumName(CPP14Parser.EnumNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumSpecifier(CPP14Parser.EnumSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumHead(CPP14Parser.EnumHeadContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumHead(CPP14Parser.EnumHeadContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterOpaqueEnumDeclaration(CPP14Parser.OpaqueEnumDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitOpaqueEnumDeclaration(CPP14Parser.OpaqueEnumDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumkey(CPP14Parser.EnumkeyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumkey(CPP14Parser.EnumkeyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumbase(CPP14Parser.EnumbaseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumbase(CPP14Parser.EnumbaseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumeratorList(CPP14Parser.EnumeratorListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumeratorList(CPP14Parser.EnumeratorListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumeratorDefinition(CPP14Parser.EnumeratorDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumerator(CPP14Parser.EnumeratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumerator(CPP14Parser.EnumeratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNamespaceName(CPP14Parser.NamespaceNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNamespaceName(CPP14Parser.NamespaceNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterOriginalNamespaceName(CPP14Parser.OriginalNamespaceNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitOriginalNamespaceName(CPP14Parser.OriginalNamespaceNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNamespaceDefinition(CPP14Parser.NamespaceDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNamespaceDefinition(CPP14Parser.NamespaceDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNamespaceAlias(CPP14Parser.NamespaceAliasContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNamespaceAlias(CPP14Parser.NamespaceAliasContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNamespaceAliasDefinition(CPP14Parser.NamespaceAliasDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNamespaceAliasDefinition(CPP14Parser.NamespaceAliasDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUsingDeclaration(CPP14Parser.UsingDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUsingDeclaration(CPP14Parser.UsingDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUsingDirective(CPP14Parser.UsingDirectiveContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUsingDirective(CPP14Parser.UsingDirectiveContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAsmDefinition(CPP14Parser.AsmDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAsmDefinition(CPP14Parser.AsmDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLinkageSpecification(CPP14Parser.LinkageSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLinkageSpecification(CPP14Parser.LinkageSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAttributeSpecifierSeq(CPP14Parser.AttributeSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAttributeSpecifierSeq(CPP14Parser.AttributeSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAttributeSpecifier(CPP14Parser.AttributeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAttributeList(CPP14Parser.AttributeListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAttributeList(CPP14Parser.AttributeListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAttribute(CPP14Parser.AttributeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAttribute(CPP14Parser.AttributeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAttributeNamespace(CPP14Parser.AttributeNamespaceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAttributeNamespace(CPP14Parser.AttributeNamespaceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAttributeArgumentClause(CPP14Parser.AttributeArgumentClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAttributeArgumentClause(CPP14Parser.AttributeArgumentClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBalancedTokenSeq(CPP14Parser.BalancedTokenSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBalancedTokenSeq(CPP14Parser.BalancedTokenSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBalancedtoken(CPP14Parser.BalancedtokenContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBalancedtoken(CPP14Parser.BalancedtokenContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInitDeclaratorList(CPP14Parser.InitDeclaratorListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInitDeclaratorList(CPP14Parser.InitDeclaratorListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInitDeclarator(CPP14Parser.InitDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInitDeclarator(CPP14Parser.InitDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeclarator(CPP14Parser.DeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeclarator(CPP14Parser.DeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPointerDeclarator(CPP14Parser.PointerDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPointerDeclarator(CPP14Parser.PointerDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNoPointerDeclarator(CPP14Parser.NoPointerDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNoPointerDeclarator(CPP14Parser.NoPointerDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParametersAndQualifiers(CPP14Parser.ParametersAndQualifiersContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParametersAndQualifiers(CPP14Parser.ParametersAndQualifiersContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTrailingReturnType(CPP14Parser.TrailingReturnTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTrailingReturnType(CPP14Parser.TrailingReturnTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPointerOperator(CPP14Parser.PointerOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPointerOperator(CPP14Parser.PointerOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCvQualifier(CPP14Parser.CvQualifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCvQualifier(CPP14Parser.CvQualifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRefqualifier(CPP14Parser.RefqualifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRefqualifier(CPP14Parser.RefqualifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeclaratorid(CPP14Parser.DeclaratoridContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeclaratorid(CPP14Parser.DeclaratoridContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTheTypeId(CPP14Parser.TheTypeIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTheTypeId(CPP14Parser.TheTypeIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAbstractDeclarator(CPP14Parser.AbstractDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPointerAbstractDeclarator(CPP14Parser.PointerAbstractDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPointerAbstractDeclarator(CPP14Parser.PointerAbstractDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNoPointerAbstractDeclarator(CPP14Parser.NoPointerAbstractDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNoPointerAbstractDeclarator(CPP14Parser.NoPointerAbstractDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAbstractPackDeclarator(CPP14Parser.AbstractPackDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAbstractPackDeclarator(CPP14Parser.AbstractPackDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNoPointerAbstractPackDeclarator(CPP14Parser.NoPointerAbstractPackDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNoPointerAbstractPackDeclarator(CPP14Parser.NoPointerAbstractPackDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParameterDeclarationClause(CPP14Parser.ParameterDeclarationClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParameterDeclarationClause(CPP14Parser.ParameterDeclarationClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParameterDeclarationList(CPP14Parser.ParameterDeclarationListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParameterDeclarationList(CPP14Parser.ParameterDeclarationListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParameterDeclaration(CPP14Parser.ParameterDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParameterDeclaration(CPP14Parser.ParameterDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionDefinition(CPP14Parser.FunctionDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionBody(CPP14Parser.FunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionBody(CPP14Parser.FunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInitializer(CPP14Parser.InitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInitializer(CPP14Parser.InitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBraceOrEqualInitializer(CPP14Parser.BraceOrEqualInitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBraceOrEqualInitializer(CPP14Parser.BraceOrEqualInitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInitializerClause(CPP14Parser.InitializerClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInitializerClause(CPP14Parser.InitializerClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInitializerList(CPP14Parser.InitializerListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInitializerList(CPP14Parser.InitializerListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBracedInitList(CPP14Parser.BracedInitListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBracedInitList(CPP14Parser.BracedInitListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassName(CPP14Parser.ClassNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassName(CPP14Parser.ClassNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassSpecifier(CPP14Parser.ClassSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassSpecifier(CPP14Parser.ClassSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassHead(CPP14Parser.ClassHeadContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassHead(CPP14Parser.ClassHeadContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassHeadName(CPP14Parser.ClassHeadNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassHeadName(CPP14Parser.ClassHeadNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassVirtSpecifier(CPP14Parser.ClassVirtSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassKey(CPP14Parser.ClassKeyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassKey(CPP14Parser.ClassKeyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemberSpecification(CPP14Parser.MemberSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemberSpecification(CPP14Parser.MemberSpecificationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemberDeclaratorList(CPP14Parser.MemberDeclaratorListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemberDeclaratorList(CPP14Parser.MemberDeclaratorListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemberDeclarator(CPP14Parser.MemberDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVirtualSpecifierSeq(CPP14Parser.VirtualSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVirtualSpecifierSeq(CPP14Parser.VirtualSpecifierSeqContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVirtualSpecifier(CPP14Parser.VirtualSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVirtualSpecifier(CPP14Parser.VirtualSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPureSpecifier(CPP14Parser.PureSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPureSpecifier(CPP14Parser.PureSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBaseClause(CPP14Parser.BaseClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBaseClause(CPP14Parser.BaseClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBaseSpecifierList(CPP14Parser.BaseSpecifierListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBaseSpecifierList(CPP14Parser.BaseSpecifierListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBaseSpecifier(CPP14Parser.BaseSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBaseSpecifier(CPP14Parser.BaseSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassOrDeclType(CPP14Parser.ClassOrDeclTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassOrDeclType(CPP14Parser.ClassOrDeclTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBaseTypeSpecifier(CPP14Parser.BaseTypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBaseTypeSpecifier(CPP14Parser.BaseTypeSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAccessSpecifier(CPP14Parser.AccessSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAccessSpecifier(CPP14Parser.AccessSpecifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConversionFunctionId(CPP14Parser.ConversionFunctionIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConversionFunctionId(CPP14Parser.ConversionFunctionIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConversionTypeId(CPP14Parser.ConversionTypeIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConversionTypeId(CPP14Parser.ConversionTypeIdContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConversionDeclarator(CPP14Parser.ConversionDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConversionDeclarator(CPP14Parser.ConversionDeclaratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConstructorInitializer(CPP14Parser.ConstructorInitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConstructorInitializer(CPP14Parser.ConstructorInitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemInitializerList(CPP14Parser.MemInitializerListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemInitializerList(CPP14Parser.MemInitializerListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemInitializer(CPP14Parser.MemInitializerContext ctx) { } - -} \ No newline at end of file -- Gitee From 6f67531f481ba543e3c7599b25e5eb1af5141400 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:40:12 +0800 Subject: [PATCH 22/45] update parse Signed-off-by: wangshi --- .../java/antlr/TypeScriptParserListener.java | 597 +----------------- 1 file changed, 1 insertion(+), 596 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserListener.java index eeea2eee..27446684 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserListener.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserListener.java @@ -1967,600 +1967,5 @@ public interface TypeScriptParserListener extends ParseTreeListener { * @param ctx the parse tree */ void exitBitNotExpression(TypeScriptParser.BitNotExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code NewExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterNewExpression(TypeScriptParser.NewExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code NewExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitNewExpression(TypeScriptParser.NewExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code LiteralExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterLiteralExpression(TypeScriptParser.LiteralExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code LiteralExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitLiteralExpression(TypeScriptParser.LiteralExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ArrayLiteralExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterArrayLiteralExpression(TypeScriptParser.ArrayLiteralExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ArrayLiteralExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitArrayLiteralExpression(TypeScriptParser.ArrayLiteralExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code MemberDotExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterMemberDotExpression(TypeScriptParser.MemberDotExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code MemberDotExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitMemberDotExpression(TypeScriptParser.MemberDotExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code MemberIndexExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterMemberIndexExpression(TypeScriptParser.MemberIndexExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code MemberIndexExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitMemberIndexExpression(TypeScriptParser.MemberIndexExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitAndExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitAndExpression(TypeScriptParser.BitAndExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitAndExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitAndExpression(TypeScriptParser.BitAndExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitOrExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitOrExpression(TypeScriptParser.BitOrExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitOrExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitOrExpression(TypeScriptParser.BitOrExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code AssignmentOperatorExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterAssignmentOperatorExpression(TypeScriptParser.AssignmentOperatorExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code AssignmentOperatorExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitAssignmentOperatorExpression(TypeScriptParser.AssignmentOperatorExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code VoidExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterVoidExpression(TypeScriptParser.VoidExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code VoidExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitVoidExpression(TypeScriptParser.VoidExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code TernaryExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterTernaryExpression(TypeScriptParser.TernaryExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code TernaryExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitTernaryExpression(TypeScriptParser.TernaryExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code LogicalAndExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterLogicalAndExpression(TypeScriptParser.LogicalAndExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code LogicalAndExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitLogicalAndExpression(TypeScriptParser.LogicalAndExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PreIncrementExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPreIncrementExpression(TypeScriptParser.PreIncrementExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PreIncrementExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPreIncrementExpression(TypeScriptParser.PreIncrementExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ObjectLiteralExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterObjectLiteralExpression(TypeScriptParser.ObjectLiteralExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ObjectLiteralExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitObjectLiteralExpression(TypeScriptParser.ObjectLiteralExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code LogicalOrExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterLogicalOrExpression(TypeScriptParser.LogicalOrExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code LogicalOrExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitLogicalOrExpression(TypeScriptParser.LogicalOrExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code NonNullAssertionExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterNonNullAssertionExpression(TypeScriptParser.NonNullAssertionExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code NonNullAssertionExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitNonNullAssertionExpression(TypeScriptParser.NonNullAssertionExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code NotExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterNotExpression(TypeScriptParser.NotExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code NotExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitNotExpression(TypeScriptParser.NotExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PreDecreaseExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPreDecreaseExpression(TypeScriptParser.PreDecreaseExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PreDecreaseExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPreDecreaseExpression(TypeScriptParser.PreDecreaseExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code AwaitExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterAwaitExpression(TypeScriptParser.AwaitExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code AwaitExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitAwaitExpression(TypeScriptParser.AwaitExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code FunctionExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterFunctionExpression(TypeScriptParser.FunctionExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code FunctionExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitFunctionExpression(TypeScriptParser.FunctionExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code UnaryMinusExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterUnaryMinusExpression(TypeScriptParser.UnaryMinusExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code UnaryMinusExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitUnaryMinusExpression(TypeScriptParser.UnaryMinusExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code AssignmentExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterAssignmentExpression(TypeScriptParser.AssignmentExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code AssignmentExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitAssignmentExpression(TypeScriptParser.AssignmentExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PostDecreaseExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPostDecreaseExpression(TypeScriptParser.PostDecreaseExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PostDecreaseExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPostDecreaseExpression(TypeScriptParser.PostDecreaseExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code InstanceofExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterInstanceofExpression(TypeScriptParser.InstanceofExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code InstanceofExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitInstanceofExpression(TypeScriptParser.InstanceofExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code UnaryPlusExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterUnaryPlusExpression(TypeScriptParser.UnaryPlusExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code UnaryPlusExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitUnaryPlusExpression(TypeScriptParser.UnaryPlusExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code DeleteExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterDeleteExpression(TypeScriptParser.DeleteExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code DeleteExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitDeleteExpression(TypeScriptParser.DeleteExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code IteratorsExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterIteratorsExpression(TypeScriptParser.IteratorsExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code IteratorsExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitIteratorsExpression(TypeScriptParser.IteratorsExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code SuperExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterSuperExpression(TypeScriptParser.SuperExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code SuperExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitSuperExpression(TypeScriptParser.SuperExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ParenthesizedExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterParenthesizedExpression(TypeScriptParser.ParenthesizedExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ParenthesizedExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitParenthesizedExpression(TypeScriptParser.ParenthesizedExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PostIncrementExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPostIncrementExpression(TypeScriptParser.PostIncrementExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PostIncrementExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPostIncrementExpression(TypeScriptParser.PostIncrementExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code YieldExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterYieldExpression(TypeScriptParser.YieldExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code YieldExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitYieldExpression(TypeScriptParser.YieldExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ClassExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterClassExpression(TypeScriptParser.ClassExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ClassExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitClassExpression(TypeScriptParser.ClassExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code IdentifierExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterIdentifierExpression(TypeScriptParser.IdentifierExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code IdentifierExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitIdentifierExpression(TypeScriptParser.IdentifierExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code CoalesceExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterCoalesceExpression(TypeScriptParser.CoalesceExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code CoalesceExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitCoalesceExpression(TypeScriptParser.CoalesceExpressionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#asExpression}. - * @param ctx the parse tree - */ - void enterAsExpression(TypeScriptParser.AsExpressionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#asExpression}. - * @param ctx the parse tree - */ - void exitAsExpression(TypeScriptParser.AsExpressionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#assignable}. - * @param ctx the parse tree - */ - void enterAssignable(TypeScriptParser.AssignableContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#assignable}. - * @param ctx the parse tree - */ - void exitAssignable(TypeScriptParser.AssignableContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#anonymousFunction}. - * @param ctx the parse tree - */ - void enterAnonymousFunction(TypeScriptParser.AnonymousFunctionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#anonymousFunction}. - * @param ctx the parse tree - */ - void exitAnonymousFunction(TypeScriptParser.AnonymousFunctionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#arrowFunctionDeclaration}. - * @param ctx the parse tree - */ - void enterArrowFunctionDeclaration(TypeScriptParser.ArrowFunctionDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#arrowFunctionDeclaration}. - * @param ctx the parse tree - */ - void exitArrowFunctionDeclaration(TypeScriptParser.ArrowFunctionDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#arrowFunctionParameters}. - * @param ctx the parse tree - */ - void enterArrowFunctionParameters(TypeScriptParser.ArrowFunctionParametersContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#arrowFunctionParameters}. - * @param ctx the parse tree - */ - void exitArrowFunctionParameters(TypeScriptParser.ArrowFunctionParametersContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#arrowFunctionBody}. - * @param ctx the parse tree - */ - void enterArrowFunctionBody(TypeScriptParser.ArrowFunctionBodyContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#arrowFunctionBody}. - * @param ctx the parse tree - */ - void exitArrowFunctionBody(TypeScriptParser.ArrowFunctionBodyContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#assignmentOperator}. - * @param ctx the parse tree - */ - void enterAssignmentOperator(TypeScriptParser.AssignmentOperatorContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#assignmentOperator}. - * @param ctx the parse tree - */ - void exitAssignmentOperator(TypeScriptParser.AssignmentOperatorContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#literal}. - * @param ctx the parse tree - */ - void enterLiteral(TypeScriptParser.LiteralContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#literal}. - * @param ctx the parse tree - */ - void exitLiteral(TypeScriptParser.LiteralContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#templateStringLiteral}. - * @param ctx the parse tree - */ - void enterTemplateStringLiteral(TypeScriptParser.TemplateStringLiteralContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#templateStringLiteral}. - * @param ctx the parse tree - */ - void exitTemplateStringLiteral(TypeScriptParser.TemplateStringLiteralContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#templateStringAtom}. - * @param ctx the parse tree - */ - void enterTemplateStringAtom(TypeScriptParser.TemplateStringAtomContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#templateStringAtom}. - * @param ctx the parse tree - */ - void exitTemplateStringAtom(TypeScriptParser.TemplateStringAtomContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#numericLiteral}. - * @param ctx the parse tree - */ - void enterNumericLiteral(TypeScriptParser.NumericLiteralContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#numericLiteral}. - * @param ctx the parse tree - */ - void exitNumericLiteral(TypeScriptParser.NumericLiteralContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#bigintLiteral}. - * @param ctx the parse tree - */ - void enterBigintLiteral(TypeScriptParser.BigintLiteralContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#bigintLiteral}. - * @param ctx the parse tree - */ - void exitBigintLiteral(TypeScriptParser.BigintLiteralContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#getter}. - * @param ctx the parse tree - */ - void enterGetter(TypeScriptParser.GetterContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#getter}. - * @param ctx the parse tree - */ - void exitGetter(TypeScriptParser.GetterContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#setter}. - * @param ctx the parse tree - */ - void enterSetter(TypeScriptParser.SetterContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#setter}. - * @param ctx the parse tree - */ - void exitSetter(TypeScriptParser.SetterContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#identifierName}. - * @param ctx the parse tree - */ - void enterIdentifierName(TypeScriptParser.IdentifierNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#identifierName}. - * @param ctx the parse tree - */ - void exitIdentifierName(TypeScriptParser.IdentifierNameContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#identifier}. - * @param ctx the parse tree - */ - void enterIdentifier(TypeScriptParser.IdentifierContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#identifier}. - * @param ctx the parse tree - */ - void exitIdentifier(TypeScriptParser.IdentifierContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#identifierOrKeyWord}. - * @param ctx the parse tree - */ - void enterIdentifierOrKeyWord(TypeScriptParser.IdentifierOrKeyWordContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#identifierOrKeyWord}. - * @param ctx the parse tree - */ - void exitIdentifierOrKeyWord(TypeScriptParser.IdentifierOrKeyWordContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#reservedWord}. - * @param ctx the parse tree - */ - void enterReservedWord(TypeScriptParser.ReservedWordContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#reservedWord}. - * @param ctx the parse tree - */ - void exitReservedWord(TypeScriptParser.ReservedWordContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#keyword}. - * @param ctx the parse tree - */ - void enterKeyword(TypeScriptParser.KeywordContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#keyword}. - * @param ctx the parse tree - */ - void exitKeyword(TypeScriptParser.KeywordContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#eos}. - * @param ctx the parse tree - */ - void enterEos(TypeScriptParser.EosContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#eos}. - * @param ctx the parse tree - */ - void exitEos(TypeScriptParser.EosContext ctx); + } \ No newline at end of file -- Gitee From 9821fe13699ab3f04b185d5bf39b825ef5e1ed52 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:40:51 +0800 Subject: [PATCH 23/45] update parse Signed-off-by: wangshi --- .../java/antlr/TypeScriptParserListener.java | 1971 ----------------- 1 file changed, 1971 deletions(-) delete mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserListener.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserListener.java deleted file mode 100644 index 27446684..00000000 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserListener.java +++ /dev/null @@ -1,1971 +0,0 @@ -/* - * Copyright (c) 2025 Shenzhen Kaihong Digital. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package antlr;// Generated from TypeScriptParser.g4 by ANTLR 4.13.2 -import org.antlr.v4.runtime.tree.ParseTreeListener; - -/** - * This interface defines a complete listener for a parse tree produced by - * {@link TypeScriptParser}. - */ -public interface TypeScriptParserListener extends ParseTreeListener { - /** - * Enter a parse tree produced by {@link TypeScriptParser#initializer}. - * @param ctx the parse tree - */ - void enterInitializer(TypeScriptParser.InitializerContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#initializer}. - * @param ctx the parse tree - */ - void exitInitializer(TypeScriptParser.InitializerContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#bindingPattern}. - * @param ctx the parse tree - */ - void enterBindingPattern(TypeScriptParser.BindingPatternContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#bindingPattern}. - * @param ctx the parse tree - */ - void exitBindingPattern(TypeScriptParser.BindingPatternContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeParameters}. - * @param ctx the parse tree - */ - void enterTypeParameters(TypeScriptParser.TypeParametersContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeParameters}. - * @param ctx the parse tree - */ - void exitTypeParameters(TypeScriptParser.TypeParametersContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeParameterList}. - * @param ctx the parse tree - */ - void enterTypeParameterList(TypeScriptParser.TypeParameterListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeParameterList}. - * @param ctx the parse tree - */ - void exitTypeParameterList(TypeScriptParser.TypeParameterListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeParameter}. - * @param ctx the parse tree - */ - void enterTypeParameter(TypeScriptParser.TypeParameterContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeParameter}. - * @param ctx the parse tree - */ - void exitTypeParameter(TypeScriptParser.TypeParameterContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#constraint}. - * @param ctx the parse tree - */ - void enterConstraint(TypeScriptParser.ConstraintContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#constraint}. - * @param ctx the parse tree - */ - void exitConstraint(TypeScriptParser.ConstraintContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeArguments}. - * @param ctx the parse tree - */ - void enterTypeArguments(TypeScriptParser.TypeArgumentsContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeArguments}. - * @param ctx the parse tree - */ - void exitTypeArguments(TypeScriptParser.TypeArgumentsContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeArgumentList}. - * @param ctx the parse tree - */ - void enterTypeArgumentList(TypeScriptParser.TypeArgumentListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeArgumentList}. - * @param ctx the parse tree - */ - void exitTypeArgumentList(TypeScriptParser.TypeArgumentListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeArgument}. - * @param ctx the parse tree - */ - void enterTypeArgument(TypeScriptParser.TypeArgumentContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeArgument}. - * @param ctx the parse tree - */ - void exitTypeArgument(TypeScriptParser.TypeArgumentContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#type_}. - * @param ctx the parse tree - */ - void enterType_(TypeScriptParser.Type_Context ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#type_}. - * @param ctx the parse tree - */ - void exitType_(TypeScriptParser.Type_Context ctx); - /** - * Enter a parse tree produced by the {@code Intersection} - * labeled alternative in {@link TypeScriptParser#unionOrIntersectionOrPrimaryType}. - * @param ctx the parse tree - */ - void enterIntersection(TypeScriptParser.IntersectionContext ctx); - /** - * Exit a parse tree produced by the {@code Intersection} - * labeled alternative in {@link TypeScriptParser#unionOrIntersectionOrPrimaryType}. - * @param ctx the parse tree - */ - void exitIntersection(TypeScriptParser.IntersectionContext ctx); - /** - * Enter a parse tree produced by the {@code Primary} - * labeled alternative in {@link TypeScriptParser#unionOrIntersectionOrPrimaryType}. - * @param ctx the parse tree - */ - void enterPrimary(TypeScriptParser.PrimaryContext ctx); - /** - * Exit a parse tree produced by the {@code Primary} - * labeled alternative in {@link TypeScriptParser#unionOrIntersectionOrPrimaryType}. - * @param ctx the parse tree - */ - void exitPrimary(TypeScriptParser.PrimaryContext ctx); - /** - * Enter a parse tree produced by the {@code Union} - * labeled alternative in {@link TypeScriptParser#unionOrIntersectionOrPrimaryType}. - * @param ctx the parse tree - */ - void enterUnion(TypeScriptParser.UnionContext ctx); - /** - * Exit a parse tree produced by the {@code Union} - * labeled alternative in {@link TypeScriptParser#unionOrIntersectionOrPrimaryType}. - * @param ctx the parse tree - */ - void exitUnion(TypeScriptParser.UnionContext ctx); - /** - * Enter a parse tree produced by the {@code RedefinitionOfType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterRedefinitionOfType(TypeScriptParser.RedefinitionOfTypeContext ctx); - /** - * Exit a parse tree produced by the {@code RedefinitionOfType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitRedefinitionOfType(TypeScriptParser.RedefinitionOfTypeContext ctx); - /** - * Enter a parse tree produced by the {@code PredefinedPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterPredefinedPrimType(TypeScriptParser.PredefinedPrimTypeContext ctx); - /** - * Exit a parse tree produced by the {@code PredefinedPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitPredefinedPrimType(TypeScriptParser.PredefinedPrimTypeContext ctx); - /** - * Enter a parse tree produced by the {@code ArrayPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterArrayPrimType(TypeScriptParser.ArrayPrimTypeContext ctx); - /** - * Exit a parse tree produced by the {@code ArrayPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitArrayPrimType(TypeScriptParser.ArrayPrimTypeContext ctx); - /** - * Enter a parse tree produced by the {@code ParenthesizedPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterParenthesizedPrimType(TypeScriptParser.ParenthesizedPrimTypeContext ctx); - /** - * Exit a parse tree produced by the {@code ParenthesizedPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitParenthesizedPrimType(TypeScriptParser.ParenthesizedPrimTypeContext ctx); - /** - * Enter a parse tree produced by the {@code ThisPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterThisPrimType(TypeScriptParser.ThisPrimTypeContext ctx); - /** - * Exit a parse tree produced by the {@code ThisPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitThisPrimType(TypeScriptParser.ThisPrimTypeContext ctx); - /** - * Enter a parse tree produced by the {@code TuplePrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterTuplePrimType(TypeScriptParser.TuplePrimTypeContext ctx); - /** - * Exit a parse tree produced by the {@code TuplePrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitTuplePrimType(TypeScriptParser.TuplePrimTypeContext ctx); - /** - * Enter a parse tree produced by the {@code KeyOfType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterKeyOfType(TypeScriptParser.KeyOfTypeContext ctx); - /** - * Exit a parse tree produced by the {@code KeyOfType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitKeyOfType(TypeScriptParser.KeyOfTypeContext ctx); - /** - * Enter a parse tree produced by the {@code ObjectPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterObjectPrimType(TypeScriptParser.ObjectPrimTypeContext ctx); - /** - * Exit a parse tree produced by the {@code ObjectPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitObjectPrimType(TypeScriptParser.ObjectPrimTypeContext ctx); - /** - * Enter a parse tree produced by the {@code ReferencePrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterReferencePrimType(TypeScriptParser.ReferencePrimTypeContext ctx); - /** - * Exit a parse tree produced by the {@code ReferencePrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitReferencePrimType(TypeScriptParser.ReferencePrimTypeContext ctx); - /** - * Enter a parse tree produced by the {@code QueryPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void enterQueryPrimType(TypeScriptParser.QueryPrimTypeContext ctx); - /** - * Exit a parse tree produced by the {@code QueryPrimType} - * labeled alternative in {@link TypeScriptParser#primaryType}. - * @param ctx the parse tree - */ - void exitQueryPrimType(TypeScriptParser.QueryPrimTypeContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#predefinedType}. - * @param ctx the parse tree - */ - void enterPredefinedType(TypeScriptParser.PredefinedTypeContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#predefinedType}. - * @param ctx the parse tree - */ - void exitPredefinedType(TypeScriptParser.PredefinedTypeContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeReference}. - * @param ctx the parse tree - */ - void enterTypeReference(TypeScriptParser.TypeReferenceContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeReference}. - * @param ctx the parse tree - */ - void exitTypeReference(TypeScriptParser.TypeReferenceContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeGeneric}. - * @param ctx the parse tree - */ - void enterTypeGeneric(TypeScriptParser.TypeGenericContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeGeneric}. - * @param ctx the parse tree - */ - void exitTypeGeneric(TypeScriptParser.TypeGenericContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeName}. - * @param ctx the parse tree - */ - void enterTypeName(TypeScriptParser.TypeNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeName}. - * @param ctx the parse tree - */ - void exitTypeName(TypeScriptParser.TypeNameContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#objectType}. - * @param ctx the parse tree - */ - void enterObjectType(TypeScriptParser.ObjectTypeContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#objectType}. - * @param ctx the parse tree - */ - void exitObjectType(TypeScriptParser.ObjectTypeContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeBody}. - * @param ctx the parse tree - */ - void enterTypeBody(TypeScriptParser.TypeBodyContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeBody}. - * @param ctx the parse tree - */ - void exitTypeBody(TypeScriptParser.TypeBodyContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeMemberList}. - * @param ctx the parse tree - */ - void enterTypeMemberList(TypeScriptParser.TypeMemberListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeMemberList}. - * @param ctx the parse tree - */ - void exitTypeMemberList(TypeScriptParser.TypeMemberListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeMember}. - * @param ctx the parse tree - */ - void enterTypeMember(TypeScriptParser.TypeMemberContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeMember}. - * @param ctx the parse tree - */ - void exitTypeMember(TypeScriptParser.TypeMemberContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#arrayType}. - * @param ctx the parse tree - */ - void enterArrayType(TypeScriptParser.ArrayTypeContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#arrayType}. - * @param ctx the parse tree - */ - void exitArrayType(TypeScriptParser.ArrayTypeContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#tupleType}. - * @param ctx the parse tree - */ - void enterTupleType(TypeScriptParser.TupleTypeContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#tupleType}. - * @param ctx the parse tree - */ - void exitTupleType(TypeScriptParser.TupleTypeContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#tupleElementTypes}. - * @param ctx the parse tree - */ - void enterTupleElementTypes(TypeScriptParser.TupleElementTypesContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#tupleElementTypes}. - * @param ctx the parse tree - */ - void exitTupleElementTypes(TypeScriptParser.TupleElementTypesContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#functionType}. - * @param ctx the parse tree - */ - void enterFunctionType(TypeScriptParser.FunctionTypeContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#functionType}. - * @param ctx the parse tree - */ - void exitFunctionType(TypeScriptParser.FunctionTypeContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#constructorType}. - * @param ctx the parse tree - */ - void enterConstructorType(TypeScriptParser.ConstructorTypeContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#constructorType}. - * @param ctx the parse tree - */ - void exitConstructorType(TypeScriptParser.ConstructorTypeContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeQuery}. - * @param ctx the parse tree - */ - void enterTypeQuery(TypeScriptParser.TypeQueryContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeQuery}. - * @param ctx the parse tree - */ - void exitTypeQuery(TypeScriptParser.TypeQueryContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeQueryExpression}. - * @param ctx the parse tree - */ - void enterTypeQueryExpression(TypeScriptParser.TypeQueryExpressionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeQueryExpression}. - * @param ctx the parse tree - */ - void exitTypeQueryExpression(TypeScriptParser.TypeQueryExpressionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#propertySignatur}. - * @param ctx the parse tree - */ - void enterPropertySignatur(TypeScriptParser.PropertySignaturContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#propertySignatur}. - * @param ctx the parse tree - */ - void exitPropertySignatur(TypeScriptParser.PropertySignaturContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeAnnotation}. - * @param ctx the parse tree - */ - void enterTypeAnnotation(TypeScriptParser.TypeAnnotationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeAnnotation}. - * @param ctx the parse tree - */ - void exitTypeAnnotation(TypeScriptParser.TypeAnnotationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#callSignature}. - * @param ctx the parse tree - */ - void enterCallSignature(TypeScriptParser.CallSignatureContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#callSignature}. - * @param ctx the parse tree - */ - void exitCallSignature(TypeScriptParser.CallSignatureContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#parameterList}. - * @param ctx the parse tree - */ - void enterParameterList(TypeScriptParser.ParameterListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#parameterList}. - * @param ctx the parse tree - */ - void exitParameterList(TypeScriptParser.ParameterListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#requiredParameterList}. - * @param ctx the parse tree - */ - void enterRequiredParameterList(TypeScriptParser.RequiredParameterListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#requiredParameterList}. - * @param ctx the parse tree - */ - void exitRequiredParameterList(TypeScriptParser.RequiredParameterListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#parameter}. - * @param ctx the parse tree - */ - void enterParameter(TypeScriptParser.ParameterContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#parameter}. - * @param ctx the parse tree - */ - void exitParameter(TypeScriptParser.ParameterContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#optionalParameter}. - * @param ctx the parse tree - */ - void enterOptionalParameter(TypeScriptParser.OptionalParameterContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#optionalParameter}. - * @param ctx the parse tree - */ - void exitOptionalParameter(TypeScriptParser.OptionalParameterContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#restParameter}. - * @param ctx the parse tree - */ - void enterRestParameter(TypeScriptParser.RestParameterContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#restParameter}. - * @param ctx the parse tree - */ - void exitRestParameter(TypeScriptParser.RestParameterContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#requiredParameter}. - * @param ctx the parse tree - */ - void enterRequiredParameter(TypeScriptParser.RequiredParameterContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#requiredParameter}. - * @param ctx the parse tree - */ - void exitRequiredParameter(TypeScriptParser.RequiredParameterContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#accessibilityModifier}. - * @param ctx the parse tree - */ - void enterAccessibilityModifier(TypeScriptParser.AccessibilityModifierContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#accessibilityModifier}. - * @param ctx the parse tree - */ - void exitAccessibilityModifier(TypeScriptParser.AccessibilityModifierContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#identifierOrPattern}. - * @param ctx the parse tree - */ - void enterIdentifierOrPattern(TypeScriptParser.IdentifierOrPatternContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#identifierOrPattern}. - * @param ctx the parse tree - */ - void exitIdentifierOrPattern(TypeScriptParser.IdentifierOrPatternContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#constructSignature}. - * @param ctx the parse tree - */ - void enterConstructSignature(TypeScriptParser.ConstructSignatureContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#constructSignature}. - * @param ctx the parse tree - */ - void exitConstructSignature(TypeScriptParser.ConstructSignatureContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#indexSignature}. - * @param ctx the parse tree - */ - void enterIndexSignature(TypeScriptParser.IndexSignatureContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#indexSignature}. - * @param ctx the parse tree - */ - void exitIndexSignature(TypeScriptParser.IndexSignatureContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#methodSignature}. - * @param ctx the parse tree - */ - void enterMethodSignature(TypeScriptParser.MethodSignatureContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#methodSignature}. - * @param ctx the parse tree - */ - void exitMethodSignature(TypeScriptParser.MethodSignatureContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#typeAliasDeclaration}. - * @param ctx the parse tree - */ - void enterTypeAliasDeclaration(TypeScriptParser.TypeAliasDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#typeAliasDeclaration}. - * @param ctx the parse tree - */ - void exitTypeAliasDeclaration(TypeScriptParser.TypeAliasDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#constructorDeclaration}. - * @param ctx the parse tree - */ - void enterConstructorDeclaration(TypeScriptParser.ConstructorDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#constructorDeclaration}. - * @param ctx the parse tree - */ - void exitConstructorDeclaration(TypeScriptParser.ConstructorDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#interfaceDeclaration}. - * @param ctx the parse tree - */ - void enterInterfaceDeclaration(TypeScriptParser.InterfaceDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#interfaceDeclaration}. - * @param ctx the parse tree - */ - void exitInterfaceDeclaration(TypeScriptParser.InterfaceDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#interfaceExtendsClause}. - * @param ctx the parse tree - */ - void enterInterfaceExtendsClause(TypeScriptParser.InterfaceExtendsClauseContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#interfaceExtendsClause}. - * @param ctx the parse tree - */ - void exitInterfaceExtendsClause(TypeScriptParser.InterfaceExtendsClauseContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#classOrInterfaceTypeList}. - * @param ctx the parse tree - */ - void enterClassOrInterfaceTypeList(TypeScriptParser.ClassOrInterfaceTypeListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#classOrInterfaceTypeList}. - * @param ctx the parse tree - */ - void exitClassOrInterfaceTypeList(TypeScriptParser.ClassOrInterfaceTypeListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#enumDeclaration}. - * @param ctx the parse tree - */ - void enterEnumDeclaration(TypeScriptParser.EnumDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#enumDeclaration}. - * @param ctx the parse tree - */ - void exitEnumDeclaration(TypeScriptParser.EnumDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#enumBody}. - * @param ctx the parse tree - */ - void enterEnumBody(TypeScriptParser.EnumBodyContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#enumBody}. - * @param ctx the parse tree - */ - void exitEnumBody(TypeScriptParser.EnumBodyContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#enumMemberList}. - * @param ctx the parse tree - */ - void enterEnumMemberList(TypeScriptParser.EnumMemberListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#enumMemberList}. - * @param ctx the parse tree - */ - void exitEnumMemberList(TypeScriptParser.EnumMemberListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#enumMember}. - * @param ctx the parse tree - */ - void enterEnumMember(TypeScriptParser.EnumMemberContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#enumMember}. - * @param ctx the parse tree - */ - void exitEnumMember(TypeScriptParser.EnumMemberContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#namespaceDeclaration}. - * @param ctx the parse tree - */ - void enterNamespaceDeclaration(TypeScriptParser.NamespaceDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#namespaceDeclaration}. - * @param ctx the parse tree - */ - void exitNamespaceDeclaration(TypeScriptParser.NamespaceDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#namespaceName}. - * @param ctx the parse tree - */ - void enterNamespaceName(TypeScriptParser.NamespaceNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#namespaceName}. - * @param ctx the parse tree - */ - void exitNamespaceName(TypeScriptParser.NamespaceNameContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importAliasDeclaration}. - * @param ctx the parse tree - */ - void enterImportAliasDeclaration(TypeScriptParser.ImportAliasDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importAliasDeclaration}. - * @param ctx the parse tree - */ - void exitImportAliasDeclaration(TypeScriptParser.ImportAliasDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#decoratorList}. - * @param ctx the parse tree - */ - void enterDecoratorList(TypeScriptParser.DecoratorListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#decoratorList}. - * @param ctx the parse tree - */ - void exitDecoratorList(TypeScriptParser.DecoratorListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#decorator}. - * @param ctx the parse tree - */ - void enterDecorator(TypeScriptParser.DecoratorContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#decorator}. - * @param ctx the parse tree - */ - void exitDecorator(TypeScriptParser.DecoratorContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#decoratorMemberExpression}. - * @param ctx the parse tree - */ - void enterDecoratorMemberExpression(TypeScriptParser.DecoratorMemberExpressionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#decoratorMemberExpression}. - * @param ctx the parse tree - */ - void exitDecoratorMemberExpression(TypeScriptParser.DecoratorMemberExpressionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#decoratorCallExpression}. - * @param ctx the parse tree - */ - void enterDecoratorCallExpression(TypeScriptParser.DecoratorCallExpressionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#decoratorCallExpression}. - * @param ctx the parse tree - */ - void exitDecoratorCallExpression(TypeScriptParser.DecoratorCallExpressionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#program}. - * @param ctx the parse tree - */ - void enterProgram(TypeScriptParser.ProgramContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#program}. - * @param ctx the parse tree - */ - void exitProgram(TypeScriptParser.ProgramContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#sourceElement}. - * @param ctx the parse tree - */ - void enterSourceElement(TypeScriptParser.SourceElementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#sourceElement}. - * @param ctx the parse tree - */ - void exitSourceElement(TypeScriptParser.SourceElementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#statement}. - * @param ctx the parse tree - */ - void enterStatement(TypeScriptParser.StatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#statement}. - * @param ctx the parse tree - */ - void exitStatement(TypeScriptParser.StatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#block}. - * @param ctx the parse tree - */ - void enterBlock(TypeScriptParser.BlockContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#block}. - * @param ctx the parse tree - */ - void exitBlock(TypeScriptParser.BlockContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#statementList}. - * @param ctx the parse tree - */ - void enterStatementList(TypeScriptParser.StatementListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#statementList}. - * @param ctx the parse tree - */ - void exitStatementList(TypeScriptParser.StatementListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#abstractDeclaration}. - * @param ctx the parse tree - */ - void enterAbstractDeclaration(TypeScriptParser.AbstractDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#abstractDeclaration}. - * @param ctx the parse tree - */ - void exitAbstractDeclaration(TypeScriptParser.AbstractDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importStatement}. - * @param ctx the parse tree - */ - void enterImportStatement(TypeScriptParser.ImportStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importStatement}. - * @param ctx the parse tree - */ - void exitImportStatement(TypeScriptParser.ImportStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importFromBlock}. - * @param ctx the parse tree - */ - void enterImportFromBlock(TypeScriptParser.ImportFromBlockContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importFromBlock}. - * @param ctx the parse tree - */ - void exitImportFromBlock(TypeScriptParser.ImportFromBlockContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importModuleItems}. - * @param ctx the parse tree - */ - void enterImportModuleItems(TypeScriptParser.ImportModuleItemsContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importModuleItems}. - * @param ctx the parse tree - */ - void exitImportModuleItems(TypeScriptParser.ImportModuleItemsContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importAliasName}. - * @param ctx the parse tree - */ - void enterImportAliasName(TypeScriptParser.ImportAliasNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importAliasName}. - * @param ctx the parse tree - */ - void exitImportAliasName(TypeScriptParser.ImportAliasNameContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#moduleExportName}. - * @param ctx the parse tree - */ - void enterModuleExportName(TypeScriptParser.ModuleExportNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#moduleExportName}. - * @param ctx the parse tree - */ - void exitModuleExportName(TypeScriptParser.ModuleExportNameContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importedBinding}. - * @param ctx the parse tree - */ - void enterImportedBinding(TypeScriptParser.ImportedBindingContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importedBinding}. - * @param ctx the parse tree - */ - void exitImportedBinding(TypeScriptParser.ImportedBindingContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importDefault}. - * @param ctx the parse tree - */ - void enterImportDefault(TypeScriptParser.ImportDefaultContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importDefault}. - * @param ctx the parse tree - */ - void exitImportDefault(TypeScriptParser.ImportDefaultContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importNamespace}. - * @param ctx the parse tree - */ - void enterImportNamespace(TypeScriptParser.ImportNamespaceContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importNamespace}. - * @param ctx the parse tree - */ - void exitImportNamespace(TypeScriptParser.ImportNamespaceContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#importFrom}. - * @param ctx the parse tree - */ - void enterImportFrom(TypeScriptParser.ImportFromContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#importFrom}. - * @param ctx the parse tree - */ - void exitImportFrom(TypeScriptParser.ImportFromContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#aliasName}. - * @param ctx the parse tree - */ - void enterAliasName(TypeScriptParser.AliasNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#aliasName}. - * @param ctx the parse tree - */ - void exitAliasName(TypeScriptParser.AliasNameContext ctx); - /** - * Enter a parse tree produced by the {@code ExportDeclaration} - * labeled alternative in {@link TypeScriptParser#exportStatement}. - * @param ctx the parse tree - */ - void enterExportDeclaration(TypeScriptParser.ExportDeclarationContext ctx); - /** - * Exit a parse tree produced by the {@code ExportDeclaration} - * labeled alternative in {@link TypeScriptParser#exportStatement}. - * @param ctx the parse tree - */ - void exitExportDeclaration(TypeScriptParser.ExportDeclarationContext ctx); - /** - * Enter a parse tree produced by the {@code ExportDefaultDeclaration} - * labeled alternative in {@link TypeScriptParser#exportStatement}. - * @param ctx the parse tree - */ - void enterExportDefaultDeclaration(TypeScriptParser.ExportDefaultDeclarationContext ctx); - /** - * Exit a parse tree produced by the {@code ExportDefaultDeclaration} - * labeled alternative in {@link TypeScriptParser#exportStatement}. - * @param ctx the parse tree - */ - void exitExportDefaultDeclaration(TypeScriptParser.ExportDefaultDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#exportFromBlock}. - * @param ctx the parse tree - */ - void enterExportFromBlock(TypeScriptParser.ExportFromBlockContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#exportFromBlock}. - * @param ctx the parse tree - */ - void exitExportFromBlock(TypeScriptParser.ExportFromBlockContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#exportModuleItems}. - * @param ctx the parse tree - */ - void enterExportModuleItems(TypeScriptParser.ExportModuleItemsContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#exportModuleItems}. - * @param ctx the parse tree - */ - void exitExportModuleItems(TypeScriptParser.ExportModuleItemsContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#exportAliasName}. - * @param ctx the parse tree - */ - void enterExportAliasName(TypeScriptParser.ExportAliasNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#exportAliasName}. - * @param ctx the parse tree - */ - void exitExportAliasName(TypeScriptParser.ExportAliasNameContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#declaration}. - * @param ctx the parse tree - */ - void enterDeclaration(TypeScriptParser.DeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#declaration}. - * @param ctx the parse tree - */ - void exitDeclaration(TypeScriptParser.DeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#variableStatement}. - * @param ctx the parse tree - */ - void enterVariableStatement(TypeScriptParser.VariableStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#variableStatement}. - * @param ctx the parse tree - */ - void exitVariableStatement(TypeScriptParser.VariableStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#variableDeclarationList}. - * @param ctx the parse tree - */ - void enterVariableDeclarationList(TypeScriptParser.VariableDeclarationListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#variableDeclarationList}. - * @param ctx the parse tree - */ - void exitVariableDeclarationList(TypeScriptParser.VariableDeclarationListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#variableDeclaration}. - * @param ctx the parse tree - */ - void enterVariableDeclaration(TypeScriptParser.VariableDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#variableDeclaration}. - * @param ctx the parse tree - */ - void exitVariableDeclaration(TypeScriptParser.VariableDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#emptyStatement_}. - * @param ctx the parse tree - */ - void enterEmptyStatement_(TypeScriptParser.EmptyStatement_Context ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#emptyStatement_}. - * @param ctx the parse tree - */ - void exitEmptyStatement_(TypeScriptParser.EmptyStatement_Context ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#expressionStatement}. - * @param ctx the parse tree - */ - void enterExpressionStatement(TypeScriptParser.ExpressionStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#expressionStatement}. - * @param ctx the parse tree - */ - void exitExpressionStatement(TypeScriptParser.ExpressionStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#ifStatement}. - * @param ctx the parse tree - */ - void enterIfStatement(TypeScriptParser.IfStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#ifStatement}. - * @param ctx the parse tree - */ - void exitIfStatement(TypeScriptParser.IfStatementContext ctx); - /** - * Enter a parse tree produced by the {@code DoStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterDoStatement(TypeScriptParser.DoStatementContext ctx); - /** - * Exit a parse tree produced by the {@code DoStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitDoStatement(TypeScriptParser.DoStatementContext ctx); - /** - * Enter a parse tree produced by the {@code WhileStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterWhileStatement(TypeScriptParser.WhileStatementContext ctx); - /** - * Exit a parse tree produced by the {@code WhileStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitWhileStatement(TypeScriptParser.WhileStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForStatement(TypeScriptParser.ForStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForStatement(TypeScriptParser.ForStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForVarStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForVarStatement(TypeScriptParser.ForVarStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForVarStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForVarStatement(TypeScriptParser.ForVarStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForInStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForInStatement(TypeScriptParser.ForInStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForInStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForInStatement(TypeScriptParser.ForInStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForVarInStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForVarInStatement(TypeScriptParser.ForVarInStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForVarInStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForVarInStatement(TypeScriptParser.ForVarInStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForOfStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForOfStatement(TypeScriptParser.ForOfStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForOfStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForOfStatement(TypeScriptParser.ForOfStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForVarOfStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForVarOfStatement(TypeScriptParser.ForVarOfStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForVarOfStatement} - * labeled alternative in {@link TypeScriptParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForVarOfStatement(TypeScriptParser.ForVarOfStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#varModifier}. - * @param ctx the parse tree - */ - void enterVarModifier(TypeScriptParser.VarModifierContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#varModifier}. - * @param ctx the parse tree - */ - void exitVarModifier(TypeScriptParser.VarModifierContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#continueStatement}. - * @param ctx the parse tree - */ - void enterContinueStatement(TypeScriptParser.ContinueStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#continueStatement}. - * @param ctx the parse tree - */ - void exitContinueStatement(TypeScriptParser.ContinueStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#breakStatement}. - * @param ctx the parse tree - */ - void enterBreakStatement(TypeScriptParser.BreakStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#breakStatement}. - * @param ctx the parse tree - */ - void exitBreakStatement(TypeScriptParser.BreakStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#returnStatement}. - * @param ctx the parse tree - */ - void enterReturnStatement(TypeScriptParser.ReturnStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#returnStatement}. - * @param ctx the parse tree - */ - void exitReturnStatement(TypeScriptParser.ReturnStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#yieldStatement}. - * @param ctx the parse tree - */ - void enterYieldStatement(TypeScriptParser.YieldStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#yieldStatement}. - * @param ctx the parse tree - */ - void exitYieldStatement(TypeScriptParser.YieldStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#withStatement}. - * @param ctx the parse tree - */ - void enterWithStatement(TypeScriptParser.WithStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#withStatement}. - * @param ctx the parse tree - */ - void exitWithStatement(TypeScriptParser.WithStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#switchStatement}. - * @param ctx the parse tree - */ - void enterSwitchStatement(TypeScriptParser.SwitchStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#switchStatement}. - * @param ctx the parse tree - */ - void exitSwitchStatement(TypeScriptParser.SwitchStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#caseBlock}. - * @param ctx the parse tree - */ - void enterCaseBlock(TypeScriptParser.CaseBlockContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#caseBlock}. - * @param ctx the parse tree - */ - void exitCaseBlock(TypeScriptParser.CaseBlockContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#caseClauses}. - * @param ctx the parse tree - */ - void enterCaseClauses(TypeScriptParser.CaseClausesContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#caseClauses}. - * @param ctx the parse tree - */ - void exitCaseClauses(TypeScriptParser.CaseClausesContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#caseClause}. - * @param ctx the parse tree - */ - void enterCaseClause(TypeScriptParser.CaseClauseContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#caseClause}. - * @param ctx the parse tree - */ - void exitCaseClause(TypeScriptParser.CaseClauseContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#defaultClause}. - * @param ctx the parse tree - */ - void enterDefaultClause(TypeScriptParser.DefaultClauseContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#defaultClause}. - * @param ctx the parse tree - */ - void exitDefaultClause(TypeScriptParser.DefaultClauseContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#labelledStatement}. - * @param ctx the parse tree - */ - void enterLabelledStatement(TypeScriptParser.LabelledStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#labelledStatement}. - * @param ctx the parse tree - */ - void exitLabelledStatement(TypeScriptParser.LabelledStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#throwStatement}. - * @param ctx the parse tree - */ - void enterThrowStatement(TypeScriptParser.ThrowStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#throwStatement}. - * @param ctx the parse tree - */ - void exitThrowStatement(TypeScriptParser.ThrowStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#tryStatement}. - * @param ctx the parse tree - */ - void enterTryStatement(TypeScriptParser.TryStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#tryStatement}. - * @param ctx the parse tree - */ - void exitTryStatement(TypeScriptParser.TryStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#catchProduction}. - * @param ctx the parse tree - */ - void enterCatchProduction(TypeScriptParser.CatchProductionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#catchProduction}. - * @param ctx the parse tree - */ - void exitCatchProduction(TypeScriptParser.CatchProductionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#finallyProduction}. - * @param ctx the parse tree - */ - void enterFinallyProduction(TypeScriptParser.FinallyProductionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#finallyProduction}. - * @param ctx the parse tree - */ - void exitFinallyProduction(TypeScriptParser.FinallyProductionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#debuggerStatement}. - * @param ctx the parse tree - */ - void enterDebuggerStatement(TypeScriptParser.DebuggerStatementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#debuggerStatement}. - * @param ctx the parse tree - */ - void exitDebuggerStatement(TypeScriptParser.DebuggerStatementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#functionDeclaration}. - * @param ctx the parse tree - */ - void enterFunctionDeclaration(TypeScriptParser.FunctionDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#functionDeclaration}. - * @param ctx the parse tree - */ - void exitFunctionDeclaration(TypeScriptParser.FunctionDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#classDeclaration}. - * @param ctx the parse tree - */ - void enterClassDeclaration(TypeScriptParser.ClassDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#classDeclaration}. - * @param ctx the parse tree - */ - void exitClassDeclaration(TypeScriptParser.ClassDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#classHeritage}. - * @param ctx the parse tree - */ - void enterClassHeritage(TypeScriptParser.ClassHeritageContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#classHeritage}. - * @param ctx the parse tree - */ - void exitClassHeritage(TypeScriptParser.ClassHeritageContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#classTail}. - * @param ctx the parse tree - */ - void enterClassTail(TypeScriptParser.ClassTailContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#classTail}. - * @param ctx the parse tree - */ - void exitClassTail(TypeScriptParser.ClassTailContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#classExtendsClause}. - * @param ctx the parse tree - */ - void enterClassExtendsClause(TypeScriptParser.ClassExtendsClauseContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#classExtendsClause}. - * @param ctx the parse tree - */ - void exitClassExtendsClause(TypeScriptParser.ClassExtendsClauseContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#implementsClause}. - * @param ctx the parse tree - */ - void enterImplementsClause(TypeScriptParser.ImplementsClauseContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#implementsClause}. - * @param ctx the parse tree - */ - void exitImplementsClause(TypeScriptParser.ImplementsClauseContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#classElement}. - * @param ctx the parse tree - */ - void enterClassElement(TypeScriptParser.ClassElementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#classElement}. - * @param ctx the parse tree - */ - void exitClassElement(TypeScriptParser.ClassElementContext ctx); - /** - * Enter a parse tree produced by the {@code PropertyDeclarationExpression} - * labeled alternative in {@link TypeScriptParser#propertyMemberDeclaration}. - * @param ctx the parse tree - */ - void enterPropertyDeclarationExpression(TypeScriptParser.PropertyDeclarationExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PropertyDeclarationExpression} - * labeled alternative in {@link TypeScriptParser#propertyMemberDeclaration}. - * @param ctx the parse tree - */ - void exitPropertyDeclarationExpression(TypeScriptParser.PropertyDeclarationExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code MethodDeclarationExpression} - * labeled alternative in {@link TypeScriptParser#propertyMemberDeclaration}. - * @param ctx the parse tree - */ - void enterMethodDeclarationExpression(TypeScriptParser.MethodDeclarationExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code MethodDeclarationExpression} - * labeled alternative in {@link TypeScriptParser#propertyMemberDeclaration}. - * @param ctx the parse tree - */ - void exitMethodDeclarationExpression(TypeScriptParser.MethodDeclarationExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code GetterSetterDeclarationExpression} - * labeled alternative in {@link TypeScriptParser#propertyMemberDeclaration}. - * @param ctx the parse tree - */ - void enterGetterSetterDeclarationExpression(TypeScriptParser.GetterSetterDeclarationExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code GetterSetterDeclarationExpression} - * labeled alternative in {@link TypeScriptParser#propertyMemberDeclaration}. - * @param ctx the parse tree - */ - void exitGetterSetterDeclarationExpression(TypeScriptParser.GetterSetterDeclarationExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code AbstractMemberDeclaration} - * labeled alternative in {@link TypeScriptParser#propertyMemberDeclaration}. - * @param ctx the parse tree - */ - void enterAbstractMemberDeclaration(TypeScriptParser.AbstractMemberDeclarationContext ctx); - /** - * Exit a parse tree produced by the {@code AbstractMemberDeclaration} - * labeled alternative in {@link TypeScriptParser#propertyMemberDeclaration}. - * @param ctx the parse tree - */ - void exitAbstractMemberDeclaration(TypeScriptParser.AbstractMemberDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#propertyMemberBase}. - * @param ctx the parse tree - */ - void enterPropertyMemberBase(TypeScriptParser.PropertyMemberBaseContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#propertyMemberBase}. - * @param ctx the parse tree - */ - void exitPropertyMemberBase(TypeScriptParser.PropertyMemberBaseContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#indexMemberDeclaration}. - * @param ctx the parse tree - */ - void enterIndexMemberDeclaration(TypeScriptParser.IndexMemberDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#indexMemberDeclaration}. - * @param ctx the parse tree - */ - void exitIndexMemberDeclaration(TypeScriptParser.IndexMemberDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#generatorMethod}. - * @param ctx the parse tree - */ - void enterGeneratorMethod(TypeScriptParser.GeneratorMethodContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#generatorMethod}. - * @param ctx the parse tree - */ - void exitGeneratorMethod(TypeScriptParser.GeneratorMethodContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#generatorFunctionDeclaration}. - * @param ctx the parse tree - */ - void enterGeneratorFunctionDeclaration(TypeScriptParser.GeneratorFunctionDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#generatorFunctionDeclaration}. - * @param ctx the parse tree - */ - void exitGeneratorFunctionDeclaration(TypeScriptParser.GeneratorFunctionDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#generatorBlock}. - * @param ctx the parse tree - */ - void enterGeneratorBlock(TypeScriptParser.GeneratorBlockContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#generatorBlock}. - * @param ctx the parse tree - */ - void exitGeneratorBlock(TypeScriptParser.GeneratorBlockContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#generatorDefinition}. - * @param ctx the parse tree - */ - void enterGeneratorDefinition(TypeScriptParser.GeneratorDefinitionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#generatorDefinition}. - * @param ctx the parse tree - */ - void exitGeneratorDefinition(TypeScriptParser.GeneratorDefinitionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#iteratorBlock}. - * @param ctx the parse tree - */ - void enterIteratorBlock(TypeScriptParser.IteratorBlockContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#iteratorBlock}. - * @param ctx the parse tree - */ - void exitIteratorBlock(TypeScriptParser.IteratorBlockContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#iteratorDefinition}. - * @param ctx the parse tree - */ - void enterIteratorDefinition(TypeScriptParser.IteratorDefinitionContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#iteratorDefinition}. - * @param ctx the parse tree - */ - void exitIteratorDefinition(TypeScriptParser.IteratorDefinitionContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#classElementName}. - * @param ctx the parse tree - */ - void enterClassElementName(TypeScriptParser.ClassElementNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#classElementName}. - * @param ctx the parse tree - */ - void exitClassElementName(TypeScriptParser.ClassElementNameContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#privateIdentifier}. - * @param ctx the parse tree - */ - void enterPrivateIdentifier(TypeScriptParser.PrivateIdentifierContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#privateIdentifier}. - * @param ctx the parse tree - */ - void exitPrivateIdentifier(TypeScriptParser.PrivateIdentifierContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#formalParameterList}. - * @param ctx the parse tree - */ - void enterFormalParameterList(TypeScriptParser.FormalParameterListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#formalParameterList}. - * @param ctx the parse tree - */ - void exitFormalParameterList(TypeScriptParser.FormalParameterListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#formalParameterArg}. - * @param ctx the parse tree - */ - void enterFormalParameterArg(TypeScriptParser.FormalParameterArgContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#formalParameterArg}. - * @param ctx the parse tree - */ - void exitFormalParameterArg(TypeScriptParser.FormalParameterArgContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#lastFormalParameterArg}. - * @param ctx the parse tree - */ - void enterLastFormalParameterArg(TypeScriptParser.LastFormalParameterArgContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#lastFormalParameterArg}. - * @param ctx the parse tree - */ - void exitLastFormalParameterArg(TypeScriptParser.LastFormalParameterArgContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#functionBody}. - * @param ctx the parse tree - */ - void enterFunctionBody(TypeScriptParser.FunctionBodyContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#functionBody}. - * @param ctx the parse tree - */ - void exitFunctionBody(TypeScriptParser.FunctionBodyContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#sourceElements}. - * @param ctx the parse tree - */ - void enterSourceElements(TypeScriptParser.SourceElementsContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#sourceElements}. - * @param ctx the parse tree - */ - void exitSourceElements(TypeScriptParser.SourceElementsContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#arrayLiteral}. - * @param ctx the parse tree - */ - void enterArrayLiteral(TypeScriptParser.ArrayLiteralContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#arrayLiteral}. - * @param ctx the parse tree - */ - void exitArrayLiteral(TypeScriptParser.ArrayLiteralContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#elementList}. - * @param ctx the parse tree - */ - void enterElementList(TypeScriptParser.ElementListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#elementList}. - * @param ctx the parse tree - */ - void exitElementList(TypeScriptParser.ElementListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#arrayElement}. - * @param ctx the parse tree - */ - void enterArrayElement(TypeScriptParser.ArrayElementContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#arrayElement}. - * @param ctx the parse tree - */ - void exitArrayElement(TypeScriptParser.ArrayElementContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#objectLiteral}. - * @param ctx the parse tree - */ - void enterObjectLiteral(TypeScriptParser.ObjectLiteralContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#objectLiteral}. - * @param ctx the parse tree - */ - void exitObjectLiteral(TypeScriptParser.ObjectLiteralContext ctx); - /** - * Enter a parse tree produced by the {@code PropertyExpressionAssignment} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterPropertyExpressionAssignment(TypeScriptParser.PropertyExpressionAssignmentContext ctx); - /** - * Exit a parse tree produced by the {@code PropertyExpressionAssignment} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitPropertyExpressionAssignment(TypeScriptParser.PropertyExpressionAssignmentContext ctx); - /** - * Enter a parse tree produced by the {@code ComputedPropertyExpressionAssignment} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterComputedPropertyExpressionAssignment(TypeScriptParser.ComputedPropertyExpressionAssignmentContext ctx); - /** - * Exit a parse tree produced by the {@code ComputedPropertyExpressionAssignment} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitComputedPropertyExpressionAssignment(TypeScriptParser.ComputedPropertyExpressionAssignmentContext ctx); - /** - * Enter a parse tree produced by the {@code PropertyGetter} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterPropertyGetter(TypeScriptParser.PropertyGetterContext ctx); - /** - * Exit a parse tree produced by the {@code PropertyGetter} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitPropertyGetter(TypeScriptParser.PropertyGetterContext ctx); - /** - * Enter a parse tree produced by the {@code PropertySetter} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterPropertySetter(TypeScriptParser.PropertySetterContext ctx); - /** - * Exit a parse tree produced by the {@code PropertySetter} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitPropertySetter(TypeScriptParser.PropertySetterContext ctx); - /** - * Enter a parse tree produced by the {@code MethodProperty} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterMethodProperty(TypeScriptParser.MethodPropertyContext ctx); - /** - * Exit a parse tree produced by the {@code MethodProperty} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitMethodProperty(TypeScriptParser.MethodPropertyContext ctx); - /** - * Enter a parse tree produced by the {@code PropertyShorthand} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterPropertyShorthand(TypeScriptParser.PropertyShorthandContext ctx); - /** - * Exit a parse tree produced by the {@code PropertyShorthand} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitPropertyShorthand(TypeScriptParser.PropertyShorthandContext ctx); - /** - * Enter a parse tree produced by the {@code SpreadOperator} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterSpreadOperator(TypeScriptParser.SpreadOperatorContext ctx); - /** - * Exit a parse tree produced by the {@code SpreadOperator} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitSpreadOperator(TypeScriptParser.SpreadOperatorContext ctx); - /** - * Enter a parse tree produced by the {@code RestParameterInObject} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterRestParameterInObject(TypeScriptParser.RestParameterInObjectContext ctx); - /** - * Exit a parse tree produced by the {@code RestParameterInObject} - * labeled alternative in {@link TypeScriptParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitRestParameterInObject(TypeScriptParser.RestParameterInObjectContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#getAccessor}. - * @param ctx the parse tree - */ - void enterGetAccessor(TypeScriptParser.GetAccessorContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#getAccessor}. - * @param ctx the parse tree - */ - void exitGetAccessor(TypeScriptParser.GetAccessorContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#setAccessor}. - * @param ctx the parse tree - */ - void enterSetAccessor(TypeScriptParser.SetAccessorContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#setAccessor}. - * @param ctx the parse tree - */ - void exitSetAccessor(TypeScriptParser.SetAccessorContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#propertyName}. - * @param ctx the parse tree - */ - void enterPropertyName(TypeScriptParser.PropertyNameContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#propertyName}. - * @param ctx the parse tree - */ - void exitPropertyName(TypeScriptParser.PropertyNameContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#arguments}. - * @param ctx the parse tree - */ - void enterArguments(TypeScriptParser.ArgumentsContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#arguments}. - * @param ctx the parse tree - */ - void exitArguments(TypeScriptParser.ArgumentsContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#argumentList}. - * @param ctx the parse tree - */ - void enterArgumentList(TypeScriptParser.ArgumentListContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#argumentList}. - * @param ctx the parse tree - */ - void exitArgumentList(TypeScriptParser.ArgumentListContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#argument}. - * @param ctx the parse tree - */ - void enterArgument(TypeScriptParser.ArgumentContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#argument}. - * @param ctx the parse tree - */ - void exitArgument(TypeScriptParser.ArgumentContext ctx); - /** - * Enter a parse tree produced by {@link TypeScriptParser#expressionSequence}. - * @param ctx the parse tree - */ - void enterExpressionSequence(TypeScriptParser.ExpressionSequenceContext ctx); - /** - * Exit a parse tree produced by {@link TypeScriptParser#expressionSequence}. - * @param ctx the parse tree - */ - void exitExpressionSequence(TypeScriptParser.ExpressionSequenceContext ctx); - /** - * Enter a parse tree produced by the {@code TemplateStringExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterTemplateStringExpression(TypeScriptParser.TemplateStringExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code TemplateStringExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitTemplateStringExpression(TypeScriptParser.TemplateStringExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code GeneratorsExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterGeneratorsExpression(TypeScriptParser.GeneratorsExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code GeneratorsExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitGeneratorsExpression(TypeScriptParser.GeneratorsExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PowerExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPowerExpression(TypeScriptParser.PowerExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PowerExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPowerExpression(TypeScriptParser.PowerExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code InExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterInExpression(TypeScriptParser.InExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code InExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitInExpression(TypeScriptParser.InExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code GenericTypes} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterGenericTypes(TypeScriptParser.GenericTypesContext ctx); - /** - * Exit a parse tree produced by the {@code GenericTypes} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitGenericTypes(TypeScriptParser.GenericTypesContext ctx); - /** - * Enter a parse tree produced by the {@code OptionalChainExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterOptionalChainExpression(TypeScriptParser.OptionalChainExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code OptionalChainExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitOptionalChainExpression(TypeScriptParser.OptionalChainExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ArgumentsExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterArgumentsExpression(TypeScriptParser.ArgumentsExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ArgumentsExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitArgumentsExpression(TypeScriptParser.ArgumentsExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ThisExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterThisExpression(TypeScriptParser.ThisExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ThisExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitThisExpression(TypeScriptParser.ThisExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code TypeofExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterTypeofExpression(TypeScriptParser.TypeofExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code TypeofExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitTypeofExpression(TypeScriptParser.TypeofExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code GeneratorsFunctionExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterGeneratorsFunctionExpression(TypeScriptParser.GeneratorsFunctionExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code GeneratorsFunctionExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitGeneratorsFunctionExpression(TypeScriptParser.GeneratorsFunctionExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code EqualityExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterEqualityExpression(TypeScriptParser.EqualityExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code EqualityExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitEqualityExpression(TypeScriptParser.EqualityExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitXOrExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitXOrExpression(TypeScriptParser.BitXOrExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitXOrExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitXOrExpression(TypeScriptParser.BitXOrExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code CastAsExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterCastAsExpression(TypeScriptParser.CastAsExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code CastAsExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitCastAsExpression(TypeScriptParser.CastAsExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code MultiplicativeExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterMultiplicativeExpression(TypeScriptParser.MultiplicativeExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code MultiplicativeExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitMultiplicativeExpression(TypeScriptParser.MultiplicativeExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitShiftExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitShiftExpression(TypeScriptParser.BitShiftExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitShiftExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitShiftExpression(TypeScriptParser.BitShiftExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code AdditiveExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterAdditiveExpression(TypeScriptParser.AdditiveExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code AdditiveExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitAdditiveExpression(TypeScriptParser.AdditiveExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code RelationalExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterRelationalExpression(TypeScriptParser.RelationalExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code RelationalExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitRelationalExpression(TypeScriptParser.RelationalExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitNotExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitNotExpression(TypeScriptParser.BitNotExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitNotExpression} - * labeled alternative in {@link TypeScriptParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitNotExpression(TypeScriptParser.BitNotExpressionContext ctx); - -} \ No newline at end of file -- Gitee From ab7b1cfbe63c3383f0db9ff205ae8c9fa31dd5a1 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:41:10 +0800 Subject: [PATCH 24/45] update parse Signed-off-by: wangshi --- .../antlr/TypeScriptParserBaseListener.java | 954 ------------------ 1 file changed, 954 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserBaseListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserBaseListener.java index 05f14bf4..4204a5db 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserBaseListener.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserBaseListener.java @@ -1941,959 +1941,5 @@ public class TypeScriptParserBaseListener implements TypeScriptParserListener { *

The default implementation does nothing.

*/ @Override public void enterGetAccessor(TypeScriptParser.GetAccessorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGetAccessor(TypeScriptParser.GetAccessorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSetAccessor(TypeScriptParser.SetAccessorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSetAccessor(TypeScriptParser.SetAccessorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyName(TypeScriptParser.PropertyNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyName(TypeScriptParser.PropertyNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArguments(TypeScriptParser.ArgumentsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArguments(TypeScriptParser.ArgumentsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArgumentList(TypeScriptParser.ArgumentListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArgumentList(TypeScriptParser.ArgumentListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArgument(TypeScriptParser.ArgumentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArgument(TypeScriptParser.ArgumentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExpressionSequence(TypeScriptParser.ExpressionSequenceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExpressionSequence(TypeScriptParser.ExpressionSequenceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateStringExpression(TypeScriptParser.TemplateStringExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateStringExpression(TypeScriptParser.TemplateStringExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGeneratorsExpression(TypeScriptParser.GeneratorsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGeneratorsExpression(TypeScriptParser.GeneratorsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPowerExpression(TypeScriptParser.PowerExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPowerExpression(TypeScriptParser.PowerExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInExpression(TypeScriptParser.InExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInExpression(TypeScriptParser.InExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGenericTypes(TypeScriptParser.GenericTypesContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGenericTypes(TypeScriptParser.GenericTypesContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterOptionalChainExpression(TypeScriptParser.OptionalChainExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitOptionalChainExpression(TypeScriptParser.OptionalChainExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArgumentsExpression(TypeScriptParser.ArgumentsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArgumentsExpression(TypeScriptParser.ArgumentsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterThisExpression(TypeScriptParser.ThisExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitThisExpression(TypeScriptParser.ThisExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeofExpression(TypeScriptParser.TypeofExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeofExpression(TypeScriptParser.TypeofExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGeneratorsFunctionExpression(TypeScriptParser.GeneratorsFunctionExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGeneratorsFunctionExpression(TypeScriptParser.GeneratorsFunctionExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEqualityExpression(TypeScriptParser.EqualityExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEqualityExpression(TypeScriptParser.EqualityExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitXOrExpression(TypeScriptParser.BitXOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitXOrExpression(TypeScriptParser.BitXOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCastAsExpression(TypeScriptParser.CastAsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCastAsExpression(TypeScriptParser.CastAsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMultiplicativeExpression(TypeScriptParser.MultiplicativeExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMultiplicativeExpression(TypeScriptParser.MultiplicativeExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitShiftExpression(TypeScriptParser.BitShiftExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitShiftExpression(TypeScriptParser.BitShiftExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAdditiveExpression(TypeScriptParser.AdditiveExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAdditiveExpression(TypeScriptParser.AdditiveExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRelationalExpression(TypeScriptParser.RelationalExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRelationalExpression(TypeScriptParser.RelationalExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitNotExpression(TypeScriptParser.BitNotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitNotExpression(TypeScriptParser.BitNotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNewExpression(TypeScriptParser.NewExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNewExpression(TypeScriptParser.NewExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLiteralExpression(TypeScriptParser.LiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLiteralExpression(TypeScriptParser.LiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrayLiteralExpression(TypeScriptParser.ArrayLiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrayLiteralExpression(TypeScriptParser.ArrayLiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemberDotExpression(TypeScriptParser.MemberDotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemberDotExpression(TypeScriptParser.MemberDotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemberIndexExpression(TypeScriptParser.MemberIndexExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemberIndexExpression(TypeScriptParser.MemberIndexExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitAndExpression(TypeScriptParser.BitAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitAndExpression(TypeScriptParser.BitAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitOrExpression(TypeScriptParser.BitOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitOrExpression(TypeScriptParser.BitOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignmentOperatorExpression(TypeScriptParser.AssignmentOperatorExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignmentOperatorExpression(TypeScriptParser.AssignmentOperatorExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVoidExpression(TypeScriptParser.VoidExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVoidExpression(TypeScriptParser.VoidExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTernaryExpression(TypeScriptParser.TernaryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTernaryExpression(TypeScriptParser.TernaryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLogicalAndExpression(TypeScriptParser.LogicalAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLogicalAndExpression(TypeScriptParser.LogicalAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPreIncrementExpression(TypeScriptParser.PreIncrementExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPreIncrementExpression(TypeScriptParser.PreIncrementExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterObjectLiteralExpression(TypeScriptParser.ObjectLiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitObjectLiteralExpression(TypeScriptParser.ObjectLiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLogicalOrExpression(TypeScriptParser.LogicalOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLogicalOrExpression(TypeScriptParser.LogicalOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNonNullAssertionExpression(TypeScriptParser.NonNullAssertionExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNonNullAssertionExpression(TypeScriptParser.NonNullAssertionExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNotExpression(TypeScriptParser.NotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNotExpression(TypeScriptParser.NotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPreDecreaseExpression(TypeScriptParser.PreDecreaseExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPreDecreaseExpression(TypeScriptParser.PreDecreaseExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAwaitExpression(TypeScriptParser.AwaitExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAwaitExpression(TypeScriptParser.AwaitExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionExpression(TypeScriptParser.FunctionExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionExpression(TypeScriptParser.FunctionExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUnaryMinusExpression(TypeScriptParser.UnaryMinusExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUnaryMinusExpression(TypeScriptParser.UnaryMinusExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignmentExpression(TypeScriptParser.AssignmentExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignmentExpression(TypeScriptParser.AssignmentExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPostDecreaseExpression(TypeScriptParser.PostDecreaseExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPostDecreaseExpression(TypeScriptParser.PostDecreaseExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInstanceofExpression(TypeScriptParser.InstanceofExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInstanceofExpression(TypeScriptParser.InstanceofExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUnaryPlusExpression(TypeScriptParser.UnaryPlusExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUnaryPlusExpression(TypeScriptParser.UnaryPlusExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeleteExpression(TypeScriptParser.DeleteExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeleteExpression(TypeScriptParser.DeleteExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIteratorsExpression(TypeScriptParser.IteratorsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIteratorsExpression(TypeScriptParser.IteratorsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSuperExpression(TypeScriptParser.SuperExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSuperExpression(TypeScriptParser.SuperExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParenthesizedExpression(TypeScriptParser.ParenthesizedExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParenthesizedExpression(TypeScriptParser.ParenthesizedExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPostIncrementExpression(TypeScriptParser.PostIncrementExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPostIncrementExpression(TypeScriptParser.PostIncrementExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterYieldExpression(TypeScriptParser.YieldExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitYieldExpression(TypeScriptParser.YieldExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassExpression(TypeScriptParser.ClassExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassExpression(TypeScriptParser.ClassExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIdentifierExpression(TypeScriptParser.IdentifierExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIdentifierExpression(TypeScriptParser.IdentifierExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCoalesceExpression(TypeScriptParser.CoalesceExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCoalesceExpression(TypeScriptParser.CoalesceExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAsExpression(TypeScriptParser.AsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAsExpression(TypeScriptParser.AsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignable(TypeScriptParser.AssignableContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignable(TypeScriptParser.AssignableContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAnonymousFunction(TypeScriptParser.AnonymousFunctionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAnonymousFunction(TypeScriptParser.AnonymousFunctionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrowFunctionDeclaration(TypeScriptParser.ArrowFunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrowFunctionDeclaration(TypeScriptParser.ArrowFunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrowFunctionParameters(TypeScriptParser.ArrowFunctionParametersContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrowFunctionParameters(TypeScriptParser.ArrowFunctionParametersContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrowFunctionBody(TypeScriptParser.ArrowFunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrowFunctionBody(TypeScriptParser.ArrowFunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignmentOperator(TypeScriptParser.AssignmentOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignmentOperator(TypeScriptParser.AssignmentOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLiteral(TypeScriptParser.LiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLiteral(TypeScriptParser.LiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateStringLiteral(TypeScriptParser.TemplateStringLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateStringLiteral(TypeScriptParser.TemplateStringLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateStringAtom(TypeScriptParser.TemplateStringAtomContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateStringAtom(TypeScriptParser.TemplateStringAtomContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNumericLiteral(TypeScriptParser.NumericLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNumericLiteral(TypeScriptParser.NumericLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBigintLiteral(TypeScriptParser.BigintLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBigintLiteral(TypeScriptParser.BigintLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGetter(TypeScriptParser.GetterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGetter(TypeScriptParser.GetterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSetter(TypeScriptParser.SetterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSetter(TypeScriptParser.SetterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIdentifierName(TypeScriptParser.IdentifierNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIdentifierName(TypeScriptParser.IdentifierNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIdentifier(TypeScriptParser.IdentifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIdentifier(TypeScriptParser.IdentifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIdentifierOrKeyWord(TypeScriptParser.IdentifierOrKeyWordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIdentifierOrKeyWord(TypeScriptParser.IdentifierOrKeyWordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterReservedWord(TypeScriptParser.ReservedWordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitReservedWord(TypeScriptParser.ReservedWordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterKeyword(TypeScriptParser.KeywordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitKeyword(TypeScriptParser.KeywordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEos(TypeScriptParser.EosContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEos(TypeScriptParser.EosContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEveryRule(ParserRuleContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEveryRule(ParserRuleContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void visitTerminal(TerminalNode node) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void visitErrorNode(ErrorNode node) { } } \ No newline at end of file -- Gitee From 9ebbad75a82f6987d4ff1720820499fce5828813 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:41:21 +0800 Subject: [PATCH 25/45] update parse Signed-off-by: wangshi --- .../antlr/TypeScriptParserBaseListener.java | 1945 ----------------- 1 file changed, 1945 deletions(-) delete mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserBaseListener.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserBaseListener.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserBaseListener.java deleted file mode 100644 index 4204a5db..00000000 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParserBaseListener.java +++ /dev/null @@ -1,1945 +0,0 @@ -/* - * Copyright (c) 2025 Shenzhen Kaihong Digital. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package antlr;// Generated from TypeScriptParser.g4 by ANTLR 4.13.2 - -import antlr.TypeScriptParser; -import org.antlr.v4.runtime.ParserRuleContext; -import org.antlr.v4.runtime.tree.ErrorNode; -import org.antlr.v4.runtime.tree.TerminalNode; - -/** - * This class provides an empty implementation of {@link TypeScriptParserListener}, - * which can be extended to create a listener which only needs to handle a subset - * of the available methods. - */ -@SuppressWarnings("CheckReturnValue") -public class TypeScriptParserBaseListener implements TypeScriptParserListener { - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInitializer(TypeScriptParser.InitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInitializer(TypeScriptParser.InitializerContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBindingPattern(TypeScriptParser.BindingPatternContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBindingPattern(TypeScriptParser.BindingPatternContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeParameters(TypeScriptParser.TypeParametersContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeParameters(TypeScriptParser.TypeParametersContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeParameterList(TypeScriptParser.TypeParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeParameterList(TypeScriptParser.TypeParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeParameter(TypeScriptParser.TypeParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeParameter(TypeScriptParser.TypeParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConstraint(TypeScriptParser.ConstraintContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConstraint(TypeScriptParser.ConstraintContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeArguments(TypeScriptParser.TypeArgumentsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeArguments(TypeScriptParser.TypeArgumentsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeArgumentList(TypeScriptParser.TypeArgumentListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeArgumentList(TypeScriptParser.TypeArgumentListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeArgument(TypeScriptParser.TypeArgumentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeArgument(TypeScriptParser.TypeArgumentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterType_(TypeScriptParser.Type_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitType_(TypeScriptParser.Type_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIntersection(TypeScriptParser.IntersectionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIntersection(TypeScriptParser.IntersectionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPrimary(TypeScriptParser.PrimaryContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPrimary(TypeScriptParser.PrimaryContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUnion(TypeScriptParser.UnionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUnion(TypeScriptParser.UnionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRedefinitionOfType(TypeScriptParser.RedefinitionOfTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRedefinitionOfType(TypeScriptParser.RedefinitionOfTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPredefinedPrimType(TypeScriptParser.PredefinedPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPredefinedPrimType(TypeScriptParser.PredefinedPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrayPrimType(TypeScriptParser.ArrayPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrayPrimType(TypeScriptParser.ArrayPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParenthesizedPrimType(TypeScriptParser.ParenthesizedPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParenthesizedPrimType(TypeScriptParser.ParenthesizedPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterThisPrimType(TypeScriptParser.ThisPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitThisPrimType(TypeScriptParser.ThisPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTuplePrimType(TypeScriptParser.TuplePrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTuplePrimType(TypeScriptParser.TuplePrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterKeyOfType(TypeScriptParser.KeyOfTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitKeyOfType(TypeScriptParser.KeyOfTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterObjectPrimType(TypeScriptParser.ObjectPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitObjectPrimType(TypeScriptParser.ObjectPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterReferencePrimType(TypeScriptParser.ReferencePrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitReferencePrimType(TypeScriptParser.ReferencePrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterQueryPrimType(TypeScriptParser.QueryPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitQueryPrimType(TypeScriptParser.QueryPrimTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPredefinedType(TypeScriptParser.PredefinedTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPredefinedType(TypeScriptParser.PredefinedTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeReference(TypeScriptParser.TypeReferenceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeReference(TypeScriptParser.TypeReferenceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeGeneric(TypeScriptParser.TypeGenericContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeGeneric(TypeScriptParser.TypeGenericContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeName(TypeScriptParser.TypeNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeName(TypeScriptParser.TypeNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterObjectType(TypeScriptParser.ObjectTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitObjectType(TypeScriptParser.ObjectTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeBody(TypeScriptParser.TypeBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeBody(TypeScriptParser.TypeBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeMemberList(TypeScriptParser.TypeMemberListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeMemberList(TypeScriptParser.TypeMemberListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeMember(TypeScriptParser.TypeMemberContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeMember(TypeScriptParser.TypeMemberContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrayType(TypeScriptParser.ArrayTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrayType(TypeScriptParser.ArrayTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTupleType(TypeScriptParser.TupleTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTupleType(TypeScriptParser.TupleTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTupleElementTypes(TypeScriptParser.TupleElementTypesContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTupleElementTypes(TypeScriptParser.TupleElementTypesContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionType(TypeScriptParser.FunctionTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionType(TypeScriptParser.FunctionTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConstructorType(TypeScriptParser.ConstructorTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConstructorType(TypeScriptParser.ConstructorTypeContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeQuery(TypeScriptParser.TypeQueryContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeQuery(TypeScriptParser.TypeQueryContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeQueryExpression(TypeScriptParser.TypeQueryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeQueryExpression(TypeScriptParser.TypeQueryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertySignatur(TypeScriptParser.PropertySignaturContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertySignatur(TypeScriptParser.PropertySignaturContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeAnnotation(TypeScriptParser.TypeAnnotationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeAnnotation(TypeScriptParser.TypeAnnotationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCallSignature(TypeScriptParser.CallSignatureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCallSignature(TypeScriptParser.CallSignatureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParameterList(TypeScriptParser.ParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParameterList(TypeScriptParser.ParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRequiredParameterList(TypeScriptParser.RequiredParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRequiredParameterList(TypeScriptParser.RequiredParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParameter(TypeScriptParser.ParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParameter(TypeScriptParser.ParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterOptionalParameter(TypeScriptParser.OptionalParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitOptionalParameter(TypeScriptParser.OptionalParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRestParameter(TypeScriptParser.RestParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRestParameter(TypeScriptParser.RestParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRequiredParameter(TypeScriptParser.RequiredParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRequiredParameter(TypeScriptParser.RequiredParameterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAccessibilityModifier(TypeScriptParser.AccessibilityModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAccessibilityModifier(TypeScriptParser.AccessibilityModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIdentifierOrPattern(TypeScriptParser.IdentifierOrPatternContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIdentifierOrPattern(TypeScriptParser.IdentifierOrPatternContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConstructSignature(TypeScriptParser.ConstructSignatureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConstructSignature(TypeScriptParser.ConstructSignatureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIndexSignature(TypeScriptParser.IndexSignatureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIndexSignature(TypeScriptParser.IndexSignatureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMethodSignature(TypeScriptParser.MethodSignatureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMethodSignature(TypeScriptParser.MethodSignatureContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeAliasDeclaration(TypeScriptParser.TypeAliasDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeAliasDeclaration(TypeScriptParser.TypeAliasDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterConstructorDeclaration(TypeScriptParser.ConstructorDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitConstructorDeclaration(TypeScriptParser.ConstructorDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInterfaceDeclaration(TypeScriptParser.InterfaceDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInterfaceDeclaration(TypeScriptParser.InterfaceDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInterfaceExtendsClause(TypeScriptParser.InterfaceExtendsClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInterfaceExtendsClause(TypeScriptParser.InterfaceExtendsClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassOrInterfaceTypeList(TypeScriptParser.ClassOrInterfaceTypeListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassOrInterfaceTypeList(TypeScriptParser.ClassOrInterfaceTypeListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumDeclaration(TypeScriptParser.EnumDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumDeclaration(TypeScriptParser.EnumDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumBody(TypeScriptParser.EnumBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumBody(TypeScriptParser.EnumBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumMemberList(TypeScriptParser.EnumMemberListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumMemberList(TypeScriptParser.EnumMemberListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEnumMember(TypeScriptParser.EnumMemberContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEnumMember(TypeScriptParser.EnumMemberContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNamespaceDeclaration(TypeScriptParser.NamespaceDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNamespaceDeclaration(TypeScriptParser.NamespaceDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNamespaceName(TypeScriptParser.NamespaceNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNamespaceName(TypeScriptParser.NamespaceNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportAliasDeclaration(TypeScriptParser.ImportAliasDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportAliasDeclaration(TypeScriptParser.ImportAliasDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDecoratorList(TypeScriptParser.DecoratorListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDecoratorList(TypeScriptParser.DecoratorListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDecorator(TypeScriptParser.DecoratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDecorator(TypeScriptParser.DecoratorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDecoratorMemberExpression(TypeScriptParser.DecoratorMemberExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDecoratorMemberExpression(TypeScriptParser.DecoratorMemberExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDecoratorCallExpression(TypeScriptParser.DecoratorCallExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDecoratorCallExpression(TypeScriptParser.DecoratorCallExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterProgram(TypeScriptParser.ProgramContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitProgram(TypeScriptParser.ProgramContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSourceElement(TypeScriptParser.SourceElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSourceElement(TypeScriptParser.SourceElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterStatement(TypeScriptParser.StatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitStatement(TypeScriptParser.StatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBlock(TypeScriptParser.BlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBlock(TypeScriptParser.BlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterStatementList(TypeScriptParser.StatementListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitStatementList(TypeScriptParser.StatementListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAbstractDeclaration(TypeScriptParser.AbstractDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAbstractDeclaration(TypeScriptParser.AbstractDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportStatement(TypeScriptParser.ImportStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportStatement(TypeScriptParser.ImportStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportFromBlock(TypeScriptParser.ImportFromBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportFromBlock(TypeScriptParser.ImportFromBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportModuleItems(TypeScriptParser.ImportModuleItemsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportModuleItems(TypeScriptParser.ImportModuleItemsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportAliasName(TypeScriptParser.ImportAliasNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportAliasName(TypeScriptParser.ImportAliasNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterModuleExportName(TypeScriptParser.ModuleExportNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitModuleExportName(TypeScriptParser.ModuleExportNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportedBinding(TypeScriptParser.ImportedBindingContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportedBinding(TypeScriptParser.ImportedBindingContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportDefault(TypeScriptParser.ImportDefaultContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportDefault(TypeScriptParser.ImportDefaultContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportNamespace(TypeScriptParser.ImportNamespaceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportNamespace(TypeScriptParser.ImportNamespaceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportFrom(TypeScriptParser.ImportFromContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportFrom(TypeScriptParser.ImportFromContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAliasName(TypeScriptParser.AliasNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAliasName(TypeScriptParser.AliasNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExportDeclaration(TypeScriptParser.ExportDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExportDeclaration(TypeScriptParser.ExportDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExportDefaultDeclaration(TypeScriptParser.ExportDefaultDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExportDefaultDeclaration(TypeScriptParser.ExportDefaultDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExportFromBlock(TypeScriptParser.ExportFromBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExportFromBlock(TypeScriptParser.ExportFromBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExportModuleItems(TypeScriptParser.ExportModuleItemsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExportModuleItems(TypeScriptParser.ExportModuleItemsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExportAliasName(TypeScriptParser.ExportAliasNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExportAliasName(TypeScriptParser.ExportAliasNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDeclaration(TypeScriptParser.DeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDeclaration(TypeScriptParser.DeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVariableStatement(TypeScriptParser.VariableStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVariableStatement(TypeScriptParser.VariableStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVariableDeclarationList(TypeScriptParser.VariableDeclarationListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVariableDeclarationList(TypeScriptParser.VariableDeclarationListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVariableDeclaration(TypeScriptParser.VariableDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVariableDeclaration(TypeScriptParser.VariableDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEmptyStatement_(TypeScriptParser.EmptyStatement_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEmptyStatement_(TypeScriptParser.EmptyStatement_Context ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExpressionStatement(TypeScriptParser.ExpressionStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExpressionStatement(TypeScriptParser.ExpressionStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIfStatement(TypeScriptParser.IfStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIfStatement(TypeScriptParser.IfStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDoStatement(TypeScriptParser.DoStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDoStatement(TypeScriptParser.DoStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterWhileStatement(TypeScriptParser.WhileStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitWhileStatement(TypeScriptParser.WhileStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForStatement(TypeScriptParser.ForStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForStatement(TypeScriptParser.ForStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForVarStatement(TypeScriptParser.ForVarStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForVarStatement(TypeScriptParser.ForVarStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForInStatement(TypeScriptParser.ForInStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForInStatement(TypeScriptParser.ForInStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForVarInStatement(TypeScriptParser.ForVarInStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForVarInStatement(TypeScriptParser.ForVarInStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForOfStatement(TypeScriptParser.ForOfStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForOfStatement(TypeScriptParser.ForOfStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForVarOfStatement(TypeScriptParser.ForVarOfStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForVarOfStatement(TypeScriptParser.ForVarOfStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVarModifier(TypeScriptParser.VarModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVarModifier(TypeScriptParser.VarModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterContinueStatement(TypeScriptParser.ContinueStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitContinueStatement(TypeScriptParser.ContinueStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBreakStatement(TypeScriptParser.BreakStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBreakStatement(TypeScriptParser.BreakStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterReturnStatement(TypeScriptParser.ReturnStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitReturnStatement(TypeScriptParser.ReturnStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterYieldStatement(TypeScriptParser.YieldStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitYieldStatement(TypeScriptParser.YieldStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterWithStatement(TypeScriptParser.WithStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitWithStatement(TypeScriptParser.WithStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSwitchStatement(TypeScriptParser.SwitchStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSwitchStatement(TypeScriptParser.SwitchStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCaseBlock(TypeScriptParser.CaseBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCaseBlock(TypeScriptParser.CaseBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCaseClauses(TypeScriptParser.CaseClausesContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCaseClauses(TypeScriptParser.CaseClausesContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCaseClause(TypeScriptParser.CaseClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCaseClause(TypeScriptParser.CaseClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDefaultClause(TypeScriptParser.DefaultClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDefaultClause(TypeScriptParser.DefaultClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLabelledStatement(TypeScriptParser.LabelledStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLabelledStatement(TypeScriptParser.LabelledStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterThrowStatement(TypeScriptParser.ThrowStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitThrowStatement(TypeScriptParser.ThrowStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTryStatement(TypeScriptParser.TryStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTryStatement(TypeScriptParser.TryStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCatchProduction(TypeScriptParser.CatchProductionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCatchProduction(TypeScriptParser.CatchProductionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFinallyProduction(TypeScriptParser.FinallyProductionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFinallyProduction(TypeScriptParser.FinallyProductionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDebuggerStatement(TypeScriptParser.DebuggerStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDebuggerStatement(TypeScriptParser.DebuggerStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionDeclaration(TypeScriptParser.FunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionDeclaration(TypeScriptParser.FunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassDeclaration(TypeScriptParser.ClassDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassDeclaration(TypeScriptParser.ClassDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassHeritage(TypeScriptParser.ClassHeritageContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassHeritage(TypeScriptParser.ClassHeritageContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassTail(TypeScriptParser.ClassTailContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassTail(TypeScriptParser.ClassTailContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassExtendsClause(TypeScriptParser.ClassExtendsClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassExtendsClause(TypeScriptParser.ClassExtendsClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImplementsClause(TypeScriptParser.ImplementsClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImplementsClause(TypeScriptParser.ImplementsClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassElement(TypeScriptParser.ClassElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassElement(TypeScriptParser.ClassElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyDeclarationExpression(TypeScriptParser.PropertyDeclarationExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyDeclarationExpression(TypeScriptParser.PropertyDeclarationExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMethodDeclarationExpression(TypeScriptParser.MethodDeclarationExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMethodDeclarationExpression(TypeScriptParser.MethodDeclarationExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGetterSetterDeclarationExpression(TypeScriptParser.GetterSetterDeclarationExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGetterSetterDeclarationExpression(TypeScriptParser.GetterSetterDeclarationExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAbstractMemberDeclaration(TypeScriptParser.AbstractMemberDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAbstractMemberDeclaration(TypeScriptParser.AbstractMemberDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyMemberBase(TypeScriptParser.PropertyMemberBaseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyMemberBase(TypeScriptParser.PropertyMemberBaseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIndexMemberDeclaration(TypeScriptParser.IndexMemberDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIndexMemberDeclaration(TypeScriptParser.IndexMemberDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGeneratorMethod(TypeScriptParser.GeneratorMethodContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGeneratorMethod(TypeScriptParser.GeneratorMethodContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGeneratorFunctionDeclaration(TypeScriptParser.GeneratorFunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGeneratorFunctionDeclaration(TypeScriptParser.GeneratorFunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGeneratorBlock(TypeScriptParser.GeneratorBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGeneratorBlock(TypeScriptParser.GeneratorBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGeneratorDefinition(TypeScriptParser.GeneratorDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitGeneratorDefinition(TypeScriptParser.GeneratorDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIteratorBlock(TypeScriptParser.IteratorBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIteratorBlock(TypeScriptParser.IteratorBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIteratorDefinition(TypeScriptParser.IteratorDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIteratorDefinition(TypeScriptParser.IteratorDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassElementName(TypeScriptParser.ClassElementNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassElementName(TypeScriptParser.ClassElementNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPrivateIdentifier(TypeScriptParser.PrivateIdentifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPrivateIdentifier(TypeScriptParser.PrivateIdentifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFormalParameterList(TypeScriptParser.FormalParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFormalParameterList(TypeScriptParser.FormalParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFormalParameterArg(TypeScriptParser.FormalParameterArgContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFormalParameterArg(TypeScriptParser.FormalParameterArgContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLastFormalParameterArg(TypeScriptParser.LastFormalParameterArgContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLastFormalParameterArg(TypeScriptParser.LastFormalParameterArgContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionBody(TypeScriptParser.FunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionBody(TypeScriptParser.FunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSourceElements(TypeScriptParser.SourceElementsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSourceElements(TypeScriptParser.SourceElementsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrayLiteral(TypeScriptParser.ArrayLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrayLiteral(TypeScriptParser.ArrayLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterElementList(TypeScriptParser.ElementListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitElementList(TypeScriptParser.ElementListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrayElement(TypeScriptParser.ArrayElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrayElement(TypeScriptParser.ArrayElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterObjectLiteral(TypeScriptParser.ObjectLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitObjectLiteral(TypeScriptParser.ObjectLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyExpressionAssignment(TypeScriptParser.PropertyExpressionAssignmentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyExpressionAssignment(TypeScriptParser.PropertyExpressionAssignmentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterComputedPropertyExpressionAssignment(TypeScriptParser.ComputedPropertyExpressionAssignmentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitComputedPropertyExpressionAssignment(TypeScriptParser.ComputedPropertyExpressionAssignmentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyGetter(TypeScriptParser.PropertyGetterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyGetter(TypeScriptParser.PropertyGetterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertySetter(TypeScriptParser.PropertySetterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertySetter(TypeScriptParser.PropertySetterContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMethodProperty(TypeScriptParser.MethodPropertyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMethodProperty(TypeScriptParser.MethodPropertyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyShorthand(TypeScriptParser.PropertyShorthandContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyShorthand(TypeScriptParser.PropertyShorthandContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSpreadOperator(TypeScriptParser.SpreadOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSpreadOperator(TypeScriptParser.SpreadOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRestParameterInObject(TypeScriptParser.RestParameterInObjectContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRestParameterInObject(TypeScriptParser.RestParameterInObjectContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterGetAccessor(TypeScriptParser.GetAccessorContext ctx) { } - -} \ No newline at end of file -- Gitee From b2ef50dab219caed7b23bb01395cc966176dd64a Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:43:18 +0800 Subject: [PATCH 26/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1926 ----------------- 1 file changed, 1926 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index d45a74be..b315bcbb 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -15728,1930 +15728,4 @@ public class CPP14Parser extends CPP14ParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class TheOperatorContext extends ParserRuleContext { - public TerminalNode New() { return getToken(CPP14Parser.New, 0); } - public TerminalNode LeftBracket() { return getToken(CPP14Parser.LeftBracket, 0); } - public TerminalNode RightBracket() { return getToken(CPP14Parser.RightBracket, 0); } - public TerminalNode Delete() { return getToken(CPP14Parser.Delete, 0); } - public TerminalNode Plus() { return getToken(CPP14Parser.Plus, 0); } - public TerminalNode Minus() { return getToken(CPP14Parser.Minus, 0); } - public TerminalNode Star() { return getToken(CPP14Parser.Star, 0); } - public TerminalNode Div() { return getToken(CPP14Parser.Div, 0); } - public TerminalNode Mod() { return getToken(CPP14Parser.Mod, 0); } - public TerminalNode Caret() { return getToken(CPP14Parser.Caret, 0); } - public TerminalNode And() { return getToken(CPP14Parser.And, 0); } - public TerminalNode Or() { return getToken(CPP14Parser.Or, 0); } - public TerminalNode Tilde() { return getToken(CPP14Parser.Tilde, 0); } - public TerminalNode Not() { return getToken(CPP14Parser.Not, 0); } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public List Greater() { return getTokens(CPP14Parser.Greater); } - public TerminalNode Greater(int i) { - return getToken(CPP14Parser.Greater, i); - } - public List Less() { return getTokens(CPP14Parser.Less); } - public TerminalNode Less(int i) { - return getToken(CPP14Parser.Less, i); - } - public TerminalNode GreaterEqual() { return getToken(CPP14Parser.GreaterEqual, 0); } - public TerminalNode PlusAssign() { return getToken(CPP14Parser.PlusAssign, 0); } - public TerminalNode MinusAssign() { return getToken(CPP14Parser.MinusAssign, 0); } - public TerminalNode StarAssign() { return getToken(CPP14Parser.StarAssign, 0); } - public TerminalNode ModAssign() { return getToken(CPP14Parser.ModAssign, 0); } - public TerminalNode XorAssign() { return getToken(CPP14Parser.XorAssign, 0); } - public TerminalNode AndAssign() { return getToken(CPP14Parser.AndAssign, 0); } - public TerminalNode OrAssign() { return getToken(CPP14Parser.OrAssign, 0); } - public TerminalNode RightShiftAssign() { return getToken(CPP14Parser.RightShiftAssign, 0); } - public TerminalNode LeftShiftAssign() { return getToken(CPP14Parser.LeftShiftAssign, 0); } - public TerminalNode Equal() { return getToken(CPP14Parser.Equal, 0); } - public TerminalNode NotEqual() { return getToken(CPP14Parser.NotEqual, 0); } - public TerminalNode LessEqual() { return getToken(CPP14Parser.LessEqual, 0); } - public TerminalNode AndAnd() { return getToken(CPP14Parser.AndAnd, 0); } - public TerminalNode OrOr() { return getToken(CPP14Parser.OrOr, 0); } - public TerminalNode PlusPlus() { return getToken(CPP14Parser.PlusPlus, 0); } - public TerminalNode MinusMinus() { return getToken(CPP14Parser.MinusMinus, 0); } - public TerminalNode Comma() { return getToken(CPP14Parser.Comma, 0); } - public TerminalNode ArrowStar() { return getToken(CPP14Parser.ArrowStar, 0); } - public TerminalNode Arrow() { return getToken(CPP14Parser.Arrow, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public TheOperatorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_theOperator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTheOperator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTheOperator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTheOperator(this); - else return visitor.visitChildren(this); - } - } - - public final TheOperatorContext theOperator() throws RecognitionException { - TheOperatorContext _localctx = new TheOperatorContext(_ctx, getState()); - enterRule(_localctx, 378, RULE_theOperator); - try { - setState(2057); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,290,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(2006); - match(New); - setState(2009); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,288,_ctx) ) { - case 1: - { - setState(2007); - match(LeftBracket); - setState(2008); - match(RightBracket); - } - break; - } - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(2011); - match(Delete); - setState(2014); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,289,_ctx) ) { - case 1: - { - setState(2012); - match(LeftBracket); - setState(2013); - match(RightBracket); - } - break; - } - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(2016); - match(Plus); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(2017); - match(Minus); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(2018); - match(Star); - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(2019); - match(Div); - } - break; - case 7: - enterOuterAlt(_localctx, 7); - { - setState(2020); - match(Mod); - } - break; - case 8: - enterOuterAlt(_localctx, 8); - { - setState(2021); - match(Caret); - } - break; - case 9: - enterOuterAlt(_localctx, 9); - { - setState(2022); - match(And); - } - break; - case 10: - enterOuterAlt(_localctx, 10); - { - setState(2023); - match(Or); - } - break; - case 11: - enterOuterAlt(_localctx, 11); - { - setState(2024); - match(Tilde); - } - break; - case 12: - enterOuterAlt(_localctx, 12); - { - setState(2025); - match(Not); - } - break; - case 13: - enterOuterAlt(_localctx, 13); - { - setState(2026); - match(Assign); - } - break; - case 14: - enterOuterAlt(_localctx, 14); - { - setState(2027); - match(Greater); - } - break; - case 15: - enterOuterAlt(_localctx, 15); - { - setState(2028); - match(Less); - } - break; - case 16: - enterOuterAlt(_localctx, 16); - { - setState(2029); - match(GreaterEqual); - } - break; - case 17: - enterOuterAlt(_localctx, 17); - { - setState(2030); - match(PlusAssign); - } - break; - case 18: - enterOuterAlt(_localctx, 18); - { - setState(2031); - match(MinusAssign); - } - break; - case 19: - enterOuterAlt(_localctx, 19); - { - setState(2032); - match(StarAssign); - } - break; - case 20: - enterOuterAlt(_localctx, 20); - { - setState(2033); - match(ModAssign); - } - break; - case 21: - enterOuterAlt(_localctx, 21); - { - setState(2034); - match(XorAssign); - } - break; - case 22: - enterOuterAlt(_localctx, 22); - { - setState(2035); - match(AndAssign); - } - break; - case 23: - enterOuterAlt(_localctx, 23); - { - setState(2036); - match(OrAssign); - } - break; - case 24: - enterOuterAlt(_localctx, 24); - { - setState(2037); - match(Less); - setState(2038); - match(Less); - } - break; - case 25: - enterOuterAlt(_localctx, 25); - { - setState(2039); - match(Greater); - setState(2040); - match(Greater); - } - break; - case 26: - enterOuterAlt(_localctx, 26); - { - setState(2041); - match(RightShiftAssign); - } - break; - case 27: - enterOuterAlt(_localctx, 27); - { - setState(2042); - match(LeftShiftAssign); - } - break; - case 28: - enterOuterAlt(_localctx, 28); - { - setState(2043); - match(Equal); - } - break; - case 29: - enterOuterAlt(_localctx, 29); - { - setState(2044); - match(NotEqual); - } - break; - case 30: - enterOuterAlt(_localctx, 30); - { - setState(2045); - match(LessEqual); - } - break; - case 31: - enterOuterAlt(_localctx, 31); - { - setState(2046); - match(AndAnd); - } - break; - case 32: - enterOuterAlt(_localctx, 32); - { - setState(2047); - match(OrOr); - } - break; - case 33: - enterOuterAlt(_localctx, 33); - { - setState(2048); - match(PlusPlus); - } - break; - case 34: - enterOuterAlt(_localctx, 34); - { - setState(2049); - match(MinusMinus); - } - break; - case 35: - enterOuterAlt(_localctx, 35); - { - setState(2050); - match(Comma); - } - break; - case 36: - enterOuterAlt(_localctx, 36); - { - setState(2051); - match(ArrowStar); - } - break; - case 37: - enterOuterAlt(_localctx, 37); - { - setState(2052); - match(Arrow); - } - break; - case 38: - enterOuterAlt(_localctx, 38); - { - setState(2053); - match(LeftParen); - setState(2054); - match(RightParen); - } - break; - case 39: - enterOuterAlt(_localctx, 39); - { - setState(2055); - match(LeftBracket); - setState(2056); - match(RightBracket); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LiteralContext extends ParserRuleContext { - public TerminalNode IntegerLiteral() { return getToken(CPP14Parser.IntegerLiteral, 0); } - public TerminalNode CharacterLiteral() { return getToken(CPP14Parser.CharacterLiteral, 0); } - public TerminalNode FloatingLiteral() { return getToken(CPP14Parser.FloatingLiteral, 0); } - public TerminalNode StringLiteral() { return getToken(CPP14Parser.StringLiteral, 0); } - public TerminalNode BooleanLiteral() { return getToken(CPP14Parser.BooleanLiteral, 0); } - public TerminalNode PointerLiteral() { return getToken(CPP14Parser.PointerLiteral, 0); } - public TerminalNode UserDefinedLiteral() { return getToken(CPP14Parser.UserDefinedLiteral, 0); } - public LiteralContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_literal; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLiteral(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLiteral(this); - else return visitor.visitChildren(this); - } - } - - public final LiteralContext literal() throws RecognitionException { - LiteralContext _localctx = new LiteralContext(_ctx, getState()); - enterRule(_localctx, 380, RULE_literal); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(2059); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 254L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) { - switch (ruleIndex) { - case 5: - return nestedNameSpecifier_sempred((NestedNameSpecifierContext)_localctx, predIndex); - case 15: - return postfixExpression_sempred((PostfixExpressionContext)_localctx, predIndex); - case 25: - return noPointerNewDeclarator_sempred((NoPointerNewDeclaratorContext)_localctx, predIndex); - case 115: - return noPointerDeclarator_sempred((NoPointerDeclaratorContext)_localctx, predIndex); - case 148: - return memberDeclarator_sempred((MemberDeclaratorContext)_localctx, predIndex); - } - return true; - } - private boolean nestedNameSpecifier_sempred(NestedNameSpecifierContext _localctx, int predIndex) { - switch (predIndex) { - case 0: - return precpred(_ctx, 1); - } - return true; - } - private boolean postfixExpression_sempred(PostfixExpressionContext _localctx, int predIndex) { - switch (predIndex) { - case 1: - return precpred(_ctx, 7); - case 2: - return precpred(_ctx, 6); - case 3: - return precpred(_ctx, 4); - case 4: - return precpred(_ctx, 3); - } - return true; - } - private boolean noPointerNewDeclarator_sempred(NoPointerNewDeclaratorContext _localctx, int predIndex) { - switch (predIndex) { - case 5: - return precpred(_ctx, 1); - } - return true; - } - private boolean noPointerDeclarator_sempred(NoPointerDeclaratorContext _localctx, int predIndex) { - switch (predIndex) { - case 6: - return precpred(_ctx, 2); - } - return true; - } - private boolean memberDeclarator_sempred(MemberDeclaratorContext _localctx, int predIndex) { - switch (predIndex) { - case 7: - return this.IsPureSpecifierAllowed() ; - case 8: - return this.IsPureSpecifierAllowed() ; - } - return true; - } - - public static final String _serializedATN = - "\u0004\u0001\u0091\u080e\u0002\u0000\u0007\u0000\u0002\u0001\u0007\u0001"+ - "\u0002\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002\u0004\u0007\u0004"+ - "\u0002\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002\u0007\u0007\u0007"+ - "\u0002\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002\u000b\u0007\u000b"+ - "\u0002\f\u0007\f\u0002\r\u0007\r\u0002\u000e\u0007\u000e\u0002\u000f\u0007"+ - "\u000f\u0002\u0010\u0007\u0010\u0002\u0011\u0007\u0011\u0002\u0012\u0007"+ - "\u0012\u0002\u0013\u0007\u0013\u0002\u0014\u0007\u0014\u0002\u0015\u0007"+ - "\u0015\u0002\u0016\u0007\u0016\u0002\u0017\u0007\u0017\u0002\u0018\u0007"+ - "\u0018\u0002\u0019\u0007\u0019\u0002\u001a\u0007\u001a\u0002\u001b\u0007"+ - "\u001b\u0002\u001c\u0007\u001c\u0002\u001d\u0007\u001d\u0002\u001e\u0007"+ - "\u001e\u0002\u001f\u0007\u001f\u0002 \u0007 \u0002!\u0007!\u0002\"\u0007"+ - "\"\u0002#\u0007#\u0002$\u0007$\u0002%\u0007%\u0002&\u0007&\u0002\'\u0007"+ - "\'\u0002(\u0007(\u0002)\u0007)\u0002*\u0007*\u0002+\u0007+\u0002,\u0007"+ - ",\u0002-\u0007-\u0002.\u0007.\u0002/\u0007/\u00020\u00070\u00021\u0007"+ - "1\u00022\u00072\u00023\u00073\u00024\u00074\u00025\u00075\u00026\u0007"+ - "6\u00027\u00077\u00028\u00078\u00029\u00079\u0002:\u0007:\u0002;\u0007"+ - ";\u0002<\u0007<\u0002=\u0007=\u0002>\u0007>\u0002?\u0007?\u0002@\u0007"+ - "@\u0002A\u0007A\u0002B\u0007B\u0002C\u0007C\u0002D\u0007D\u0002E\u0007"+ - "E\u0002F\u0007F\u0002G\u0007G\u0002H\u0007H\u0002I\u0007I\u0002J\u0007"+ - "J\u0002K\u0007K\u0002L\u0007L\u0002M\u0007M\u0002N\u0007N\u0002O\u0007"+ - "O\u0002P\u0007P\u0002Q\u0007Q\u0002R\u0007R\u0002S\u0007S\u0002T\u0007"+ - "T\u0002U\u0007U\u0002V\u0007V\u0002W\u0007W\u0002X\u0007X\u0002Y\u0007"+ - "Y\u0002Z\u0007Z\u0002[\u0007[\u0002\\\u0007\\\u0002]\u0007]\u0002^\u0007"+ - "^\u0002_\u0007_\u0002`\u0007`\u0002a\u0007a\u0002b\u0007b\u0002c\u0007"+ - "c\u0002d\u0007d\u0002e\u0007e\u0002f\u0007f\u0002g\u0007g\u0002h\u0007"+ - "h\u0002i\u0007i\u0002j\u0007j\u0002k\u0007k\u0002l\u0007l\u0002m\u0007"+ - "m\u0002n\u0007n\u0002o\u0007o\u0002p\u0007p\u0002q\u0007q\u0002r\u0007"+ - "r\u0002s\u0007s\u0002t\u0007t\u0002u\u0007u\u0002v\u0007v\u0002w\u0007"+ - "w\u0002x\u0007x\u0002y\u0007y\u0002z\u0007z\u0002{\u0007{\u0002|\u0007"+ - "|\u0002}\u0007}\u0002~\u0007~\u0002\u007f\u0007\u007f\u0002\u0080\u0007"+ - "\u0080\u0002\u0081\u0007\u0081\u0002\u0082\u0007\u0082\u0002\u0083\u0007"+ - "\u0083\u0002\u0084\u0007\u0084\u0002\u0085\u0007\u0085\u0002\u0086\u0007"+ - "\u0086\u0002\u0087\u0007\u0087\u0002\u0088\u0007\u0088\u0002\u0089\u0007"+ - "\u0089\u0002\u008a\u0007\u008a\u0002\u008b\u0007\u008b\u0002\u008c\u0007"+ - "\u008c\u0002\u008d\u0007\u008d\u0002\u008e\u0007\u008e\u0002\u008f\u0007"+ - "\u008f\u0002\u0090\u0007\u0090\u0002\u0091\u0007\u0091\u0002\u0092\u0007"+ - "\u0092\u0002\u0093\u0007\u0093\u0002\u0094\u0007\u0094\u0002\u0095\u0007"+ - "\u0095\u0002\u0096\u0007\u0096\u0002\u0097\u0007\u0097\u0002\u0098\u0007"+ - "\u0098\u0002\u0099\u0007\u0099\u0002\u009a\u0007\u009a\u0002\u009b\u0007"+ - "\u009b\u0002\u009c\u0007\u009c\u0002\u009d\u0007\u009d\u0002\u009e\u0007"+ - "\u009e\u0002\u009f\u0007\u009f\u0002\u00a0\u0007\u00a0\u0002\u00a1\u0007"+ - "\u00a1\u0002\u00a2\u0007\u00a2\u0002\u00a3\u0007\u00a3\u0002\u00a4\u0007"+ - "\u00a4\u0002\u00a5\u0007\u00a5\u0002\u00a6\u0007\u00a6\u0002\u00a7\u0007"+ - "\u00a7\u0002\u00a8\u0007\u00a8\u0002\u00a9\u0007\u00a9\u0002\u00aa\u0007"+ - "\u00aa\u0002\u00ab\u0007\u00ab\u0002\u00ac\u0007\u00ac\u0002\u00ad\u0007"+ - "\u00ad\u0002\u00ae\u0007\u00ae\u0002\u00af\u0007\u00af\u0002\u00b0\u0007"+ - "\u00b0\u0002\u00b1\u0007\u00b1\u0002\u00b2\u0007\u00b2\u0002\u00b3\u0007"+ - "\u00b3\u0002\u00b4\u0007\u00b4\u0002\u00b5\u0007\u00b5\u0002\u00b6\u0007"+ - "\u00b6\u0002\u00b7\u0007\u00b7\u0002\u00b8\u0007\u00b8\u0002\u00b9\u0007"+ - "\u00b9\u0002\u00ba\u0007\u00ba\u0002\u00bb\u0007\u00bb\u0002\u00bc\u0007"+ - "\u00bc\u0002\u00bd\u0007\u00bd\u0002\u00be\u0007\u00be\u0001\u0000\u0003"+ - "\u0000\u0180\b\u0000\u0001\u0000\u0001\u0000\u0001\u0001\u0004\u0001\u0185"+ - "\b\u0001\u000b\u0001\f\u0001\u0186\u0001\u0001\u0001\u0001\u0001\u0001"+ - "\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0003\u0001\u0190\b\u0001"+ - "\u0001\u0002\u0001\u0002\u0003\u0002\u0194\b\u0002\u0001\u0003\u0001\u0003"+ - "\u0001\u0003\u0001\u0003\u0001\u0003\u0001\u0003\u0001\u0003\u0003\u0003"+ - "\u019d\b\u0003\u0001\u0003\u0003\u0003\u01a0\b\u0003\u0001\u0004\u0001"+ - "\u0004\u0003\u0004\u01a4\b\u0004\u0001\u0004\u0001\u0004\u0001\u0005\u0001"+ - "\u0005\u0001\u0005\u0001\u0005\u0003\u0005\u01ac\b\u0005\u0001\u0005\u0001"+ - "\u0005\u0001\u0005\u0001\u0005\u0001\u0005\u0003\u0005\u01b3\b\u0005\u0001"+ - "\u0005\u0003\u0005\u01b6\b\u0005\u0001\u0005\u0005\u0005\u01b9\b\u0005"+ - "\n\u0005\f\u0005\u01bc\t\u0005\u0001\u0006\u0001\u0006\u0003\u0006\u01c0"+ - "\b\u0006\u0001\u0006\u0001\u0006\u0001\u0007\u0001\u0007\u0003\u0007\u01c6"+ - "\b\u0007\u0001\u0007\u0001\u0007\u0001\b\u0001\b\u0001\b\u0001\b\u0003"+ - "\b\u01ce\b\b\u0003\b\u01d0\b\b\u0001\t\u0001\t\u0001\n\u0001\n\u0001\n"+ - "\u0005\n\u01d7\b\n\n\n\f\n\u01da\t\n\u0001\n\u0003\n\u01dd\b\n\u0001\u000b"+ - "\u0001\u000b\u0003\u000b\u01e1\b\u000b\u0001\f\u0003\f\u01e4\b\f\u0001"+ - "\f\u0001\f\u0003\f\u01e8\b\f\u0001\r\u0003\r\u01eb\b\r\u0001\r\u0001\r"+ - "\u0001\r\u0001\u000e\u0001\u000e\u0003\u000e\u01f2\b\u000e\u0001\u000e"+ - "\u0001\u000e\u0003\u000e\u01f6\b\u000e\u0001\u000e\u0003\u000e\u01f9\b"+ - "\u000e\u0001\u000e\u0003\u000e\u01fc\b\u000e\u0001\u000e\u0003\u000e\u01ff"+ - "\b\u000e\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u000f\u0003\u000f\u0205"+ - "\b\u000f\u0001\u000f\u0001\u000f\u0003\u000f\u0209\b\u000f\u0001\u000f"+ - "\u0001\u000f\u0003\u000f\u020d\b\u000f\u0001\u000f\u0001\u000f\u0001\u000f"+ - "\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u000f"+ - "\u0001\u000f\u0001\u000f\u0001\u000f\u0003\u000f\u021b\b\u000f\u0001\u000f"+ - "\u0001\u000f\u0003\u000f\u021f\b\u000f\u0001\u000f\u0001\u000f\u0001\u000f"+ - "\u0001\u000f\u0003\u000f\u0225\b\u000f\u0001\u000f\u0001\u000f\u0001\u000f"+ - "\u0001\u000f\u0001\u000f\u0003\u000f\u022c\b\u000f\u0001\u000f\u0001\u000f"+ - "\u0001\u000f\u0001\u000f\u0003\u000f\u0232\b\u000f\u0001\u000f\u0001\u000f"+ - "\u0003\u000f\u0236\b\u000f\u0001\u000f\u0001\u000f\u0005\u000f\u023a\b"+ - "\u000f\n\u000f\f\u000f\u023d\t\u000f\u0001\u0010\u0001\u0010\u0001\u0011"+ - "\u0001\u0011\u0001\u0012\u0003\u0012\u0244\b\u0012\u0001\u0012\u0001\u0012"+ - "\u0001\u0012\u0003\u0012\u0249\b\u0012\u0001\u0012\u0001\u0012\u0001\u0012"+ - "\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012"+ - "\u0001\u0012\u0001\u0012\u0003\u0012\u0256\b\u0012\u0001\u0013\u0001\u0013"+ - "\u0001\u0013\u0001\u0013\u0001\u0013\u0003\u0013\u025d\b\u0013\u0001\u0013"+ - "\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013"+ - "\u0001\u0013\u0001\u0013\u0001\u0013\u0003\u0013\u0269\b\u0013\u0001\u0013"+ - "\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013"+ - "\u0001\u0013\u0003\u0013\u0273\b\u0013\u0001\u0014\u0001\u0014\u0001\u0015"+ - "\u0003\u0015\u0278\b\u0015\u0001\u0015\u0001\u0015\u0003\u0015\u027c\b"+ - "\u0015\u0001\u0015\u0001\u0015\u0001\u0015\u0001\u0015\u0001\u0015\u0003"+ - "\u0015\u0283\b\u0015\u0001\u0015\u0003\u0015\u0286\b\u0015\u0001\u0016"+ - "\u0001\u0016\u0001\u0016\u0001\u0016\u0001\u0017\u0001\u0017\u0003\u0017"+ - "\u028e\b\u0017\u0001\u0018\u0001\u0018\u0003\u0018\u0292\b\u0018\u0001"+ - "\u0018\u0003\u0018\u0295\b\u0018\u0001\u0019\u0001\u0019\u0001\u0019\u0001"+ - "\u0019\u0001\u0019\u0003\u0019\u029c\b\u0019\u0001\u0019\u0001\u0019\u0001"+ - "\u0019\u0001\u0019\u0001\u0019\u0003\u0019\u02a3\b\u0019\u0005\u0019\u02a5"+ - "\b\u0019\n\u0019\f\u0019\u02a8\t\u0019\u0001\u001a\u0001\u001a\u0003\u001a"+ - "\u02ac\b\u001a\u0001\u001a\u0001\u001a\u0003\u001a\u02b0\b\u001a\u0001"+ - "\u001b\u0003\u001b\u02b3\b\u001b\u0001\u001b\u0001\u001b\u0001\u001b\u0003"+ - "\u001b\u02b8\b\u001b\u0001\u001b\u0001\u001b\u0001\u001c\u0001\u001c\u0001"+ - "\u001c\u0001\u001c\u0001\u001c\u0001\u001d\u0001\u001d\u0001\u001d\u0001"+ - "\u001d\u0001\u001d\u0001\u001d\u0003\u001d\u02c7\b\u001d\u0001\u001e\u0001"+ - "\u001e\u0001\u001e\u0005\u001e\u02cc\b\u001e\n\u001e\f\u001e\u02cf\t\u001e"+ - "\u0001\u001f\u0001\u001f\u0001\u001f\u0005\u001f\u02d4\b\u001f\n\u001f"+ - "\f\u001f\u02d7\t\u001f\u0001 \u0001 \u0001 \u0005 \u02dc\b \n \f \u02df"+ - "\t \u0001!\u0001!\u0001!\u0001!\u0005!\u02e5\b!\n!\f!\u02e8\t!\u0001\""+ - "\u0001\"\u0001\"\u0001\"\u0003\"\u02ee\b\"\u0001#\u0001#\u0001#\u0005"+ - "#\u02f3\b#\n#\f#\u02f6\t#\u0001$\u0001$\u0001$\u0005$\u02fb\b$\n$\f$\u02fe"+ - "\t$\u0001%\u0001%\u0001%\u0005%\u0303\b%\n%\f%\u0306\t%\u0001&\u0001&"+ - "\u0001&\u0005&\u030b\b&\n&\f&\u030e\t&\u0001\'\u0001\'\u0001\'\u0005\'"+ - "\u0313\b\'\n\'\f\'\u0316\t\'\u0001(\u0001(\u0001(\u0005(\u031b\b(\n(\f"+ - "(\u031e\t(\u0001)\u0001)\u0001)\u0005)\u0323\b)\n)\f)\u0326\t)\u0001*"+ - "\u0001*\u0001*\u0001*\u0001*\u0001*\u0003*\u032e\b*\u0001+\u0001+\u0001"+ - "+\u0001+\u0001+\u0001+\u0003+\u0336\b+\u0001,\u0001,\u0001-\u0001-\u0001"+ - "-\u0005-\u033d\b-\n-\f-\u0340\t-\u0001.\u0001.\u0001/\u0001/\u0001/\u0003"+ - "/\u0347\b/\u0001/\u0001/\u0001/\u0001/\u0001/\u0001/\u0003/\u034f\b/\u0003"+ - "/\u0351\b/\u00010\u00030\u0354\b0\u00010\u00010\u00010\u00010\u00030\u035a"+ - "\b0\u00010\u00010\u00010\u00011\u00031\u0360\b1\u00011\u00011\u00012\u0001"+ - "2\u00032\u0366\b2\u00012\u00012\u00013\u00043\u036b\b3\u000b3\f3\u036c"+ - "\u00014\u00014\u00014\u00014\u00014\u00014\u00014\u00034\u0376\b4\u0001"+ - "4\u00014\u00014\u00014\u00014\u00014\u00034\u037e\b4\u00015\u00015\u0003"+ - "5\u0382\b5\u00015\u00015\u00015\u00015\u00015\u00035\u0389\b5\u00035\u038b"+ - "\b5\u00016\u00016\u00016\u00016\u00016\u00016\u00016\u00016\u00016\u0001"+ - "6\u00016\u00016\u00016\u00016\u00016\u00016\u00016\u00016\u00036\u039f"+ - "\b6\u00016\u00016\u00036\u03a3\b6\u00016\u00016\u00016\u00016\u00036\u03a9"+ - "\b6\u00016\u00016\u00016\u00036\u03ae\b6\u00017\u00017\u00037\u03b2\b"+ - "7\u00018\u00038\u03b5\b8\u00018\u00018\u00018\u00019\u00019\u00039\u03bc"+ - "\b9\u0001:\u0001:\u0001:\u0001:\u0001:\u0003:\u03c3\b:\u0001:\u0001:\u0003"+ - ":\u03c7\b:\u0001:\u0001:\u0001;\u0001;\u0001<\u0004<\u03ce\b<\u000b<\f"+ - "<\u03cf\u0001=\u0001=\u0001=\u0001=\u0001=\u0001=\u0001=\u0001=\u0001"+ - "=\u0003=\u03db\b=\u0001>\u0001>\u0001>\u0001>\u0001>\u0001>\u0001>\u0001"+ - ">\u0003>\u03e5\b>\u0001?\u0001?\u0001?\u0003?\u03ea\b?\u0001?\u0001?\u0001"+ - "?\u0001?\u0001@\u0003@\u03f1\b@\u0001@\u0003@\u03f4\b@\u0001@\u0001@\u0001"+ - "@\u0003@\u03f9\b@\u0001@\u0001@\u0001@\u0003@\u03fe\b@\u0001A\u0001A\u0001"+ - "A\u0001A\u0001A\u0001A\u0001A\u0001A\u0001B\u0001B\u0001C\u0001C\u0001"+ - "C\u0001D\u0001D\u0001D\u0001D\u0001D\u0001D\u0003D\u0413\bD\u0001E\u0004"+ - "E\u0416\bE\u000bE\fE\u0417\u0001E\u0003E\u041b\bE\u0001F\u0001F\u0001"+ - "G\u0001G\u0001H\u0001H\u0001I\u0001I\u0001I\u0003I\u0426\bI\u0001J\u0001"+ - "J\u0001J\u0001J\u0003J\u042c\bJ\u0001K\u0004K\u042f\bK\u000bK\fK\u0430"+ - "\u0001K\u0003K\u0434\bK\u0001L\u0004L\u0437\bL\u000bL\fL\u0438\u0001L"+ - "\u0003L\u043c\bL\u0001M\u0001M\u0001N\u0001N\u0001O\u0003O\u0443\bO\u0001"+ - "O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001"+ - "O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001O\u0001"+ - "O\u0003O\u045a\bO\u0001P\u0001P\u0001P\u0001P\u0003P\u0460\bP\u0001Q\u0001"+ - "Q\u0001Q\u0001Q\u0003Q\u0466\bQ\u0001Q\u0001Q\u0001R\u0001R\u0003R\u046c"+ - "\bR\u0001R\u0003R\u046f\bR\u0001R\u0001R\u0001R\u0001R\u0003R\u0475\b"+ - "R\u0001R\u0001R\u0003R\u0479\bR\u0001R\u0001R\u0003R\u047d\bR\u0001R\u0003"+ - "R\u0480\bR\u0001S\u0001S\u0001T\u0001T\u0001T\u0001T\u0003T\u0488\bT\u0003"+ - "T\u048a\bT\u0001T\u0001T\u0001U\u0001U\u0003U\u0490\bU\u0001U\u0003U\u0493"+ - "\bU\u0001U\u0003U\u0496\bU\u0001U\u0003U\u0499\bU\u0001V\u0001V\u0003"+ - "V\u049d\bV\u0001V\u0001V\u0003V\u04a1\bV\u0001V\u0001V\u0001W\u0001W\u0003"+ - "W\u04a7\bW\u0001X\u0001X\u0001X\u0001Y\u0001Y\u0001Y\u0005Y\u04af\bY\n"+ - "Y\fY\u04b2\tY\u0001Z\u0001Z\u0001Z\u0003Z\u04b7\bZ\u0001[\u0001[\u0001"+ - "\\\u0001\\\u0003\\\u04bd\b\\\u0001]\u0001]\u0001^\u0003^\u04c2\b^\u0001"+ - "^\u0001^\u0001^\u0003^\u04c7\b^\u0001^\u0001^\u0003^\u04cb\b^\u0001^\u0001"+ - "^\u0001_\u0001_\u0001`\u0001`\u0001`\u0001`\u0001`\u0001`\u0001a\u0003"+ - "a\u04d8\ba\u0001a\u0001a\u0001b\u0001b\u0003b\u04de\bb\u0001b\u0001b\u0003"+ - "b\u04e2\bb\u0001b\u0001b\u0001b\u0001c\u0003c\u04e8\bc\u0001c\u0001c\u0001"+ - "c\u0003c\u04ed\bc\u0001c\u0001c\u0001c\u0001d\u0001d\u0001d\u0001d\u0001"+ - "d\u0001d\u0001e\u0001e\u0001e\u0001e\u0003e\u04fc\be\u0001e\u0001e\u0003"+ - "e\u0500\be\u0001f\u0004f\u0503\bf\u000bf\ff\u0504\u0001g\u0001g\u0001"+ - "g\u0003g\u050a\bg\u0001g\u0001g\u0001g\u0003g\u050f\bg\u0001h\u0001h\u0001"+ - "h\u0001h\u0003h\u0515\bh\u0001h\u0003h\u0518\bh\u0001h\u0001h\u0001i\u0001"+ - "i\u0001i\u0005i\u051f\bi\ni\fi\u0522\ti\u0001i\u0003i\u0525\bi\u0001j"+ - "\u0001j\u0001j\u0003j\u052a\bj\u0001j\u0001j\u0003j\u052e\bj\u0001k\u0001"+ - "k\u0001l\u0001l\u0003l\u0534\bl\u0001l\u0001l\u0001m\u0004m\u0539\bm\u000b"+ - "m\fm\u053a\u0001n\u0001n\u0001n\u0001n\u0001n\u0001n\u0001n\u0001n\u0001"+ - "n\u0001n\u0001n\u0001n\u0001n\u0004n\u054a\bn\u000bn\fn\u054b\u0003n\u054e"+ - "\bn\u0001o\u0001o\u0001o\u0005o\u0553\bo\no\fo\u0556\to\u0001p\u0001p"+ - "\u0003p\u055a\bp\u0001q\u0001q\u0001q\u0001q\u0001q\u0003q\u0561\bq\u0001"+ - "r\u0001r\u0003r\u0565\br\u0005r\u0567\br\nr\fr\u056a\tr\u0001r\u0001r"+ - "\u0001s\u0001s\u0001s\u0003s\u0571\bs\u0001s\u0001s\u0001s\u0001s\u0003"+ - "s\u0577\bs\u0001s\u0001s\u0001s\u0001s\u0003s\u057d\bs\u0001s\u0001s\u0003"+ - "s\u0581\bs\u0003s\u0583\bs\u0005s\u0585\bs\ns\fs\u0588\ts\u0001t\u0001"+ - "t\u0003t\u058c\bt\u0001t\u0001t\u0003t\u0590\bt\u0001t\u0003t\u0593\b"+ - "t\u0001t\u0003t\u0596\bt\u0001t\u0003t\u0599\bt\u0001u\u0001u\u0001u\u0003"+ - "u\u059e\bu\u0001v\u0001v\u0003v\u05a2\bv\u0001v\u0003v\u05a5\bv\u0001"+ - "v\u0001v\u0003v\u05a9\bv\u0001v\u0003v\u05ac\bv\u0003v\u05ae\bv\u0001"+ - "w\u0004w\u05b1\bw\u000bw\fw\u05b2\u0001x\u0001x\u0001y\u0001y\u0001z\u0003"+ - "z\u05ba\bz\u0001z\u0001z\u0001{\u0001{\u0003{\u05c0\b{\u0001|\u0001|\u0003"+ - "|\u05c4\b|\u0001|\u0001|\u0001|\u0001|\u0003|\u05ca\b|\u0001}\u0005}\u05cd"+ - "\b}\n}\f}\u05d0\t}\u0001}\u0001}\u0003}\u05d4\b}\u0001~\u0001~\u0001~"+ - "\u0001~\u0001~\u0003~\u05db\b~\u0001~\u0001~\u0001~\u0003~\u05e0\b~\u0001"+ - "~\u0001~\u0003~\u05e4\b~\u0005~\u05e6\b~\n~\f~\u05e9\t~\u0001\u007f\u0005"+ - "\u007f\u05ec\b\u007f\n\u007f\f\u007f\u05ef\t\u007f\u0001\u007f\u0001\u007f"+ - "\u0001\u0080\u0001\u0080\u0001\u0080\u0001\u0080\u0003\u0080\u05f7\b\u0080"+ - "\u0001\u0080\u0001\u0080\u0003\u0080\u05fb\b\u0080\u0005\u0080\u05fd\b"+ - "\u0080\n\u0080\f\u0080\u0600\t\u0080\u0001\u0081\u0001\u0081\u0003\u0081"+ - "\u0604\b\u0081\u0001\u0081\u0003\u0081\u0607\b\u0081\u0001\u0082\u0001"+ - "\u0082\u0001\u0082\u0005\u0082\u060c\b\u0082\n\u0082\f\u0082\u060f\t\u0082"+ - "\u0001\u0083\u0003\u0083\u0612\b\u0083\u0001\u0083\u0001\u0083\u0001\u0083"+ - "\u0003\u0083\u0617\b\u0083\u0003\u0083\u0619\b\u0083\u0001\u0083\u0001"+ - "\u0083\u0003\u0083\u061d\b\u0083\u0001\u0084\u0003\u0084\u0620\b\u0084"+ - "\u0001\u0084\u0003\u0084\u0623\b\u0084\u0001\u0084\u0001\u0084\u0003\u0084"+ - "\u0627\b\u0084\u0001\u0084\u0001\u0084\u0001\u0085\u0003\u0085\u062c\b"+ - "\u0085\u0001\u0085\u0001\u0085\u0001\u0085\u0001\u0085\u0001\u0085\u0003"+ - "\u0085\u0633\b\u0085\u0001\u0086\u0001\u0086\u0001\u0086\u0001\u0086\u0001"+ - "\u0086\u0003\u0086\u063a\b\u0086\u0001\u0087\u0001\u0087\u0001\u0087\u0003"+ - "\u0087\u063f\b\u0087\u0001\u0088\u0001\u0088\u0003\u0088\u0643\b\u0088"+ - "\u0001\u0089\u0001\u0089\u0003\u0089\u0647\b\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0003\u0089\u064c\b\u0089\u0005\u0089\u064e\b\u0089\n\u0089"+ - "\f\u0089\u0651\t\u0089\u0001\u008a\u0001\u008a\u0001\u008a\u0003\u008a"+ - "\u0656\b\u008a\u0003\u008a\u0658\b\u008a\u0001\u008a\u0001\u008a\u0001"+ - "\u008b\u0001\u008b\u0003\u008b\u065e\b\u008b\u0001\u008c\u0001\u008c\u0001"+ - "\u008c\u0003\u008c\u0663\b\u008c\u0001\u008c\u0001\u008c\u0001\u008d\u0001"+ - "\u008d\u0003\u008d\u0669\b\u008d\u0001\u008d\u0001\u008d\u0003\u008d\u066d"+ - "\b\u008d\u0003\u008d\u066f\b\u008d\u0001\u008d\u0003\u008d\u0672\b\u008d"+ - "\u0001\u008d\u0001\u008d\u0003\u008d\u0676\b\u008d\u0001\u008d\u0001\u008d"+ - "\u0003\u008d\u067a\b\u008d\u0003\u008d\u067c\b\u008d\u0003\u008d\u067e"+ - "\b\u008d\u0001\u008e\u0003\u008e\u0681\b\u008e\u0001\u008e\u0001\u008e"+ - "\u0001\u008f\u0001\u008f\u0001\u0090\u0001\u0090\u0001\u0091\u0001\u0091"+ - "\u0001\u0091\u0001\u0091\u0004\u0091\u068d\b\u0091\u000b\u0091\f\u0091"+ - "\u068e\u0001\u0092\u0003\u0092\u0692\b\u0092\u0001\u0092\u0003\u0092\u0695"+ - "\b\u0092\u0001\u0092\u0003\u0092\u0698\b\u0092\u0001\u0092\u0001\u0092"+ - "\u0001\u0092\u0001\u0092\u0001\u0092\u0001\u0092\u0001\u0092\u0003\u0092"+ - "\u06a1\b\u0092\u0001\u0093\u0001\u0093\u0001\u0093\u0005\u0093\u06a6\b"+ - "\u0093\n\u0093\f\u0093\u06a9\t\u0093\u0001\u0094\u0001\u0094\u0001\u0094"+ - "\u0001\u0094\u0001\u0094\u0001\u0094\u0001\u0094\u0001\u0094\u0001\u0094"+ - "\u0003\u0094\u06b4\b\u0094\u0001\u0094\u0001\u0094\u0003\u0094\u06b8\b"+ - "\u0094\u0001\u0094\u0003\u0094\u06bb\b\u0094\u0001\u0094\u0001\u0094\u0003"+ - "\u0094\u06bf\b\u0094\u0001\u0095\u0004\u0095\u06c2\b\u0095\u000b\u0095"+ - "\f\u0095\u06c3\u0001\u0096\u0001\u0096\u0001\u0097\u0001\u0097\u0001\u0097"+ - "\u0001\u0098\u0001\u0098\u0001\u0098\u0001\u0099\u0001\u0099\u0003\u0099"+ - "\u06d0\b\u0099\u0001\u0099\u0001\u0099\u0001\u0099\u0003\u0099\u06d5\b"+ - "\u0099\u0005\u0099\u06d7\b\u0099\n\u0099\f\u0099\u06da\t\u0099\u0001\u009a"+ - "\u0003\u009a\u06dd\b\u009a\u0001\u009a\u0001\u009a\u0001\u009a\u0003\u009a"+ - "\u06e2\b\u009a\u0001\u009a\u0001\u009a\u0001\u009a\u0003\u009a\u06e7\b"+ - "\u009a\u0001\u009a\u0001\u009a\u0003\u009a\u06eb\b\u009a\u0001\u009b\u0003"+ - "\u009b\u06ee\b\u009b\u0001\u009b\u0001\u009b\u0003\u009b\u06f2\b\u009b"+ - "\u0001\u009c\u0001\u009c\u0001\u009d\u0001\u009d\u0001\u009e\u0001\u009e"+ - "\u0001\u009e\u0001\u009f\u0001\u009f\u0003\u009f\u06fd\b\u009f\u0001\u00a0"+ - "\u0001\u00a0\u0003\u00a0\u0701\b\u00a0\u0001\u00a1\u0001\u00a1\u0001\u00a1"+ - "\u0001\u00a2\u0001\u00a2\u0003\u00a2\u0708\b\u00a2\u0001\u00a2\u0001\u00a2"+ - "\u0001\u00a2\u0003\u00a2\u070d\b\u00a2\u0005\u00a2\u070f\b\u00a2\n\u00a2"+ - "\f\u00a2\u0712\t\u00a2\u0001\u00a3\u0001\u00a3\u0001\u00a3\u0003\u00a3"+ - "\u0717\b\u00a3\u0001\u00a3\u0001\u00a3\u0003\u00a3\u071b\b\u00a3\u0001"+ - "\u00a4\u0001\u00a4\u0003\u00a4\u071f\b\u00a4\u0001\u00a5\u0001\u00a5\u0001"+ - "\u00a5\u0001\u00a6\u0001\u00a6\u0001\u00a6\u0001\u00a6\u0003\u00a6\u0728"+ - "\b\u00a6\u0001\u00a7\u0001\u00a7\u0001\u00a7\u0001\u00a7\u0001\u00a7\u0001"+ - "\u00a7\u0001\u00a8\u0001\u00a8\u0001\u00a8\u0005\u00a8\u0733\b\u00a8\n"+ - "\u00a8\f\u00a8\u0736\t\u00a8\u0001\u00a9\u0001\u00a9\u0003\u00a9\u073a"+ - "\b\u00a9\u0001\u00aa\u0001\u00aa\u0001\u00aa\u0001\u00aa\u0001\u00aa\u0003"+ - "\u00aa\u0741\b\u00aa\u0001\u00aa\u0001\u00aa\u0003\u00aa\u0745\b\u00aa"+ - "\u0001\u00aa\u0003\u00aa\u0748\b\u00aa\u0001\u00aa\u0003\u00aa\u074b\b"+ - "\u00aa\u0001\u00aa\u0003\u00aa\u074e\b\u00aa\u0001\u00aa\u0001\u00aa\u0003"+ - "\u00aa\u0752\b\u00aa\u0001\u00ab\u0001\u00ab\u0001\u00ab\u0003\u00ab\u0757"+ - "\b\u00ab\u0001\u00ab\u0001\u00ab\u0001\u00ac\u0001\u00ac\u0001\u00ac\u0003"+ - "\u00ac\u075e\b\u00ac\u0001\u00ac\u0001\u00ac\u0003\u00ac\u0762\b\u00ac"+ - "\u0001\u00ac\u0001\u00ac\u0003\u00ac\u0766\b\u00ac\u0001\u00ad\u0001\u00ad"+ - "\u0001\u00ae\u0001\u00ae\u0003\u00ae\u076c\b\u00ae\u0001\u00ae\u0001\u00ae"+ - "\u0001\u00ae\u0003\u00ae\u0771\b\u00ae\u0005\u00ae\u0773\b\u00ae\n\u00ae"+ - "\f\u00ae\u0776\t\u00ae\u0001\u00af\u0001\u00af\u0001\u00af\u0003\u00af"+ - "\u077b\b\u00af\u0001\u00b0\u0001\u00b0\u0001\u00b0\u0001\u00b0\u0003\u00b0"+ - "\u0781\b\u00b0\u0001\u00b0\u0003\u00b0\u0784\b\u00b0\u0001\u00b1\u0003"+ - "\u00b1\u0787\b\u00b1\u0001\u00b1\u0001\u00b1\u0001\u00b1\u0001\u00b2\u0001"+ - "\u00b2\u0001\u00b2\u0001\u00b2\u0001\u00b2\u0001\u00b3\u0001\u00b3\u0001"+ - "\u00b3\u0001\u00b3\u0001\u00b4\u0001\u00b4\u0003\u00b4\u0797\b\u00b4\u0001"+ - "\u00b4\u0001\u00b4\u0001\u00b4\u0001\u00b5\u0004\u00b5\u079d\b\u00b5\u000b"+ - "\u00b5\f\u00b5\u079e\u0001\u00b6\u0001\u00b6\u0001\u00b6\u0001\u00b6\u0001"+ - "\u00b6\u0001\u00b6\u0001\u00b7\u0003\u00b7\u07a8\b\u00b7\u0001\u00b7\u0001"+ - "\u00b7\u0001\u00b7\u0003\u00b7\u07ad\b\u00b7\u0001\u00b7\u0003\u00b7\u07b0"+ - "\b\u00b7\u0001\u00b8\u0001\u00b8\u0003\u00b8\u07b4\b\u00b8\u0001\u00b9"+ - "\u0001\u00b9\u0003\u00b9\u07b8\b\u00b9\u0001\u00ba\u0001\u00ba\u0001\u00ba"+ - "\u0003\u00ba\u07bd\b\u00ba\u0001\u00ba\u0001\u00ba\u0001\u00bb\u0001\u00bb"+ - "\u0003\u00bb\u07c3\b\u00bb\u0001\u00bb\u0001\u00bb\u0001\u00bb\u0003\u00bb"+ - "\u07c8\b\u00bb\u0005\u00bb\u07ca\b\u00bb\n\u00bb\f\u00bb\u07cd\t\u00bb"+ - "\u0001\u00bc\u0001\u00bc\u0001\u00bc\u0001\u00bc\u0001\u00bc\u0001\u00bc"+ - "\u0003\u00bc\u07d5\b\u00bc\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0003\u00bd"+ - "\u07da\b\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0003\u00bd\u07df\b"+ - "\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001"+ - "\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001"+ - "\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001"+ - "\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001"+ - "\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001"+ - "\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001"+ - "\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0001\u00bd\u0003"+ - "\u00bd\u080a\b\u00bd\u0001\u00be\u0001\u00be\u0001\u00be\u0001\u0417\u0004"+ - "\n\u001e2\u00e6\u00bf\u0000\u0002\u0004\u0006\b\n\f\u000e\u0010\u0012"+ - "\u0014\u0016\u0018\u001a\u001c\u001e \"$&(*,.02468:<>@BDFHJLNPRTVXZ\\"+ - "^`bdfhjlnprtvxz|~\u0080\u0082\u0084\u0086\u0088\u008a\u008c\u008e\u0090"+ - "\u0092\u0094\u0096\u0098\u009a\u009c\u009e\u00a0\u00a2\u00a4\u00a6\u00a8"+ - "\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6\u00b8\u00ba\u00bc\u00be\u00c0"+ - "\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc\u00ce\u00d0\u00d2\u00d4\u00d6\u00d8"+ - "\u00da\u00dc\u00de\u00e0\u00e2\u00e4\u00e6\u00e8\u00ea\u00ec\u00ee\u00f0"+ - "\u00f2\u00f4\u00f6\u00f8\u00fa\u00fc\u00fe\u0100\u0102\u0104\u0106\u0108"+ - "\u010a\u010c\u010e\u0110\u0112\u0114\u0116\u0118\u011a\u011c\u011e\u0120"+ - "\u0122\u0124\u0126\u0128\u012a\u012c\u012e\u0130\u0132\u0134\u0136\u0138"+ - "\u013a\u013c\u013e\u0140\u0142\u0144\u0146\u0148\u014a\u014c\u014e\u0150"+ - "\u0152\u0154\u0156\u0158\u015a\u015c\u015e\u0160\u0162\u0164\u0166\u0168"+ - "\u016a\u016c\u016e\u0170\u0172\u0174\u0176\u0178\u017a\u017c\u0000\u0017"+ - "\u0002\u0000aaee\u0004\u0000\u0018\u0018\u001f\u001f::AA\u0002\u0000|"+ - "|\u0081\u0081\u0001\u0000xy\u0002\u0000[]ad\u0002\u0000{{\u0082\u0082"+ - "\u0001\u0000]_\u0001\u0000[\\\u0002\u0000fgtu\u0001\u0000rs\u0002\u0000"+ - "eehq\u0005\u0000$$//99??FF\u0003\u0000\"\",,PP\u0002\u0000..<<\u0002\u0000"+ - "==NN\u0002\u0000\u0015\u0015BB\u0001\u0000UZ\u0002\u0000aavv\u0002\u0000"+ - "\u0016\u0016RR\u0001\u0000\u001b\u001c\u0002\u0000&&55\u0001\u000068\u0001"+ - "\u0000\u0001\u0007\u08ed\u0000\u017f\u0001\u0000\u0000\u0000\u0002\u018f"+ - "\u0001\u0000\u0000\u0000\u0004\u0193\u0001\u0000\u0000\u0000\u0006\u019f"+ - "\u0001\u0000\u0000\u0000\b\u01a1\u0001\u0000\u0000\u0000\n\u01a7\u0001"+ - "\u0000\u0000\u0000\f\u01bd\u0001\u0000\u0000\u0000\u000e\u01c3\u0001\u0000"+ - "\u0000\u0000\u0010\u01cf\u0001\u0000\u0000\u0000\u0012\u01d1\u0001\u0000"+ - "\u0000\u0000\u0014\u01d3\u0001\u0000\u0000\u0000\u0016\u01e0\u0001\u0000"+ - "\u0000\u0000\u0018\u01e7\u0001\u0000\u0000\u0000\u001a\u01ea\u0001\u0000"+ - "\u0000\u0000\u001c\u01ef\u0001\u0000\u0000\u0000\u001e\u021e\u0001\u0000"+ - "\u0000\u0000 \u023e\u0001\u0000\u0000\u0000\"\u0240\u0001\u0000\u0000"+ - "\u0000$\u0255\u0001\u0000\u0000\u0000&\u0272\u0001\u0000\u0000\u0000("+ - "\u0274\u0001\u0000\u0000\u0000*\u0277\u0001\u0000\u0000\u0000,\u0287\u0001"+ - "\u0000\u0000\u0000.\u028b\u0001\u0000\u0000\u00000\u0294\u0001\u0000\u0000"+ - "\u00002\u0296\u0001\u0000\u0000\u00004\u02af\u0001\u0000\u0000\u00006"+ - "\u02b2\u0001\u0000\u0000\u00008\u02bb\u0001\u0000\u0000\u0000:\u02c6\u0001"+ - "\u0000\u0000\u0000<\u02c8\u0001\u0000\u0000\u0000>\u02d0\u0001\u0000\u0000"+ - "\u0000@\u02d8\u0001\u0000\u0000\u0000B\u02e0\u0001\u0000\u0000\u0000D"+ - "\u02ed\u0001\u0000\u0000\u0000F\u02ef\u0001\u0000\u0000\u0000H\u02f7\u0001"+ - "\u0000\u0000\u0000J\u02ff\u0001\u0000\u0000\u0000L\u0307\u0001\u0000\u0000"+ - "\u0000N\u030f\u0001\u0000\u0000\u0000P\u0317\u0001\u0000\u0000\u0000R"+ - "\u031f\u0001\u0000\u0000\u0000T\u0327\u0001\u0000\u0000\u0000V\u0335\u0001"+ - "\u0000\u0000\u0000X\u0337\u0001\u0000\u0000\u0000Z\u0339\u0001\u0000\u0000"+ - "\u0000\\\u0341\u0001\u0000\u0000\u0000^\u0350\u0001\u0000\u0000\u0000"+ - "`\u0353\u0001\u0000\u0000\u0000b\u035f\u0001\u0000\u0000\u0000d\u0363"+ - "\u0001\u0000\u0000\u0000f\u036a\u0001\u0000\u0000\u0000h\u037d\u0001\u0000"+ - "\u0000\u0000j\u038a\u0001\u0000\u0000\u0000l\u03ad\u0001\u0000\u0000\u0000"+ - "n\u03b1\u0001\u0000\u0000\u0000p\u03b4\u0001\u0000\u0000\u0000r\u03bb"+ - "\u0001\u0000\u0000\u0000t\u03c6\u0001\u0000\u0000\u0000v\u03ca\u0001\u0000"+ - "\u0000\u0000x\u03cd\u0001\u0000\u0000\u0000z\u03da\u0001\u0000\u0000\u0000"+ - "|\u03e4\u0001\u0000\u0000\u0000~\u03e6\u0001\u0000\u0000\u0000\u0080\u03fd"+ - "\u0001\u0000\u0000\u0000\u0082\u03ff\u0001\u0000\u0000\u0000\u0084\u0407"+ - "\u0001\u0000\u0000\u0000\u0086\u0409\u0001\u0000\u0000\u0000\u0088\u0412"+ - "\u0001\u0000\u0000\u0000\u008a\u0415\u0001\u0000\u0000\u0000\u008c\u041c"+ - "\u0001\u0000\u0000\u0000\u008e\u041e\u0001\u0000\u0000\u0000\u0090\u0420"+ - "\u0001\u0000\u0000\u0000\u0092\u0425\u0001\u0000\u0000\u0000\u0094\u042b"+ - "\u0001\u0000\u0000\u0000\u0096\u042e\u0001\u0000\u0000\u0000\u0098\u0436"+ - "\u0001\u0000\u0000\u0000\u009a\u043d\u0001\u0000\u0000\u0000\u009c\u043f"+ - "\u0001\u0000\u0000\u0000\u009e\u0459\u0001\u0000\u0000\u0000\u00a0\u045f"+ - "\u0001\u0000\u0000\u0000\u00a2\u0461\u0001\u0000\u0000\u0000\u00a4\u047f"+ - "\u0001\u0000\u0000\u0000\u00a6\u0481\u0001\u0000\u0000\u0000\u00a8\u0483"+ - "\u0001\u0000\u0000\u0000\u00aa\u048d\u0001\u0000\u0000\u0000\u00ac\u049a"+ - "\u0001\u0000\u0000\u0000\u00ae\u04a4\u0001\u0000\u0000\u0000\u00b0\u04a8"+ - "\u0001\u0000\u0000\u0000\u00b2\u04ab\u0001\u0000\u0000\u0000\u00b4\u04b3"+ - "\u0001\u0000\u0000\u0000\u00b6\u04b8\u0001\u0000\u0000\u0000\u00b8\u04bc"+ - "\u0001\u0000\u0000\u0000\u00ba\u04be\u0001\u0000\u0000\u0000\u00bc\u04c1"+ - "\u0001\u0000\u0000\u0000\u00be\u04ce\u0001\u0000\u0000\u0000\u00c0\u04d0"+ - "\u0001\u0000\u0000\u0000\u00c2\u04d7\u0001\u0000\u0000\u0000\u00c4\u04db"+ - "\u0001\u0000\u0000\u0000\u00c6\u04e7\u0001\u0000\u0000\u0000\u00c8\u04f1"+ - "\u0001\u0000\u0000\u0000\u00ca\u04f7\u0001\u0000\u0000\u0000\u00cc\u0502"+ - "\u0001\u0000\u0000\u0000\u00ce\u050e\u0001\u0000\u0000\u0000\u00d0\u0510"+ - "\u0001\u0000\u0000\u0000\u00d2\u051b\u0001\u0000\u0000\u0000\u00d4\u0529"+ - "\u0001\u0000\u0000\u0000\u00d6\u052f\u0001\u0000\u0000\u0000\u00d8\u0531"+ - "\u0001\u0000\u0000\u0000\u00da\u0538\u0001\u0000\u0000\u0000\u00dc\u054d"+ - "\u0001\u0000\u0000\u0000\u00de\u054f\u0001\u0000\u0000\u0000\u00e0\u0557"+ - "\u0001\u0000\u0000\u0000\u00e2\u0560\u0001\u0000\u0000\u0000\u00e4\u0568"+ - "\u0001\u0000\u0000\u0000\u00e6\u0576\u0001\u0000\u0000\u0000\u00e8\u0589"+ - "\u0001\u0000\u0000\u0000\u00ea\u059a\u0001\u0000\u0000\u0000\u00ec\u05ad"+ - "\u0001\u0000\u0000\u0000\u00ee\u05b0\u0001\u0000\u0000\u0000\u00f0\u05b4"+ - "\u0001\u0000\u0000\u0000\u00f2\u05b6\u0001\u0000\u0000\u0000\u00f4\u05b9"+ - "\u0001\u0000\u0000\u0000\u00f6\u05bd\u0001\u0000\u0000\u0000\u00f8\u05c9"+ - "\u0001\u0000\u0000\u0000\u00fa\u05ce\u0001\u0000\u0000\u0000\u00fc\u05da"+ - "\u0001\u0000\u0000\u0000\u00fe\u05ed\u0001\u0000\u0000\u0000\u0100\u05f2"+ - "\u0001\u0000\u0000\u0000\u0102\u0601\u0001\u0000\u0000\u0000\u0104\u0608"+ - "\u0001\u0000\u0000\u0000\u0106\u0611\u0001\u0000\u0000\u0000\u0108\u061f"+ - "\u0001\u0000\u0000\u0000\u010a\u0632\u0001\u0000\u0000\u0000\u010c\u0639"+ - "\u0001\u0000\u0000\u0000\u010e\u063e\u0001\u0000\u0000\u0000\u0110\u0642"+ - "\u0001\u0000\u0000\u0000\u0112\u0644\u0001\u0000\u0000\u0000\u0114\u0652"+ - "\u0001\u0000\u0000\u0000\u0116\u065d\u0001\u0000\u0000\u0000\u0118\u065f"+ - "\u0001\u0000\u0000\u0000\u011a\u067d\u0001\u0000\u0000\u0000\u011c\u0680"+ - "\u0001\u0000\u0000\u0000\u011e\u0684\u0001\u0000\u0000\u0000\u0120\u0686"+ - "\u0001\u0000\u0000\u0000\u0122\u068c\u0001\u0000\u0000\u0000\u0124\u06a0"+ - "\u0001\u0000\u0000\u0000\u0126\u06a2\u0001\u0000\u0000\u0000\u0128\u06be"+ - "\u0001\u0000\u0000\u0000\u012a\u06c1\u0001\u0000\u0000\u0000\u012c\u06c5"+ - "\u0001\u0000\u0000\u0000\u012e\u06c7\u0001\u0000\u0000\u0000\u0130\u06ca"+ - "\u0001\u0000\u0000\u0000\u0132\u06cd\u0001\u0000\u0000\u0000\u0134\u06dc"+ - "\u0001\u0000\u0000\u0000\u0136\u06f1\u0001\u0000\u0000\u0000\u0138\u06f3"+ - "\u0001\u0000\u0000\u0000\u013a\u06f5\u0001\u0000\u0000\u0000\u013c\u06f7"+ - "\u0001\u0000\u0000\u0000\u013e\u06fa\u0001\u0000\u0000\u0000\u0140\u06fe"+ - "\u0001\u0000\u0000\u0000\u0142\u0702\u0001\u0000\u0000\u0000\u0144\u0705"+ - "\u0001\u0000\u0000\u0000\u0146\u0713\u0001\u0000\u0000\u0000\u0148\u071e"+ - "\u0001\u0000\u0000\u0000\u014a\u0720\u0001\u0000\u0000\u0000\u014c\u0723"+ - "\u0001\u0000\u0000\u0000\u014e\u0729\u0001\u0000\u0000\u0000\u0150\u072f"+ - "\u0001\u0000\u0000\u0000\u0152\u0739\u0001\u0000\u0000\u0000\u0154\u0744"+ - "\u0001\u0000\u0000\u0000\u0156\u0753\u0001\u0000\u0000\u0000\u0158\u0765"+ - "\u0001\u0000\u0000\u0000\u015a\u0767\u0001\u0000\u0000\u0000\u015c\u0769"+ - "\u0001\u0000\u0000\u0000\u015e\u077a\u0001\u0000\u0000\u0000\u0160\u077c"+ - "\u0001\u0000\u0000\u0000\u0162\u0786\u0001\u0000\u0000\u0000\u0164\u078b"+ - "\u0001\u0000\u0000\u0000\u0166\u0790\u0001\u0000\u0000\u0000\u0168\u0794"+ - "\u0001\u0000\u0000\u0000\u016a\u079c\u0001\u0000\u0000\u0000\u016c\u07a0"+ - "\u0001\u0000\u0000\u0000\u016e\u07af\u0001\u0000\u0000\u0000\u0170\u07b1"+ - "\u0001\u0000\u0000\u0000\u0172\u07b7\u0001\u0000\u0000\u0000\u0174\u07b9"+ - "\u0001\u0000\u0000\u0000\u0176\u07c0\u0001\u0000\u0000\u0000\u0178\u07d4"+ - "\u0001\u0000\u0000\u0000\u017a\u0809\u0001\u0000\u0000\u0000\u017c\u080b"+ - "\u0001\u0000\u0000\u0000\u017e\u0180\u0003x<\u0000\u017f\u017e\u0001\u0000"+ - "\u0000\u0000\u017f\u0180\u0001\u0000\u0000\u0000\u0180\u0181\u0001\u0000"+ - "\u0000\u0000\u0181\u0182\u0005\u0000\u0000\u0001\u0182\u0001\u0001\u0000"+ - "\u0000\u0000\u0183\u0185\u0003\u017c\u00be\u0000\u0184\u0183\u0001\u0000"+ - "\u0000\u0000\u0185\u0186\u0001\u0000\u0000\u0000\u0186\u0184\u0001\u0000"+ - "\u0000\u0000\u0186\u0187\u0001\u0000\u0000\u0000\u0187\u0190\u0001\u0000"+ - "\u0000\u0000\u0188\u0190\u0005E\u0000\u0000\u0189\u018a\u0005U\u0000\u0000"+ - "\u018a\u018b\u0003Z-\u0000\u018b\u018c\u0005V\u0000\u0000\u018c\u0190"+ - "\u0001\u0000\u0000\u0000\u018d\u0190\u0003\u0004\u0002\u0000\u018e\u0190"+ - "\u0003\f\u0006\u0000\u018f\u0184\u0001\u0000\u0000\u0000\u018f\u0188\u0001"+ - "\u0000\u0000\u0000\u018f\u0189\u0001\u0000\u0000\u0000\u018f\u018d\u0001"+ - "\u0000\u0000\u0000\u018f\u018e\u0001\u0000\u0000\u0000\u0190\u0003\u0001"+ - "\u0000\u0000\u0000\u0191\u0194\u0003\u0006\u0003\u0000\u0192\u0194\u0003"+ - "\b\u0004\u0000\u0193\u0191\u0001\u0000\u0000\u0000\u0193\u0192\u0001\u0000"+ - "\u0000\u0000\u0194\u0005\u0001\u0000\u0000\u0000\u0195\u01a0\u0005\u0084"+ - "\u0000\u0000\u0196\u01a0\u0003\u014a\u00a5\u0000\u0197\u01a0\u0003\u013c"+ - "\u009e\u0000\u0198\u01a0\u0003\u014c\u00a6\u0000\u0199\u019c\u0005c\u0000"+ - "\u0000\u019a\u019d\u0003\u0116\u008b\u0000\u019b\u019d\u0003\u00a2Q\u0000"+ - "\u019c\u019a\u0001\u0000\u0000\u0000\u019c\u019b\u0001\u0000\u0000\u0000"+ - "\u019d\u01a0\u0001\u0000\u0000\u0000\u019e\u01a0\u0003\u0158\u00ac\u0000"+ - "\u019f\u0195\u0001\u0000\u0000\u0000\u019f\u0196\u0001\u0000\u0000\u0000"+ - "\u019f\u0197\u0001\u0000\u0000\u0000\u019f\u0198\u0001\u0000\u0000\u0000"+ - "\u019f\u0199\u0001\u0000\u0000\u0000\u019f\u019e\u0001\u0000\u0000\u0000"+ - "\u01a0\u0007\u0001\u0000\u0000\u0000\u01a1\u01a3\u0003\n\u0005\u0000\u01a2"+ - "\u01a4\u0005D\u0000\u0000\u01a3\u01a2\u0001\u0000\u0000\u0000\u01a3\u01a4"+ - "\u0001\u0000\u0000\u0000\u01a4\u01a5\u0001\u0000\u0000\u0000\u01a5\u01a6"+ - "\u0003\u0006\u0003\u0000\u01a6\t\u0001\u0000\u0000\u0000\u01a7\u01ab\u0006"+ - "\u0005\uffff\uffff\u0000\u01a8\u01ac\u0003\u00a0P\u0000\u01a9\u01ac\u0003"+ - "\u00b8\\\u0000\u01aa\u01ac\u0003\u00a2Q\u0000\u01ab\u01a8\u0001\u0000"+ - "\u0000\u0000\u01ab\u01a9\u0001\u0000\u0000\u0000\u01ab\u01aa\u0001\u0000"+ - "\u0000\u0000\u01ab\u01ac\u0001\u0000\u0000\u0000\u01ac\u01ad\u0001\u0000"+ - "\u0000\u0000\u01ad\u01ae\u0005\u007f\u0000\u0000\u01ae\u01ba\u0001\u0000"+ - "\u0000\u0000\u01af\u01b5\n\u0001\u0000\u0000\u01b0\u01b6\u0005\u0084\u0000"+ - "\u0000\u01b1\u01b3\u0005D\u0000\u0000\u01b2\u01b1\u0001\u0000\u0000\u0000"+ - "\u01b2\u01b3\u0001\u0000\u0000\u0000\u01b3\u01b4\u0001\u0000\u0000\u0000"+ - "\u01b4\u01b6\u0003\u0156\u00ab\u0000\u01b5\u01b0\u0001\u0000\u0000\u0000"+ - "\u01b5\u01b2\u0001\u0000\u0000\u0000\u01b6\u01b7\u0001\u0000\u0000\u0000"+ - "\u01b7\u01b9\u0005\u007f\u0000\u0000\u01b8\u01af\u0001\u0000\u0000\u0000"+ - "\u01b9\u01bc\u0001\u0000\u0000\u0000\u01ba\u01b8\u0001\u0000\u0000\u0000"+ - "\u01ba\u01bb\u0001\u0000\u0000\u0000\u01bb\u000b\u0001\u0000\u0000\u0000"+ - "\u01bc\u01ba\u0001\u0000\u0000\u0000\u01bd\u01bf\u0003\u000e\u0007\u0000"+ - "\u01be\u01c0\u0003\u001c\u000e\u0000\u01bf\u01be\u0001\u0000\u0000\u0000"+ - "\u01bf\u01c0\u0001\u0000\u0000\u0000\u01c0\u01c1\u0001\u0000\u0000\u0000"+ - "\u01c1\u01c2\u0003d2\u0000\u01c2\r\u0001\u0000\u0000\u0000\u01c3\u01c5"+ - "\u0005W\u0000\u0000\u01c4\u01c6\u0003\u0010\b\u0000\u01c5\u01c4\u0001"+ - "\u0000\u0000\u0000\u01c5\u01c6\u0001\u0000\u0000\u0000\u01c6\u01c7\u0001"+ - "\u0000\u0000\u0000\u01c7\u01c8\u0005X\u0000\u0000\u01c8\u000f\u0001\u0000"+ - "\u0000\u0000\u01c9\u01d0\u0003\u0014\n\u0000\u01ca\u01cd\u0003\u0012\t"+ - "\u0000\u01cb\u01cc\u0005z\u0000\u0000\u01cc\u01ce\u0003\u0014\n\u0000"+ - "\u01cd\u01cb\u0001\u0000\u0000\u0000\u01cd\u01ce\u0001\u0000\u0000\u0000"+ - "\u01ce\u01d0\u0001\u0000\u0000\u0000\u01cf\u01c9\u0001\u0000\u0000\u0000"+ - "\u01cf\u01ca\u0001\u0000\u0000\u0000\u01d0\u0011\u0001\u0000\u0000\u0000"+ - "\u01d1\u01d2\u0007\u0000\u0000\u0000\u01d2\u0013\u0001\u0000\u0000\u0000"+ - "\u01d3\u01d8\u0003\u0016\u000b\u0000\u01d4\u01d5\u0005z\u0000\u0000\u01d5"+ - "\u01d7\u0003\u0016\u000b\u0000\u01d6\u01d4\u0001\u0000\u0000\u0000\u01d7"+ - "\u01da\u0001\u0000\u0000\u0000\u01d8\u01d6\u0001\u0000\u0000\u0000\u01d8"+ - "\u01d9\u0001\u0000\u0000\u0000\u01d9\u01dc\u0001\u0000\u0000\u0000\u01da"+ - "\u01d8\u0001\u0000\u0000\u0000\u01db\u01dd\u0005\u0083\u0000\u0000\u01dc"+ - "\u01db\u0001\u0000\u0000\u0000\u01dc\u01dd\u0001\u0000\u0000\u0000\u01dd"+ - "\u0015\u0001\u0000\u0000\u0000\u01de\u01e1\u0003\u0018\f\u0000\u01df\u01e1"+ - "\u0003\u001a\r\u0000\u01e0\u01de\u0001\u0000\u0000\u0000\u01e0\u01df\u0001"+ - "\u0000\u0000\u0000\u01e1\u0017\u0001\u0000\u0000\u0000\u01e2\u01e4\u0005"+ - "a\u0000\u0000\u01e3\u01e2\u0001\u0000\u0000\u0000\u01e3\u01e4\u0001\u0000"+ - "\u0000\u0000\u01e4\u01e5\u0001\u0000\u0000\u0000\u01e5\u01e8\u0005\u0084"+ - "\u0000\u0000\u01e6\u01e8\u0005E\u0000\u0000\u01e7\u01e3\u0001\u0000\u0000"+ - "\u0000\u01e7\u01e6\u0001\u0000\u0000\u0000\u01e8\u0019\u0001\u0000\u0000"+ - "\u0000\u01e9\u01eb\u0005a\u0000\u0000\u01ea\u01e9\u0001\u0000\u0000\u0000"+ - "\u01ea\u01eb\u0001\u0000\u0000\u0000\u01eb\u01ec\u0001\u0000\u0000\u0000"+ - "\u01ec\u01ed\u0005\u0084\u0000\u0000\u01ed\u01ee\u0003\u010c\u0086\u0000"+ - "\u01ee\u001b\u0001\u0000\u0000\u0000\u01ef\u01f1\u0005U\u0000\u0000\u01f0"+ - "\u01f2\u0003\u0102\u0081\u0000\u01f1\u01f0\u0001\u0000\u0000\u0000\u01f1"+ - "\u01f2\u0001\u0000\u0000\u0000\u01f2\u01f3\u0001\u0000\u0000\u0000\u01f3"+ - "\u01f5\u0005V\u0000\u0000\u01f4\u01f6\u0005/\u0000\u0000\u01f5\u01f4\u0001"+ - "\u0000\u0000\u0000\u01f5\u01f6\u0001\u0000\u0000\u0000\u01f6\u01f8\u0001"+ - "\u0000\u0000\u0000\u01f7\u01f9\u0003\u0172\u00b9\u0000\u01f8\u01f7\u0001"+ - "\u0000\u0000\u0000\u01f8\u01f9\u0001\u0000\u0000\u0000\u01f9\u01fb\u0001"+ - "\u0000\u0000\u0000\u01fa\u01fc\u0003\u00ccf\u0000\u01fb\u01fa\u0001\u0000"+ - "\u0000\u0000\u01fb\u01fc\u0001\u0000\u0000\u0000\u01fc\u01fe\u0001\u0000"+ - "\u0000\u0000\u01fd\u01ff\u0003\u00eau\u0000\u01fe\u01fd\u0001\u0000\u0000"+ - "\u0000\u01fe\u01ff\u0001\u0000\u0000\u0000\u01ff\u001d\u0001\u0000\u0000"+ - "\u0000\u0200\u0201\u0006\u000f\uffff\uffff\u0000\u0201\u021f\u0003\u0002"+ - "\u0001\u0000\u0202\u0205\u0003\u009eO\u0000\u0203\u0205\u0003\u0160\u00b0"+ - "\u0000\u0204\u0202\u0001\u0000\u0000\u0000\u0204\u0203\u0001\u0000\u0000"+ - "\u0000\u0205\u020c\u0001\u0000\u0000\u0000\u0206\u0208\u0005U\u0000\u0000"+ - "\u0207\u0209\u0003\"\u0011\u0000\u0208\u0207\u0001\u0000\u0000\u0000\u0208"+ - "\u0209\u0001\u0000\u0000\u0000\u0209\u020a\u0001\u0000\u0000\u0000\u020a"+ - "\u020d\u0005V\u0000\u0000\u020b\u020d\u0003\u0114\u008a\u0000\u020c\u0206"+ - "\u0001\u0000\u0000\u0000\u020c\u020b\u0001\u0000\u0000\u0000\u020d\u021f"+ - "\u0001\u0000\u0000\u0000\u020e\u020f\u0007\u0001\u0000\u0000\u020f\u0210"+ - "\u0005f\u0000\u0000\u0210\u0211\u0003\u00f6{\u0000\u0211\u0212\u0005g"+ - "\u0000\u0000\u0212\u0213\u0005U\u0000\u0000\u0213\u0214\u0003Z-\u0000"+ - "\u0214\u0215\u0005V\u0000\u0000\u0215\u021f\u0001\u0000\u0000\u0000\u0216"+ - "\u0217\u0003 \u0010\u0000\u0217\u021a\u0005U\u0000\u0000\u0218\u021b\u0003"+ - "Z-\u0000\u0219\u021b\u0003\u00f6{\u0000\u021a\u0218\u0001\u0000\u0000"+ - "\u0000\u021a\u0219\u0001\u0000\u0000\u0000\u021b\u021c\u0001\u0000\u0000"+ - "\u0000\u021c\u021d\u0005V\u0000\u0000\u021d\u021f\u0001\u0000\u0000\u0000"+ - "\u021e\u0200\u0001\u0000\u0000\u0000\u021e\u0204\u0001\u0000\u0000\u0000"+ - "\u021e\u020e\u0001\u0000\u0000\u0000\u021e\u0216\u0001\u0000\u0000\u0000"+ - "\u021f\u023b\u0001\u0000\u0000\u0000\u0220\u0221\n\u0007\u0000\u0000\u0221"+ - "\u0224\u0005W\u0000\u0000\u0222\u0225\u0003Z-\u0000\u0223\u0225\u0003"+ - "\u0114\u008a\u0000\u0224\u0222\u0001\u0000\u0000\u0000\u0224\u0223\u0001"+ - "\u0000\u0000\u0000\u0225\u0226\u0001\u0000\u0000\u0000\u0226\u0227\u0005"+ - "X\u0000\u0000\u0227\u023a\u0001\u0000\u0000\u0000\u0228\u0229\n\u0006"+ - "\u0000\u0000\u0229\u022b\u0005U\u0000\u0000\u022a\u022c\u0003\"\u0011"+ - "\u0000\u022b\u022a\u0001\u0000\u0000\u0000\u022b\u022c\u0001\u0000\u0000"+ - "\u0000\u022c\u022d\u0001\u0000\u0000\u0000\u022d\u023a\u0005V\u0000\u0000"+ - "\u022e\u022f\n\u0004\u0000\u0000\u022f\u0235\u0007\u0002\u0000\u0000\u0230"+ - "\u0232\u0005D\u0000\u0000\u0231\u0230\u0001\u0000\u0000\u0000\u0231\u0232"+ - "\u0001\u0000\u0000\u0000\u0232\u0233\u0001\u0000\u0000\u0000\u0233\u0236"+ - "\u0003\u0004\u0002\u0000\u0234\u0236\u0003$\u0012\u0000\u0235\u0231\u0001"+ - "\u0000\u0000\u0000\u0235\u0234\u0001\u0000\u0000\u0000\u0236\u023a\u0001"+ - "\u0000\u0000\u0000\u0237\u0238\n\u0003\u0000\u0000\u0238\u023a\u0007\u0003"+ - "\u0000\u0000\u0239\u0220\u0001\u0000\u0000\u0000\u0239\u0228\u0001\u0000"+ - "\u0000\u0000\u0239\u022e\u0001\u0000\u0000\u0000\u0239\u0237\u0001\u0000"+ - "\u0000\u0000\u023a\u023d\u0001\u0000\u0000\u0000\u023b\u0239\u0001\u0000"+ - "\u0000\u0000\u023b\u023c\u0001\u0000\u0000\u0000\u023c\u001f\u0001\u0000"+ - "\u0000\u0000\u023d\u023b\u0001\u0000\u0000\u0000\u023e\u023f\u0005K\u0000"+ - "\u0000\u023f!\u0001\u0000\u0000\u0000\u0240\u0241\u0003\u0112\u0089\u0000"+ - "\u0241#\u0001\u0000\u0000\u0000\u0242\u0244\u0003\n\u0005\u0000\u0243"+ - "\u0242\u0001\u0000\u0000\u0000\u0243\u0244\u0001\u0000\u0000\u0000\u0244"+ - "\u0248\u0001\u0000\u0000\u0000\u0245\u0246\u0003\u00a0P\u0000\u0246\u0247"+ - "\u0005\u007f\u0000\u0000\u0247\u0249\u0001\u0000\u0000\u0000\u0248\u0245"+ - "\u0001\u0000\u0000\u0000\u0248\u0249\u0001\u0000\u0000\u0000\u0249\u024a"+ - "\u0001\u0000\u0000\u0000\u024a\u024b\u0005c\u0000\u0000\u024b\u0256\u0003"+ - "\u00a0P\u0000\u024c\u024d\u0003\n\u0005\u0000\u024d\u024e\u0005D\u0000"+ - "\u0000\u024e\u024f\u0003\u0156\u00ab\u0000\u024f\u0250\u0005\u007f\u0000"+ - "\u0000\u0250\u0251\u0005c\u0000\u0000\u0251\u0252\u0003\u00a0P\u0000\u0252"+ - "\u0256\u0001\u0000\u0000\u0000\u0253\u0254\u0005c\u0000\u0000\u0254\u0256"+ - "\u0003\u00a2Q\u0000\u0255\u0243\u0001\u0000\u0000\u0000\u0255\u024c\u0001"+ - "\u0000\u0000\u0000\u0255\u0253\u0001\u0000\u0000\u0000\u0256%\u0001\u0000"+ - "\u0000\u0000\u0257\u0273\u0003\u001e\u000f\u0000\u0258\u025d\u0005x\u0000"+ - "\u0000\u0259\u025d\u0005y\u0000\u0000\u025a\u025d\u0003(\u0014\u0000\u025b"+ - "\u025d\u0005>\u0000\u0000\u025c\u0258\u0001\u0000\u0000\u0000\u025c\u0259"+ - "\u0001\u0000\u0000\u0000\u025c\u025a\u0001\u0000\u0000\u0000\u025c\u025b"+ - "\u0001\u0000\u0000\u0000\u025d\u025e\u0001\u0000\u0000\u0000\u025e\u0273"+ - "\u0003&\u0013\u0000\u025f\u0268\u0005>\u0000\u0000\u0260\u0261\u0005U"+ - "\u0000\u0000\u0261\u0262\u0003\u00f6{\u0000\u0262\u0263\u0005V\u0000\u0000"+ - "\u0263\u0269\u0001\u0000\u0000\u0000\u0264\u0265\u0005\u0083\u0000\u0000"+ - "\u0265\u0266\u0005U\u0000\u0000\u0266\u0267\u0005\u0084\u0000\u0000\u0267"+ - "\u0269\u0005V\u0000\u0000\u0268\u0260\u0001\u0000\u0000\u0000\u0268\u0264"+ - "\u0001\u0000\u0000\u0000\u0269\u0273\u0001\u0000\u0000\u0000\u026a\u026b"+ - "\u0005\u000b\u0000\u0000\u026b\u026c\u0005U\u0000\u0000\u026c\u026d\u0003"+ - "\u00f6{\u0000\u026d\u026e\u0005V\u0000\u0000\u026e\u0273\u0001\u0000\u0000"+ - "\u0000\u026f\u0273\u00038\u001c\u0000\u0270\u0273\u0003*\u0015\u0000\u0271"+ - "\u0273\u00036\u001b\u0000\u0272\u0257\u0001\u0000\u0000\u0000\u0272\u025c"+ - "\u0001\u0000\u0000\u0000\u0272\u025f\u0001\u0000\u0000\u0000\u0272\u026a"+ - "\u0001\u0000\u0000\u0000\u0272\u026f\u0001\u0000\u0000\u0000\u0272\u0270"+ - "\u0001\u0000\u0000\u0000\u0272\u0271\u0001\u0000\u0000\u0000\u0273\'\u0001"+ - "\u0000\u0000\u0000\u0274\u0275\u0007\u0004\u0000\u0000\u0275)\u0001\u0000"+ - "\u0000\u0000\u0276\u0278\u0005\u007f\u0000\u0000\u0277\u0276\u0001\u0000"+ - "\u0000\u0000\u0277\u0278\u0001\u0000\u0000\u0000\u0278\u0279\u0001\u0000"+ - "\u0000\u0000\u0279\u027b\u00051\u0000\u0000\u027a\u027c\u0003,\u0016\u0000"+ - "\u027b\u027a\u0001\u0000\u0000\u0000\u027b\u027c\u0001\u0000\u0000\u0000"+ - "\u027c\u0282\u0001\u0000\u0000\u0000\u027d\u0283\u0003.\u0017\u0000\u027e"+ - "\u027f\u0005U\u0000\u0000\u027f\u0280\u0003\u00f6{\u0000\u0280\u0281\u0005"+ - "V\u0000\u0000\u0281\u0283\u0001\u0000\u0000\u0000\u0282\u027d\u0001\u0000"+ - "\u0000\u0000\u0282\u027e\u0001\u0000\u0000\u0000\u0283\u0285\u0001\u0000"+ - "\u0000\u0000\u0284\u0286\u00034\u001a\u0000\u0285\u0284\u0001\u0000\u0000"+ - "\u0000\u0285\u0286\u0001\u0000\u0000\u0000\u0286+\u0001\u0000\u0000\u0000"+ - "\u0287\u0288\u0005U\u0000\u0000\u0288\u0289\u0003\"\u0011\u0000\u0289"+ - "\u028a\u0005V\u0000\u0000\u028a-\u0001\u0000\u0000\u0000\u028b\u028d\u0003"+ - "\u0096K\u0000\u028c\u028e\u00030\u0018\u0000\u028d\u028c\u0001\u0000\u0000"+ - "\u0000\u028d\u028e\u0001\u0000\u0000\u0000\u028e/\u0001\u0000\u0000\u0000"+ - "\u028f\u0291\u0003\u00ecv\u0000\u0290\u0292\u00030\u0018\u0000\u0291\u0290"+ - "\u0001\u0000\u0000\u0000\u0291\u0292\u0001\u0000\u0000\u0000\u0292\u0295"+ - "\u0001\u0000\u0000\u0000\u0293\u0295\u00032\u0019\u0000\u0294\u028f\u0001"+ - "\u0000\u0000\u0000\u0294\u0293\u0001\u0000\u0000\u0000\u02951\u0001\u0000"+ - "\u0000\u0000\u0296\u0297\u0006\u0019\uffff\uffff\u0000\u0297\u0298\u0005"+ - "W\u0000\u0000\u0298\u0299\u0003Z-\u0000\u0299\u029b\u0005X\u0000\u0000"+ - "\u029a\u029c\u0003\u00ccf\u0000\u029b\u029a\u0001\u0000\u0000\u0000\u029b"+ - "\u029c\u0001\u0000\u0000\u0000\u029c\u02a6\u0001\u0000\u0000\u0000\u029d"+ - "\u029e\n\u0001\u0000\u0000\u029e\u029f\u0005W\u0000\u0000\u029f\u02a0"+ - "\u0003\\.\u0000\u02a0\u02a2\u0005X\u0000\u0000\u02a1\u02a3\u0003\u00cc"+ - "f\u0000\u02a2\u02a1\u0001\u0000\u0000\u0000\u02a2\u02a3\u0001\u0000\u0000"+ - "\u0000\u02a3\u02a5\u0001\u0000\u0000\u0000\u02a4\u029d\u0001\u0000\u0000"+ - "\u0000\u02a5\u02a8\u0001\u0000\u0000\u0000\u02a6\u02a4\u0001\u0000\u0000"+ - "\u0000\u02a6\u02a7\u0001\u0000\u0000\u0000\u02a73\u0001\u0000\u0000\u0000"+ - "\u02a8\u02a6\u0001\u0000\u0000\u0000\u02a9\u02ab\u0005U\u0000\u0000\u02aa"+ - "\u02ac\u0003\"\u0011\u0000\u02ab\u02aa\u0001\u0000\u0000\u0000\u02ab\u02ac"+ - "\u0001\u0000\u0000\u0000\u02ac\u02ad\u0001\u0000\u0000\u0000\u02ad\u02b0"+ - "\u0005V\u0000\u0000\u02ae\u02b0\u0003\u0114\u008a\u0000\u02af\u02a9\u0001"+ - "\u0000\u0000\u0000\u02af\u02ae\u0001\u0000\u0000\u0000\u02b05\u0001\u0000"+ - "\u0000\u0000\u02b1\u02b3\u0005\u007f\u0000\u0000\u02b2\u02b1\u0001\u0000"+ - "\u0000\u0000\u02b2\u02b3\u0001\u0000\u0000\u0000\u02b3\u02b4\u0001\u0000"+ - "\u0000\u0000\u02b4\u02b7\u0005\u001c\u0000\u0000\u02b5\u02b6\u0005W\u0000"+ - "\u0000\u02b6\u02b8\u0005X\u0000\u0000\u02b7\u02b5\u0001\u0000\u0000\u0000"+ - "\u02b7\u02b8\u0001\u0000\u0000\u0000\u02b8\u02b9\u0001\u0000\u0000\u0000"+ - "\u02b9\u02ba\u0003:\u001d\u0000\u02ba7\u0001\u0000\u0000\u0000\u02bb\u02bc"+ - "\u00052\u0000\u0000\u02bc\u02bd\u0005U\u0000\u0000\u02bd\u02be\u0003Z"+ - "-\u0000\u02be\u02bf\u0005V\u0000\u0000\u02bf9\u0001\u0000\u0000\u0000"+ - "\u02c0\u02c7\u0003&\u0013\u0000\u02c1\u02c2\u0005U\u0000\u0000\u02c2\u02c3"+ - "\u0003\u00f6{\u0000\u02c3\u02c4\u0005V\u0000\u0000\u02c4\u02c5\u0003:"+ - "\u001d\u0000\u02c5\u02c7\u0001\u0000\u0000\u0000\u02c6\u02c0\u0001\u0000"+ - "\u0000\u0000\u02c6\u02c1\u0001\u0000\u0000\u0000\u02c7;\u0001\u0000\u0000"+ - "\u0000\u02c8\u02cd\u0003:\u001d\u0000\u02c9\u02ca\u0007\u0005\u0000\u0000"+ - "\u02ca\u02cc\u0003:\u001d\u0000\u02cb\u02c9\u0001\u0000\u0000\u0000\u02cc"+ - "\u02cf\u0001\u0000\u0000\u0000\u02cd\u02cb\u0001\u0000\u0000\u0000\u02cd"+ - "\u02ce\u0001\u0000\u0000\u0000\u02ce=\u0001\u0000\u0000\u0000\u02cf\u02cd"+ - "\u0001\u0000\u0000\u0000\u02d0\u02d5\u0003<\u001e\u0000\u02d1\u02d2\u0007"+ - "\u0006\u0000\u0000\u02d2\u02d4\u0003<\u001e\u0000\u02d3\u02d1\u0001\u0000"+ - "\u0000\u0000\u02d4\u02d7\u0001\u0000\u0000\u0000\u02d5\u02d3\u0001\u0000"+ - "\u0000\u0000\u02d5\u02d6\u0001\u0000\u0000\u0000\u02d6?\u0001\u0000\u0000"+ - "\u0000\u02d7\u02d5\u0001\u0000\u0000\u0000\u02d8\u02dd\u0003>\u001f\u0000"+ - "\u02d9\u02da\u0007\u0007\u0000\u0000\u02da\u02dc\u0003>\u001f\u0000\u02db"+ - "\u02d9\u0001\u0000\u0000\u0000\u02dc\u02df\u0001\u0000\u0000\u0000\u02dd"+ - "\u02db\u0001\u0000\u0000\u0000\u02dd\u02de\u0001\u0000\u0000\u0000\u02de"+ - "A\u0001\u0000\u0000\u0000\u02df\u02dd\u0001\u0000\u0000\u0000\u02e0\u02e6"+ - "\u0003@ \u0000\u02e1\u02e2\u0003D\"\u0000\u02e2\u02e3\u0003@ \u0000\u02e3"+ - "\u02e5\u0001\u0000\u0000\u0000\u02e4\u02e1\u0001\u0000\u0000\u0000\u02e5"+ - "\u02e8\u0001\u0000\u0000\u0000\u02e6\u02e4\u0001\u0000\u0000\u0000\u02e6"+ - "\u02e7\u0001\u0000\u0000\u0000\u02e7C\u0001\u0000\u0000\u0000\u02e8\u02e6"+ - "\u0001\u0000\u0000\u0000\u02e9\u02ea\u0005g\u0000\u0000\u02ea\u02ee\u0005"+ - "g\u0000\u0000\u02eb\u02ec\u0005f\u0000\u0000\u02ec\u02ee\u0005f\u0000"+ - "\u0000\u02ed\u02e9\u0001\u0000\u0000\u0000\u02ed\u02eb\u0001\u0000\u0000"+ - "\u0000\u02eeE\u0001\u0000\u0000\u0000\u02ef\u02f4\u0003B!\u0000\u02f0"+ - "\u02f1\u0007\b\u0000\u0000\u02f1\u02f3\u0003B!\u0000\u02f2\u02f0\u0001"+ - "\u0000\u0000\u0000\u02f3\u02f6\u0001\u0000\u0000\u0000\u02f4\u02f2\u0001"+ - "\u0000\u0000\u0000\u02f4\u02f5\u0001\u0000\u0000\u0000\u02f5G\u0001\u0000"+ - "\u0000\u0000\u02f6\u02f4\u0001\u0000\u0000\u0000\u02f7\u02fc\u0003F#\u0000"+ - "\u02f8\u02f9\u0007\t\u0000\u0000\u02f9\u02fb\u0003F#\u0000\u02fa\u02f8"+ - "\u0001\u0000\u0000\u0000\u02fb\u02fe\u0001\u0000\u0000\u0000\u02fc\u02fa"+ - "\u0001\u0000\u0000\u0000\u02fc\u02fd\u0001\u0000\u0000\u0000\u02fdI\u0001"+ - "\u0000\u0000\u0000\u02fe\u02fc\u0001\u0000\u0000\u0000\u02ff\u0304\u0003"+ - "H$\u0000\u0300\u0301\u0005a\u0000\u0000\u0301\u0303\u0003H$\u0000\u0302"+ - "\u0300\u0001\u0000\u0000\u0000\u0303\u0306\u0001\u0000\u0000\u0000\u0304"+ - "\u0302\u0001\u0000\u0000\u0000\u0304\u0305\u0001\u0000\u0000\u0000\u0305"+ - "K\u0001\u0000\u0000\u0000\u0306\u0304\u0001\u0000\u0000\u0000\u0307\u030c"+ - "\u0003J%\u0000\u0308\u0309\u0005`\u0000\u0000\u0309\u030b\u0003J%\u0000"+ - "\u030a\u0308\u0001\u0000\u0000\u0000\u030b\u030e\u0001\u0000\u0000\u0000"+ - "\u030c\u030a\u0001\u0000\u0000\u0000\u030c\u030d\u0001\u0000\u0000\u0000"+ - "\u030dM\u0001\u0000\u0000\u0000\u030e\u030c\u0001\u0000\u0000\u0000\u030f"+ - "\u0314\u0003L&\u0000\u0310\u0311\u0005b\u0000\u0000\u0311\u0313\u0003"+ - "L&\u0000\u0312\u0310\u0001\u0000\u0000\u0000\u0313\u0316\u0001\u0000\u0000"+ - "\u0000\u0314\u0312\u0001\u0000\u0000\u0000\u0314\u0315\u0001\u0000\u0000"+ - "\u0000\u0315O\u0001\u0000\u0000\u0000\u0316\u0314\u0001\u0000\u0000\u0000"+ - "\u0317\u031c\u0003N\'\u0000\u0318\u0319\u0005v\u0000\u0000\u0319\u031b"+ - "\u0003N\'\u0000\u031a\u0318\u0001\u0000\u0000\u0000\u031b\u031e\u0001"+ - "\u0000\u0000\u0000\u031c\u031a\u0001\u0000\u0000\u0000\u031c\u031d\u0001"+ - "\u0000\u0000\u0000\u031dQ\u0001\u0000\u0000\u0000\u031e\u031c\u0001\u0000"+ - "\u0000\u0000\u031f\u0324\u0003P(\u0000\u0320\u0321\u0005w\u0000\u0000"+ - "\u0321\u0323\u0003P(\u0000\u0322\u0320\u0001\u0000\u0000\u0000\u0323\u0326"+ - "\u0001\u0000\u0000\u0000\u0324\u0322\u0001\u0000\u0000\u0000\u0324\u0325"+ - "\u0001\u0000\u0000\u0000\u0325S\u0001\u0000\u0000\u0000\u0326\u0324\u0001"+ - "\u0000\u0000\u0000\u0327\u032d\u0003R)\u0000\u0328\u0329\u0005}\u0000"+ - "\u0000\u0329\u032a\u0003Z-\u0000\u032a\u032b\u0005~\u0000\u0000\u032b"+ - "\u032c\u0003V+\u0000\u032c\u032e\u0001\u0000\u0000\u0000\u032d\u0328\u0001"+ - "\u0000\u0000\u0000\u032d\u032e\u0001\u0000\u0000\u0000\u032eU\u0001\u0000"+ - "\u0000\u0000\u032f\u0336\u0003T*\u0000\u0330\u0331\u0003R)\u0000\u0331"+ - "\u0332\u0003X,\u0000\u0332\u0333\u0003\u0110\u0088\u0000\u0333\u0336\u0001"+ - "\u0000\u0000\u0000\u0334\u0336\u0003\u0170\u00b8\u0000\u0335\u032f\u0001"+ - "\u0000\u0000\u0000\u0335\u0330\u0001\u0000\u0000\u0000\u0335\u0334\u0001"+ - "\u0000\u0000\u0000\u0336W\u0001\u0000\u0000\u0000\u0337\u0338\u0007\n"+ - "\u0000\u0000\u0338Y\u0001\u0000\u0000\u0000\u0339\u033e\u0003V+\u0000"+ - "\u033a\u033b\u0005z\u0000\u0000\u033b\u033d\u0003V+\u0000\u033c\u033a"+ - "\u0001\u0000\u0000\u0000\u033d\u0340\u0001\u0000\u0000\u0000\u033e\u033c"+ - "\u0001\u0000\u0000\u0000\u033e\u033f\u0001\u0000\u0000\u0000\u033f[\u0001"+ - "\u0000\u0000\u0000\u0340\u033e\u0001\u0000\u0000\u0000\u0341\u0342\u0003"+ - "T*\u0000\u0342]\u0001\u0000\u0000\u0000\u0343\u0351\u0003`0\u0000\u0344"+ - "\u0351\u0003v;\u0000\u0345\u0347\u0003\u00ccf\u0000\u0346\u0345\u0001"+ - "\u0000\u0000\u0000\u0346\u0347\u0001\u0000\u0000\u0000\u0347\u034e\u0001"+ - "\u0000\u0000\u0000\u0348\u034f\u0003b1\u0000\u0349\u034f\u0003d2\u0000"+ - "\u034a\u034f\u0003h4\u0000\u034b\u034f\u0003l6\u0000\u034c\u034f\u0003"+ - "t:\u0000\u034d\u034f\u0003\u0166\u00b3\u0000\u034e\u0348\u0001\u0000\u0000"+ - "\u0000\u034e\u0349\u0001\u0000\u0000\u0000\u034e\u034a\u0001\u0000\u0000"+ - "\u0000\u034e\u034b\u0001\u0000\u0000\u0000\u034e\u034c\u0001\u0000\u0000"+ - "\u0000\u034e\u034d\u0001\u0000\u0000\u0000\u034f\u0351\u0001\u0000\u0000"+ - "\u0000\u0350\u0343\u0001\u0000\u0000\u0000\u0350\u0344\u0001\u0000\u0000"+ - "\u0000\u0350\u0346\u0001\u0000\u0000\u0000\u0351_\u0001\u0000\u0000\u0000"+ - "\u0352\u0354\u0003\u00ccf\u0000\u0353\u0352\u0001\u0000\u0000\u0000\u0353"+ - "\u0354\u0001\u0000\u0000\u0000\u0354\u0359\u0001\u0000\u0000\u0000\u0355"+ - "\u035a\u0005\u0084\u0000\u0000\u0356\u0357\u0005\u0010\u0000\u0000\u0357"+ - "\u035a\u0003\\.\u0000\u0358\u035a\u0005\u001b\u0000\u0000\u0359\u0355"+ - "\u0001\u0000\u0000\u0000\u0359\u0356\u0001\u0000\u0000\u0000\u0359\u0358"+ - "\u0001\u0000\u0000\u0000\u035a\u035b\u0001\u0000\u0000\u0000\u035b\u035c"+ - "\u0005~\u0000\u0000\u035c\u035d\u0003^/\u0000\u035da\u0001\u0000\u0000"+ - "\u0000\u035e\u0360\u0003Z-\u0000\u035f\u035e\u0001\u0000\u0000\u0000\u035f"+ - "\u0360\u0001\u0000\u0000\u0000\u0360\u0361\u0001\u0000\u0000\u0000\u0361"+ - "\u0362\u0005\u0080\u0000\u0000\u0362c\u0001\u0000\u0000\u0000\u0363\u0365"+ - "\u0005Y\u0000\u0000\u0364\u0366\u0003f3\u0000\u0365\u0364\u0001\u0000"+ - "\u0000\u0000\u0365\u0366\u0001\u0000\u0000\u0000\u0366\u0367\u0001\u0000"+ - "\u0000\u0000\u0367\u0368\u0005Z\u0000\u0000\u0368e\u0001\u0000\u0000\u0000"+ - "\u0369\u036b\u0003^/\u0000\u036a\u0369\u0001\u0000\u0000\u0000\u036b\u036c"+ - "\u0001\u0000\u0000\u0000\u036c\u036a\u0001\u0000\u0000\u0000\u036c\u036d"+ - "\u0001\u0000\u0000\u0000\u036dg\u0001\u0000\u0000\u0000\u036e\u036f\u0005"+ - "+\u0000\u0000\u036f\u0370\u0005U\u0000\u0000\u0370\u0371\u0003j5\u0000"+ - "\u0371\u0372\u0005V\u0000\u0000\u0372\u0375\u0003^/\u0000\u0373\u0374"+ - "\u0005 \u0000\u0000\u0374\u0376\u0003^/\u0000\u0375\u0373\u0001\u0000"+ - "\u0000\u0000\u0375\u0376\u0001\u0000\u0000\u0000\u0376\u037e\u0001\u0000"+ - "\u0000\u0000\u0377\u0378\u0005C\u0000\u0000\u0378\u0379\u0005U\u0000\u0000"+ - "\u0379\u037a\u0003j5\u0000\u037a\u037b\u0005V\u0000\u0000\u037b\u037c"+ - "\u0003^/\u0000\u037c\u037e\u0001\u0000\u0000\u0000\u037d\u036e\u0001\u0000"+ - "\u0000\u0000\u037d\u0377\u0001\u0000\u0000\u0000\u037ei\u0001\u0000\u0000"+ - "\u0000\u037f\u038b\u0003Z-\u0000\u0380\u0382\u0003\u00ccf\u0000\u0381"+ - "\u0380\u0001\u0000\u0000\u0000\u0381\u0382\u0001\u0000\u0000\u0000\u0382"+ - "\u0383\u0001\u0000\u0000\u0000\u0383\u0384\u0003\u008aE\u0000\u0384\u0388"+ - "\u0003\u00e2q\u0000\u0385\u0386\u0005e\u0000\u0000\u0386\u0389\u0003\u0110"+ - "\u0088\u0000\u0387\u0389\u0003\u0114\u008a\u0000\u0388\u0385\u0001\u0000"+ - "\u0000\u0000\u0388\u0387\u0001\u0000\u0000\u0000\u0389\u038b\u0001\u0000"+ - "\u0000\u0000\u038a\u037f\u0001\u0000\u0000\u0000\u038a\u0381\u0001\u0000"+ - "\u0000\u0000\u038bk\u0001\u0000\u0000\u0000\u038c\u038d\u0005T\u0000\u0000"+ - "\u038d\u038e\u0005U\u0000\u0000\u038e\u038f\u0003j5\u0000\u038f\u0390"+ - "\u0005V\u0000\u0000\u0390\u0391\u0003^/\u0000\u0391\u03ae\u0001\u0000"+ - "\u0000\u0000\u0392\u0393\u0005\u001d\u0000\u0000\u0393\u0394\u0003^/\u0000"+ - "\u0394\u0395\u0005T\u0000\u0000\u0395\u0396\u0005U\u0000\u0000\u0396\u0397"+ - "\u0003Z-\u0000\u0397\u0398\u0005V\u0000\u0000\u0398\u0399\u0005\u0080"+ - "\u0000\u0000\u0399\u03ae\u0001\u0000\u0000\u0000\u039a\u039b\u0005(\u0000"+ - "\u0000\u039b\u03a8\u0005U\u0000\u0000\u039c\u039e\u0003n7\u0000\u039d"+ - "\u039f\u0003j5\u0000\u039e\u039d\u0001\u0000\u0000\u0000\u039e\u039f\u0001"+ - "\u0000\u0000\u0000\u039f\u03a0\u0001\u0000\u0000\u0000\u03a0\u03a2\u0005"+ - "\u0080\u0000\u0000\u03a1\u03a3\u0003Z-\u0000\u03a2\u03a1\u0001\u0000\u0000"+ - "\u0000\u03a2\u03a3\u0001\u0000\u0000\u0000\u03a3\u03a9\u0001\u0000\u0000"+ - "\u0000\u03a4\u03a5\u0003p8\u0000\u03a5\u03a6\u0005~\u0000\u0000\u03a6"+ - "\u03a7\u0003r9\u0000\u03a7\u03a9\u0001\u0000\u0000\u0000\u03a8\u039c\u0001"+ - "\u0000\u0000\u0000\u03a8\u03a4\u0001\u0000\u0000\u0000\u03a9\u03aa\u0001"+ - "\u0000\u0000\u0000\u03aa\u03ab\u0005V\u0000\u0000\u03ab\u03ac\u0003^/"+ - "\u0000\u03ac\u03ae\u0001\u0000\u0000\u0000\u03ad\u038c\u0001\u0000\u0000"+ - "\u0000\u03ad\u0392\u0001\u0000\u0000\u0000\u03ad\u039a\u0001\u0000\u0000"+ - "\u0000\u03aem\u0001\u0000\u0000\u0000\u03af\u03b2\u0003b1\u0000\u03b0"+ - "\u03b2\u0003\u0080@\u0000\u03b1\u03af\u0001\u0000\u0000\u0000\u03b1\u03b0"+ - "\u0001\u0000\u0000\u0000\u03b2o\u0001\u0000\u0000\u0000\u03b3\u03b5\u0003"+ - "\u00ccf\u0000\u03b4\u03b3\u0001\u0000\u0000\u0000\u03b4\u03b5\u0001\u0000"+ - "\u0000\u0000\u03b5\u03b6\u0001\u0000\u0000\u0000\u03b6\u03b7\u0003\u008a"+ - "E\u0000\u03b7\u03b8\u0003\u00e2q\u0000\u03b8q\u0001\u0000\u0000\u0000"+ - "\u03b9\u03bc\u0003Z-\u0000\u03ba\u03bc\u0003\u0114\u008a\u0000\u03bb\u03b9"+ - "\u0001\u0000\u0000\u0000\u03bb\u03ba\u0001\u0000\u0000\u0000\u03bcs\u0001"+ - "\u0000\u0000\u0000\u03bd\u03c7\u0005\u000f\u0000\u0000\u03be\u03c7\u0005"+ - "\u0019\u0000\u0000\u03bf\u03c2\u0005;\u0000\u0000\u03c0\u03c3\u0003Z-"+ - "\u0000\u03c1\u03c3\u0003\u0114\u008a\u0000\u03c2\u03c0\u0001\u0000\u0000"+ - "\u0000\u03c2\u03c1\u0001\u0000\u0000\u0000\u03c2\u03c3\u0001\u0000\u0000"+ - "\u0000\u03c3\u03c7\u0001\u0000\u0000\u0000\u03c4\u03c5\u0005*\u0000\u0000"+ - "\u03c5\u03c7\u0005\u0084\u0000\u0000\u03c6\u03bd\u0001\u0000\u0000\u0000"+ - "\u03c6\u03be\u0001\u0000\u0000\u0000\u03c6\u03bf\u0001\u0000\u0000\u0000"+ - "\u03c6\u03c4\u0001\u0000\u0000\u0000\u03c7\u03c8\u0001\u0000\u0000\u0000"+ - "\u03c8\u03c9\u0005\u0080\u0000\u0000\u03c9u\u0001\u0000\u0000\u0000\u03ca"+ - "\u03cb\u0003|>\u0000\u03cbw\u0001\u0000\u0000\u0000\u03cc\u03ce\u0003"+ - "z=\u0000\u03cd\u03cc\u0001\u0000\u0000\u0000\u03ce\u03cf\u0001\u0000\u0000"+ - "\u0000\u03cf\u03cd\u0001\u0000\u0000\u0000\u03cf\u03d0\u0001\u0000\u0000"+ - "\u0000\u03d0y\u0001\u0000\u0000\u0000\u03d1\u03db\u0003|>\u0000\u03d2"+ - "\u03db\u0003\u0108\u0084\u0000\u03d3\u03db\u0003\u014e\u00a7\u0000\u03d4"+ - "\u03db\u0003\u0162\u00b1\u0000\u03d5\u03db\u0003\u0164\u00b2\u0000\u03d6"+ - "\u03db\u0003\u00cae\u0000\u03d7\u03db\u0003\u00bc^\u0000\u03d8\u03db\u0003"+ - "\u0084B\u0000\u03d9\u03db\u0003\u0086C\u0000\u03da\u03d1\u0001\u0000\u0000"+ - "\u0000\u03da\u03d2\u0001\u0000\u0000\u0000\u03da\u03d3\u0001\u0000\u0000"+ - "\u0000\u03da\u03d4\u0001\u0000\u0000\u0000\u03da\u03d5\u0001\u0000\u0000"+ - "\u0000\u03da\u03d6\u0001\u0000\u0000\u0000\u03da\u03d7\u0001\u0000\u0000"+ - "\u0000\u03da\u03d8\u0001\u0000\u0000\u0000\u03da\u03d9\u0001\u0000\u0000"+ - "\u0000\u03db{\u0001\u0000\u0000\u0000\u03dc\u03e5\u0003\u0080@\u0000\u03dd"+ - "\u03e5\u0003\u00c8d\u0000\u03de\u03e5\u0003\u00c0`\u0000\u03df\u03e5\u0003"+ - "\u00c4b\u0000\u03e0\u03e5\u0003\u00c6c\u0000\u03e1\u03e5\u0003\u0082A"+ - "\u0000\u03e2\u03e5\u0003~?\u0000\u03e3\u03e5\u0003\u00acV\u0000\u03e4"+ - "\u03dc\u0001\u0000\u0000\u0000\u03e4\u03dd\u0001\u0000\u0000\u0000\u03e4"+ - "\u03de\u0001\u0000\u0000\u0000\u03e4\u03df\u0001\u0000\u0000\u0000\u03e4"+ - "\u03e0\u0001\u0000\u0000\u0000\u03e4\u03e1\u0001\u0000\u0000\u0000\u03e4"+ - "\u03e2\u0001\u0000\u0000\u0000\u03e4\u03e3\u0001\u0000\u0000\u0000\u03e5"+ - "}\u0001\u0000\u0000\u0000\u03e6\u03e7\u0005O\u0000\u0000\u03e7\u03e9\u0005"+ - "\u0084\u0000\u0000\u03e8\u03ea\u0003\u00ccf\u0000\u03e9\u03e8\u0001\u0000"+ - "\u0000\u0000\u03e9\u03ea\u0001\u0000\u0000\u0000\u03ea\u03eb\u0001\u0000"+ - "\u0000\u0000\u03eb\u03ec\u0005e\u0000\u0000\u03ec\u03ed\u0003\u00f6{\u0000"+ - "\u03ed\u03ee\u0005\u0080\u0000\u0000\u03ee\u007f\u0001\u0000\u0000\u0000"+ - "\u03ef\u03f1\u0003\u008aE\u0000\u03f0\u03ef\u0001\u0000\u0000\u0000\u03f0"+ - "\u03f1\u0001\u0000\u0000\u0000\u03f1\u03f3\u0001\u0000\u0000\u0000\u03f2"+ - "\u03f4\u0003\u00deo\u0000\u03f3\u03f2\u0001\u0000\u0000\u0000\u03f3\u03f4"+ - "\u0001\u0000\u0000\u0000\u03f4\u03f5\u0001\u0000\u0000\u0000\u03f5\u03fe"+ - "\u0005\u0080\u0000\u0000\u03f6\u03f8\u0003\u00ccf\u0000\u03f7\u03f9\u0003"+ - "\u008aE\u0000\u03f8\u03f7\u0001\u0000\u0000\u0000\u03f8\u03f9\u0001\u0000"+ - "\u0000\u0000\u03f9\u03fa\u0001\u0000\u0000\u0000\u03fa\u03fb\u0003\u00de"+ - "o\u0000\u03fb\u03fc\u0005\u0080\u0000\u0000\u03fc\u03fe\u0001\u0000\u0000"+ - "\u0000\u03fd\u03f0\u0001\u0000\u0000\u0000\u03fd\u03f6\u0001\u0000\u0000"+ - "\u0000\u03fe\u0081\u0001\u0000\u0000\u0000\u03ff\u0400\u0005@\u0000\u0000"+ - "\u0400\u0401\u0005U\u0000\u0000\u0401\u0402\u0003\\.\u0000\u0402\u0403"+ - "\u0005z\u0000\u0000\u0403\u0404\u0005\u0004\u0000\u0000\u0404\u0405\u0005"+ - "V\u0000\u0000\u0405\u0406\u0005\u0080\u0000\u0000\u0406\u0083\u0001\u0000"+ - "\u0000\u0000\u0407\u0408\u0005\u0080\u0000\u0000\u0408\u0085\u0001\u0000"+ - "\u0000\u0000\u0409\u040a\u0003\u00ccf\u0000\u040a\u040b\u0005\u0080\u0000"+ - "\u0000\u040b\u0087\u0001\u0000\u0000\u0000\u040c\u0413\u0003\u008cF\u0000"+ - "\u040d\u0413\u0003\u0092I\u0000\u040e\u0413\u0003\u008eG\u0000\u040f\u0413"+ - "\u0005)\u0000\u0000\u0410\u0413\u0005J\u0000\u0000\u0411\u0413\u0005\u0017"+ - "\u0000\u0000\u0412\u040c\u0001\u0000\u0000\u0000\u0412\u040d\u0001\u0000"+ - "\u0000\u0000\u0412\u040e\u0001\u0000\u0000\u0000\u0412\u040f\u0001\u0000"+ - "\u0000\u0000\u0412\u0410\u0001\u0000\u0000\u0000\u0412\u0411\u0001\u0000"+ - "\u0000\u0000\u0413\u0089\u0001\u0000\u0000\u0000\u0414\u0416\u0003\u0088"+ - "D\u0000\u0415\u0414\u0001\u0000\u0000\u0000\u0416\u0417\u0001\u0000\u0000"+ - "\u0000\u0417\u0418\u0001\u0000\u0000\u0000\u0417\u0415\u0001\u0000\u0000"+ - "\u0000\u0418\u041a\u0001\u0000\u0000\u0000\u0419\u041b\u0003\u00ccf\u0000"+ - "\u041a\u0419\u0001\u0000\u0000\u0000\u041a\u041b\u0001\u0000\u0000\u0000"+ - "\u041b\u008b\u0001\u0000\u0000\u0000\u041c\u041d\u0007\u000b\u0000\u0000"+ - "\u041d\u008d\u0001\u0000\u0000\u0000\u041e\u041f\u0007\f\u0000\u0000\u041f"+ - "\u008f\u0001\u0000\u0000\u0000\u0420\u0421\u0005\u0084\u0000\u0000\u0421"+ - "\u0091\u0001\u0000\u0000\u0000\u0422\u0426\u0003\u0094J\u0000\u0423\u0426"+ - "\u0003\u0118\u008c\u0000\u0424\u0426\u0003\u00a8T\u0000\u0425\u0422\u0001"+ - "\u0000\u0000\u0000\u0425\u0423\u0001\u0000\u0000\u0000\u0425\u0424\u0001"+ - "\u0000\u0000\u0000\u0426\u0093\u0001\u0000\u0000\u0000\u0427\u042c\u0003"+ - "\u009eO\u0000\u0428\u042c\u0003\u00a4R\u0000\u0429\u042c\u0003\u0160\u00b0"+ - "\u0000\u042a\u042c\u0003\u00f0x\u0000\u042b\u0427\u0001\u0000\u0000\u0000"+ - "\u042b\u0428\u0001\u0000\u0000\u0000\u042b\u0429\u0001\u0000\u0000\u0000"+ - "\u042b\u042a\u0001\u0000\u0000\u0000\u042c\u0095\u0001\u0000\u0000\u0000"+ - "\u042d\u042f\u0003\u0092I\u0000\u042e\u042d\u0001\u0000\u0000\u0000\u042f"+ - "\u0430\u0001\u0000\u0000\u0000\u0430\u042e\u0001\u0000\u0000\u0000\u0430"+ - "\u0431\u0001\u0000\u0000\u0000\u0431\u0433\u0001\u0000\u0000\u0000\u0432"+ - "\u0434\u0003\u00ccf\u0000\u0433\u0432\u0001\u0000\u0000\u0000\u0433\u0434"+ - "\u0001\u0000\u0000\u0000\u0434\u0097\u0001\u0000\u0000\u0000\u0435\u0437"+ - "\u0003\u0094J\u0000\u0436\u0435\u0001\u0000\u0000\u0000\u0437\u0438\u0001"+ - "\u0000\u0000\u0000\u0438\u0436\u0001\u0000\u0000\u0000\u0438\u0439\u0001"+ - "\u0000\u0000\u0000\u0439\u043b\u0001\u0000\u0000\u0000\u043a\u043c\u0003"+ - "\u00ccf\u0000\u043b\u043a\u0001\u0000\u0000\u0000\u043b\u043c\u0001\u0000"+ - "\u0000\u0000\u043c\u0099\u0001\u0000\u0000\u0000\u043d\u043e\u0007\r\u0000"+ - "\u0000\u043e\u009b\u0001\u0000\u0000\u0000\u043f\u0440\u0007\u000e\u0000"+ - "\u0000\u0440\u009d\u0001\u0000\u0000\u0000\u0441\u0443\u0003\n\u0005\u0000"+ - "\u0442\u0441\u0001\u0000\u0000\u0000\u0442\u0443\u0001\u0000\u0000\u0000"+ - "\u0443\u0444\u0001\u0000\u0000\u0000\u0444\u045a\u0003\u00a0P\u0000\u0445"+ - "\u0446\u0003\n\u0005\u0000\u0446\u0447\u0005D\u0000\u0000\u0447\u0448"+ - "\u0003\u0156\u00ab\u0000\u0448\u045a\u0001\u0000\u0000\u0000\u0449\u045a"+ - "\u0005\u0012\u0000\u0000\u044a\u045a\u0005\u0013\u0000\u0000\u044b\u045a"+ - "\u0005\u0014\u0000\u0000\u044c\u045a\u0005S\u0000\u0000\u044d\u045a\u0005"+ - "\u000e\u0000\u0000\u044e\u045a\u0005<\u0000\u0000\u044f\u045a\u0005-\u0000"+ - "\u0000\u0450\u045a\u0005.\u0000\u0000\u0451\u045a\u0005\'\u0000\u0000"+ - "\u0452\u045a\u0005=\u0000\u0000\u0453\u045a\u0005N\u0000\u0000\u0454\u045a"+ - "\u0005\'\u0000\u0000\u0455\u045a\u0005\u001e\u0000\u0000\u0456\u045a\u0005"+ - "Q\u0000\u0000\u0457\u045a\u0005\r\u0000\u0000\u0458\u045a\u0003\u00a2"+ - "Q\u0000\u0459\u0442\u0001\u0000\u0000\u0000\u0459\u0445\u0001\u0000\u0000"+ - "\u0000\u0459\u0449\u0001\u0000\u0000\u0000\u0459\u044a\u0001\u0000\u0000"+ - "\u0000\u0459\u044b\u0001\u0000\u0000\u0000\u0459\u044c\u0001\u0000\u0000"+ - "\u0000\u0459\u044d\u0001\u0000\u0000\u0000\u0459\u044e\u0001\u0000\u0000"+ - "\u0000\u0459\u044f\u0001\u0000\u0000\u0000\u0459\u0450\u0001\u0000\u0000"+ - "\u0000\u0459\u0451\u0001\u0000\u0000\u0000\u0459\u0452\u0001\u0000\u0000"+ - "\u0000\u0459\u0453\u0001\u0000\u0000\u0000\u0459\u0454\u0001\u0000\u0000"+ - "\u0000\u0459\u0455\u0001\u0000\u0000\u0000\u0459\u0456\u0001\u0000\u0000"+ - "\u0000\u0459\u0457\u0001\u0000\u0000\u0000\u0459\u0458\u0001\u0000\u0000"+ - "\u0000\u045a\u009f\u0001\u0000\u0000\u0000\u045b\u0460\u0003\u0116\u008b"+ - "\u0000\u045c\u0460\u0003\u00a6S\u0000\u045d\u0460\u0003\u0090H\u0000\u045e"+ - "\u0460\u0003\u0156\u00ab\u0000\u045f\u045b\u0001\u0000\u0000\u0000\u045f"+ - "\u045c\u0001\u0000\u0000\u0000\u045f\u045d\u0001\u0000\u0000\u0000\u045f"+ - "\u045e\u0001\u0000\u0000\u0000\u0460\u00a1\u0001\u0000\u0000\u0000\u0461"+ - "\u0462\u0005\u001a\u0000\u0000\u0462\u0465\u0005U\u0000\u0000\u0463\u0466"+ - "\u0003Z-\u0000\u0464\u0466\u0005\r\u0000\u0000\u0465\u0463\u0001\u0000"+ - "\u0000\u0000\u0465\u0464\u0001\u0000\u0000\u0000\u0466\u0467\u0001\u0000"+ - "\u0000\u0000\u0467\u0468\u0005V\u0000\u0000\u0468\u00a3\u0001\u0000\u0000"+ - "\u0000\u0469\u0478\u0003\u0120\u0090\u0000\u046a\u046c\u0003\u00ccf\u0000"+ - "\u046b\u046a\u0001\u0000\u0000\u0000\u046b\u046c\u0001\u0000\u0000\u0000"+ - "\u046c\u046e\u0001\u0000\u0000\u0000\u046d\u046f\u0003\n\u0005\u0000\u046e"+ - "\u046d\u0001\u0000\u0000\u0000\u046e\u046f\u0001\u0000\u0000\u0000\u046f"+ - "\u0470\u0001\u0000\u0000\u0000\u0470\u0479\u0005\u0084\u0000\u0000\u0471"+ - "\u0479\u0003\u0156\u00ab\u0000\u0472\u0474\u0003\n\u0005\u0000\u0473\u0475"+ - "\u0005D\u0000\u0000\u0474\u0473\u0001\u0000\u0000\u0000\u0474\u0475\u0001"+ - "\u0000\u0000\u0000\u0475\u0476\u0001\u0000\u0000\u0000\u0476\u0477\u0003"+ - "\u0156\u00ab\u0000\u0477\u0479\u0001\u0000\u0000\u0000\u0478\u046b\u0001"+ - "\u0000\u0000\u0000\u0478\u0471\u0001\u0000\u0000\u0000\u0478\u0472\u0001"+ - "\u0000\u0000\u0000\u0479\u0480\u0001\u0000\u0000\u0000\u047a\u047c\u0005"+ - "!\u0000\u0000\u047b\u047d\u0003\n\u0005\u0000\u047c\u047b\u0001\u0000"+ - "\u0000\u0000\u047c\u047d\u0001\u0000\u0000\u0000\u047d\u047e\u0001\u0000"+ - "\u0000\u0000\u047e\u0480\u0005\u0084\u0000\u0000\u047f\u0469\u0001\u0000"+ - "\u0000\u0000\u047f\u047a\u0001\u0000\u0000\u0000\u0480\u00a5\u0001\u0000"+ - "\u0000\u0000\u0481\u0482\u0005\u0084\u0000\u0000\u0482\u00a7\u0001\u0000"+ - "\u0000\u0000\u0483\u0484\u0003\u00aaU\u0000\u0484\u0489\u0005Y\u0000\u0000"+ - "\u0485\u0487\u0003\u00b2Y\u0000\u0486\u0488\u0005z\u0000\u0000\u0487\u0486"+ - "\u0001\u0000\u0000\u0000\u0487\u0488\u0001\u0000\u0000\u0000\u0488\u048a"+ - "\u0001\u0000\u0000\u0000\u0489\u0485\u0001\u0000\u0000\u0000\u0489\u048a"+ - "\u0001\u0000\u0000\u0000\u048a\u048b\u0001\u0000\u0000\u0000\u048b\u048c"+ - "\u0005Z\u0000\u0000\u048c\u00a9\u0001\u0000\u0000\u0000\u048d\u048f\u0003"+ - "\u00aeW\u0000\u048e\u0490\u0003\u00ccf\u0000\u048f\u048e\u0001\u0000\u0000"+ - "\u0000\u048f\u0490\u0001\u0000\u0000\u0000\u0490\u0495\u0001\u0000\u0000"+ - "\u0000\u0491\u0493\u0003\n\u0005\u0000\u0492\u0491\u0001\u0000\u0000\u0000"+ - "\u0492\u0493\u0001\u0000\u0000\u0000\u0493\u0494\u0001\u0000\u0000\u0000"+ - "\u0494\u0496\u0005\u0084\u0000\u0000\u0495\u0492\u0001\u0000\u0000\u0000"+ - "\u0495\u0496\u0001\u0000\u0000\u0000\u0496\u0498\u0001\u0000\u0000\u0000"+ - "\u0497\u0499\u0003\u00b0X\u0000\u0498\u0497\u0001\u0000\u0000\u0000\u0498"+ - "\u0499\u0001\u0000\u0000\u0000\u0499\u00ab\u0001\u0000\u0000\u0000\u049a"+ - "\u049c\u0003\u00aeW\u0000\u049b\u049d\u0003\u00ccf\u0000\u049c\u049b\u0001"+ - "\u0000\u0000\u0000\u049c\u049d\u0001\u0000\u0000\u0000\u049d\u049e\u0001"+ - "\u0000\u0000\u0000\u049e\u04a0\u0005\u0084\u0000\u0000\u049f\u04a1\u0003"+ - "\u00b0X\u0000\u04a0\u049f\u0001\u0000\u0000\u0000\u04a0\u04a1\u0001\u0000"+ - "\u0000\u0000\u04a1\u04a2\u0001\u0000\u0000\u0000\u04a2\u04a3\u0005\u0080"+ - "\u0000\u0000\u04a3\u00ad\u0001\u0000\u0000\u0000\u04a4\u04a6\u0005!\u0000"+ - "\u0000\u04a5\u04a7\u0007\u000f\u0000\u0000\u04a6\u04a5\u0001\u0000\u0000"+ - "\u0000\u04a6\u04a7\u0001\u0000\u0000\u0000\u04a7\u00af\u0001\u0000\u0000"+ - "\u0000\u04a8\u04a9\u0005~\u0000\u0000\u04a9\u04aa\u0003\u0096K\u0000\u04aa"+ - "\u00b1\u0001\u0000\u0000\u0000\u04ab\u04b0\u0003\u00b4Z\u0000\u04ac\u04ad"+ - "\u0005z\u0000\u0000\u04ad\u04af\u0003\u00b4Z\u0000\u04ae\u04ac\u0001\u0000"+ - "\u0000\u0000\u04af\u04b2\u0001\u0000\u0000\u0000\u04b0\u04ae\u0001\u0000"+ - "\u0000\u0000\u04b0\u04b1\u0001\u0000\u0000\u0000\u04b1\u00b3\u0001\u0000"+ - "\u0000\u0000\u04b2\u04b0\u0001\u0000\u0000\u0000\u04b3\u04b6\u0003\u00b6"+ - "[\u0000\u04b4\u04b5\u0005e\u0000\u0000\u04b5\u04b7\u0003\\.\u0000\u04b6"+ - "\u04b4\u0001\u0000\u0000\u0000\u04b6\u04b7\u0001\u0000\u0000\u0000\u04b7"+ - "\u00b5\u0001\u0000\u0000\u0000\u04b8\u04b9\u0005\u0084\u0000\u0000\u04b9"+ - "\u00b7\u0001\u0000\u0000\u0000\u04ba\u04bd\u0003\u00ba]\u0000\u04bb\u04bd"+ - "\u0003\u00be_\u0000\u04bc\u04ba\u0001\u0000\u0000\u0000\u04bc\u04bb\u0001"+ - "\u0000\u0000\u0000\u04bd\u00b9\u0001\u0000\u0000\u0000\u04be\u04bf\u0005"+ - "\u0084\u0000\u0000\u04bf\u00bb\u0001\u0000\u0000\u0000\u04c0\u04c2\u0005"+ - ",\u0000\u0000\u04c1\u04c0\u0001\u0000\u0000\u0000\u04c1\u04c2\u0001\u0000"+ - "\u0000\u0000\u04c2\u04c3\u0001\u0000\u0000\u0000\u04c3\u04c6\u00050\u0000"+ - "\u0000\u04c4\u04c7\u0005\u0084\u0000\u0000\u04c5\u04c7\u0003\u00ba]\u0000"+ - "\u04c6\u04c4\u0001\u0000\u0000\u0000\u04c6\u04c5\u0001\u0000\u0000\u0000"+ - "\u04c6\u04c7\u0001\u0000\u0000\u0000\u04c7\u04c8\u0001\u0000\u0000\u0000"+ - "\u04c8\u04ca\u0005Y\u0000\u0000\u04c9\u04cb\u0003x<\u0000\u04ca\u04c9"+ - "\u0001\u0000\u0000\u0000\u04ca\u04cb\u0001\u0000\u0000\u0000\u04cb\u04cc"+ - "\u0001\u0000\u0000\u0000\u04cc\u04cd\u0005Z\u0000\u0000\u04cd\u00bd\u0001"+ - "\u0000\u0000\u0000\u04ce\u04cf\u0005\u0084\u0000\u0000\u04cf\u00bf\u0001"+ - "\u0000\u0000\u0000\u04d0\u04d1\u00050\u0000\u0000\u04d1\u04d2\u0005\u0084"+ - "\u0000\u0000\u04d2\u04d3\u0005e\u0000\u0000\u04d3\u04d4\u0003\u00c2a\u0000"+ - "\u04d4\u04d5\u0005\u0080\u0000\u0000\u04d5\u00c1\u0001\u0000\u0000\u0000"+ - "\u04d6\u04d8\u0003\n\u0005\u0000\u04d7\u04d6\u0001\u0000\u0000\u0000\u04d7"+ - "\u04d8\u0001\u0000\u0000\u0000\u04d8\u04d9\u0001\u0000\u0000\u0000\u04d9"+ - "\u04da\u0003\u00b8\\\u0000\u04da\u00c3\u0001\u0000\u0000\u0000\u04db\u04e1"+ - "\u0005O\u0000\u0000\u04dc\u04de\u0005L\u0000\u0000\u04dd\u04dc\u0001\u0000"+ - "\u0000\u0000\u04dd\u04de\u0001\u0000\u0000\u0000\u04de\u04df\u0001\u0000"+ - "\u0000\u0000\u04df\u04e2\u0003\n\u0005\u0000\u04e0\u04e2\u0005\u007f\u0000"+ - "\u0000\u04e1\u04dd\u0001\u0000\u0000\u0000\u04e1\u04e0\u0001\u0000\u0000"+ - "\u0000\u04e2\u04e3\u0001\u0000\u0000\u0000\u04e3\u04e4\u0003\u0006\u0003"+ - "\u0000\u04e4\u04e5\u0005\u0080\u0000\u0000\u04e5\u00c5\u0001\u0000\u0000"+ - "\u0000\u04e6\u04e8\u0003\u00ccf\u0000\u04e7\u04e6\u0001\u0000\u0000\u0000"+ - "\u04e7\u04e8\u0001\u0000\u0000\u0000\u04e8\u04e9\u0001\u0000\u0000\u0000"+ - "\u04e9\u04ea\u0005O\u0000\u0000\u04ea\u04ec\u00050\u0000\u0000\u04eb\u04ed"+ - "\u0003\n\u0005\u0000\u04ec\u04eb\u0001\u0000\u0000\u0000\u04ec\u04ed\u0001"+ - "\u0000\u0000\u0000\u04ed\u04ee\u0001\u0000\u0000\u0000\u04ee\u04ef\u0003"+ - "\u00b8\\\u0000\u04ef\u04f0\u0005\u0080\u0000\u0000\u04f0\u00c7\u0001\u0000"+ - "\u0000\u0000\u04f1\u04f2\u0005\f\u0000\u0000\u04f2\u04f3\u0005U\u0000"+ - "\u0000\u04f3\u04f4\u0005\u0004\u0000\u0000\u04f4\u04f5\u0005V\u0000\u0000"+ - "\u04f5\u04f6\u0005\u0080\u0000\u0000\u04f6\u00c9\u0001\u0000\u0000\u0000"+ - "\u04f7\u04f8\u0005$\u0000\u0000\u04f8\u04ff\u0005\u0004\u0000\u0000\u04f9"+ - "\u04fb\u0005Y\u0000\u0000\u04fa\u04fc\u0003x<\u0000\u04fb\u04fa\u0001"+ - "\u0000\u0000\u0000\u04fb\u04fc\u0001\u0000\u0000\u0000\u04fc\u04fd\u0001"+ - "\u0000\u0000\u0000\u04fd\u0500\u0005Z\u0000\u0000\u04fe\u0500\u0003z="+ - "\u0000\u04ff\u04f9\u0001\u0000\u0000\u0000\u04ff\u04fe\u0001\u0000\u0000"+ - "\u0000\u0500\u00cb\u0001\u0000\u0000\u0000\u0501\u0503\u0003\u00ceg\u0000"+ - "\u0502\u0501\u0001\u0000\u0000\u0000\u0503\u0504\u0001\u0000\u0000\u0000"+ - "\u0504\u0502\u0001\u0000\u0000\u0000\u0504\u0505\u0001\u0000\u0000\u0000"+ - "\u0505\u00cd\u0001\u0000\u0000\u0000\u0506\u0507\u0005W\u0000\u0000\u0507"+ - "\u0509\u0005W\u0000\u0000\u0508\u050a\u0003\u00d2i\u0000\u0509\u0508\u0001"+ - "\u0000\u0000\u0000\u0509\u050a\u0001\u0000\u0000\u0000\u050a\u050b\u0001"+ - "\u0000\u0000\u0000\u050b\u050c\u0005X\u0000\u0000\u050c\u050f\u0005X\u0000"+ - "\u0000\u050d\u050f\u0003\u00d0h\u0000\u050e\u0506\u0001\u0000\u0000\u0000"+ - "\u050e\u050d\u0001\u0000\u0000\u0000\u050f\u00cf\u0001\u0000\u0000\u0000"+ - "\u0510\u0511\u0005\n\u0000\u0000\u0511\u0514\u0005U\u0000\u0000\u0512"+ - "\u0515\u0003\u00f6{\u0000\u0513\u0515\u0003\\.\u0000\u0514\u0512\u0001"+ - "\u0000\u0000\u0000\u0514\u0513\u0001\u0000\u0000\u0000\u0515\u0517\u0001"+ - "\u0000\u0000\u0000\u0516\u0518\u0005\u0083\u0000\u0000\u0517\u0516\u0001"+ - "\u0000\u0000\u0000\u0517\u0518\u0001\u0000\u0000\u0000\u0518\u0519\u0001"+ - "\u0000\u0000\u0000\u0519\u051a\u0005V\u0000\u0000\u051a\u00d1\u0001\u0000"+ - "\u0000\u0000\u051b\u0520\u0003\u00d4j\u0000\u051c\u051d\u0005z\u0000\u0000"+ - "\u051d\u051f\u0003\u00d4j\u0000\u051e\u051c\u0001\u0000\u0000\u0000\u051f"+ - "\u0522\u0001\u0000\u0000\u0000\u0520\u051e\u0001\u0000\u0000\u0000\u0520"+ - "\u0521\u0001\u0000\u0000\u0000\u0521\u0524\u0001\u0000\u0000\u0000\u0522"+ - "\u0520\u0001\u0000\u0000\u0000\u0523\u0525\u0005\u0083\u0000\u0000\u0524"+ - "\u0523\u0001\u0000\u0000\u0000\u0524\u0525\u0001\u0000\u0000\u0000\u0525"+ - "\u00d3\u0001\u0000\u0000\u0000\u0526\u0527\u0003\u00d6k\u0000\u0527\u0528"+ - "\u0005\u007f\u0000\u0000\u0528\u052a\u0001\u0000\u0000\u0000\u0529\u0526"+ - "\u0001\u0000\u0000\u0000\u0529\u052a\u0001\u0000\u0000\u0000\u052a\u052b"+ - "\u0001\u0000\u0000\u0000\u052b\u052d\u0005\u0084\u0000\u0000\u052c\u052e"+ - "\u0003\u00d8l\u0000\u052d\u052c\u0001\u0000\u0000\u0000\u052d\u052e\u0001"+ - "\u0000\u0000\u0000\u052e\u00d5\u0001\u0000\u0000\u0000\u052f\u0530\u0005"+ - "\u0084\u0000\u0000\u0530\u00d7\u0001\u0000\u0000\u0000\u0531\u0533\u0005"+ - "U\u0000\u0000\u0532\u0534\u0003\u00dam\u0000\u0533\u0532\u0001\u0000\u0000"+ - "\u0000\u0533\u0534\u0001\u0000\u0000\u0000\u0534\u0535\u0001\u0000\u0000"+ - "\u0000\u0535\u0536\u0005V\u0000\u0000\u0536\u00d9\u0001\u0000\u0000\u0000"+ - "\u0537\u0539\u0003\u00dcn\u0000\u0538\u0537\u0001\u0000\u0000\u0000\u0539"+ - "\u053a\u0001\u0000\u0000\u0000\u053a\u0538\u0001\u0000\u0000\u0000\u053a"+ - "\u053b\u0001\u0000\u0000\u0000\u053b\u00db\u0001\u0000\u0000\u0000\u053c"+ - "\u053d\u0005U\u0000\u0000\u053d\u053e\u0003\u00dam\u0000\u053e\u053f\u0005"+ - "V\u0000\u0000\u053f\u054e\u0001\u0000\u0000\u0000\u0540\u0541\u0005W\u0000"+ - "\u0000\u0541\u0542\u0003\u00dam\u0000\u0542\u0543\u0005X\u0000\u0000\u0543"+ - "\u054e\u0001\u0000\u0000\u0000\u0544\u0545\u0005Y\u0000\u0000\u0545\u0546"+ - "\u0003\u00dam\u0000\u0546\u0547\u0005Z\u0000\u0000\u0547\u054e\u0001\u0000"+ - "\u0000\u0000\u0548\u054a\b\u0010\u0000\u0000\u0549\u0548\u0001\u0000\u0000"+ - "\u0000\u054a\u054b\u0001\u0000\u0000\u0000\u054b\u0549\u0001\u0000\u0000"+ - "\u0000\u054b\u054c\u0001\u0000\u0000\u0000\u054c\u054e\u0001\u0000\u0000"+ - "\u0000\u054d\u053c\u0001\u0000\u0000\u0000\u054d\u0540\u0001\u0000\u0000"+ - "\u0000\u054d\u0544\u0001\u0000\u0000\u0000\u054d\u0549\u0001\u0000\u0000"+ - "\u0000\u054e\u00dd\u0001\u0000\u0000\u0000\u054f\u0554\u0003\u00e0p\u0000"+ - "\u0550\u0551\u0005z\u0000\u0000\u0551\u0553\u0003\u00e0p\u0000\u0552\u0550"+ - "\u0001\u0000\u0000\u0000\u0553\u0556\u0001\u0000\u0000\u0000\u0554\u0552"+ - "\u0001\u0000\u0000\u0000\u0554\u0555\u0001\u0000\u0000\u0000\u0555\u00df"+ - "\u0001\u0000\u0000\u0000\u0556\u0554\u0001\u0000\u0000\u0000\u0557\u0559"+ - "\u0003\u00e2q\u0000\u0558\u055a\u0003\u010c\u0086\u0000\u0559\u0558\u0001"+ - "\u0000\u0000\u0000\u0559\u055a\u0001\u0000\u0000\u0000\u055a\u00e1\u0001"+ - "\u0000\u0000\u0000\u055b\u0561\u0003\u00e4r\u0000\u055c\u055d\u0003\u00e6"+ - "s\u0000\u055d\u055e\u0003\u00e8t\u0000\u055e\u055f\u0003\u00eau\u0000"+ - "\u055f\u0561\u0001\u0000\u0000\u0000\u0560\u055b\u0001\u0000\u0000\u0000"+ - "\u0560\u055c\u0001\u0000\u0000\u0000\u0561\u00e3\u0001\u0000\u0000\u0000"+ - "\u0562\u0564\u0003\u00ecv\u0000\u0563\u0565\u0005\u0016\u0000\u0000\u0564"+ - "\u0563\u0001\u0000\u0000\u0000\u0564\u0565\u0001\u0000\u0000\u0000\u0565"+ - "\u0567\u0001\u0000\u0000\u0000\u0566\u0562\u0001\u0000\u0000\u0000\u0567"+ - "\u056a\u0001\u0000\u0000\u0000\u0568\u0566\u0001\u0000\u0000\u0000\u0568"+ - "\u0569\u0001\u0000\u0000\u0000\u0569\u056b\u0001\u0000\u0000\u0000\u056a"+ - "\u0568\u0001\u0000\u0000\u0000\u056b\u056c\u0003\u00e6s\u0000\u056c\u00e5"+ - "\u0001\u0000\u0000\u0000\u056d\u056e\u0006s\uffff\uffff\u0000\u056e\u0570"+ - "\u0003\u00f4z\u0000\u056f\u0571\u0003\u00ccf\u0000\u0570\u056f\u0001\u0000"+ - "\u0000\u0000\u0570\u0571\u0001\u0000\u0000\u0000\u0571\u0577\u0001\u0000"+ - "\u0000\u0000\u0572\u0573\u0005U\u0000\u0000\u0573\u0574\u0003\u00e4r\u0000"+ - "\u0574\u0575\u0005V\u0000\u0000\u0575\u0577\u0001\u0000\u0000\u0000\u0576"+ - "\u056d\u0001\u0000\u0000\u0000\u0576\u0572\u0001\u0000\u0000\u0000\u0577"+ - "\u0586\u0001\u0000\u0000\u0000\u0578\u0582\n\u0002\u0000\u0000\u0579\u0583"+ - "\u0003\u00e8t\u0000\u057a\u057c\u0005W\u0000\u0000\u057b\u057d\u0003\\"+ - ".\u0000\u057c\u057b\u0001\u0000\u0000\u0000\u057c\u057d\u0001\u0000\u0000"+ - "\u0000\u057d\u057e\u0001\u0000\u0000\u0000\u057e\u0580\u0005X\u0000\u0000"+ - "\u057f\u0581\u0003\u00ccf\u0000\u0580\u057f\u0001\u0000\u0000\u0000\u0580"+ - "\u0581\u0001\u0000\u0000\u0000\u0581\u0583\u0001\u0000\u0000\u0000\u0582"+ - "\u0579\u0001\u0000\u0000\u0000\u0582\u057a\u0001\u0000\u0000\u0000\u0583"+ - "\u0585\u0001\u0000\u0000\u0000\u0584\u0578\u0001\u0000\u0000\u0000\u0585"+ - "\u0588\u0001\u0000\u0000\u0000\u0586\u0584\u0001\u0000\u0000\u0000\u0586"+ - "\u0587\u0001\u0000\u0000\u0000\u0587\u00e7\u0001\u0000\u0000\u0000\u0588"+ - "\u0586\u0001\u0000\u0000\u0000\u0589\u058b\u0005U\u0000\u0000\u058a\u058c"+ - "\u0003\u0102\u0081\u0000\u058b\u058a\u0001\u0000\u0000\u0000\u058b\u058c"+ - "\u0001\u0000\u0000\u0000\u058c\u058d\u0001\u0000\u0000\u0000\u058d\u058f"+ - "\u0005V\u0000\u0000\u058e\u0590\u0003\u00eew\u0000\u058f\u058e\u0001\u0000"+ - "\u0000\u0000\u058f\u0590\u0001\u0000\u0000\u0000\u0590\u0592\u0001\u0000"+ - "\u0000\u0000\u0591\u0593\u0003\u00f2y\u0000\u0592\u0591\u0001\u0000\u0000"+ - "\u0000\u0592\u0593\u0001\u0000\u0000\u0000\u0593\u0595\u0001\u0000\u0000"+ - "\u0000\u0594\u0596\u0003\u0172\u00b9\u0000\u0595\u0594\u0001\u0000\u0000"+ - "\u0000\u0595\u0596\u0001\u0000\u0000\u0000\u0596\u0598\u0001\u0000\u0000"+ - "\u0000\u0597\u0599\u0003\u00ccf\u0000\u0598\u0597\u0001\u0000\u0000\u0000"+ - "\u0598\u0599\u0001\u0000\u0000\u0000\u0599\u00e9\u0001\u0000\u0000\u0000"+ - "\u059a\u059b\u0005|\u0000\u0000\u059b\u059d\u0003\u0098L\u0000\u059c\u059e"+ - "\u0003\u00f8|\u0000\u059d\u059c\u0001\u0000\u0000\u0000\u059d\u059e\u0001"+ - "\u0000\u0000\u0000\u059e\u00eb\u0001\u0000\u0000\u0000\u059f\u05a1\u0007"+ - "\u0011\u0000\u0000\u05a0\u05a2\u0003\u00ccf\u0000\u05a1\u05a0\u0001\u0000"+ - "\u0000\u0000\u05a1\u05a2\u0001\u0000\u0000\u0000\u05a2\u05ae\u0001\u0000"+ - "\u0000\u0000\u05a3\u05a5\u0003\n\u0005\u0000\u05a4\u05a3\u0001\u0000\u0000"+ - "\u0000\u05a4\u05a5\u0001\u0000\u0000\u0000\u05a5\u05a6\u0001\u0000\u0000"+ - "\u0000\u05a6\u05a8\u0005]\u0000\u0000\u05a7\u05a9\u0003\u00ccf\u0000\u05a8"+ - "\u05a7\u0001\u0000\u0000\u0000\u05a8\u05a9\u0001\u0000\u0000\u0000\u05a9"+ - "\u05ab\u0001\u0000\u0000\u0000\u05aa\u05ac\u0003\u00eew\u0000\u05ab\u05aa"+ - "\u0001\u0000\u0000\u0000\u05ab\u05ac\u0001\u0000\u0000\u0000\u05ac\u05ae"+ - "\u0001\u0000\u0000\u0000\u05ad\u059f\u0001\u0000\u0000\u0000\u05ad\u05a4"+ - "\u0001\u0000\u0000\u0000\u05ae\u00ed\u0001\u0000\u0000\u0000\u05af\u05b1"+ - "\u0003\u00f0x\u0000\u05b0\u05af\u0001\u0000\u0000\u0000\u05b1\u05b2\u0001"+ - "\u0000\u0000\u0000\u05b2\u05b0\u0001\u0000\u0000\u0000\u05b2\u05b3\u0001"+ - "\u0000\u0000\u0000\u05b3\u00ef\u0001\u0000\u0000\u0000\u05b4\u05b5\u0007"+ - "\u0012\u0000\u0000\u05b5\u00f1\u0001\u0000\u0000\u0000\u05b6\u05b7\u0007"+ - "\u0011\u0000\u0000\u05b7\u00f3\u0001\u0000\u0000\u0000\u05b8\u05ba\u0005"+ - "\u0083\u0000\u0000\u05b9\u05b8\u0001\u0000\u0000\u0000\u05b9\u05ba\u0001"+ - "\u0000\u0000\u0000\u05ba\u05bb\u0001\u0000\u0000\u0000\u05bb\u05bc\u0003"+ - "\u0004\u0002\u0000\u05bc\u00f5\u0001\u0000\u0000\u0000\u05bd\u05bf\u0003"+ - "\u0096K\u0000\u05be\u05c0\u0003\u00f8|\u0000\u05bf\u05be\u0001\u0000\u0000"+ - "\u0000\u05bf\u05c0\u0001\u0000\u0000\u0000\u05c0\u00f7\u0001\u0000\u0000"+ - "\u0000\u05c1\u05ca\u0003\u00fa}\u0000\u05c2\u05c4\u0003\u00fc~\u0000\u05c3"+ - "\u05c2\u0001\u0000\u0000\u0000\u05c3\u05c4\u0001\u0000\u0000\u0000\u05c4"+ - "\u05c5\u0001\u0000\u0000\u0000\u05c5\u05c6\u0003\u00e8t\u0000\u05c6\u05c7"+ - "\u0003\u00eau\u0000\u05c7\u05ca\u0001\u0000\u0000\u0000\u05c8\u05ca\u0003"+ - "\u00fe\u007f\u0000\u05c9\u05c1\u0001\u0000\u0000\u0000\u05c9\u05c3\u0001"+ - "\u0000\u0000\u0000\u05c9\u05c8\u0001\u0000\u0000\u0000\u05ca\u00f9\u0001"+ - "\u0000\u0000\u0000\u05cb\u05cd\u0003\u00ecv\u0000\u05cc\u05cb\u0001\u0000"+ - "\u0000\u0000\u05cd\u05d0\u0001\u0000\u0000\u0000\u05ce\u05cc\u0001\u0000"+ - "\u0000\u0000\u05ce\u05cf\u0001\u0000\u0000\u0000\u05cf\u05d3\u0001\u0000"+ - "\u0000\u0000\u05d0\u05ce\u0001\u0000\u0000\u0000\u05d1\u05d4\u0003\u00fc"+ - "~\u0000\u05d2\u05d4\u0003\u00ecv\u0000\u05d3\u05d1\u0001\u0000\u0000\u0000"+ - "\u05d3\u05d2\u0001\u0000\u0000\u0000\u05d4\u00fb\u0001\u0000\u0000\u0000"+ - "\u05d5\u05db\u0003\u00e8t\u0000\u05d6\u05d7\u0005U\u0000\u0000\u05d7\u05d8"+ - "\u0003\u00fa}\u0000\u05d8\u05d9\u0005V\u0000\u0000\u05d9\u05db\u0001\u0000"+ - "\u0000\u0000\u05da\u05d5\u0001\u0000\u0000\u0000\u05da\u05d6\u0001\u0000"+ - "\u0000\u0000\u05db\u05e7\u0001\u0000\u0000\u0000\u05dc\u05e6\u0003\u00e8"+ - "t\u0000\u05dd\u05df\u0005W\u0000\u0000\u05de\u05e0\u0003\\.\u0000\u05df"+ - "\u05de\u0001\u0000\u0000\u0000\u05df\u05e0\u0001\u0000\u0000\u0000\u05e0"+ - "\u05e1\u0001\u0000\u0000\u0000\u05e1\u05e3\u0005X\u0000\u0000\u05e2\u05e4"+ - "\u0003\u00ccf\u0000\u05e3\u05e2\u0001\u0000\u0000\u0000\u05e3\u05e4\u0001"+ - "\u0000\u0000\u0000\u05e4\u05e6\u0001\u0000\u0000\u0000\u05e5\u05dc\u0001"+ - "\u0000\u0000\u0000\u05e5\u05dd\u0001\u0000\u0000\u0000\u05e6\u05e9\u0001"+ - "\u0000\u0000\u0000\u05e7\u05e5\u0001\u0000\u0000\u0000\u05e7\u05e8\u0001"+ - "\u0000\u0000\u0000\u05e8\u00fd\u0001\u0000\u0000\u0000\u05e9\u05e7\u0001"+ - "\u0000\u0000\u0000\u05ea\u05ec\u0003\u00ecv\u0000\u05eb\u05ea\u0001\u0000"+ - "\u0000\u0000\u05ec\u05ef\u0001\u0000\u0000\u0000\u05ed\u05eb\u0001\u0000"+ - "\u0000\u0000\u05ed\u05ee\u0001\u0000\u0000\u0000\u05ee\u05f0\u0001\u0000"+ - "\u0000\u0000\u05ef\u05ed\u0001\u0000\u0000\u0000\u05f0\u05f1\u0003\u0100"+ - "\u0080\u0000\u05f1\u00ff\u0001\u0000\u0000\u0000\u05f2\u05fe\u0005\u0083"+ - "\u0000\u0000\u05f3\u05fd\u0003\u00e8t\u0000\u05f4\u05f6\u0005W\u0000\u0000"+ - "\u05f5\u05f7\u0003\\.\u0000\u05f6\u05f5\u0001\u0000\u0000\u0000\u05f6"+ - "\u05f7\u0001\u0000\u0000\u0000\u05f7\u05f8\u0001\u0000\u0000\u0000\u05f8"+ - "\u05fa\u0005X\u0000\u0000\u05f9\u05fb\u0003\u00ccf\u0000\u05fa\u05f9\u0001"+ - "\u0000\u0000\u0000\u05fa\u05fb\u0001\u0000\u0000\u0000\u05fb\u05fd\u0001"+ - "\u0000\u0000\u0000\u05fc\u05f3\u0001\u0000\u0000\u0000\u05fc\u05f4\u0001"+ - "\u0000\u0000\u0000\u05fd\u0600\u0001\u0000\u0000\u0000\u05fe\u05fc\u0001"+ - "\u0000\u0000\u0000\u05fe\u05ff\u0001\u0000\u0000\u0000\u05ff\u0101\u0001"+ - "\u0000\u0000\u0000\u0600\u05fe\u0001\u0000\u0000\u0000\u0601\u0606\u0003"+ - "\u0104\u0082\u0000\u0602\u0604\u0005z\u0000\u0000\u0603\u0602\u0001\u0000"+ - "\u0000\u0000\u0603\u0604\u0001\u0000\u0000\u0000\u0604\u0605\u0001\u0000"+ - "\u0000\u0000\u0605\u0607\u0005\u0083\u0000\u0000\u0606\u0603\u0001\u0000"+ - "\u0000\u0000\u0606\u0607\u0001\u0000\u0000\u0000\u0607\u0103\u0001\u0000"+ - "\u0000\u0000\u0608\u060d\u0003\u0106\u0083\u0000\u0609\u060a\u0005z\u0000"+ - "\u0000\u060a\u060c\u0003\u0106\u0083\u0000\u060b\u0609\u0001\u0000\u0000"+ - "\u0000\u060c\u060f\u0001\u0000\u0000\u0000\u060d\u060b\u0001\u0000\u0000"+ - "\u0000\u060d\u060e\u0001\u0000\u0000\u0000\u060e\u0105\u0001\u0000\u0000"+ - "\u0000\u060f\u060d\u0001\u0000\u0000\u0000\u0610\u0612\u0003\u00ccf\u0000"+ - "\u0611\u0610\u0001\u0000\u0000\u0000\u0611\u0612\u0001\u0000\u0000\u0000"+ - "\u0612\u0613\u0001\u0000\u0000\u0000\u0613\u0618\u0003\u008aE\u0000\u0614"+ - "\u0619\u0003\u00e2q\u0000\u0615\u0617\u0003\u00f8|\u0000\u0616\u0615\u0001"+ - "\u0000\u0000\u0000\u0616\u0617\u0001\u0000\u0000\u0000\u0617\u0619\u0001"+ - "\u0000\u0000\u0000\u0618\u0614\u0001\u0000\u0000\u0000\u0618\u0616\u0001"+ - "\u0000\u0000\u0000\u0619\u061c\u0001\u0000\u0000\u0000\u061a\u061b\u0005"+ - "e\u0000\u0000\u061b\u061d\u0003\u0110\u0088\u0000\u061c\u061a\u0001\u0000"+ - "\u0000\u0000\u061c\u061d\u0001\u0000\u0000\u0000\u061d\u0107\u0001\u0000"+ - "\u0000\u0000\u061e\u0620\u0003\u00ccf\u0000\u061f\u061e\u0001\u0000\u0000"+ - "\u0000\u061f\u0620\u0001\u0000\u0000\u0000\u0620\u0622\u0001\u0000\u0000"+ - "\u0000\u0621\u0623\u0003\u008aE\u0000\u0622\u0621\u0001\u0000\u0000\u0000"+ - "\u0622\u0623\u0001\u0000\u0000\u0000\u0623\u0624\u0001\u0000\u0000\u0000"+ - "\u0624\u0626\u0003\u00e2q\u0000\u0625\u0627\u0003\u012a\u0095\u0000\u0626"+ - "\u0625\u0001\u0000\u0000\u0000\u0626\u0627\u0001\u0000\u0000\u0000\u0627"+ - "\u0628\u0001\u0000\u0000\u0000\u0628\u0629\u0003\u010a\u0085\u0000\u0629"+ - "\u0109\u0001\u0000\u0000\u0000\u062a\u062c\u0003\u0142\u00a1\u0000\u062b"+ - "\u062a\u0001\u0000\u0000\u0000\u062b\u062c\u0001\u0000\u0000\u0000\u062c"+ - "\u062d\u0001\u0000\u0000\u0000\u062d\u0633\u0003d2\u0000\u062e\u0633\u0003"+ - "\u0168\u00b4\u0000\u062f\u0630\u0005e\u0000\u0000\u0630\u0631\u0007\u0013"+ - "\u0000\u0000\u0631\u0633\u0005\u0080\u0000\u0000\u0632\u062b\u0001\u0000"+ - "\u0000\u0000\u0632\u062e\u0001\u0000\u0000\u0000\u0632\u062f\u0001\u0000"+ - "\u0000\u0000\u0633\u010b\u0001\u0000\u0000\u0000\u0634\u063a\u0003\u010e"+ - "\u0087\u0000\u0635\u0636\u0005U\u0000\u0000\u0636\u0637\u0003\"\u0011"+ - "\u0000\u0637\u0638\u0005V\u0000\u0000\u0638\u063a\u0001\u0000\u0000\u0000"+ - "\u0639\u0634\u0001\u0000\u0000\u0000\u0639\u0635\u0001\u0000\u0000\u0000"+ - "\u063a\u010d\u0001\u0000\u0000\u0000\u063b\u063c\u0005e\u0000\u0000\u063c"+ - "\u063f\u0003\u0110\u0088\u0000\u063d\u063f\u0003\u0114\u008a\u0000\u063e"+ - "\u063b\u0001\u0000\u0000\u0000\u063e\u063d\u0001\u0000\u0000\u0000\u063f"+ - "\u010f\u0001\u0000\u0000\u0000\u0640\u0643\u0003V+\u0000\u0641\u0643\u0003"+ - "\u0114\u008a\u0000\u0642\u0640\u0001\u0000\u0000\u0000\u0642\u0641\u0001"+ - "\u0000\u0000\u0000\u0643\u0111\u0001\u0000\u0000\u0000\u0644\u0646\u0003"+ - "\u0110\u0088\u0000\u0645\u0647\u0005\u0083\u0000\u0000\u0646\u0645\u0001"+ - "\u0000\u0000\u0000\u0646\u0647\u0001\u0000\u0000\u0000\u0647\u064f\u0001"+ - "\u0000\u0000\u0000\u0648\u0649\u0005z\u0000\u0000\u0649\u064b\u0003\u0110"+ - "\u0088\u0000\u064a\u064c\u0005\u0083\u0000\u0000\u064b\u064a\u0001\u0000"+ - "\u0000\u0000\u064b\u064c\u0001\u0000\u0000\u0000\u064c\u064e\u0001\u0000"+ - "\u0000\u0000\u064d\u0648\u0001\u0000\u0000\u0000\u064e\u0651\u0001\u0000"+ - "\u0000\u0000\u064f\u064d\u0001\u0000\u0000\u0000\u064f\u0650\u0001\u0000"+ - "\u0000\u0000\u0650\u0113\u0001\u0000\u0000\u0000\u0651\u064f\u0001\u0000"+ - "\u0000\u0000\u0652\u0657\u0005Y\u0000\u0000\u0653\u0655\u0003\u0112\u0089"+ - "\u0000\u0654\u0656\u0005z\u0000\u0000\u0655\u0654\u0001\u0000\u0000\u0000"+ - "\u0655\u0656\u0001\u0000\u0000\u0000\u0656\u0658\u0001\u0000\u0000\u0000"+ - "\u0657\u0653\u0001\u0000\u0000\u0000\u0657\u0658\u0001\u0000\u0000\u0000"+ - "\u0658\u0659\u0001\u0000\u0000\u0000\u0659\u065a\u0005Z\u0000\u0000\u065a"+ - "\u0115\u0001\u0000\u0000\u0000\u065b\u065e\u0005\u0084\u0000\u0000\u065c"+ - "\u065e\u0003\u0156\u00ab\u0000\u065d\u065b\u0001\u0000\u0000\u0000\u065d"+ - "\u065c\u0001\u0000\u0000\u0000\u065e\u0117\u0001\u0000\u0000\u0000\u065f"+ - "\u0660\u0003\u011a\u008d\u0000\u0660\u0662\u0005Y\u0000\u0000\u0661\u0663"+ - "\u0003\u0122\u0091\u0000\u0662\u0661\u0001\u0000\u0000\u0000\u0662\u0663"+ - "\u0001\u0000\u0000\u0000\u0663\u0664\u0001\u0000\u0000\u0000\u0664\u0665"+ - "\u0005Z\u0000\u0000\u0665\u0119\u0001\u0000\u0000\u0000\u0666\u0668\u0003"+ - "\u0120\u0090\u0000\u0667\u0669\u0003\u00ccf\u0000\u0668\u0667\u0001\u0000"+ - "\u0000\u0000\u0668\u0669\u0001\u0000\u0000\u0000\u0669\u066e\u0001\u0000"+ - "\u0000\u0000\u066a\u066c\u0003\u011c\u008e\u0000\u066b\u066d\u0003\u011e"+ - "\u008f\u0000\u066c\u066b\u0001\u0000\u0000\u0000\u066c\u066d\u0001\u0000"+ - "\u0000\u0000\u066d\u066f\u0001\u0000\u0000\u0000\u066e\u066a\u0001\u0000"+ - "\u0000\u0000\u066e\u066f\u0001\u0000\u0000\u0000\u066f\u0671\u0001\u0000"+ - "\u0000\u0000\u0670\u0672\u0003\u0130\u0098\u0000\u0671\u0670\u0001\u0000"+ - "\u0000\u0000\u0671\u0672\u0001\u0000\u0000\u0000\u0672\u067e\u0001\u0000"+ - "\u0000\u0000\u0673\u0675\u0005M\u0000\u0000\u0674\u0676\u0003\u00ccf\u0000"+ - "\u0675\u0674\u0001\u0000\u0000\u0000\u0675\u0676\u0001\u0000\u0000\u0000"+ - "\u0676\u067b\u0001\u0000\u0000\u0000\u0677\u0679\u0003\u011c\u008e\u0000"+ - "\u0678\u067a\u0003\u011e\u008f\u0000\u0679\u0678\u0001\u0000\u0000\u0000"+ - "\u0679\u067a\u0001\u0000\u0000\u0000\u067a\u067c\u0001\u0000\u0000\u0000"+ - "\u067b\u0677\u0001\u0000\u0000\u0000\u067b\u067c\u0001\u0000\u0000\u0000"+ - "\u067c\u067e\u0001\u0000\u0000\u0000\u067d\u0666\u0001\u0000\u0000\u0000"+ - "\u067d\u0673\u0001\u0000\u0000\u0000\u067e\u011b\u0001\u0000\u0000\u0000"+ - "\u067f\u0681\u0003\n\u0005\u0000\u0680\u067f\u0001\u0000\u0000\u0000\u0680"+ - "\u0681\u0001\u0000\u0000\u0000\u0681\u0682\u0001\u0000\u0000\u0000\u0682"+ - "\u0683\u0003\u0116\u008b\u0000\u0683\u011d\u0001\u0000\u0000\u0000\u0684"+ - "\u0685\u0005&\u0000\u0000\u0685\u011f\u0001\u0000\u0000\u0000\u0686\u0687"+ - "\u0007\u000f\u0000\u0000\u0687\u0121\u0001\u0000\u0000\u0000\u0688\u068d"+ - "\u0003\u0124\u0092\u0000\u0689\u068a\u0003\u013a\u009d\u0000\u068a\u068b"+ - "\u0005~\u0000\u0000\u068b\u068d\u0001\u0000\u0000\u0000\u068c\u0688\u0001"+ - "\u0000\u0000\u0000\u068c\u0689\u0001\u0000\u0000\u0000\u068d\u068e\u0001"+ - "\u0000\u0000\u0000\u068e\u068c\u0001\u0000\u0000\u0000\u068e\u068f\u0001"+ - "\u0000\u0000\u0000\u068f\u0123\u0001\u0000\u0000\u0000\u0690\u0692\u0003"+ - "\u00ccf\u0000\u0691\u0690\u0001\u0000\u0000\u0000\u0691\u0692\u0001\u0000"+ - "\u0000\u0000\u0692\u0694\u0001\u0000\u0000\u0000\u0693\u0695\u0003\u008a"+ - "E\u0000\u0694\u0693\u0001\u0000\u0000\u0000\u0694\u0695\u0001\u0000\u0000"+ - "\u0000\u0695\u0697\u0001\u0000\u0000\u0000\u0696\u0698\u0003\u0126\u0093"+ - "\u0000\u0697\u0696\u0001\u0000\u0000\u0000\u0697\u0698\u0001\u0000\u0000"+ - "\u0000\u0698\u0699\u0001\u0000\u0000\u0000\u0699\u06a1\u0005\u0080\u0000"+ - "\u0000\u069a\u06a1\u0003\u0108\u0084\u0000\u069b\u06a1\u0003\u00c4b\u0000"+ - "\u069c\u06a1\u0003\u0082A\u0000\u069d\u06a1\u0003\u014e\u00a7\u0000\u069e"+ - "\u06a1\u0003~?\u0000\u069f\u06a1\u0003\u0084B\u0000\u06a0\u0691\u0001"+ - "\u0000\u0000\u0000\u06a0\u069a\u0001\u0000\u0000\u0000\u06a0\u069b\u0001"+ - "\u0000\u0000\u0000\u06a0\u069c\u0001\u0000\u0000\u0000\u06a0\u069d\u0001"+ - "\u0000\u0000\u0000\u06a0\u069e\u0001\u0000\u0000\u0000\u06a0\u069f\u0001"+ - "\u0000\u0000\u0000\u06a1\u0125\u0001\u0000\u0000\u0000\u06a2\u06a7\u0003"+ - "\u0128\u0094\u0000\u06a3\u06a4\u0005z\u0000\u0000\u06a4\u06a6\u0003\u0128"+ - "\u0094\u0000\u06a5\u06a3\u0001\u0000\u0000\u0000\u06a6\u06a9\u0001\u0000"+ - "\u0000\u0000\u06a7\u06a5\u0001\u0000\u0000\u0000\u06a7\u06a8\u0001\u0000"+ - "\u0000\u0000\u06a8\u0127\u0001\u0000\u0000\u0000\u06a9\u06a7\u0001\u0000"+ - "\u0000\u0000\u06aa\u06b3\u0003\u00e2q\u0000\u06ab\u06b4\u0003\u012a\u0095"+ - "\u0000\u06ac\u06ad\u0004\u0094\u0007\u0000\u06ad\u06b4\u0003\u012e\u0097"+ - "\u0000\u06ae\u06af\u0004\u0094\b\u0000\u06af\u06b0\u0003\u012a\u0095\u0000"+ - "\u06b0\u06b1\u0003\u012e\u0097\u0000\u06b1\u06b4\u0001\u0000\u0000\u0000"+ - "\u06b2\u06b4\u0003\u010e\u0087\u0000\u06b3\u06ab\u0001\u0000\u0000\u0000"+ - "\u06b3\u06ac\u0001\u0000\u0000\u0000\u06b3\u06ae\u0001\u0000\u0000\u0000"+ - "\u06b3\u06b2\u0001\u0000\u0000\u0000\u06b4\u06bf\u0001\u0000\u0000\u0000"+ - "\u06b5\u06bf\u0003\u00e2q\u0000\u06b6\u06b8\u0005\u0084\u0000\u0000\u06b7"+ - "\u06b6\u0001\u0000\u0000\u0000\u06b7\u06b8\u0001\u0000\u0000\u0000\u06b8"+ - "\u06ba\u0001\u0000\u0000\u0000\u06b9\u06bb\u0003\u00ccf\u0000\u06ba\u06b9"+ - "\u0001\u0000\u0000\u0000\u06ba\u06bb\u0001\u0000\u0000\u0000\u06bb\u06bc"+ - "\u0001\u0000\u0000\u0000\u06bc\u06bd\u0005~\u0000\u0000\u06bd\u06bf\u0003"+ - "\\.\u0000\u06be\u06aa\u0001\u0000\u0000\u0000\u06be\u06b5\u0001\u0000"+ - "\u0000\u0000\u06be\u06b7\u0001\u0000\u0000\u0000\u06bf\u0129\u0001\u0000"+ - "\u0000\u0000\u06c0\u06c2\u0003\u012c\u0096\u0000\u06c1\u06c0\u0001\u0000"+ - "\u0000\u0000\u06c2\u06c3\u0001\u0000\u0000\u0000\u06c3\u06c1\u0001\u0000"+ - "\u0000\u0000\u06c3\u06c4\u0001\u0000\u0000\u0000\u06c4\u012b\u0001\u0000"+ - "\u0000\u0000\u06c5\u06c6\u0007\u0014\u0000\u0000\u06c6\u012d\u0001\u0000"+ - "\u0000\u0000\u06c7\u06c8\u0005e\u0000\u0000\u06c8\u06c9\u0005\u0001\u0000"+ - "\u0000\u06c9\u012f\u0001\u0000\u0000\u0000\u06ca\u06cb\u0005~\u0000\u0000"+ - "\u06cb\u06cc\u0003\u0132\u0099\u0000\u06cc\u0131\u0001\u0000\u0000\u0000"+ - "\u06cd\u06cf\u0003\u0134\u009a\u0000\u06ce\u06d0\u0005\u0083\u0000\u0000"+ - "\u06cf\u06ce\u0001\u0000\u0000\u0000\u06cf\u06d0\u0001\u0000\u0000\u0000"+ - "\u06d0\u06d8\u0001\u0000\u0000\u0000\u06d1\u06d2\u0005z\u0000\u0000\u06d2"+ - "\u06d4\u0003\u0134\u009a\u0000\u06d3\u06d5\u0005\u0083\u0000\u0000\u06d4"+ - "\u06d3\u0001\u0000\u0000\u0000\u06d4\u06d5\u0001\u0000\u0000\u0000\u06d5"+ - "\u06d7\u0001\u0000\u0000\u0000\u06d6\u06d1\u0001\u0000\u0000\u0000\u06d7"+ - "\u06da\u0001\u0000\u0000\u0000\u06d8\u06d6\u0001\u0000\u0000\u0000\u06d8"+ - "\u06d9\u0001\u0000\u0000\u0000\u06d9\u0133\u0001\u0000\u0000\u0000\u06da"+ - "\u06d8\u0001\u0000\u0000\u0000\u06db\u06dd\u0003\u00ccf\u0000\u06dc\u06db"+ - "\u0001\u0000\u0000\u0000\u06dc\u06dd\u0001\u0000\u0000\u0000\u06dd\u06ea"+ - "\u0001\u0000\u0000\u0000\u06de\u06eb\u0003\u0138\u009c\u0000\u06df\u06e1"+ - "\u0005P\u0000\u0000\u06e0\u06e2\u0003\u013a\u009d\u0000\u06e1\u06e0\u0001"+ - "\u0000\u0000\u0000\u06e1\u06e2\u0001\u0000\u0000\u0000\u06e2\u06e3\u0001"+ - "\u0000\u0000\u0000\u06e3\u06eb\u0003\u0138\u009c\u0000\u06e4\u06e6\u0003"+ - "\u013a\u009d\u0000\u06e5\u06e7\u0005P\u0000\u0000\u06e6\u06e5\u0001\u0000"+ - "\u0000\u0000\u06e6\u06e7\u0001\u0000\u0000\u0000\u06e7\u06e8\u0001\u0000"+ - "\u0000\u0000\u06e8\u06e9\u0003\u0138\u009c\u0000\u06e9\u06eb\u0001\u0000"+ - "\u0000\u0000\u06ea\u06de\u0001\u0000\u0000\u0000\u06ea\u06df\u0001\u0000"+ - "\u0000\u0000\u06ea\u06e4\u0001\u0000\u0000\u0000\u06eb\u0135\u0001\u0000"+ - "\u0000\u0000\u06ec\u06ee\u0003\n\u0005\u0000\u06ed\u06ec\u0001\u0000\u0000"+ - "\u0000\u06ed\u06ee\u0001\u0000\u0000\u0000\u06ee\u06ef\u0001\u0000\u0000"+ - "\u0000\u06ef\u06f2\u0003\u0116\u008b\u0000\u06f0\u06f2\u0003\u00a2Q\u0000"+ - "\u06f1\u06ed\u0001\u0000\u0000\u0000\u06f1\u06f0\u0001\u0000\u0000\u0000"+ - "\u06f2\u0137\u0001\u0000\u0000\u0000\u06f3\u06f4\u0003\u0136\u009b\u0000"+ - "\u06f4\u0139\u0001\u0000\u0000\u0000\u06f5\u06f6\u0007\u0015\u0000\u0000"+ - "\u06f6\u013b\u0001\u0000\u0000\u0000\u06f7\u06f8\u00054\u0000\u0000\u06f8"+ - "\u06f9\u0003\u013e\u009f\u0000\u06f9\u013d\u0001\u0000\u0000\u0000\u06fa"+ - "\u06fc\u0003\u0096K\u0000\u06fb\u06fd\u0003\u0140\u00a0\u0000\u06fc\u06fb"+ - "\u0001\u0000\u0000\u0000\u06fc\u06fd\u0001\u0000\u0000\u0000\u06fd\u013f"+ - "\u0001\u0000\u0000\u0000\u06fe\u0700\u0003\u00ecv\u0000\u06ff\u0701\u0003"+ - "\u0140\u00a0\u0000\u0700\u06ff\u0001\u0000\u0000\u0000\u0700\u0701\u0001"+ - "\u0000\u0000\u0000\u0701\u0141\u0001\u0000\u0000\u0000\u0702\u0703\u0005"+ - "~\u0000\u0000\u0703\u0704\u0003\u0144\u00a2\u0000\u0704\u0143\u0001\u0000"+ - "\u0000\u0000\u0705\u0707\u0003\u0146\u00a3\u0000\u0706\u0708\u0005\u0083"+ - "\u0000\u0000\u0707\u0706\u0001\u0000\u0000\u0000\u0707\u0708\u0001\u0000"+ - "\u0000\u0000\u0708\u0710\u0001\u0000\u0000\u0000\u0709\u070a\u0005z\u0000"+ - "\u0000\u070a\u070c\u0003\u0146\u00a3\u0000\u070b\u070d\u0005\u0083\u0000"+ - "\u0000\u070c\u070b\u0001\u0000\u0000\u0000\u070c\u070d\u0001\u0000\u0000"+ - "\u0000\u070d\u070f\u0001\u0000\u0000\u0000\u070e\u0709\u0001\u0000\u0000"+ - "\u0000\u070f\u0712\u0001\u0000\u0000\u0000\u0710\u070e\u0001\u0000\u0000"+ - "\u0000\u0710\u0711\u0001\u0000\u0000\u0000\u0711\u0145\u0001\u0000\u0000"+ - "\u0000\u0712\u0710\u0001\u0000\u0000\u0000\u0713\u071a\u0003\u0148\u00a4"+ - "\u0000\u0714\u0716\u0005U\u0000\u0000\u0715\u0717\u0003\"\u0011\u0000"+ - "\u0716\u0715\u0001\u0000\u0000\u0000\u0716\u0717\u0001\u0000\u0000\u0000"+ - "\u0717\u0718\u0001\u0000\u0000\u0000\u0718\u071b\u0005V\u0000\u0000\u0719"+ - "\u071b\u0003\u0114\u008a\u0000\u071a\u0714\u0001\u0000\u0000\u0000\u071a"+ - "\u0719\u0001\u0000\u0000\u0000\u071b\u0147\u0001\u0000\u0000\u0000\u071c"+ - "\u071f\u0003\u0136\u009b\u0000\u071d\u071f\u0005\u0084\u0000\u0000\u071e"+ - "\u071c\u0001\u0000\u0000\u0000\u071e\u071d\u0001\u0000\u0000\u0000\u071f"+ - "\u0149\u0001\u0000\u0000\u0000\u0720\u0721\u00054\u0000\u0000\u0721\u0722"+ - "\u0003\u017a\u00bd\u0000\u0722\u014b\u0001\u0000\u0000\u0000\u0723\u0727"+ - "\u00054\u0000\u0000\u0724\u0725\u0005\u0004\u0000\u0000\u0725\u0728\u0005"+ - "\u0084\u0000\u0000\u0726\u0728\u0005\u008c\u0000\u0000\u0727\u0724\u0001"+ - "\u0000\u0000\u0000\u0727\u0726\u0001\u0000\u0000\u0000\u0728\u014d\u0001"+ - "\u0000\u0000\u0000\u0729\u072a\u0005D\u0000\u0000\u072a\u072b\u0005f\u0000"+ - "\u0000\u072b\u072c\u0003\u0150\u00a8\u0000\u072c\u072d\u0005g\u0000\u0000"+ - "\u072d\u072e\u0003z=\u0000\u072e\u014f\u0001\u0000\u0000\u0000\u072f\u0734"+ - "\u0003\u0152\u00a9\u0000\u0730\u0731\u0005z\u0000\u0000\u0731\u0733\u0003"+ - "\u0152\u00a9\u0000\u0732\u0730\u0001\u0000\u0000\u0000\u0733\u0736\u0001"+ - "\u0000\u0000\u0000\u0734\u0732\u0001\u0000\u0000\u0000\u0734\u0735\u0001"+ - "\u0000\u0000\u0000\u0735\u0151\u0001\u0000\u0000\u0000\u0736\u0734\u0001"+ - "\u0000\u0000\u0000\u0737\u073a\u0003\u0154\u00aa\u0000\u0738\u073a\u0003"+ - "\u0106\u0083\u0000\u0739\u0737\u0001\u0000\u0000\u0000\u0739\u0738\u0001"+ - "\u0000\u0000\u0000\u073a\u0153\u0001\u0000\u0000\u0000\u073b\u073c\u0005"+ - "D\u0000\u0000\u073c\u073d\u0005f\u0000\u0000\u073d\u073e\u0003\u0150\u00a8"+ - "\u0000\u073e\u073f\u0005g\u0000\u0000\u073f\u0741\u0001\u0000\u0000\u0000"+ - "\u0740\u073b\u0001\u0000\u0000\u0000\u0740\u0741\u0001\u0000\u0000\u0000"+ - "\u0741\u0742\u0001\u0000\u0000\u0000\u0742\u0745\u0005\u0015\u0000\u0000"+ - "\u0743\u0745\u0005L\u0000\u0000\u0744\u0740\u0001\u0000\u0000\u0000\u0744"+ - "\u0743\u0001\u0000\u0000\u0000\u0745\u0751\u0001\u0000\u0000\u0000\u0746"+ - "\u0748\u0005\u0083\u0000\u0000\u0747\u0746\u0001\u0000\u0000\u0000\u0747"+ - "\u0748\u0001\u0000\u0000\u0000\u0748\u074a\u0001\u0000\u0000\u0000\u0749"+ - "\u074b\u0005\u0084\u0000\u0000\u074a\u0749\u0001\u0000\u0000\u0000\u074a"+ - "\u074b\u0001\u0000\u0000\u0000\u074b\u0752\u0001\u0000\u0000\u0000\u074c"+ - "\u074e\u0005\u0084\u0000\u0000\u074d\u074c\u0001\u0000\u0000\u0000\u074d"+ - "\u074e\u0001\u0000\u0000\u0000\u074e\u074f\u0001\u0000\u0000\u0000\u074f"+ - "\u0750\u0005e\u0000\u0000\u0750\u0752\u0003\u00f6{\u0000\u0751\u0747\u0001"+ - "\u0000\u0000\u0000\u0751\u074d\u0001\u0000\u0000\u0000\u0752\u0155\u0001"+ - "\u0000\u0000\u0000\u0753\u0754\u0003\u015a\u00ad\u0000\u0754\u0756\u0005"+ - "f\u0000\u0000\u0755\u0757\u0003\u015c\u00ae\u0000\u0756\u0755\u0001\u0000"+ - "\u0000\u0000\u0756\u0757\u0001\u0000\u0000\u0000\u0757\u0758\u0001\u0000"+ - "\u0000\u0000\u0758\u0759\u0005g\u0000\u0000\u0759\u0157\u0001\u0000\u0000"+ - "\u0000\u075a\u0766\u0003\u0156\u00ab\u0000\u075b\u075e\u0003\u014a\u00a5"+ - "\u0000\u075c\u075e\u0003\u014c\u00a6\u0000\u075d\u075b\u0001\u0000\u0000"+ - "\u0000\u075d\u075c\u0001\u0000\u0000\u0000\u075e\u075f\u0001\u0000\u0000"+ - "\u0000\u075f\u0761\u0005f\u0000\u0000\u0760\u0762\u0003\u015c\u00ae\u0000"+ - "\u0761\u0760\u0001\u0000\u0000\u0000\u0761\u0762\u0001\u0000\u0000\u0000"+ - "\u0762\u0763\u0001\u0000\u0000\u0000\u0763\u0764\u0005g\u0000\u0000\u0764"+ - "\u0766\u0001\u0000\u0000\u0000\u0765\u075a\u0001\u0000\u0000\u0000\u0765"+ - "\u075d\u0001\u0000\u0000\u0000\u0766\u0159\u0001\u0000\u0000\u0000\u0767"+ - "\u0768\u0005\u0084\u0000\u0000\u0768\u015b\u0001\u0000\u0000\u0000\u0769"+ - "\u076b\u0003\u015e\u00af\u0000\u076a\u076c\u0005\u0083\u0000\u0000\u076b"+ - "\u076a\u0001\u0000\u0000\u0000\u076b\u076c\u0001\u0000\u0000\u0000\u076c"+ - "\u0774\u0001\u0000\u0000\u0000\u076d\u076e\u0005z\u0000\u0000\u076e\u0770"+ - "\u0003\u015e\u00af\u0000\u076f\u0771\u0005\u0083\u0000\u0000\u0770\u076f"+ - "\u0001\u0000\u0000\u0000\u0770\u0771\u0001\u0000\u0000\u0000\u0771\u0773"+ - "\u0001\u0000\u0000\u0000\u0772\u076d\u0001\u0000\u0000\u0000\u0773\u0776"+ - "\u0001\u0000\u0000\u0000\u0774\u0772\u0001\u0000\u0000\u0000\u0774\u0775"+ - "\u0001\u0000\u0000\u0000\u0775\u015d\u0001\u0000\u0000\u0000\u0776\u0774"+ - "\u0001\u0000\u0000\u0000\u0777\u077b\u0003\u00f6{\u0000\u0778\u077b\u0003"+ - "\\.\u0000\u0779\u077b\u0003\u0004\u0002\u0000\u077a\u0777\u0001\u0000"+ - "\u0000\u0000\u077a\u0778\u0001\u0000\u0000\u0000\u077a\u0779\u0001\u0000"+ - "\u0000\u0000\u077b\u015f\u0001\u0000\u0000\u0000\u077c\u077d\u0005L\u0000"+ - "\u0000\u077d\u0783\u0003\n\u0005\u0000\u077e\u0784\u0005\u0084\u0000\u0000"+ - "\u077f\u0781\u0005D\u0000\u0000\u0780\u077f\u0001\u0000\u0000\u0000\u0780"+ - "\u0781\u0001\u0000\u0000\u0000\u0781\u0782\u0001\u0000\u0000\u0000\u0782"+ - "\u0784\u0003\u0156\u00ab\u0000\u0783\u077e\u0001\u0000\u0000\u0000\u0783"+ - "\u0780\u0001\u0000\u0000\u0000\u0784\u0161\u0001\u0000\u0000\u0000\u0785"+ - "\u0787\u0005$\u0000\u0000\u0786\u0785\u0001\u0000\u0000\u0000\u0786\u0787"+ - "\u0001\u0000\u0000\u0000\u0787\u0788\u0001\u0000\u0000\u0000\u0788\u0789"+ - "\u0005D\u0000\u0000\u0789\u078a\u0003z=\u0000\u078a\u0163\u0001\u0000"+ - "\u0000\u0000\u078b\u078c\u0005D\u0000\u0000\u078c\u078d\u0005f\u0000\u0000"+ - "\u078d\u078e\u0005g\u0000\u0000\u078e\u078f\u0003z=\u0000\u078f\u0165"+ - "\u0001\u0000\u0000\u0000\u0790\u0791\u0005I\u0000\u0000\u0791\u0792\u0003"+ - "d2\u0000\u0792\u0793\u0003\u016a\u00b5\u0000\u0793\u0167\u0001\u0000\u0000"+ - "\u0000\u0794\u0796\u0005I\u0000\u0000\u0795\u0797\u0003\u0142\u00a1\u0000"+ - "\u0796\u0795\u0001\u0000\u0000\u0000\u0796\u0797\u0001\u0000\u0000\u0000"+ - "\u0797\u0798\u0001\u0000\u0000\u0000\u0798\u0799\u0003d2\u0000\u0799\u079a"+ - "\u0003\u016a\u00b5\u0000\u079a\u0169\u0001\u0000\u0000\u0000\u079b\u079d"+ - "\u0003\u016c\u00b6\u0000\u079c\u079b\u0001\u0000\u0000\u0000\u079d\u079e"+ - "\u0001\u0000\u0000\u0000\u079e\u079c\u0001\u0000\u0000\u0000\u079e\u079f"+ - "\u0001\u0000\u0000\u0000\u079f\u016b\u0001\u0000\u0000\u0000\u07a0\u07a1"+ - "\u0005\u0011\u0000\u0000\u07a1\u07a2\u0005U\u0000\u0000\u07a2\u07a3\u0003"+ - "\u016e\u00b7\u0000\u07a3\u07a4\u0005V\u0000\u0000\u07a4\u07a5\u0003d2"+ - "\u0000\u07a5\u016d\u0001\u0000\u0000\u0000\u07a6\u07a8\u0003\u00ccf\u0000"+ - "\u07a7\u07a6\u0001\u0000\u0000\u0000\u07a7\u07a8\u0001\u0000\u0000\u0000"+ - "\u07a8\u07a9\u0001\u0000\u0000\u0000\u07a9\u07ac\u0003\u0096K\u0000\u07aa"+ - "\u07ad\u0003\u00e2q\u0000\u07ab\u07ad\u0003\u00f8|\u0000\u07ac\u07aa\u0001"+ - "\u0000\u0000\u0000\u07ac\u07ab\u0001\u0000\u0000\u0000\u07ac\u07ad\u0001"+ - "\u0000\u0000\u0000\u07ad\u07b0\u0001\u0000\u0000\u0000\u07ae\u07b0\u0005"+ - "\u0083\u0000\u0000\u07af\u07a7\u0001\u0000\u0000\u0000\u07af\u07ae\u0001"+ - "\u0000\u0000\u0000\u07b0\u016f\u0001\u0000\u0000\u0000\u07b1\u07b3\u0005"+ - "G\u0000\u0000\u07b2\u07b4\u0003V+\u0000\u07b3\u07b2\u0001\u0000\u0000"+ - "\u0000\u07b3\u07b4\u0001\u0000\u0000\u0000\u07b4\u0171\u0001\u0000\u0000"+ - "\u0000\u07b5\u07b8\u0003\u0174\u00ba\u0000\u07b6\u07b8\u0003\u0178\u00bc"+ - "\u0000\u07b7\u07b5\u0001\u0000\u0000\u0000\u07b7\u07b6\u0001\u0000\u0000"+ - "\u0000\u07b8\u0173\u0001\u0000\u0000\u0000\u07b9\u07ba\u0005G\u0000\u0000"+ - "\u07ba\u07bc\u0005U\u0000\u0000\u07bb\u07bd\u0003\u0176\u00bb\u0000\u07bc"+ - "\u07bb\u0001\u0000\u0000\u0000\u07bc\u07bd\u0001\u0000\u0000\u0000\u07bd"+ - "\u07be\u0001\u0000\u0000\u0000\u07be\u07bf\u0005V\u0000\u0000\u07bf\u0175"+ - "\u0001\u0000\u0000\u0000\u07c0\u07c2\u0003\u00f6{\u0000\u07c1\u07c3\u0005"+ - "\u0083\u0000\u0000\u07c2\u07c1\u0001\u0000\u0000\u0000\u07c2\u07c3\u0001"+ - "\u0000\u0000\u0000\u07c3\u07cb\u0001\u0000\u0000\u0000\u07c4\u07c5\u0005"+ - "z\u0000\u0000\u07c5\u07c7\u0003\u00f6{\u0000\u07c6\u07c8\u0005\u0083\u0000"+ - "\u0000\u07c7\u07c6\u0001\u0000\u0000\u0000\u07c7\u07c8\u0001\u0000\u0000"+ - "\u0000\u07c8\u07ca\u0001\u0000\u0000\u0000\u07c9\u07c4\u0001\u0000\u0000"+ - "\u0000\u07ca\u07cd\u0001\u0000\u0000\u0000\u07cb\u07c9\u0001\u0000\u0000"+ - "\u0000\u07cb\u07cc\u0001\u0000\u0000\u0000\u07cc\u0177\u0001\u0000\u0000"+ - "\u0000\u07cd\u07cb\u0001\u0000\u0000\u0000\u07ce\u07cf\u00052\u0000\u0000"+ - "\u07cf\u07d0\u0005U\u0000\u0000\u07d0\u07d1\u0003\\.\u0000\u07d1\u07d2"+ - "\u0005V\u0000\u0000\u07d2\u07d5\u0001\u0000\u0000\u0000\u07d3\u07d5\u0005"+ - "2\u0000\u0000\u07d4\u07ce\u0001\u0000\u0000\u0000\u07d4\u07d3\u0001\u0000"+ - "\u0000\u0000\u07d5\u0179\u0001\u0000\u0000\u0000\u07d6\u07d9\u00051\u0000"+ - "\u0000\u07d7\u07d8\u0005W\u0000\u0000\u07d8\u07da\u0005X\u0000\u0000\u07d9"+ - "\u07d7\u0001\u0000\u0000\u0000\u07d9\u07da\u0001\u0000\u0000\u0000\u07da"+ - "\u080a\u0001\u0000\u0000\u0000\u07db\u07de\u0005\u001c\u0000\u0000\u07dc"+ - "\u07dd\u0005W\u0000\u0000\u07dd\u07df\u0005X\u0000\u0000\u07de\u07dc\u0001"+ - "\u0000\u0000\u0000\u07de\u07df\u0001\u0000\u0000\u0000\u07df\u080a\u0001"+ - "\u0000\u0000\u0000\u07e0\u080a\u0005[\u0000\u0000\u07e1\u080a\u0005\\"+ - "\u0000\u0000\u07e2\u080a\u0005]\u0000\u0000\u07e3\u080a\u0005^\u0000\u0000"+ - "\u07e4\u080a\u0005_\u0000\u0000\u07e5\u080a\u0005`\u0000\u0000\u07e6\u080a"+ - "\u0005a\u0000\u0000\u07e7\u080a\u0005b\u0000\u0000\u07e8\u080a\u0005c"+ - "\u0000\u0000\u07e9\u080a\u0005d\u0000\u0000\u07ea\u080a\u0005e\u0000\u0000"+ - "\u07eb\u080a\u0005g\u0000\u0000\u07ec\u080a\u0005f\u0000\u0000\u07ed\u080a"+ - "\u0005u\u0000\u0000\u07ee\u080a\u0005h\u0000\u0000\u07ef\u080a\u0005i"+ - "\u0000\u0000\u07f0\u080a\u0005j\u0000\u0000\u07f1\u080a\u0005l\u0000\u0000"+ - "\u07f2\u080a\u0005m\u0000\u0000\u07f3\u080a\u0005n\u0000\u0000\u07f4\u080a"+ - "\u0005o\u0000\u0000\u07f5\u07f6\u0005f\u0000\u0000\u07f6\u080a\u0005f"+ - "\u0000\u0000\u07f7\u07f8\u0005g\u0000\u0000\u07f8\u080a\u0005g\u0000\u0000"+ - "\u07f9\u080a\u0005q\u0000\u0000\u07fa\u080a\u0005p\u0000\u0000\u07fb\u080a"+ - "\u0005r\u0000\u0000\u07fc\u080a\u0005s\u0000\u0000\u07fd\u080a\u0005t"+ - "\u0000\u0000\u07fe\u080a\u0005v\u0000\u0000\u07ff\u080a\u0005w\u0000\u0000"+ - "\u0800\u080a\u0005x\u0000\u0000\u0801\u080a\u0005y\u0000\u0000\u0802\u080a"+ - "\u0005z\u0000\u0000\u0803\u080a\u0005{\u0000\u0000\u0804\u080a\u0005|"+ - "\u0000\u0000\u0805\u0806\u0005U\u0000\u0000\u0806\u080a\u0005V\u0000\u0000"+ - "\u0807\u0808\u0005W\u0000\u0000\u0808\u080a\u0005X\u0000\u0000\u0809\u07d6"+ - "\u0001\u0000\u0000\u0000\u0809\u07db\u0001\u0000\u0000\u0000\u0809\u07e0"+ - "\u0001\u0000\u0000\u0000\u0809\u07e1\u0001\u0000\u0000\u0000\u0809\u07e2"+ - "\u0001\u0000\u0000\u0000\u0809\u07e3\u0001\u0000\u0000\u0000\u0809\u07e4"+ - "\u0001\u0000\u0000\u0000\u0809\u07e5\u0001\u0000\u0000\u0000\u0809\u07e6"+ - "\u0001\u0000\u0000\u0000\u0809\u07e7\u0001\u0000\u0000\u0000\u0809\u07e8"+ - "\u0001\u0000\u0000\u0000\u0809\u07e9\u0001\u0000\u0000\u0000\u0809\u07ea"+ - "\u0001\u0000\u0000\u0000\u0809\u07eb\u0001\u0000\u0000\u0000\u0809\u07ec"+ - "\u0001\u0000\u0000\u0000\u0809\u07ed\u0001\u0000\u0000\u0000\u0809\u07ee"+ - "\u0001\u0000\u0000\u0000\u0809\u07ef\u0001\u0000\u0000\u0000\u0809\u07f0"+ - "\u0001\u0000\u0000\u0000\u0809\u07f1\u0001\u0000\u0000\u0000\u0809\u07f2"+ - "\u0001\u0000\u0000\u0000\u0809\u07f3\u0001\u0000\u0000\u0000\u0809\u07f4"+ - "\u0001\u0000\u0000\u0000\u0809\u07f5\u0001\u0000\u0000\u0000\u0809\u07f7"+ - "\u0001\u0000\u0000\u0000\u0809\u07f9\u0001\u0000\u0000\u0000\u0809\u07fa"+ - "\u0001\u0000\u0000\u0000\u0809\u07fb\u0001\u0000\u0000\u0000\u0809\u07fc"+ - "\u0001\u0000\u0000\u0000\u0809\u07fd\u0001\u0000\u0000\u0000\u0809\u07fe"+ - "\u0001\u0000\u0000\u0000\u0809\u07ff\u0001\u0000\u0000\u0000\u0809\u0800"+ - "\u0001\u0000\u0000\u0000\u0809\u0801\u0001\u0000\u0000\u0000\u0809\u0802"+ - "\u0001\u0000\u0000\u0000\u0809\u0803\u0001\u0000\u0000\u0000\u0809\u0804"+ - "\u0001\u0000\u0000\u0000\u0809\u0805\u0001\u0000\u0000\u0000\u0809\u0807"+ - "\u0001\u0000\u0000\u0000\u080a\u017b\u0001\u0000\u0000\u0000\u080b\u080c"+ - "\u0007\u0016\u0000\u0000\u080c\u017d\u0001\u0000\u0000\u0000\u0123\u017f"+ - "\u0186\u018f\u0193\u019c\u019f\u01a3\u01ab\u01b2\u01b5\u01ba\u01bf\u01c5"+ - "\u01cd\u01cf\u01d8\u01dc\u01e0\u01e3\u01e7\u01ea\u01f1\u01f5\u01f8\u01fb"+ - "\u01fe\u0204\u0208\u020c\u021a\u021e\u0224\u022b\u0231\u0235\u0239\u023b"+ - "\u0243\u0248\u0255\u025c\u0268\u0272\u0277\u027b\u0282\u0285\u028d\u0291"+ - "\u0294\u029b\u02a2\u02a6\u02ab\u02af\u02b2\u02b7\u02c6\u02cd\u02d5\u02dd"+ - "\u02e6\u02ed\u02f4\u02fc\u0304\u030c\u0314\u031c\u0324\u032d\u0335\u033e"+ - "\u0346\u034e\u0350\u0353\u0359\u035f\u0365\u036c\u0375\u037d\u0381\u0388"+ - "\u038a\u039e\u03a2\u03a8\u03ad\u03b1\u03b4\u03bb\u03c2\u03c6\u03cf\u03da"+ - "\u03e4\u03e9\u03f0\u03f3\u03f8\u03fd\u0412\u0417\u041a\u0425\u042b\u0430"+ - "\u0433\u0438\u043b\u0442\u0459\u045f\u0465\u046b\u046e\u0474\u0478\u047c"+ - "\u047f\u0487\u0489\u048f\u0492\u0495\u0498\u049c\u04a0\u04a6\u04b0\u04b6"+ - "\u04bc\u04c1\u04c6\u04ca\u04d7\u04dd\u04e1\u04e7\u04ec\u04fb\u04ff\u0504"+ - "\u0509\u050e\u0514\u0517\u0520\u0524\u0529\u052d\u0533\u053a\u054b\u054d"+ - "\u0554\u0559\u0560\u0564\u0568\u0570\u0576\u057c\u0580\u0582\u0586\u058b"+ - "\u058f\u0592\u0595\u0598\u059d\u05a1\u05a4\u05a8\u05ab\u05ad\u05b2\u05b9"+ - "\u05bf\u05c3\u05c9\u05ce\u05d3\u05da\u05df\u05e3\u05e5\u05e7\u05ed\u05f6"+ - "\u05fa\u05fc\u05fe\u0603\u0606\u060d\u0611\u0616\u0618\u061c\u061f\u0622"+ - "\u0626\u062b\u0632\u0639\u063e\u0642\u0646\u064b\u064f\u0655\u0657\u065d"+ - "\u0662\u0668\u066c\u066e\u0671\u0675\u0679\u067b\u067d\u0680\u068c\u068e"+ - "\u0691\u0694\u0697\u06a0\u06a7\u06b3\u06b7\u06ba\u06be\u06c3\u06cf\u06d4"+ - "\u06d8\u06dc\u06e1\u06e6\u06ea\u06ed\u06f1\u06fc\u0700\u0707\u070c\u0710"+ - "\u0716\u071a\u071e\u0727\u0734\u0739\u0740\u0744\u0747\u074a\u074d\u0751"+ - "\u0756\u075d\u0761\u0765\u076b\u0770\u0774\u077a\u0780\u0783\u0786\u0796"+ - "\u079e\u07a7\u07ac\u07af\u07b3\u07b7\u07bc\u07c2\u07c7\u07cb\u07d4\u07d9"+ - "\u07de\u0809"; - public static final ATN _ATN = - new ATNDeserializer().deserialize(_serializedATN.toCharArray()); - static { - _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; - for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { - _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); - } - } } \ No newline at end of file -- Gitee From f115b05da3925a97a1cd5108eabc692fd760b120 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:43:45 +0800 Subject: [PATCH 27/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1992 ----------------- 1 file changed, 1992 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index b315bcbb..c0fe9fba 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -13734,1998 +13734,6 @@ public class CPP14Parser extends CPP14ParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class ConstructorInitializerContext extends ParserRuleContext { - public TerminalNode Colon() { return getToken(CPP14Parser.Colon, 0); } - public MemInitializerListContext memInitializerList() { - return getRuleContext(MemInitializerListContext.class,0); - } - public ConstructorInitializerContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_constructorInitializer; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterConstructorInitializer(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitConstructorInitializer(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitConstructorInitializer(this); - else return visitor.visitChildren(this); - } - } - - public final ConstructorInitializerContext constructorInitializer() throws RecognitionException { - ConstructorInitializerContext _localctx = new ConstructorInitializerContext(_ctx, getState()); - enterRule(_localctx, 322, RULE_constructorInitializer); - try { - enterOuterAlt(_localctx, 1); - { - setState(1794); - match(Colon); - setState(1795); - memInitializerList(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MemInitializerListContext extends ParserRuleContext { - public List memInitializer() { - return getRuleContexts(MemInitializerContext.class); - } - public MemInitializerContext memInitializer(int i) { - return getRuleContext(MemInitializerContext.class,i); - } - public List Ellipsis() { return getTokens(CPP14Parser.Ellipsis); } - public TerminalNode Ellipsis(int i) { - return getToken(CPP14Parser.Ellipsis, i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public MemInitializerListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_memInitializerList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterMemInitializerList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitMemInitializerList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitMemInitializerList(this); - else return visitor.visitChildren(this); - } - } - - public final MemInitializerListContext memInitializerList() throws RecognitionException { - MemInitializerListContext _localctx = new MemInitializerListContext(_ctx, getState()); - enterRule(_localctx, 324, RULE_memInitializerList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1797); - memInitializer(); - setState(1799); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1798); - match(Ellipsis); - } - } - - setState(1808); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1801); - match(Comma); - setState(1802); - memInitializer(); - setState(1804); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1803); - match(Ellipsis); - } - } - - } - } - setState(1810); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MemInitializerContext extends ParserRuleContext { - public MeminitializeridContext meminitializerid() { - return getRuleContext(MeminitializeridContext.class,0); - } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public BracedInitListContext bracedInitList() { - return getRuleContext(BracedInitListContext.class,0); - } - public ExpressionListContext expressionList() { - return getRuleContext(ExpressionListContext.class,0); - } - public MemInitializerContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_memInitializer; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterMemInitializer(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitMemInitializer(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitMemInitializer(this); - else return visitor.visitChildren(this); - } - } - - public final MemInitializerContext memInitializer() throws RecognitionException { - MemInitializerContext _localctx = new MemInitializerContext(_ctx, getState()); - enterRule(_localctx, 326, RULE_memInitializer); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1811); - meminitializerid(); - setState(1818); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - { - setState(1812); - match(LeftParen); - setState(1814); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474400910417L) != 0) || _la==Identifier) { - { - setState(1813); - expressionList(); - } - } - - setState(1816); - match(RightParen); - } - break; - case LeftBrace: - { - setState(1817); - bracedInitList(); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MeminitializeridContext extends ParserRuleContext { - public ClassOrDeclTypeContext classOrDeclType() { - return getRuleContext(ClassOrDeclTypeContext.class,0); - } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public MeminitializeridContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_meminitializerid; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterMeminitializerid(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitMeminitializerid(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitMeminitializerid(this); - else return visitor.visitChildren(this); - } - } - - public final MeminitializeridContext meminitializerid() throws RecognitionException { - MeminitializeridContext _localctx = new MeminitializeridContext(_ctx, getState()); - enterRule(_localctx, 328, RULE_meminitializerid); - try { - setState(1822); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,255,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1820); - classOrDeclType(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1821); - match(Identifier); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class OperatorFunctionIdContext extends ParserRuleContext { - public TerminalNode Operator() { return getToken(CPP14Parser.Operator, 0); } - public TheOperatorContext theOperator() { - return getRuleContext(TheOperatorContext.class,0); - } - public OperatorFunctionIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_operatorFunctionId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterOperatorFunctionId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitOperatorFunctionId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitOperatorFunctionId(this); - else return visitor.visitChildren(this); - } - } - - public final OperatorFunctionIdContext operatorFunctionId() throws RecognitionException { - OperatorFunctionIdContext _localctx = new OperatorFunctionIdContext(_ctx, getState()); - enterRule(_localctx, 330, RULE_operatorFunctionId); - try { - enterOuterAlt(_localctx, 1); - { - setState(1824); - match(Operator); - setState(1825); - theOperator(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LiteralOperatorIdContext extends ParserRuleContext { - public TerminalNode Operator() { return getToken(CPP14Parser.Operator, 0); } - public TerminalNode StringLiteral() { return getToken(CPP14Parser.StringLiteral, 0); } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TerminalNode UserDefinedStringLiteral() { return getToken(CPP14Parser.UserDefinedStringLiteral, 0); } - public LiteralOperatorIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_literalOperatorId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLiteralOperatorId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLiteralOperatorId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLiteralOperatorId(this); - else return visitor.visitChildren(this); - } - } - - public final LiteralOperatorIdContext literalOperatorId() throws RecognitionException { - LiteralOperatorIdContext _localctx = new LiteralOperatorIdContext(_ctx, getState()); - enterRule(_localctx, 332, RULE_literalOperatorId); - try { - enterOuterAlt(_localctx, 1); - { - setState(1827); - match(Operator); - setState(1831); - _errHandler.sync(this); - switch (_input.LA(1)) { - case StringLiteral: - { - setState(1828); - match(StringLiteral); - setState(1829); - match(Identifier); - } - break; - case UserDefinedStringLiteral: - { - setState(1830); - match(UserDefinedStringLiteral); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateDeclarationContext extends ParserRuleContext { - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public TerminalNode Less() { return getToken(CPP14Parser.Less, 0); } - public TemplateparameterListContext templateparameterList() { - return getRuleContext(TemplateparameterListContext.class,0); - } - public TerminalNode Greater() { return getToken(CPP14Parser.Greater, 0); } - public DeclarationContext declaration() { - return getRuleContext(DeclarationContext.class,0); - } - public TemplateDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTemplateDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTemplateDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTemplateDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final TemplateDeclarationContext templateDeclaration() throws RecognitionException { - TemplateDeclarationContext _localctx = new TemplateDeclarationContext(_ctx, getState()); - enterRule(_localctx, 334, RULE_templateDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(1833); - match(Template); - setState(1834); - match(Less); - setState(1835); - templateparameterList(); - setState(1836); - match(Greater); - setState(1837); - declaration(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateparameterListContext extends ParserRuleContext { - public List templateParameter() { - return getRuleContexts(TemplateParameterContext.class); - } - public TemplateParameterContext templateParameter(int i) { - return getRuleContext(TemplateParameterContext.class,i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public TemplateparameterListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateparameterList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTemplateparameterList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTemplateparameterList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTemplateparameterList(this); - else return visitor.visitChildren(this); - } - } - - public final TemplateparameterListContext templateparameterList() throws RecognitionException { - TemplateparameterListContext _localctx = new TemplateparameterListContext(_ctx, getState()); - enterRule(_localctx, 336, RULE_templateparameterList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1839); - templateParameter(); - setState(1844); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1840); - match(Comma); - setState(1841); - templateParameter(); - } - } - setState(1846); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateParameterContext extends ParserRuleContext { - public TypeParameterContext typeParameter() { - return getRuleContext(TypeParameterContext.class,0); - } - public ParameterDeclarationContext parameterDeclaration() { - return getRuleContext(ParameterDeclarationContext.class,0); - } - public TemplateParameterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateParameter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTemplateParameter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTemplateParameter(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTemplateParameter(this); - else return visitor.visitChildren(this); - } - } - - public final TemplateParameterContext templateParameter() throws RecognitionException { - TemplateParameterContext _localctx = new TemplateParameterContext(_ctx, getState()); - enterRule(_localctx, 338, RULE_templateParameter); - try { - setState(1849); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,258,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1847); - typeParameter(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1848); - parameterDeclaration(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeParameterContext extends ParserRuleContext { - public TerminalNode Class() { return getToken(CPP14Parser.Class, 0); } - public TerminalNode Typename_() { return getToken(CPP14Parser.Typename_, 0); } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public TheTypeIdContext theTypeId() { - return getRuleContext(TheTypeIdContext.class,0); - } - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public TerminalNode Less() { return getToken(CPP14Parser.Less, 0); } - public TemplateparameterListContext templateparameterList() { - return getRuleContext(TemplateparameterListContext.class,0); - } - public TerminalNode Greater() { return getToken(CPP14Parser.Greater, 0); } - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TypeParameterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeParameter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTypeParameter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTypeParameter(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTypeParameter(this); - else return visitor.visitChildren(this); - } - } - - public final TypeParameterContext typeParameter() throws RecognitionException { - TypeParameterContext _localctx = new TypeParameterContext(_ctx, getState()); - enterRule(_localctx, 340, RULE_typeParameter); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1860); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Class: - case Template: - { - setState(1856); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Template) { - { - setState(1851); - match(Template); - setState(1852); - match(Less); - setState(1853); - templateparameterList(); - setState(1854); - match(Greater); - } - } - - setState(1858); - match(Class); - } - break; - case Typename_: - { - setState(1859); - match(Typename_); - } - break; - default: - throw new NoViableAltException(this); - } - setState(1873); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,264,_ctx) ) { - case 1: - { - setState(1863); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1862); - match(Ellipsis); - } - } - - setState(1866); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Identifier) { - { - setState(1865); - match(Identifier); - } - } - - } - break; - case 2: - { - setState(1869); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Identifier) { - { - setState(1868); - match(Identifier); - } - } - - setState(1871); - match(Assign); - setState(1872); - theTypeId(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SimpleTemplateIdContext extends ParserRuleContext { - public TemplateNameContext templateName() { - return getRuleContext(TemplateNameContext.class,0); - } - public TerminalNode Less() { return getToken(CPP14Parser.Less, 0); } - public TerminalNode Greater() { return getToken(CPP14Parser.Greater, 0); } - public TemplateArgumentListContext templateArgumentList() { - return getRuleContext(TemplateArgumentListContext.class,0); - } - public SimpleTemplateIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_simpleTemplateId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterSimpleTemplateId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitSimpleTemplateId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitSimpleTemplateId(this); - else return visitor.visitChildren(this); - } - } - - public final SimpleTemplateIdContext simpleTemplateId() throws RecognitionException { - SimpleTemplateIdContext _localctx = new SimpleTemplateIdContext(_ctx, getState()); - enterRule(_localctx, 342, RULE_simpleTemplateId); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1875); - templateName(); - setState(1876); - match(Less); - setState(1878); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979472930990334L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384268307L) != 0) || _la==Identifier) { - { - setState(1877); - templateArgumentList(); - } - } - - setState(1880); - match(Greater); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateIdContext extends ParserRuleContext { - public SimpleTemplateIdContext simpleTemplateId() { - return getRuleContext(SimpleTemplateIdContext.class,0); - } - public TerminalNode Less() { return getToken(CPP14Parser.Less, 0); } - public TerminalNode Greater() { return getToken(CPP14Parser.Greater, 0); } - public OperatorFunctionIdContext operatorFunctionId() { - return getRuleContext(OperatorFunctionIdContext.class,0); - } - public LiteralOperatorIdContext literalOperatorId() { - return getRuleContext(LiteralOperatorIdContext.class,0); - } - public TemplateArgumentListContext templateArgumentList() { - return getRuleContext(TemplateArgumentListContext.class,0); - } - public TemplateIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTemplateId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTemplateId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTemplateId(this); - else return visitor.visitChildren(this); - } - } - - public final TemplateIdContext templateId() throws RecognitionException { - TemplateIdContext _localctx = new TemplateIdContext(_ctx, getState()); - enterRule(_localctx, 344, RULE_templateId); - int _la; - try { - setState(1893); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(1882); - simpleTemplateId(); - } - break; - case Operator: - enterOuterAlt(_localctx, 2); - { - setState(1885); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,266,_ctx) ) { - case 1: - { - setState(1883); - operatorFunctionId(); - } - break; - case 2: - { - setState(1884); - literalOperatorId(); - } - break; - } - setState(1887); - match(Less); - setState(1889); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979472930990334L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384268307L) != 0) || _la==Identifier) { - { - setState(1888); - templateArgumentList(); - } - } - - setState(1891); - match(Greater); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateNameContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TemplateNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTemplateName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTemplateName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTemplateName(this); - else return visitor.visitChildren(this); - } - } - - public final TemplateNameContext templateName() throws RecognitionException { - TemplateNameContext _localctx = new TemplateNameContext(_ctx, getState()); - enterRule(_localctx, 346, RULE_templateName); - try { - enterOuterAlt(_localctx, 1); - { - setState(1895); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateArgumentListContext extends ParserRuleContext { - public List templateArgument() { - return getRuleContexts(TemplateArgumentContext.class); - } - public TemplateArgumentContext templateArgument(int i) { - return getRuleContext(TemplateArgumentContext.class,i); - } - public List Ellipsis() { return getTokens(CPP14Parser.Ellipsis); } - public TerminalNode Ellipsis(int i) { - return getToken(CPP14Parser.Ellipsis, i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public TemplateArgumentListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateArgumentList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTemplateArgumentList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTemplateArgumentList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTemplateArgumentList(this); - else return visitor.visitChildren(this); - } - } - - public final TemplateArgumentListContext templateArgumentList() throws RecognitionException { - TemplateArgumentListContext _localctx = new TemplateArgumentListContext(_ctx, getState()); - enterRule(_localctx, 348, RULE_templateArgumentList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1897); - templateArgument(); - setState(1899); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1898); - match(Ellipsis); - } - } - - setState(1908); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1901); - match(Comma); - setState(1902); - templateArgument(); - setState(1904); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1903); - match(Ellipsis); - } - } - - } - } - setState(1910); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateArgumentContext extends ParserRuleContext { - public TheTypeIdContext theTypeId() { - return getRuleContext(TheTypeIdContext.class,0); - } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public IdExpressionContext idExpression() { - return getRuleContext(IdExpressionContext.class,0); - } - public TemplateArgumentContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateArgument; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTemplateArgument(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTemplateArgument(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTemplateArgument(this); - else return visitor.visitChildren(this); - } - } - - public final TemplateArgumentContext templateArgument() throws RecognitionException { - TemplateArgumentContext _localctx = new TemplateArgumentContext(_ctx, getState()); - enterRule(_localctx, 350, RULE_templateArgument); - try { - setState(1914); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,272,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1911); - theTypeId(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1912); - constantExpression(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1913); - idExpression(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeNameSpecifierContext extends ParserRuleContext { - public TerminalNode Typename_() { return getToken(CPP14Parser.Typename_, 0); } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public SimpleTemplateIdContext simpleTemplateId() { - return getRuleContext(SimpleTemplateIdContext.class,0); - } - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public TypeNameSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeNameSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTypeNameSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTypeNameSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTypeNameSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final TypeNameSpecifierContext typeNameSpecifier() throws RecognitionException { - TypeNameSpecifierContext _localctx = new TypeNameSpecifierContext(_ctx, getState()); - enterRule(_localctx, 352, RULE_typeNameSpecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1916); - match(Typename_); - setState(1917); - nestedNameSpecifier(0); - setState(1923); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,274,_ctx) ) { - case 1: - { - setState(1918); - match(Identifier); - } - break; - case 2: - { - setState(1920); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Template) { - { - setState(1919); - match(Template); - } - } - - setState(1922); - simpleTemplateId(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExplicitInstantiationContext extends ParserRuleContext { - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public DeclarationContext declaration() { - return getRuleContext(DeclarationContext.class,0); - } - public TerminalNode Extern() { return getToken(CPP14Parser.Extern, 0); } - public ExplicitInstantiationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_explicitInstantiation; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterExplicitInstantiation(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitExplicitInstantiation(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitExplicitInstantiation(this); - else return visitor.visitChildren(this); - } - } - - public final ExplicitInstantiationContext explicitInstantiation() throws RecognitionException { - ExplicitInstantiationContext _localctx = new ExplicitInstantiationContext(_ctx, getState()); - enterRule(_localctx, 354, RULE_explicitInstantiation); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1926); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Extern) { - { - setState(1925); - match(Extern); - } - } - - setState(1928); - match(Template); - setState(1929); - declaration(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExplicitSpecializationContext extends ParserRuleContext { - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public TerminalNode Less() { return getToken(CPP14Parser.Less, 0); } - public TerminalNode Greater() { return getToken(CPP14Parser.Greater, 0); } - public DeclarationContext declaration() { - return getRuleContext(DeclarationContext.class,0); - } - public ExplicitSpecializationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_explicitSpecialization; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterExplicitSpecialization(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitExplicitSpecialization(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitExplicitSpecialization(this); - else return visitor.visitChildren(this); - } - } - - public final ExplicitSpecializationContext explicitSpecialization() throws RecognitionException { - ExplicitSpecializationContext _localctx = new ExplicitSpecializationContext(_ctx, getState()); - enterRule(_localctx, 356, RULE_explicitSpecialization); - try { - enterOuterAlt(_localctx, 1); - { - setState(1931); - match(Template); - setState(1932); - match(Less); - setState(1933); - match(Greater); - setState(1934); - declaration(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TryBlockContext extends ParserRuleContext { - public TerminalNode Try() { return getToken(CPP14Parser.Try, 0); } - public CompoundStatementContext compoundStatement() { - return getRuleContext(CompoundStatementContext.class,0); - } - public HandlerSeqContext handlerSeq() { - return getRuleContext(HandlerSeqContext.class,0); - } - public TryBlockContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_tryBlock; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTryBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTryBlock(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTryBlock(this); - else return visitor.visitChildren(this); - } - } - - public final TryBlockContext tryBlock() throws RecognitionException { - TryBlockContext _localctx = new TryBlockContext(_ctx, getState()); - enterRule(_localctx, 358, RULE_tryBlock); - try { - enterOuterAlt(_localctx, 1); - { - setState(1936); - match(Try); - setState(1937); - compoundStatement(); - setState(1938); - handlerSeq(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FunctionTryBlockContext extends ParserRuleContext { - public TerminalNode Try() { return getToken(CPP14Parser.Try, 0); } - public CompoundStatementContext compoundStatement() { - return getRuleContext(CompoundStatementContext.class,0); - } - public HandlerSeqContext handlerSeq() { - return getRuleContext(HandlerSeqContext.class,0); - } - public ConstructorInitializerContext constructorInitializer() { - return getRuleContext(ConstructorInitializerContext.class,0); - } - public FunctionTryBlockContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_functionTryBlock; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterFunctionTryBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitFunctionTryBlock(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitFunctionTryBlock(this); - else return visitor.visitChildren(this); - } - } - - public final FunctionTryBlockContext functionTryBlock() throws RecognitionException { - FunctionTryBlockContext _localctx = new FunctionTryBlockContext(_ctx, getState()); - enterRule(_localctx, 360, RULE_functionTryBlock); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1940); - match(Try); - setState(1942); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1941); - constructorInitializer(); - } - } - - setState(1944); - compoundStatement(); - setState(1945); - handlerSeq(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class HandlerSeqContext extends ParserRuleContext { - public List handler() { - return getRuleContexts(HandlerContext.class); - } - public HandlerContext handler(int i) { - return getRuleContext(HandlerContext.class,i); - } - public HandlerSeqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_handlerSeq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterHandlerSeq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitHandlerSeq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitHandlerSeq(this); - else return visitor.visitChildren(this); - } - } - - public final HandlerSeqContext handlerSeq() throws RecognitionException { - HandlerSeqContext _localctx = new HandlerSeqContext(_ctx, getState()); - enterRule(_localctx, 362, RULE_handlerSeq); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1948); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(1947); - handler(); - } - } - setState(1950); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==Catch ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class HandlerContext extends ParserRuleContext { - public TerminalNode Catch() { return getToken(CPP14Parser.Catch, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ExceptionDeclarationContext exceptionDeclaration() { - return getRuleContext(ExceptionDeclarationContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public CompoundStatementContext compoundStatement() { - return getRuleContext(CompoundStatementContext.class,0); - } - public HandlerContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_handler; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterHandler(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitHandler(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitHandler(this); - else return visitor.visitChildren(this); - } - } - - public final HandlerContext handler() throws RecognitionException { - HandlerContext _localctx = new HandlerContext(_ctx, getState()); - enterRule(_localctx, 364, RULE_handler); - try { - enterOuterAlt(_localctx, 1); - { - setState(1952); - match(Catch); - setState(1953); - match(LeftParen); - setState(1954); - exceptionDeclaration(); - setState(1955); - match(RightParen); - setState(1956); - compoundStatement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExceptionDeclarationContext extends ParserRuleContext { - public TypeSpecifierSeqContext typeSpecifierSeq() { - return getRuleContext(TypeSpecifierSeqContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public DeclaratorContext declarator() { - return getRuleContext(DeclaratorContext.class,0); - } - public AbstractDeclaratorContext abstractDeclarator() { - return getRuleContext(AbstractDeclaratorContext.class,0); - } - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public ExceptionDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_exceptionDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterExceptionDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitExceptionDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitExceptionDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final ExceptionDeclarationContext exceptionDeclaration() throws RecognitionException { - ExceptionDeclarationContext _localctx = new ExceptionDeclarationContext(_ctx, getState()); - enterRule(_localctx, 366, RULE_exceptionDeclaration); - int _la; - try { - setState(1967); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Alignas: - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Class: - case Const: - case Decltype: - case Double: - case Enum: - case Float: - case Int: - case Long: - case Short: - case Signed: - case Struct: - case Typename_: - case Union: - case Unsigned: - case Void: - case Volatile: - case Wchar: - case LeftBracket: - case Doublecolon: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(1959); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1958); - attributeSpecifierSeq(); - } - } - - setState(1961); - typeSpecifierSeq(); - setState(1964); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,279,_ctx) ) { - case 1: - { - setState(1962); - declarator(); - } - break; - case 2: - { - setState(1963); - abstractDeclarator(); - } - break; - } - } - break; - case Ellipsis: - enterOuterAlt(_localctx, 2); - { - setState(1966); - match(Ellipsis); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ThrowExpressionContext extends ParserRuleContext { - public TerminalNode Throw() { return getToken(CPP14Parser.Throw, 0); } - public AssignmentExpressionContext assignmentExpression() { - return getRuleContext(AssignmentExpressionContext.class,0); - } - public ThrowExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_throwExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterThrowExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitThrowExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitThrowExpression(this); - else return visitor.visitChildren(this); - } - } - - public final ThrowExpressionContext throwExpression() throws RecognitionException { - ThrowExpressionContext _localctx = new ThrowExpressionContext(_ctx, getState()); - enterRule(_localctx, 368, RULE_throwExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1969); - match(Throw); - setState(1971); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384133201L) != 0) || _la==Identifier) { - { - setState(1970); - assignmentExpression(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExceptionSpecificationContext extends ParserRuleContext { - public DynamicExceptionSpecificationContext dynamicExceptionSpecification() { - return getRuleContext(DynamicExceptionSpecificationContext.class,0); - } - public NoeExceptSpecificationContext noeExceptSpecification() { - return getRuleContext(NoeExceptSpecificationContext.class,0); - } - public ExceptionSpecificationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_exceptionSpecification; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterExceptionSpecification(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitExceptionSpecification(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitExceptionSpecification(this); - else return visitor.visitChildren(this); - } - } - - public final ExceptionSpecificationContext exceptionSpecification() throws RecognitionException { - ExceptionSpecificationContext _localctx = new ExceptionSpecificationContext(_ctx, getState()); - enterRule(_localctx, 370, RULE_exceptionSpecification); - try { - setState(1975); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Throw: - enterOuterAlt(_localctx, 1); - { - setState(1973); - dynamicExceptionSpecification(); - } - break; - case Noexcept: - enterOuterAlt(_localctx, 2); - { - setState(1974); - noeExceptSpecification(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DynamicExceptionSpecificationContext extends ParserRuleContext { - public TerminalNode Throw() { return getToken(CPP14Parser.Throw, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public TypeIdListContext typeIdList() { - return getRuleContext(TypeIdListContext.class,0); - } - public DynamicExceptionSpecificationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_dynamicExceptionSpecification; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDynamicExceptionSpecification(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDynamicExceptionSpecification(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDynamicExceptionSpecification(this); - else return visitor.visitChildren(this); - } - } - - public final DynamicExceptionSpecificationContext dynamicExceptionSpecification() throws RecognitionException { - DynamicExceptionSpecificationContext _localctx = new DynamicExceptionSpecificationContext(_ctx, getState()); - enterRule(_localctx, 372, RULE_dynamicExceptionSpecification); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1977); - match(Throw); - setState(1978); - match(LeftParen); - setState(1980); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 13)) & ~0x3f) == 0 && ((1L << (_la - 13)) & -9213942612181769245L) != 0) || ((((_la - 77)) & ~0x3f) == 0 && ((1L << (_la - 77)) & 37154696925806707L) != 0)) { - { - setState(1979); - typeIdList(); - } - } - - setState(1982); - match(RightParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeIdListContext extends ParserRuleContext { - public List theTypeId() { - return getRuleContexts(TheTypeIdContext.class); - } - public TheTypeIdContext theTypeId(int i) { - return getRuleContext(TheTypeIdContext.class,i); - } - public List Ellipsis() { return getTokens(CPP14Parser.Ellipsis); } - public TerminalNode Ellipsis(int i) { - return getToken(CPP14Parser.Ellipsis, i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public TypeIdListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeIdList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTypeIdList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTypeIdList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTypeIdList(this); - else return visitor.visitChildren(this); - } - } - - public final TypeIdListContext typeIdList() throws RecognitionException { - TypeIdListContext _localctx = new TypeIdListContext(_ctx, getState()); - enterRule(_localctx, 374, RULE_typeIdList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1984); - theTypeId(); - setState(1986); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1985); - match(Ellipsis); - } - } - - setState(1995); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1988); - match(Comma); - setState(1989); - theTypeId(); - setState(1991); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1990); - match(Ellipsis); - } - } - - } - } - setState(1997); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NoeExceptSpecificationContext extends ParserRuleContext { - public TerminalNode Noexcept() { return getToken(CPP14Parser.Noexcept, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public NoeExceptSpecificationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_noeExceptSpecification; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNoeExceptSpecification(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNoeExceptSpecification(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNoeExceptSpecification(this); - else return visitor.visitChildren(this); - } - } - public final NoeExceptSpecificationContext noeExceptSpecification() throws RecognitionException { - NoeExceptSpecificationContext _localctx = new NoeExceptSpecificationContext(_ctx, getState()); - enterRule(_localctx, 376, RULE_noeExceptSpecification); - try { - setState(2004); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,287,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1998); - match(Noexcept); - setState(1999); - match(LeftParen); - setState(2000); - constantExpression(); - setState(2001); - match(RightParen); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(2003); - match(Noexcept); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } } \ No newline at end of file -- Gitee From 4a941117cbf5d479714dff3567d6e1756ada2248 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:44:12 +0800 Subject: [PATCH 28/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1917 ----------------- 1 file changed, 1917 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index c0fe9fba..3a68273d 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -11815,1924 +11815,7 @@ public class CPP14Parser extends CPP14ParserBase { } } - public final InitializerClauseContext initializerClause() throws RecognitionException { - InitializerClauseContext _localctx = new InitializerClauseContext(_ctx, getState()); - enterRule(_localctx, 272, RULE_initializerClause); - try { - setState(1602); - _errHandler.sync(this); - switch (_input.LA(1)) { - case IntegerLiteral: - case CharacterLiteral: - case FloatingLiteral: - case StringLiteral: - case BooleanLiteral: - case PointerLiteral: - case UserDefinedLiteral: - case Alignof: - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Const_cast: - case Decltype: - case Delete: - case Double: - case Dynamic_cast: - case Float: - case Int: - case Long: - case New: - case Noexcept: - case Operator: - case Reinterpret_cast: - case Short: - case Signed: - case Sizeof: - case Static_cast: - case This: - case Throw: - case Typeid_: - case Typename_: - case Unsigned: - case Void: - case Wchar: - case LeftParen: - case LeftBracket: - case Plus: - case Minus: - case Star: - case And: - case Or: - case Tilde: - case Not: - case PlusPlus: - case MinusMinus: - case Doublecolon: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(1600); - assignmentExpression(); - } - break; - case LeftBrace: - enterOuterAlt(_localctx, 2); - { - setState(1601); - bracedInitList(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InitializerListContext extends ParserRuleContext { - public List initializerClause() { - return getRuleContexts(InitializerClauseContext.class); - } - public InitializerClauseContext initializerClause(int i) { - return getRuleContext(InitializerClauseContext.class,i); - } - public List Ellipsis() { return getTokens(CPP14Parser.Ellipsis); } - public TerminalNode Ellipsis(int i) { - return getToken(CPP14Parser.Ellipsis, i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public InitializerListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_initializerList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterInitializerList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitInitializerList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitInitializerList(this); - else return visitor.visitChildren(this); - } - } - - public final InitializerListContext initializerList() throws RecognitionException { - InitializerListContext _localctx = new InitializerListContext(_ctx, getState()); - enterRule(_localctx, 274, RULE_initializerList); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1604); - initializerClause(); - setState(1606); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1605); - match(Ellipsis); - } - } - - setState(1615); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,213,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1608); - match(Comma); - setState(1609); - initializerClause(); - setState(1611); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1610); - match(Ellipsis); - } - } - - } - } - } - setState(1617); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,213,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BracedInitListContext extends ParserRuleContext { - public TerminalNode LeftBrace() { return getToken(CPP14Parser.LeftBrace, 0); } - public TerminalNode RightBrace() { return getToken(CPP14Parser.RightBrace, 0); } - public InitializerListContext initializerList() { - return getRuleContext(InitializerListContext.class,0); - } - public TerminalNode Comma() { return getToken(CPP14Parser.Comma, 0); } - public BracedInitListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_bracedInitList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBracedInitList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBracedInitList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBracedInitList(this); - else return visitor.visitChildren(this); - } - } - - public final BracedInitListContext bracedInitList() throws RecognitionException { - BracedInitListContext _localctx = new BracedInitListContext(_ctx, getState()); - enterRule(_localctx, 276, RULE_bracedInitList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1618); - match(LeftBrace); - setState(1623); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474400910417L) != 0) || _la==Identifier) { - { - setState(1619); - initializerList(); - setState(1621); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(1620); - match(Comma); - } - } - - } - } - - setState(1625); - match(RightBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassNameContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public SimpleTemplateIdContext simpleTemplateId() { - return getRuleContext(SimpleTemplateIdContext.class,0); - } - public ClassNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_className; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterClassName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitClassName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitClassName(this); - else return visitor.visitChildren(this); - } - } - - public final ClassNameContext className() throws RecognitionException { - ClassNameContext _localctx = new ClassNameContext(_ctx, getState()); - enterRule(_localctx, 278, RULE_className); - try { - setState(1629); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,216,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1627); - match(Identifier); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1628); - simpleTemplateId(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassSpecifierContext extends ParserRuleContext { - public ClassHeadContext classHead() { - return getRuleContext(ClassHeadContext.class,0); - } - public TerminalNode LeftBrace() { return getToken(CPP14Parser.LeftBrace, 0); } - public TerminalNode RightBrace() { return getToken(CPP14Parser.RightBrace, 0); } - public MemberSpecificationContext memberSpecification() { - return getRuleContext(MemberSpecificationContext.class,0); - } - public ClassSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterClassSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitClassSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitClassSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final ClassSpecifierContext classSpecifier() throws RecognitionException { - ClassSpecifierContext _localctx = new ClassSpecifierContext(_ctx, getState()); - enterRule(_localctx, 280, RULE_classSpecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1631); - classHead(); - setState(1632); - match(LeftBrace); - setState(1634); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 10)) & ~0x3f) == 0 && ((1L << (_la - 10)) & 1543877313594212121L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 463888353847684093L) != 0)) { - { - setState(1633); - memberSpecification(); - } - } - - setState(1636); - match(RightBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassHeadContext extends ParserRuleContext { - public ClassKeyContext classKey() { - return getRuleContext(ClassKeyContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public ClassHeadNameContext classHeadName() { - return getRuleContext(ClassHeadNameContext.class,0); - } - public BaseClauseContext baseClause() { - return getRuleContext(BaseClauseContext.class,0); - } - public ClassVirtSpecifierContext classVirtSpecifier() { - return getRuleContext(ClassVirtSpecifierContext.class,0); - } - public TerminalNode Union() { return getToken(CPP14Parser.Union, 0); } - public ClassHeadContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classHead; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterClassHead(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitClassHead(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitClassHead(this); - else return visitor.visitChildren(this); - } - } - - public final ClassHeadContext classHead() throws RecognitionException { - ClassHeadContext _localctx = new ClassHeadContext(_ctx, getState()); - enterRule(_localctx, 282, RULE_classHead); - int _la; - try { - setState(1661); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Class: - case Struct: - enterOuterAlt(_localctx, 1); - { - setState(1638); - classKey(); - setState(1640); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1639); - attributeSpecifierSeq(); - } - } - - setState(1646); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Decltype || _la==Doublecolon || _la==Identifier) { - { - setState(1642); - classHeadName(); - setState(1644); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Final) { - { - setState(1643); - classVirtSpecifier(); - } - } - - } - } - - setState(1649); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1648); - baseClause(); - } - } - - } - break; - case Union: - enterOuterAlt(_localctx, 2); - { - setState(1651); - match(Union); - setState(1653); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1652); - attributeSpecifierSeq(); - } - } - - setState(1659); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Decltype || _la==Doublecolon || _la==Identifier) { - { - setState(1655); - classHeadName(); - setState(1657); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Final) { - { - setState(1656); - classVirtSpecifier(); - } - } - - } - } - - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassHeadNameContext extends ParserRuleContext { - public ClassNameContext className() { - return getRuleContext(ClassNameContext.class,0); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public ClassHeadNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classHeadName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterClassHeadName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitClassHeadName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitClassHeadName(this); - else return visitor.visitChildren(this); - } - } - - public final ClassHeadNameContext classHeadName() throws RecognitionException { - ClassHeadNameContext _localctx = new ClassHeadNameContext(_ctx, getState()); - enterRule(_localctx, 284, RULE_classHeadName); - try { - enterOuterAlt(_localctx, 1); - { - setState(1664); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,226,_ctx) ) { - case 1: - { - setState(1663); - nestedNameSpecifier(0); - } - break; - } - setState(1666); - className(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassVirtSpecifierContext extends ParserRuleContext { - public TerminalNode Final() { return getToken(CPP14Parser.Final, 0); } - public ClassVirtSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classVirtSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterClassVirtSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitClassVirtSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitClassVirtSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final ClassVirtSpecifierContext classVirtSpecifier() throws RecognitionException { - ClassVirtSpecifierContext _localctx = new ClassVirtSpecifierContext(_ctx, getState()); - enterRule(_localctx, 286, RULE_classVirtSpecifier); - try { - enterOuterAlt(_localctx, 1); - { - setState(1668); - match(Final); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassKeyContext extends ParserRuleContext { - public TerminalNode Class() { return getToken(CPP14Parser.Class, 0); } - public TerminalNode Struct() { return getToken(CPP14Parser.Struct, 0); } - public ClassKeyContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classKey; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterClassKey(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitClassKey(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitClassKey(this); - else return visitor.visitChildren(this); - } - } - - public final ClassKeyContext classKey() throws RecognitionException { - ClassKeyContext _localctx = new ClassKeyContext(_ctx, getState()); - enterRule(_localctx, 288, RULE_classKey); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1670); - _la = _input.LA(1); - if ( !(_la==Class || _la==Struct) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MemberSpecificationContext extends ParserRuleContext { - public List memberdeclaration() { - return getRuleContexts(MemberdeclarationContext.class); - } - public MemberdeclarationContext memberdeclaration(int i) { - return getRuleContext(MemberdeclarationContext.class,i); - } - public List accessSpecifier() { - return getRuleContexts(AccessSpecifierContext.class); - } - public AccessSpecifierContext accessSpecifier(int i) { - return getRuleContext(AccessSpecifierContext.class,i); - } - public List Colon() { return getTokens(CPP14Parser.Colon); } - public TerminalNode Colon(int i) { - return getToken(CPP14Parser.Colon, i); - } - public MemberSpecificationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_memberSpecification; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterMemberSpecification(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitMemberSpecification(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitMemberSpecification(this); - else return visitor.visitChildren(this); - } - } - - public final MemberSpecificationContext memberSpecification() throws RecognitionException { - MemberSpecificationContext _localctx = new MemberSpecificationContext(_ctx, getState()); - enterRule(_localctx, 290, RULE_memberSpecification); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1676); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - setState(1676); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Alignas: - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Class: - case Const: - case Constexpr: - case Decltype: - case Double: - case Enum: - case Explicit: - case Extern: - case Float: - case Friend: - case Inline: - case Int: - case Long: - case Mutable: - case Operator: - case Register: - case Short: - case Signed: - case Static: - case Static_assert: - case Struct: - case Template: - case Thread_local: - case Typedef: - case Typename_: - case Union: - case Unsigned: - case Using: - case Virtual: - case Void: - case Volatile: - case Wchar: - case LeftParen: - case LeftBracket: - case Star: - case And: - case Tilde: - case AndAnd: - case Colon: - case Doublecolon: - case Semi: - case Ellipsis: - case Identifier: - { - setState(1672); - memberdeclaration(); - } - break; - case Private: - case Protected: - case Public: - { - setState(1673); - accessSpecifier(); - setState(1674); - match(Colon); - } - break; - default: - throw new NoViableAltException(this); - } - } - setState(1678); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( ((((_la - 10)) & ~0x3f) == 0 && ((1L << (_la - 10)) & 1543877313594212121L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 463888353847684093L) != 0) ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MemberdeclarationContext extends ParserRuleContext { - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public DeclSpecifierSeqContext declSpecifierSeq() { - return getRuleContext(DeclSpecifierSeqContext.class,0); - } - public MemberDeclaratorListContext memberDeclaratorList() { - return getRuleContext(MemberDeclaratorListContext.class,0); - } - public FunctionDefinitionContext functionDefinition() { - return getRuleContext(FunctionDefinitionContext.class,0); - } - public UsingDeclarationContext usingDeclaration() { - return getRuleContext(UsingDeclarationContext.class,0); - } - public StaticAssertDeclarationContext staticAssertDeclaration() { - return getRuleContext(StaticAssertDeclarationContext.class,0); - } - public TemplateDeclarationContext templateDeclaration() { - return getRuleContext(TemplateDeclarationContext.class,0); - } - public AliasDeclarationContext aliasDeclaration() { - return getRuleContext(AliasDeclarationContext.class,0); - } - public EmptyDeclaration_Context emptyDeclaration_() { - return getRuleContext(EmptyDeclaration_Context.class,0); - } - public MemberdeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_memberdeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterMemberdeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitMemberdeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitMemberdeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final MemberdeclarationContext memberdeclaration() throws RecognitionException { - MemberdeclarationContext _localctx = new MemberdeclarationContext(_ctx, getState()); - enterRule(_localctx, 292, RULE_memberdeclaration); - int _la; - try { - setState(1696); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,232,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1681); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,229,_ctx) ) { - case 1: - { - setState(1680); - attributeSpecifierSeq(); - } - break; - } - setState(1684); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,230,_ctx) ) { - case 1: - { - setState(1683); - declSpecifierSeq(); - } - break; - } - setState(1687); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 4503599694480384L) != 0) || ((((_la - 85)) & ~0x3f) == 0 && ((1L << (_la - 85)) & 217711892254981L) != 0)) { - { - setState(1686); - memberDeclaratorList(); - } - } - - setState(1689); - match(Semi); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1690); - functionDefinition(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1691); - usingDeclaration(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(1692); - staticAssertDeclaration(); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(1693); - templateDeclaration(); - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(1694); - aliasDeclaration(); - } - break; - case 7: - enterOuterAlt(_localctx, 7); - { - setState(1695); - emptyDeclaration_(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MemberDeclaratorListContext extends ParserRuleContext { - public List memberDeclarator() { - return getRuleContexts(MemberDeclaratorContext.class); - } - public MemberDeclaratorContext memberDeclarator(int i) { - return getRuleContext(MemberDeclaratorContext.class,i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public MemberDeclaratorListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_memberDeclaratorList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterMemberDeclaratorList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitMemberDeclaratorList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitMemberDeclaratorList(this); - else return visitor.visitChildren(this); - } - } - - public final MemberDeclaratorListContext memberDeclaratorList() throws RecognitionException { - MemberDeclaratorListContext _localctx = new MemberDeclaratorListContext(_ctx, getState()); - enterRule(_localctx, 294, RULE_memberDeclaratorList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1698); - memberDeclarator(); - setState(1703); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1699); - match(Comma); - setState(1700); - memberDeclarator(); - } - } - setState(1705); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MemberDeclaratorContext extends ParserRuleContext { - public DeclaratorContext declarator() { - return getRuleContext(DeclaratorContext.class,0); - } - public VirtualSpecifierSeqContext virtualSpecifierSeq() { - return getRuleContext(VirtualSpecifierSeqContext.class,0); - } - public PureSpecifierContext pureSpecifier() { - return getRuleContext(PureSpecifierContext.class,0); - } - public BraceOrEqualInitializerContext braceOrEqualInitializer() { - return getRuleContext(BraceOrEqualInitializerContext.class,0); - } - public TerminalNode Colon() { return getToken(CPP14Parser.Colon, 0); } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public MemberDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_memberDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterMemberDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitMemberDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitMemberDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final MemberDeclaratorContext memberDeclarator() throws RecognitionException { - MemberDeclaratorContext _localctx = new MemberDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 296, RULE_memberDeclarator); - int _la; - try { - setState(1726); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,237,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1706); - declarator(); - setState(1715); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,234,_ctx) ) { - case 1: - { - setState(1707); - virtualSpecifierSeq(); - } - break; - case 2: - { - setState(1708); - if (!( this.IsPureSpecifierAllowed() )) throw new FailedPredicateException(this, " this.IsPureSpecifierAllowed() "); - setState(1709); - pureSpecifier(); - } - break; - case 3: - { - setState(1710); - if (!( this.IsPureSpecifierAllowed() )) throw new FailedPredicateException(this, " this.IsPureSpecifierAllowed() "); - setState(1711); - virtualSpecifierSeq(); - setState(1712); - pureSpecifier(); - } - break; - case 4: - { - setState(1714); - braceOrEqualInitializer(); - } - break; - } - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1717); - declarator(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1719); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Identifier) { - { - setState(1718); - match(Identifier); - } - } - - setState(1722); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1721); - attributeSpecifierSeq(); - } - } - - setState(1724); - match(Colon); - setState(1725); - constantExpression(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class VirtualSpecifierSeqContext extends ParserRuleContext { - public List virtualSpecifier() { - return getRuleContexts(VirtualSpecifierContext.class); - } - public VirtualSpecifierContext virtualSpecifier(int i) { - return getRuleContext(VirtualSpecifierContext.class,i); - } - public VirtualSpecifierSeqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_virtualSpecifierSeq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterVirtualSpecifierSeq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitVirtualSpecifierSeq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitVirtualSpecifierSeq(this); - else return visitor.visitChildren(this); - } - } - - public final VirtualSpecifierSeqContext virtualSpecifierSeq() throws RecognitionException { - VirtualSpecifierSeqContext _localctx = new VirtualSpecifierSeqContext(_ctx, getState()); - enterRule(_localctx, 298, RULE_virtualSpecifierSeq); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1729); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(1728); - virtualSpecifier(); - } - } - setState(1731); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==Final || _la==Override ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class VirtualSpecifierContext extends ParserRuleContext { - public TerminalNode Override() { return getToken(CPP14Parser.Override, 0); } - public TerminalNode Final() { return getToken(CPP14Parser.Final, 0); } - public VirtualSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_virtualSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterVirtualSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitVirtualSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitVirtualSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final VirtualSpecifierContext virtualSpecifier() throws RecognitionException { - VirtualSpecifierContext _localctx = new VirtualSpecifierContext(_ctx, getState()); - enterRule(_localctx, 300, RULE_virtualSpecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1733); - _la = _input.LA(1); - if ( !(_la==Final || _la==Override) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PureSpecifierContext extends ParserRuleContext { - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public TerminalNode IntegerLiteral() { return getToken(CPP14Parser.IntegerLiteral, 0); } - public PureSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_pureSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterPureSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitPureSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitPureSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final PureSpecifierContext pureSpecifier() throws RecognitionException { - PureSpecifierContext _localctx = new PureSpecifierContext(_ctx, getState()); - enterRule(_localctx, 302, RULE_pureSpecifier); - try { - enterOuterAlt(_localctx, 1); - { - setState(1735); - match(Assign); - setState(1736); - match(IntegerLiteral); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BaseClauseContext extends ParserRuleContext { - public TerminalNode Colon() { return getToken(CPP14Parser.Colon, 0); } - public BaseSpecifierListContext baseSpecifierList() { - return getRuleContext(BaseSpecifierListContext.class,0); - } - public BaseClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_baseClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBaseClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBaseClause(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBaseClause(this); - else return visitor.visitChildren(this); - } - } - - public final BaseClauseContext baseClause() throws RecognitionException { - BaseClauseContext _localctx = new BaseClauseContext(_ctx, getState()); - enterRule(_localctx, 304, RULE_baseClause); - try { - enterOuterAlt(_localctx, 1); - { - setState(1738); - match(Colon); - setState(1739); - baseSpecifierList(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BaseSpecifierListContext extends ParserRuleContext { - public List baseSpecifier() { - return getRuleContexts(BaseSpecifierContext.class); - } - public BaseSpecifierContext baseSpecifier(int i) { - return getRuleContext(BaseSpecifierContext.class,i); - } - public List Ellipsis() { return getTokens(CPP14Parser.Ellipsis); } - public TerminalNode Ellipsis(int i) { - return getToken(CPP14Parser.Ellipsis, i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public BaseSpecifierListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_baseSpecifierList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBaseSpecifierList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBaseSpecifierList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBaseSpecifierList(this); - else return visitor.visitChildren(this); - } - } - - public final BaseSpecifierListContext baseSpecifierList() throws RecognitionException { - BaseSpecifierListContext _localctx = new BaseSpecifierListContext(_ctx, getState()); - enterRule(_localctx, 306, RULE_baseSpecifierList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1741); - baseSpecifier(); - setState(1743); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1742); - match(Ellipsis); - } - } - - setState(1752); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1745); - match(Comma); - setState(1746); - baseSpecifier(); - setState(1748); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1747); - match(Ellipsis); - } - } - - } - } - setState(1754); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BaseSpecifierContext extends ParserRuleContext { - public BaseTypeSpecifierContext baseTypeSpecifier() { - return getRuleContext(BaseTypeSpecifierContext.class,0); - } - public TerminalNode Virtual() { return getToken(CPP14Parser.Virtual, 0); } - public AccessSpecifierContext accessSpecifier() { - return getRuleContext(AccessSpecifierContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public BaseSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_baseSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBaseSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBaseSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBaseSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final BaseSpecifierContext baseSpecifier() throws RecognitionException { - BaseSpecifierContext _localctx = new BaseSpecifierContext(_ctx, getState()); - enterRule(_localctx, 308, RULE_baseSpecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1756); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1755); - attributeSpecifierSeq(); - } - } - - setState(1770); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Decltype: - case Doublecolon: - case Identifier: - { - setState(1758); - baseTypeSpecifier(); - } - break; - case Virtual: - { - setState(1759); - match(Virtual); - setState(1761); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 126100789566373888L) != 0)) { - { - setState(1760); - accessSpecifier(); - } - } - - setState(1763); - baseTypeSpecifier(); - } - break; - case Private: - case Protected: - case Public: - { - setState(1764); - accessSpecifier(); - setState(1766); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Virtual) { - { - setState(1765); - match(Virtual); - } - } - - setState(1768); - baseTypeSpecifier(); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassOrDeclTypeContext extends ParserRuleContext { - public ClassNameContext className() { - return getRuleContext(ClassNameContext.class,0); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public DecltypeSpecifierContext decltypeSpecifier() { - return getRuleContext(DecltypeSpecifierContext.class,0); - } - public ClassOrDeclTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classOrDeclType; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterClassOrDeclType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitClassOrDeclType(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitClassOrDeclType(this); - else return visitor.visitChildren(this); - } - } - - public final ClassOrDeclTypeContext classOrDeclType() throws RecognitionException { - ClassOrDeclTypeContext _localctx = new ClassOrDeclTypeContext(_ctx, getState()); - enterRule(_localctx, 310, RULE_classOrDeclType); - try { - setState(1777); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,247,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1773); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,246,_ctx) ) { - case 1: - { - setState(1772); - nestedNameSpecifier(0); - } - break; - } - setState(1775); - className(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1776); - decltypeSpecifier(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BaseTypeSpecifierContext extends ParserRuleContext { - public ClassOrDeclTypeContext classOrDeclType() { - return getRuleContext(ClassOrDeclTypeContext.class,0); - } - public BaseTypeSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_baseTypeSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBaseTypeSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBaseTypeSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBaseTypeSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final BaseTypeSpecifierContext baseTypeSpecifier() throws RecognitionException { - BaseTypeSpecifierContext _localctx = new BaseTypeSpecifierContext(_ctx, getState()); - enterRule(_localctx, 312, RULE_baseTypeSpecifier); - try { - enterOuterAlt(_localctx, 1); - { - setState(1779); - classOrDeclType(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AccessSpecifierContext extends ParserRuleContext { - public TerminalNode Private() { return getToken(CPP14Parser.Private, 0); } - public TerminalNode Protected() { return getToken(CPP14Parser.Protected, 0); } - public TerminalNode Public() { return getToken(CPP14Parser.Public, 0); } - public AccessSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_accessSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAccessSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAccessSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAccessSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final AccessSpecifierContext accessSpecifier() throws RecognitionException { - AccessSpecifierContext _localctx = new AccessSpecifierContext(_ctx, getState()); - enterRule(_localctx, 314, RULE_accessSpecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1781); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 126100789566373888L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConversionFunctionIdContext extends ParserRuleContext { - public TerminalNode Operator() { return getToken(CPP14Parser.Operator, 0); } - public ConversionTypeIdContext conversionTypeId() { - return getRuleContext(ConversionTypeIdContext.class,0); - } - public ConversionFunctionIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_conversionFunctionId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterConversionFunctionId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitConversionFunctionId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitConversionFunctionId(this); - else return visitor.visitChildren(this); - } - } - - public final ConversionFunctionIdContext conversionFunctionId() throws RecognitionException { - ConversionFunctionIdContext _localctx = new ConversionFunctionIdContext(_ctx, getState()); - enterRule(_localctx, 316, RULE_conversionFunctionId); - try { - enterOuterAlt(_localctx, 1); - { - setState(1783); - match(Operator); - setState(1784); - conversionTypeId(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConversionTypeIdContext extends ParserRuleContext { - public TypeSpecifierSeqContext typeSpecifierSeq() { - return getRuleContext(TypeSpecifierSeqContext.class,0); - } - public ConversionDeclaratorContext conversionDeclarator() { - return getRuleContext(ConversionDeclaratorContext.class,0); - } - public ConversionTypeIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_conversionTypeId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterConversionTypeId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitConversionTypeId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitConversionTypeId(this); - else return visitor.visitChildren(this); - } - } - - public final ConversionTypeIdContext conversionTypeId() throws RecognitionException { - ConversionTypeIdContext _localctx = new ConversionTypeIdContext(_ctx, getState()); - enterRule(_localctx, 318, RULE_conversionTypeId); - try { - enterOuterAlt(_localctx, 1); - { - setState(1786); - typeSpecifierSeq(); - setState(1788); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,248,_ctx) ) { - case 1: - { - setState(1787); - conversionDeclarator(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConversionDeclaratorContext extends ParserRuleContext { - public PointerOperatorContext pointerOperator() { - return getRuleContext(PointerOperatorContext.class,0); - } - public ConversionDeclaratorContext conversionDeclarator() { - return getRuleContext(ConversionDeclaratorContext.class,0); - } - public ConversionDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_conversionDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterConversionDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitConversionDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitConversionDeclarator(this); - else return visitor.visitChildren(this); - } - } - public final ConversionDeclaratorContext conversionDeclarator() throws RecognitionException { - ConversionDeclaratorContext _localctx = new ConversionDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 320, RULE_conversionDeclarator); - try { - enterOuterAlt(_localctx, 1); - { - setState(1790); - pointerOperator(); - setState(1792); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,249,_ctx) ) { - case 1: - { - setState(1791); - conversionDeclarator(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } -- Gitee From 8d99f1b6d4527373ec907d38ccdbef18b863110b Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:44:36 +0800 Subject: [PATCH 29/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1998 ----------------- 1 file changed, 1998 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index 3a68273d..1a646c58 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -9820,2003 +9820,5 @@ public class CPP14Parser extends CPP14ParserBase { public void enterRule(ParseTreeListener listener) { if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeclarator(this); } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final DeclaratorContext declarator() throws RecognitionException { - DeclaratorContext _localctx = new DeclaratorContext(_ctx, getState()); - enterRule(_localctx, 226, RULE_declarator); - try { - setState(1376); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,159,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1371); - pointerDeclarator(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1372); - noPointerDeclarator(0); - setState(1373); - parametersAndQualifiers(); - setState(1374); - trailingReturnType(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PointerDeclaratorContext extends ParserRuleContext { - public NoPointerDeclaratorContext noPointerDeclarator() { - return getRuleContext(NoPointerDeclaratorContext.class,0); - } - public List pointerOperator() { - return getRuleContexts(PointerOperatorContext.class); - } - public PointerOperatorContext pointerOperator(int i) { - return getRuleContext(PointerOperatorContext.class,i); - } - public List Const() { return getTokens(CPP14Parser.Const); } - public TerminalNode Const(int i) { - return getToken(CPP14Parser.Const, i); - } - public PointerDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_pointerDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterPointerDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitPointerDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitPointerDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final PointerDeclaratorContext pointerDeclarator() throws RecognitionException { - PointerDeclaratorContext _localctx = new PointerDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 228, RULE_pointerDeclarator); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1384); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,161,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1378); - pointerOperator(); - setState(1380); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Const) { - { - setState(1379); - match(Const); - } - } - - } - } - } - setState(1386); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,161,_ctx); - } - setState(1387); - noPointerDeclarator(0); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NoPointerDeclaratorContext extends ParserRuleContext { - public DeclaratoridContext declaratorid() { - return getRuleContext(DeclaratoridContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public PointerDeclaratorContext pointerDeclarator() { - return getRuleContext(PointerDeclaratorContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public NoPointerDeclaratorContext noPointerDeclarator() { - return getRuleContext(NoPointerDeclaratorContext.class,0); - } - public ParametersAndQualifiersContext parametersAndQualifiers() { - return getRuleContext(ParametersAndQualifiersContext.class,0); - } - public TerminalNode LeftBracket() { return getToken(CPP14Parser.LeftBracket, 0); } - public TerminalNode RightBracket() { return getToken(CPP14Parser.RightBracket, 0); } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public NoPointerDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_noPointerDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNoPointerDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNoPointerDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNoPointerDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final NoPointerDeclaratorContext noPointerDeclarator() throws RecognitionException { - return noPointerDeclarator(0); - } - - private NoPointerDeclaratorContext noPointerDeclarator(int _p) throws RecognitionException { - ParserRuleContext _parentctx = _ctx; - int _parentState = getState(); - NoPointerDeclaratorContext _localctx = new NoPointerDeclaratorContext(_ctx, _parentState); - NoPointerDeclaratorContext _prevctx = _localctx; - int _startState = 230; - enterRecursionRule(_localctx, 230, RULE_noPointerDeclarator, _p); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1398); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Decltype: - case Operator: - case Tilde: - case Doublecolon: - case Ellipsis: - case Identifier: - { - setState(1390); - declaratorid(); - setState(1392); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,162,_ctx) ) { - case 1: - { - setState(1391); - attributeSpecifierSeq(); - } - break; - } - } - break; - case LeftParen: - { - setState(1394); - match(LeftParen); - setState(1395); - pointerDeclarator(); - setState(1396); - match(RightParen); - } - break; - default: - throw new NoViableAltException(this); - } - _ctx.stop = _input.LT(-1); - setState(1414); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,167,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - { - _localctx = new NoPointerDeclaratorContext(_parentctx, _parentState); - pushNewRecursionContext(_localctx, _startState, RULE_noPointerDeclarator); - setState(1400); - if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)"); - setState(1410); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - { - setState(1401); - parametersAndQualifiers(); - } - break; - case LeftBracket: - { - setState(1402); - match(LeftBracket); - setState(1404); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384133137L) != 0) || _la==Identifier) { - { - setState(1403); - constantExpression(); - } - } - - setState(1406); - match(RightBracket); - setState(1408); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,165,_ctx) ) { - case 1: - { - setState(1407); - attributeSpecifierSeq(); - } - break; - } - } - break; - default: - throw new NoViableAltException(this); - } - } - } - } - setState(1416); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,167,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ParametersAndQualifiersContext extends ParserRuleContext { - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public ParameterDeclarationClauseContext parameterDeclarationClause() { - return getRuleContext(ParameterDeclarationClauseContext.class,0); - } - public CvqualifierseqContext cvqualifierseq() { - return getRuleContext(CvqualifierseqContext.class,0); - } - public RefqualifierContext refqualifier() { - return getRuleContext(RefqualifierContext.class,0); - } - public ExceptionSpecificationContext exceptionSpecification() { - return getRuleContext(ExceptionSpecificationContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public ParametersAndQualifiersContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_parametersAndQualifiers; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterParametersAndQualifiers(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitParametersAndQualifiers(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitParametersAndQualifiers(this); - else return visitor.visitChildren(this); - } - } - - public final ParametersAndQualifiersContext parametersAndQualifiers() throws RecognitionException { - ParametersAndQualifiersContext _localctx = new ParametersAndQualifiersContext(_ctx, getState()); - enterRule(_localctx, 232, RULE_parametersAndQualifiers); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1417); - match(LeftParen); - setState(1419); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 10)) & ~0x3f) == 0 && ((1L << (_la - 10)) & 1237504995584196377L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 297237575406461917L) != 0)) { - { - setState(1418); - parameterDeclarationClause(); - } - } - - setState(1421); - match(RightParen); - setState(1423); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,169,_ctx) ) { - case 1: - { - setState(1422); - cvqualifierseq(); - } - break; - } - setState(1426); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,170,_ctx) ) { - case 1: - { - setState(1425); - refqualifier(); - } - break; - } - setState(1429); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,171,_ctx) ) { - case 1: - { - setState(1428); - exceptionSpecification(); - } - break; - } - setState(1432); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,172,_ctx) ) { - case 1: - { - setState(1431); - attributeSpecifierSeq(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TrailingReturnTypeContext extends ParserRuleContext { - public TerminalNode Arrow() { return getToken(CPP14Parser.Arrow, 0); } - public TrailingTypeSpecifierSeqContext trailingTypeSpecifierSeq() { - return getRuleContext(TrailingTypeSpecifierSeqContext.class,0); - } - public AbstractDeclaratorContext abstractDeclarator() { - return getRuleContext(AbstractDeclaratorContext.class,0); - } - public TrailingReturnTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_trailingReturnType; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTrailingReturnType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTrailingReturnType(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTrailingReturnType(this); - else return visitor.visitChildren(this); - } - } - - public final TrailingReturnTypeContext trailingReturnType() throws RecognitionException { - TrailingReturnTypeContext _localctx = new TrailingReturnTypeContext(_ctx, getState()); - enterRule(_localctx, 234, RULE_trailingReturnType); - try { - enterOuterAlt(_localctx, 1); - { - setState(1434); - match(Arrow); - setState(1435); - trailingTypeSpecifierSeq(); - setState(1437); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,173,_ctx) ) { - case 1: - { - setState(1436); - abstractDeclarator(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PointerOperatorContext extends ParserRuleContext { - public TerminalNode And() { return getToken(CPP14Parser.And, 0); } - public TerminalNode AndAnd() { return getToken(CPP14Parser.AndAnd, 0); } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TerminalNode Star() { return getToken(CPP14Parser.Star, 0); } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public CvqualifierseqContext cvqualifierseq() { - return getRuleContext(CvqualifierseqContext.class,0); - } - public PointerOperatorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_pointerOperator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterPointerOperator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitPointerOperator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitPointerOperator(this); - else return visitor.visitChildren(this); - } - } - - public final PointerOperatorContext pointerOperator() throws RecognitionException { - PointerOperatorContext _localctx = new PointerOperatorContext(_ctx, getState()); - enterRule(_localctx, 236, RULE_pointerOperator); - int _la; - try { - setState(1453); - _errHandler.sync(this); - switch (_input.LA(1)) { - case And: - case AndAnd: - enterOuterAlt(_localctx, 1); - { - setState(1439); - _la = _input.LA(1); - if ( !(_la==And || _la==AndAnd) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(1441); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,174,_ctx) ) { - case 1: - { - setState(1440); - attributeSpecifierSeq(); - } - break; - } - } - break; - case Decltype: - case Star: - case Doublecolon: - case Identifier: - enterOuterAlt(_localctx, 2); - { - setState(1444); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Decltype || _la==Doublecolon || _la==Identifier) { - { - setState(1443); - nestedNameSpecifier(0); - } - } - - setState(1446); - match(Star); - setState(1448); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,176,_ctx) ) { - case 1: - { - setState(1447); - attributeSpecifierSeq(); - } - break; - } - setState(1451); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,177,_ctx) ) { - case 1: - { - setState(1450); - cvqualifierseq(); - } - break; - } - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CvqualifierseqContext extends ParserRuleContext { - public List cvQualifier() { - return getRuleContexts(CvQualifierContext.class); - } - public CvQualifierContext cvQualifier(int i) { - return getRuleContext(CvQualifierContext.class,i); - } - public CvqualifierseqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_cvqualifierseq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterCvqualifierseq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitCvqualifierseq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitCvqualifierseq(this); - else return visitor.visitChildren(this); - } - } - - public final CvqualifierseqContext cvqualifierseq() throws RecognitionException { - CvqualifierseqContext _localctx = new CvqualifierseqContext(_ctx, getState()); - enterRule(_localctx, 238, RULE_cvqualifierseq); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1456); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(1455); - cvQualifier(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(1458); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,179,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CvQualifierContext extends ParserRuleContext { - public TerminalNode Const() { return getToken(CPP14Parser.Const, 0); } - public TerminalNode Volatile() { return getToken(CPP14Parser.Volatile, 0); } - public CvQualifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_cvQualifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterCvQualifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitCvQualifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitCvQualifier(this); - else return visitor.visitChildren(this); - } - } - - public final CvQualifierContext cvQualifier() throws RecognitionException { - CvQualifierContext _localctx = new CvQualifierContext(_ctx, getState()); - enterRule(_localctx, 240, RULE_cvQualifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1460); - _la = _input.LA(1); - if ( !(_la==Const || _la==Volatile) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class RefqualifierContext extends ParserRuleContext { - public TerminalNode And() { return getToken(CPP14Parser.And, 0); } - public TerminalNode AndAnd() { return getToken(CPP14Parser.AndAnd, 0); } - public RefqualifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_refqualifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterRefqualifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitRefqualifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitRefqualifier(this); - else return visitor.visitChildren(this); - } - } - - public final RefqualifierContext refqualifier() throws RecognitionException { - RefqualifierContext _localctx = new RefqualifierContext(_ctx, getState()); - enterRule(_localctx, 242, RULE_refqualifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1462); - _la = _input.LA(1); - if ( !(_la==And || _la==AndAnd) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DeclaratoridContext extends ParserRuleContext { - public IdExpressionContext idExpression() { - return getRuleContext(IdExpressionContext.class,0); - } - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public DeclaratoridContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_declaratorid; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeclaratorid(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDeclaratorid(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDeclaratorid(this); - else return visitor.visitChildren(this); - } - } - - public final DeclaratoridContext declaratorid() throws RecognitionException { - DeclaratoridContext _localctx = new DeclaratoridContext(_ctx, getState()); - enterRule(_localctx, 244, RULE_declaratorid); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1465); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1464); - match(Ellipsis); - } - } - - setState(1467); - idExpression(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TheTypeIdContext extends ParserRuleContext { - public TypeSpecifierSeqContext typeSpecifierSeq() { - return getRuleContext(TypeSpecifierSeqContext.class,0); - } - public AbstractDeclaratorContext abstractDeclarator() { - return getRuleContext(AbstractDeclaratorContext.class,0); - } - public TheTypeIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_theTypeId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTheTypeId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTheTypeId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTheTypeId(this); - else return visitor.visitChildren(this); - } - } - - public final TheTypeIdContext theTypeId() throws RecognitionException { - TheTypeIdContext _localctx = new TheTypeIdContext(_ctx, getState()); - enterRule(_localctx, 246, RULE_theTypeId); - try { - enterOuterAlt(_localctx, 1); - { - setState(1469); - typeSpecifierSeq(); - setState(1471); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,181,_ctx) ) { - case 1: - { - setState(1470); - abstractDeclarator(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AbstractDeclaratorContext extends ParserRuleContext { - public PointerAbstractDeclaratorContext pointerAbstractDeclarator() { - return getRuleContext(PointerAbstractDeclaratorContext.class,0); - } - public ParametersAndQualifiersContext parametersAndQualifiers() { - return getRuleContext(ParametersAndQualifiersContext.class,0); - } - public TrailingReturnTypeContext trailingReturnType() { - return getRuleContext(TrailingReturnTypeContext.class,0); - } - public NoPointerAbstractDeclaratorContext noPointerAbstractDeclarator() { - return getRuleContext(NoPointerAbstractDeclaratorContext.class,0); - } - public AbstractPackDeclaratorContext abstractPackDeclarator() { - return getRuleContext(AbstractPackDeclaratorContext.class,0); - } - public AbstractDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_abstractDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAbstractDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAbstractDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAbstractDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final AbstractDeclaratorContext abstractDeclarator() throws RecognitionException { - AbstractDeclaratorContext _localctx = new AbstractDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 248, RULE_abstractDeclarator); - try { - setState(1481); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,183,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1473); - pointerAbstractDeclarator(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1475); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,182,_ctx) ) { - case 1: - { - setState(1474); - noPointerAbstractDeclarator(); - } - break; - } - setState(1477); - parametersAndQualifiers(); - setState(1478); - trailingReturnType(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1480); - abstractPackDeclarator(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PointerAbstractDeclaratorContext extends ParserRuleContext { - public NoPointerAbstractDeclaratorContext noPointerAbstractDeclarator() { - return getRuleContext(NoPointerAbstractDeclaratorContext.class,0); - } - public List pointerOperator() { - return getRuleContexts(PointerOperatorContext.class); - } - public PointerOperatorContext pointerOperator(int i) { - return getRuleContext(PointerOperatorContext.class,i); - } - public PointerAbstractDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_pointerAbstractDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterPointerAbstractDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitPointerAbstractDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitPointerAbstractDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final PointerAbstractDeclaratorContext pointerAbstractDeclarator() throws RecognitionException { - PointerAbstractDeclaratorContext _localctx = new PointerAbstractDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 250, RULE_pointerAbstractDeclarator); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1486); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,184,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1483); - pointerOperator(); - } - } - } - setState(1488); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,184,_ctx); - } - setState(1491); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - { - setState(1489); - noPointerAbstractDeclarator(); - } - break; - case Decltype: - case Star: - case And: - case AndAnd: - case Doublecolon: - case Identifier: - { - setState(1490); - pointerOperator(); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NoPointerAbstractDeclaratorContext extends ParserRuleContext { - public List parametersAndQualifiers() { - return getRuleContexts(ParametersAndQualifiersContext.class); - } - public ParametersAndQualifiersContext parametersAndQualifiers(int i) { - return getRuleContext(ParametersAndQualifiersContext.class,i); - } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public PointerAbstractDeclaratorContext pointerAbstractDeclarator() { - return getRuleContext(PointerAbstractDeclaratorContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public List LeftBracket() { return getTokens(CPP14Parser.LeftBracket); } - public TerminalNode LeftBracket(int i) { - return getToken(CPP14Parser.LeftBracket, i); - } - public List RightBracket() { return getTokens(CPP14Parser.RightBracket); } - public TerminalNode RightBracket(int i) { - return getToken(CPP14Parser.RightBracket, i); - } - public List constantExpression() { - return getRuleContexts(ConstantExpressionContext.class); - } - public ConstantExpressionContext constantExpression(int i) { - return getRuleContext(ConstantExpressionContext.class,i); - } - public List attributeSpecifierSeq() { - return getRuleContexts(AttributeSpecifierSeqContext.class); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq(int i) { - return getRuleContext(AttributeSpecifierSeqContext.class,i); - } - public NoPointerAbstractDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_noPointerAbstractDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNoPointerAbstractDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNoPointerAbstractDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNoPointerAbstractDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final NoPointerAbstractDeclaratorContext noPointerAbstractDeclarator() throws RecognitionException { - NoPointerAbstractDeclaratorContext _localctx = new NoPointerAbstractDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 252, RULE_noPointerAbstractDeclarator); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1498); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,186,_ctx) ) { - case 1: - { - setState(1493); - parametersAndQualifiers(); - } - break; - case 2: - { - setState(1494); - match(LeftParen); - setState(1495); - pointerAbstractDeclarator(); - setState(1496); - match(RightParen); - } - break; - } - setState(1511); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,190,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - setState(1509); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - { - setState(1500); - parametersAndQualifiers(); - } - break; - case LeftBracket: - { - setState(1501); - match(LeftBracket); - setState(1503); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384133137L) != 0) || _la==Identifier) { - { - setState(1502); - constantExpression(); - } - } - - setState(1505); - match(RightBracket); - setState(1507); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,188,_ctx) ) { - case 1: - { - setState(1506); - attributeSpecifierSeq(); - } - break; - } - } - break; - default: - throw new NoViableAltException(this); - } - } - } - setState(1513); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,190,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AbstractPackDeclaratorContext extends ParserRuleContext { - public NoPointerAbstractPackDeclaratorContext noPointerAbstractPackDeclarator() { - return getRuleContext(NoPointerAbstractPackDeclaratorContext.class,0); - } - public List pointerOperator() { - return getRuleContexts(PointerOperatorContext.class); - } - public PointerOperatorContext pointerOperator(int i) { - return getRuleContext(PointerOperatorContext.class,i); - } - public AbstractPackDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_abstractPackDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAbstractPackDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAbstractPackDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAbstractPackDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final AbstractPackDeclaratorContext abstractPackDeclarator() throws RecognitionException { - AbstractPackDeclaratorContext _localctx = new AbstractPackDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 254, RULE_abstractPackDeclarator); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1517); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Decltype || ((((_la - 93)) & ~0x3f) == 0 && ((1L << (_la - 93)) & 566969237521L) != 0)) { - { - { - setState(1514); - pointerOperator(); - } - } - setState(1519); - _errHandler.sync(this); - _la = _input.LA(1); - } - setState(1520); - noPointerAbstractPackDeclarator(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NoPointerAbstractPackDeclaratorContext extends ParserRuleContext { - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public List parametersAndQualifiers() { - return getRuleContexts(ParametersAndQualifiersContext.class); - } - public ParametersAndQualifiersContext parametersAndQualifiers(int i) { - return getRuleContext(ParametersAndQualifiersContext.class,i); - } - public List LeftBracket() { return getTokens(CPP14Parser.LeftBracket); } - public TerminalNode LeftBracket(int i) { - return getToken(CPP14Parser.LeftBracket, i); - } - public List RightBracket() { return getTokens(CPP14Parser.RightBracket); } - public TerminalNode RightBracket(int i) { - return getToken(CPP14Parser.RightBracket, i); - } - public List constantExpression() { - return getRuleContexts(ConstantExpressionContext.class); - } - public ConstantExpressionContext constantExpression(int i) { - return getRuleContext(ConstantExpressionContext.class,i); - } - public List attributeSpecifierSeq() { - return getRuleContexts(AttributeSpecifierSeqContext.class); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq(int i) { - return getRuleContext(AttributeSpecifierSeqContext.class,i); - } - public NoPointerAbstractPackDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_noPointerAbstractPackDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNoPointerAbstractPackDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNoPointerAbstractPackDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNoPointerAbstractPackDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final NoPointerAbstractPackDeclaratorContext noPointerAbstractPackDeclarator() throws RecognitionException { - NoPointerAbstractPackDeclaratorContext _localctx = new NoPointerAbstractPackDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 256, RULE_noPointerAbstractPackDeclarator); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1522); - match(Ellipsis); - setState(1534); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,195,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - setState(1532); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - { - setState(1523); - parametersAndQualifiers(); - } - break; - case LeftBracket: - { - setState(1524); - match(LeftBracket); - setState(1526); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384133137L) != 0) || _la==Identifier) { - { - setState(1525); - constantExpression(); - } - } - - setState(1528); - match(RightBracket); - setState(1530); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,193,_ctx) ) { - case 1: - { - setState(1529); - attributeSpecifierSeq(); - } - break; - } - } - break; - default: - throw new NoViableAltException(this); - } - } - } - setState(1536); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,195,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ParameterDeclarationClauseContext extends ParserRuleContext { - public ParameterDeclarationListContext parameterDeclarationList() { - return getRuleContext(ParameterDeclarationListContext.class,0); - } - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public TerminalNode Comma() { return getToken(CPP14Parser.Comma, 0); } - public ParameterDeclarationClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_parameterDeclarationClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterParameterDeclarationClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitParameterDeclarationClause(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitParameterDeclarationClause(this); - else return visitor.visitChildren(this); - } - } - - public final ParameterDeclarationClauseContext parameterDeclarationClause() throws RecognitionException { - ParameterDeclarationClauseContext _localctx = new ParameterDeclarationClauseContext(_ctx, getState()); - enterRule(_localctx, 258, RULE_parameterDeclarationClause); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1537); - parameterDeclarationList(); - setState(1542); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma || _la==Ellipsis) { - { - setState(1539); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(1538); - match(Comma); - } - } - - setState(1541); - match(Ellipsis); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ParameterDeclarationListContext extends ParserRuleContext { - public List parameterDeclaration() { - return getRuleContexts(ParameterDeclarationContext.class); - } - public ParameterDeclarationContext parameterDeclaration(int i) { - return getRuleContext(ParameterDeclarationContext.class,i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public ParameterDeclarationListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_parameterDeclarationList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterParameterDeclarationList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitParameterDeclarationList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitParameterDeclarationList(this); - else return visitor.visitChildren(this); - } - } - - public final ParameterDeclarationListContext parameterDeclarationList() throws RecognitionException { - ParameterDeclarationListContext _localctx = new ParameterDeclarationListContext(_ctx, getState()); - enterRule(_localctx, 260, RULE_parameterDeclarationList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1544); - parameterDeclaration(); - setState(1549); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,198,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1545); - match(Comma); - setState(1546); - parameterDeclaration(); - } - } - } - setState(1551); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,198,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ParameterDeclarationContext extends ParserRuleContext { - public DeclSpecifierSeqContext declSpecifierSeq() { - return getRuleContext(DeclSpecifierSeqContext.class,0); - } - public DeclaratorContext declarator() { - return getRuleContext(DeclaratorContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public InitializerClauseContext initializerClause() { - return getRuleContext(InitializerClauseContext.class,0); - } - public AbstractDeclaratorContext abstractDeclarator() { - return getRuleContext(AbstractDeclaratorContext.class,0); - } - public ParameterDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_parameterDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterParameterDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitParameterDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitParameterDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final ParameterDeclarationContext parameterDeclaration() throws RecognitionException { - ParameterDeclarationContext _localctx = new ParameterDeclarationContext(_ctx, getState()); - enterRule(_localctx, 262, RULE_parameterDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1553); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1552); - attributeSpecifierSeq(); - } - } - - setState(1555); - declSpecifierSeq(); - setState(1560); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,201,_ctx) ) { - case 1: - { - setState(1556); - declarator(); - } - break; - case 2: - { - setState(1558); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,200,_ctx) ) { - case 1: - { - setState(1557); - abstractDeclarator(); - } - break; - } - } - break; - } - setState(1564); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Assign) { - { - setState(1562); - match(Assign); - setState(1563); - initializerClause(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FunctionDefinitionContext extends ParserRuleContext { - public DeclaratorContext declarator() { - return getRuleContext(DeclaratorContext.class,0); - } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public DeclSpecifierSeqContext declSpecifierSeq() { - return getRuleContext(DeclSpecifierSeqContext.class,0); - } - public VirtualSpecifierSeqContext virtualSpecifierSeq() { - return getRuleContext(VirtualSpecifierSeqContext.class,0); - } - public FunctionDefinitionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_functionDefinition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterFunctionDefinition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitFunctionDefinition(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitFunctionDefinition(this); - else return visitor.visitChildren(this); - } - } - - public final FunctionDefinitionContext functionDefinition() throws RecognitionException { - FunctionDefinitionContext _localctx = new FunctionDefinitionContext(_ctx, getState()); - enterRule(_localctx, 264, RULE_functionDefinition); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1567); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1566); - attributeSpecifierSeq(); - } - } - - setState(1570); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,204,_ctx) ) { - case 1: - { - setState(1569); - declSpecifierSeq(); - } - break; - } - setState(1572); - declarator(); - setState(1574); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Final || _la==Override) { - { - setState(1573); - virtualSpecifierSeq(); - } - } - - setState(1576); - functionBody(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FunctionBodyContext extends ParserRuleContext { - public CompoundStatementContext compoundStatement() { - return getRuleContext(CompoundStatementContext.class,0); - } - public ConstructorInitializerContext constructorInitializer() { - return getRuleContext(ConstructorInitializerContext.class,0); - } - public FunctionTryBlockContext functionTryBlock() { - return getRuleContext(FunctionTryBlockContext.class,0); - } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public TerminalNode Default() { return getToken(CPP14Parser.Default, 0); } - public TerminalNode Delete() { return getToken(CPP14Parser.Delete, 0); } - public FunctionBodyContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_functionBody; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterFunctionBody(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitFunctionBody(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitFunctionBody(this); - else return visitor.visitChildren(this); - } - } - - public final FunctionBodyContext functionBody() throws RecognitionException { - FunctionBodyContext _localctx = new FunctionBodyContext(_ctx, getState()); - enterRule(_localctx, 266, RULE_functionBody); - int _la; - try { - setState(1586); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftBrace: - case Colon: - enterOuterAlt(_localctx, 1); - { - setState(1579); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1578); - constructorInitializer(); - } - } - - setState(1581); - compoundStatement(); - } - break; - case Try: - enterOuterAlt(_localctx, 2); - { - setState(1582); - functionTryBlock(); - } - break; - case Assign: - enterOuterAlt(_localctx, 3); - { - setState(1583); - match(Assign); - setState(1584); - _la = _input.LA(1); - if ( !(_la==Default || _la==Delete) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(1585); - match(Semi); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InitializerContext extends ParserRuleContext { - public BraceOrEqualInitializerContext braceOrEqualInitializer() { - return getRuleContext(BraceOrEqualInitializerContext.class,0); - } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ExpressionListContext expressionList() { - return getRuleContext(ExpressionListContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public InitializerContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_initializer; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterInitializer(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitInitializer(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitInitializer(this); - else return visitor.visitChildren(this); - } - } - - public final InitializerContext initializer() throws RecognitionException { - InitializerContext _localctx = new InitializerContext(_ctx, getState()); - enterRule(_localctx, 268, RULE_initializer); - try { - setState(1593); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftBrace: - case Assign: - enterOuterAlt(_localctx, 1); - { - setState(1588); - braceOrEqualInitializer(); - } - break; - case LeftParen: - enterOuterAlt(_localctx, 2); - { - setState(1589); - match(LeftParen); - setState(1590); - expressionList(); - setState(1591); - match(RightParen); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BraceOrEqualInitializerContext extends ParserRuleContext { - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public InitializerClauseContext initializerClause() { - return getRuleContext(InitializerClauseContext.class,0); - } - public BracedInitListContext bracedInitList() { - return getRuleContext(BracedInitListContext.class,0); - } - public BraceOrEqualInitializerContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_braceOrEqualInitializer; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBraceOrEqualInitializer(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBraceOrEqualInitializer(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBraceOrEqualInitializer(this); - else return visitor.visitChildren(this); - } - } - - public final BraceOrEqualInitializerContext braceOrEqualInitializer() throws RecognitionException { - BraceOrEqualInitializerContext _localctx = new BraceOrEqualInitializerContext(_ctx, getState()); - enterRule(_localctx, 270, RULE_braceOrEqualInitializer); - try { - setState(1598); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Assign: - enterOuterAlt(_localctx, 1); - { - setState(1595); - match(Assign); - setState(1596); - initializerClause(); - } - break; - case LeftBrace: - enterOuterAlt(_localctx, 2); - { - setState(1597); - bracedInitList(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InitializerClauseContext extends ParserRuleContext { - public AssignmentExpressionContext assignmentExpression() { - return getRuleContext(AssignmentExpressionContext.class,0); - } - public BracedInitListContext bracedInitList() { - return getRuleContext(BracedInitListContext.class,0); - } - public InitializerClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_initializerClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterInitializerClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitInitializerClause(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitInitializerClause(this); - else return visitor.visitChildren(this); - } - } - - - - } \ No newline at end of file -- Gitee From ad805623dfc6d0a66bdd041a1f7970576fbe2842 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:45:04 +0800 Subject: [PATCH 30/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1914 ----------------- 1 file changed, 1914 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index 1a646c58..34f48637 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -7905,1920 +7905,6 @@ public class CPP14Parser extends CPP14ParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class EnumbaseContext extends ParserRuleContext { - public TerminalNode Colon() { return getToken(CPP14Parser.Colon, 0); } - public TypeSpecifierSeqContext typeSpecifierSeq() { - return getRuleContext(TypeSpecifierSeqContext.class,0); - } - public EnumbaseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumbase; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEnumbase(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEnumbase(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEnumbase(this); - else return visitor.visitChildren(this); - } - } - - public final EnumbaseContext enumbase() throws RecognitionException { - EnumbaseContext _localctx = new EnumbaseContext(_ctx, getState()); - enterRule(_localctx, 176, RULE_enumbase); - try { - enterOuterAlt(_localctx, 1); - { - setState(1192); - match(Colon); - setState(1193); - typeSpecifierSeq(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumeratorListContext extends ParserRuleContext { - public List enumeratorDefinition() { - return getRuleContexts(EnumeratorDefinitionContext.class); - } - public EnumeratorDefinitionContext enumeratorDefinition(int i) { - return getRuleContext(EnumeratorDefinitionContext.class,i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public EnumeratorListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumeratorList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEnumeratorList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEnumeratorList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEnumeratorList(this); - else return visitor.visitChildren(this); - } - } - - public final EnumeratorListContext enumeratorList() throws RecognitionException { - EnumeratorListContext _localctx = new EnumeratorListContext(_ctx, getState()); - enterRule(_localctx, 178, RULE_enumeratorList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1195); - enumeratorDefinition(); - setState(1200); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,131,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1196); - match(Comma); - setState(1197); - enumeratorDefinition(); - } - } - } - setState(1202); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,131,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumeratorDefinitionContext extends ParserRuleContext { - public EnumeratorContext enumerator() { - return getRuleContext(EnumeratorContext.class,0); - } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public EnumeratorDefinitionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumeratorDefinition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEnumeratorDefinition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEnumeratorDefinition(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEnumeratorDefinition(this); - else return visitor.visitChildren(this); - } - } - - public final EnumeratorDefinitionContext enumeratorDefinition() throws RecognitionException { - EnumeratorDefinitionContext _localctx = new EnumeratorDefinitionContext(_ctx, getState()); - enterRule(_localctx, 180, RULE_enumeratorDefinition); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1203); - enumerator(); - setState(1206); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Assign) { - { - setState(1204); - match(Assign); - setState(1205); - constantExpression(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumeratorContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public EnumeratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumerator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEnumerator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEnumerator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEnumerator(this); - else return visitor.visitChildren(this); - } - } - - public final EnumeratorContext enumerator() throws RecognitionException { - EnumeratorContext _localctx = new EnumeratorContext(_ctx, getState()); - enterRule(_localctx, 182, RULE_enumerator); - try { - enterOuterAlt(_localctx, 1); - { - setState(1208); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NamespaceNameContext extends ParserRuleContext { - public OriginalNamespaceNameContext originalNamespaceName() { - return getRuleContext(OriginalNamespaceNameContext.class,0); - } - public NamespaceAliasContext namespaceAlias() { - return getRuleContext(NamespaceAliasContext.class,0); - } - public NamespaceNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_namespaceName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNamespaceName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNamespaceName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNamespaceName(this); - else return visitor.visitChildren(this); - } - } - - public final NamespaceNameContext namespaceName() throws RecognitionException { - NamespaceNameContext _localctx = new NamespaceNameContext(_ctx, getState()); - enterRule(_localctx, 184, RULE_namespaceName); - try { - setState(1212); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,133,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1210); - originalNamespaceName(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1211); - namespaceAlias(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class OriginalNamespaceNameContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public OriginalNamespaceNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_originalNamespaceName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterOriginalNamespaceName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitOriginalNamespaceName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitOriginalNamespaceName(this); - else return visitor.visitChildren(this); - } - } - - public final OriginalNamespaceNameContext originalNamespaceName() throws RecognitionException { - OriginalNamespaceNameContext _localctx = new OriginalNamespaceNameContext(_ctx, getState()); - enterRule(_localctx, 186, RULE_originalNamespaceName); - try { - enterOuterAlt(_localctx, 1); - { - setState(1214); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NamespaceDefinitionContext extends ParserRuleContext { - public DeclarationseqContext namespaceBody; - public TerminalNode Namespace() { return getToken(CPP14Parser.Namespace, 0); } - public TerminalNode LeftBrace() { return getToken(CPP14Parser.LeftBrace, 0); } - public TerminalNode RightBrace() { return getToken(CPP14Parser.RightBrace, 0); } - public TerminalNode Inline() { return getToken(CPP14Parser.Inline, 0); } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public OriginalNamespaceNameContext originalNamespaceName() { - return getRuleContext(OriginalNamespaceNameContext.class,0); - } - public DeclarationseqContext declarationseq() { - return getRuleContext(DeclarationseqContext.class,0); - } - public NamespaceDefinitionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_namespaceDefinition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNamespaceDefinition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNamespaceDefinition(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNamespaceDefinition(this); - else return visitor.visitChildren(this); - } - } - - public final NamespaceDefinitionContext namespaceDefinition() throws RecognitionException { - NamespaceDefinitionContext _localctx = new NamespaceDefinitionContext(_ctx, getState()); - enterRule(_localctx, 188, RULE_namespaceDefinition); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1217); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Inline) { - { - setState(1216); - match(Inline); - } - } - - setState(1219); - match(Namespace); - setState(1222); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,135,_ctx) ) { - case 1: - { - setState(1220); - match(Identifier); - } - break; - case 2: - { - setState(1221); - originalNamespaceName(); - } - break; - } - setState(1224); - match(LeftBrace); - setState(1226); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 10)) & ~0x3f) == 0 && ((1L << (_la - 10)) & 1543754443169808157L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 459384754220313597L) != 0)) { - { - setState(1225); - ((NamespaceDefinitionContext)_localctx).namespaceBody = declarationseq(); - } - } - - setState(1228); - match(RightBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NamespaceAliasContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public NamespaceAliasContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_namespaceAlias; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNamespaceAlias(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNamespaceAlias(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNamespaceAlias(this); - else return visitor.visitChildren(this); - } - } - - public final NamespaceAliasContext namespaceAlias() throws RecognitionException { - NamespaceAliasContext _localctx = new NamespaceAliasContext(_ctx, getState()); - enterRule(_localctx, 190, RULE_namespaceAlias); - try { - enterOuterAlt(_localctx, 1); - { - setState(1230); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NamespaceAliasDefinitionContext extends ParserRuleContext { - public TerminalNode Namespace() { return getToken(CPP14Parser.Namespace, 0); } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public QualifiednamespacespecifierContext qualifiednamespacespecifier() { - return getRuleContext(QualifiednamespacespecifierContext.class,0); - } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public NamespaceAliasDefinitionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_namespaceAliasDefinition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNamespaceAliasDefinition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNamespaceAliasDefinition(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNamespaceAliasDefinition(this); - else return visitor.visitChildren(this); - } - } - - public final NamespaceAliasDefinitionContext namespaceAliasDefinition() throws RecognitionException { - NamespaceAliasDefinitionContext _localctx = new NamespaceAliasDefinitionContext(_ctx, getState()); - enterRule(_localctx, 192, RULE_namespaceAliasDefinition); - try { - enterOuterAlt(_localctx, 1); - { - setState(1232); - match(Namespace); - setState(1233); - match(Identifier); - setState(1234); - match(Assign); - setState(1235); - qualifiednamespacespecifier(); - setState(1236); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class QualifiednamespacespecifierContext extends ParserRuleContext { - public NamespaceNameContext namespaceName() { - return getRuleContext(NamespaceNameContext.class,0); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public QualifiednamespacespecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_qualifiednamespacespecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterQualifiednamespacespecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitQualifiednamespacespecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitQualifiednamespacespecifier(this); - else return visitor.visitChildren(this); - } - } - - public final QualifiednamespacespecifierContext qualifiednamespacespecifier() throws RecognitionException { - QualifiednamespacespecifierContext _localctx = new QualifiednamespacespecifierContext(_ctx, getState()); - enterRule(_localctx, 194, RULE_qualifiednamespacespecifier); - try { - enterOuterAlt(_localctx, 1); - { - setState(1239); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,137,_ctx) ) { - case 1: - { - setState(1238); - nestedNameSpecifier(0); - } - break; - } - setState(1241); - namespaceName(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class UsingDeclarationContext extends ParserRuleContext { - public TerminalNode Using() { return getToken(CPP14Parser.Using, 0); } - public UnqualifiedIdContext unqualifiedId() { - return getRuleContext(UnqualifiedIdContext.class,0); - } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public TerminalNode Doublecolon() { return getToken(CPP14Parser.Doublecolon, 0); } - public TerminalNode Typename_() { return getToken(CPP14Parser.Typename_, 0); } - public UsingDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_usingDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterUsingDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitUsingDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitUsingDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final UsingDeclarationContext usingDeclaration() throws RecognitionException { - UsingDeclarationContext _localctx = new UsingDeclarationContext(_ctx, getState()); - enterRule(_localctx, 196, RULE_usingDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1243); - match(Using); - setState(1249); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,139,_ctx) ) { - case 1: - { - setState(1245); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Typename_) { - { - setState(1244); - match(Typename_); - } - } - - setState(1247); - nestedNameSpecifier(0); - } - break; - case 2: - { - setState(1248); - match(Doublecolon); - } - break; - } - setState(1251); - unqualifiedId(); - setState(1252); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class UsingDirectiveContext extends ParserRuleContext { - public TerminalNode Using() { return getToken(CPP14Parser.Using, 0); } - public TerminalNode Namespace() { return getToken(CPP14Parser.Namespace, 0); } - public NamespaceNameContext namespaceName() { - return getRuleContext(NamespaceNameContext.class,0); - } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public UsingDirectiveContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_usingDirective; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterUsingDirective(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitUsingDirective(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitUsingDirective(this); - else return visitor.visitChildren(this); - } - } - - public final UsingDirectiveContext usingDirective() throws RecognitionException { - UsingDirectiveContext _localctx = new UsingDirectiveContext(_ctx, getState()); - enterRule(_localctx, 198, RULE_usingDirective); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1255); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1254); - attributeSpecifierSeq(); - } - } - - setState(1257); - match(Using); - setState(1258); - match(Namespace); - setState(1260); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,141,_ctx) ) { - case 1: - { - setState(1259); - nestedNameSpecifier(0); - } - break; - } - setState(1262); - namespaceName(); - setState(1263); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AsmDefinitionContext extends ParserRuleContext { - public TerminalNode Asm() { return getToken(CPP14Parser.Asm, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode StringLiteral() { return getToken(CPP14Parser.StringLiteral, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public AsmDefinitionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_asmDefinition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAsmDefinition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAsmDefinition(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAsmDefinition(this); - else return visitor.visitChildren(this); - } - } - - public final AsmDefinitionContext asmDefinition() throws RecognitionException { - AsmDefinitionContext _localctx = new AsmDefinitionContext(_ctx, getState()); - enterRule(_localctx, 200, RULE_asmDefinition); - try { - enterOuterAlt(_localctx, 1); - { - setState(1265); - match(Asm); - setState(1266); - match(LeftParen); - setState(1267); - match(StringLiteral); - setState(1268); - match(RightParen); - setState(1269); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LinkageSpecificationContext extends ParserRuleContext { - public TerminalNode Extern() { return getToken(CPP14Parser.Extern, 0); } - public TerminalNode StringLiteral() { return getToken(CPP14Parser.StringLiteral, 0); } - public TerminalNode LeftBrace() { return getToken(CPP14Parser.LeftBrace, 0); } - public TerminalNode RightBrace() { return getToken(CPP14Parser.RightBrace, 0); } - public DeclarationContext declaration() { - return getRuleContext(DeclarationContext.class,0); - } - public DeclarationseqContext declarationseq() { - return getRuleContext(DeclarationseqContext.class,0); - } - public LinkageSpecificationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_linkageSpecification; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLinkageSpecification(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLinkageSpecification(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLinkageSpecification(this); - else return visitor.visitChildren(this); - } - } - - public final LinkageSpecificationContext linkageSpecification() throws RecognitionException { - LinkageSpecificationContext _localctx = new LinkageSpecificationContext(_ctx, getState()); - enterRule(_localctx, 202, RULE_linkageSpecification); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1271); - match(Extern); - setState(1272); - match(StringLiteral); - setState(1279); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftBrace: - { - setState(1273); - match(LeftBrace); - setState(1275); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 10)) & ~0x3f) == 0 && ((1L << (_la - 10)) & 1543754443169808157L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 459384754220313597L) != 0)) { - { - setState(1274); - declarationseq(); - } - } - - setState(1277); - match(RightBrace); - } - break; - case Alignas: - case Asm: - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Class: - case Const: - case Constexpr: - case Decltype: - case Double: - case Enum: - case Explicit: - case Extern: - case Float: - case Friend: - case Inline: - case Int: - case Long: - case Mutable: - case Namespace: - case Operator: - case Register: - case Short: - case Signed: - case Static: - case Static_assert: - case Struct: - case Template: - case Thread_local: - case Typedef: - case Typename_: - case Union: - case Unsigned: - case Using: - case Virtual: - case Void: - case Volatile: - case Wchar: - case LeftParen: - case LeftBracket: - case Star: - case And: - case Tilde: - case AndAnd: - case Doublecolon: - case Semi: - case Ellipsis: - case Identifier: - { - setState(1278); - declaration(); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AttributeSpecifierSeqContext extends ParserRuleContext { - public List attributeSpecifier() { - return getRuleContexts(AttributeSpecifierContext.class); - } - public AttributeSpecifierContext attributeSpecifier(int i) { - return getRuleContext(AttributeSpecifierContext.class,i); - } - public AttributeSpecifierSeqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_attributeSpecifierSeq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAttributeSpecifierSeq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAttributeSpecifierSeq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAttributeSpecifierSeq(this); - else return visitor.visitChildren(this); - } - } - - public final AttributeSpecifierSeqContext attributeSpecifierSeq() throws RecognitionException { - AttributeSpecifierSeqContext _localctx = new AttributeSpecifierSeqContext(_ctx, getState()); - enterRule(_localctx, 204, RULE_attributeSpecifierSeq); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1282); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(1281); - attributeSpecifier(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(1284); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,144,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AttributeSpecifierContext extends ParserRuleContext { - public List LeftBracket() { return getTokens(CPP14Parser.LeftBracket); } - public TerminalNode LeftBracket(int i) { - return getToken(CPP14Parser.LeftBracket, i); - } - public List RightBracket() { return getTokens(CPP14Parser.RightBracket); } - public TerminalNode RightBracket(int i) { - return getToken(CPP14Parser.RightBracket, i); - } - public AttributeListContext attributeList() { - return getRuleContext(AttributeListContext.class,0); - } - public AlignmentspecifierContext alignmentspecifier() { - return getRuleContext(AlignmentspecifierContext.class,0); - } - public AttributeSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_attributeSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAttributeSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAttributeSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAttributeSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final AttributeSpecifierContext attributeSpecifier() throws RecognitionException { - AttributeSpecifierContext _localctx = new AttributeSpecifierContext(_ctx, getState()); - enterRule(_localctx, 206, RULE_attributeSpecifier); - int _la; - try { - setState(1294); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftBracket: - enterOuterAlt(_localctx, 1); - { - setState(1286); - match(LeftBracket); - setState(1287); - match(LeftBracket); - setState(1289); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Identifier) { - { - setState(1288); - attributeList(); - } - } - - setState(1291); - match(RightBracket); - setState(1292); - match(RightBracket); - } - break; - case Alignas: - enterOuterAlt(_localctx, 2); - { - setState(1293); - alignmentspecifier(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AlignmentspecifierContext extends ParserRuleContext { - public TerminalNode Alignas() { return getToken(CPP14Parser.Alignas, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public TheTypeIdContext theTypeId() { - return getRuleContext(TheTypeIdContext.class,0); - } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public AlignmentspecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_alignmentspecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAlignmentspecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAlignmentspecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAlignmentspecifier(this); - else return visitor.visitChildren(this); - } - } - - public final AlignmentspecifierContext alignmentspecifier() throws RecognitionException { - AlignmentspecifierContext _localctx = new AlignmentspecifierContext(_ctx, getState()); - enterRule(_localctx, 208, RULE_alignmentspecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1296); - match(Alignas); - setState(1297); - match(LeftParen); - setState(1300); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,147,_ctx) ) { - case 1: - { - setState(1298); - theTypeId(); - } - break; - case 2: - { - setState(1299); - constantExpression(); - } - break; - } - setState(1303); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1302); - match(Ellipsis); - } - } - - setState(1305); - match(RightParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AttributeListContext extends ParserRuleContext { - public List attribute() { - return getRuleContexts(AttributeContext.class); - } - public AttributeContext attribute(int i) { - return getRuleContext(AttributeContext.class,i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public AttributeListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_attributeList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAttributeList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAttributeList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAttributeList(this); - else return visitor.visitChildren(this); - } - } - - public final AttributeListContext attributeList() throws RecognitionException { - AttributeListContext _localctx = new AttributeListContext(_ctx, getState()); - enterRule(_localctx, 210, RULE_attributeList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1307); - attribute(); - setState(1312); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1308); - match(Comma); - setState(1309); - attribute(); - } - } - setState(1314); - _errHandler.sync(this); - _la = _input.LA(1); - } - setState(1316); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1315); - match(Ellipsis); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AttributeContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public AttributeNamespaceContext attributeNamespace() { - return getRuleContext(AttributeNamespaceContext.class,0); - } - public TerminalNode Doublecolon() { return getToken(CPP14Parser.Doublecolon, 0); } - public AttributeArgumentClauseContext attributeArgumentClause() { - return getRuleContext(AttributeArgumentClauseContext.class,0); - } - public AttributeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_attribute; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAttribute(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAttribute(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAttribute(this); - else return visitor.visitChildren(this); - } - } - - public final AttributeContext attribute() throws RecognitionException { - AttributeContext _localctx = new AttributeContext(_ctx, getState()); - enterRule(_localctx, 212, RULE_attribute); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1321); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,151,_ctx) ) { - case 1: - { - setState(1318); - attributeNamespace(); - setState(1319); - match(Doublecolon); - } - break; - } - setState(1323); - match(Identifier); - setState(1325); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LeftParen) { - { - setState(1324); - attributeArgumentClause(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AttributeNamespaceContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public AttributeNamespaceContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_attributeNamespace; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAttributeNamespace(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAttributeNamespace(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAttributeNamespace(this); - else return visitor.visitChildren(this); - } - } - - public final AttributeNamespaceContext attributeNamespace() throws RecognitionException { - AttributeNamespaceContext _localctx = new AttributeNamespaceContext(_ctx, getState()); - enterRule(_localctx, 214, RULE_attributeNamespace); - try { - enterOuterAlt(_localctx, 1); - { - setState(1327); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AttributeArgumentClauseContext extends ParserRuleContext { - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public BalancedTokenSeqContext balancedTokenSeq() { - return getRuleContext(BalancedTokenSeqContext.class,0); - } - public AttributeArgumentClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_attributeArgumentClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAttributeArgumentClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAttributeArgumentClause(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAttributeArgumentClause(this); - else return visitor.visitChildren(this); - } - } - - public final AttributeArgumentClauseContext attributeArgumentClause() throws RecognitionException { - AttributeArgumentClauseContext _localctx = new AttributeArgumentClauseContext(_ctx, getState()); - enterRule(_localctx, 216, RULE_attributeArgumentClause); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1329); - match(LeftParen); - setState(1331); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -2L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -88080385L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 262143L) != 0)) { - { - setState(1330); - balancedTokenSeq(); - } - } - - setState(1333); - match(RightParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BalancedTokenSeqContext extends ParserRuleContext { - public List balancedtoken() { - return getRuleContexts(BalancedtokenContext.class); - } - public BalancedtokenContext balancedtoken(int i) { - return getRuleContext(BalancedtokenContext.class,i); - } - public BalancedTokenSeqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_balancedTokenSeq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBalancedTokenSeq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBalancedTokenSeq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBalancedTokenSeq(this); - else return visitor.visitChildren(this); - } - } - - public final BalancedTokenSeqContext balancedTokenSeq() throws RecognitionException { - BalancedTokenSeqContext _localctx = new BalancedTokenSeqContext(_ctx, getState()); - enterRule(_localctx, 218, RULE_balancedTokenSeq); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1336); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(1335); - balancedtoken(); - } - } - setState(1338); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( (((_la) & ~0x3f) == 0 && ((1L << _la) & -2L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -88080385L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 262143L) != 0) ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BalancedtokenContext extends ParserRuleContext { - public List LeftParen() { return getTokens(CPP14Parser.LeftParen); } - public TerminalNode LeftParen(int i) { - return getToken(CPP14Parser.LeftParen, i); - } - public BalancedTokenSeqContext balancedTokenSeq() { - return getRuleContext(BalancedTokenSeqContext.class,0); - } - public List RightParen() { return getTokens(CPP14Parser.RightParen); } - public TerminalNode RightParen(int i) { - return getToken(CPP14Parser.RightParen, i); - } - public List LeftBracket() { return getTokens(CPP14Parser.LeftBracket); } - public TerminalNode LeftBracket(int i) { - return getToken(CPP14Parser.LeftBracket, i); - } - public List RightBracket() { return getTokens(CPP14Parser.RightBracket); } - public TerminalNode RightBracket(int i) { - return getToken(CPP14Parser.RightBracket, i); - } - public List LeftBrace() { return getTokens(CPP14Parser.LeftBrace); } - public TerminalNode LeftBrace(int i) { - return getToken(CPP14Parser.LeftBrace, i); - } - public List RightBrace() { return getTokens(CPP14Parser.RightBrace); } - public TerminalNode RightBrace(int i) { - return getToken(CPP14Parser.RightBrace, i); - } - public BalancedtokenContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_balancedtoken; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBalancedtoken(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBalancedtoken(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBalancedtoken(this); - else return visitor.visitChildren(this); - } - } - - public final BalancedtokenContext balancedtoken() throws RecognitionException { - BalancedtokenContext _localctx = new BalancedtokenContext(_ctx, getState()); - enterRule(_localctx, 220, RULE_balancedtoken); - int _la; - try { - int _alt; - setState(1357); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - enterOuterAlt(_localctx, 1); - { - setState(1340); - match(LeftParen); - setState(1341); - balancedTokenSeq(); - setState(1342); - match(RightParen); - } - break; - case LeftBracket: - enterOuterAlt(_localctx, 2); - { - setState(1344); - match(LeftBracket); - setState(1345); - balancedTokenSeq(); - setState(1346); - match(RightBracket); - } - break; - case LeftBrace: - enterOuterAlt(_localctx, 3); - { - setState(1348); - match(LeftBrace); - setState(1349); - balancedTokenSeq(); - setState(1350); - match(RightBrace); - } - break; - case IntegerLiteral: - case CharacterLiteral: - case FloatingLiteral: - case StringLiteral: - case BooleanLiteral: - case PointerLiteral: - case UserDefinedLiteral: - case MultiLineMacro: - case Directive: - case Alignas: - case Alignof: - case Asm: - case Auto: - case Bool: - case Break: - case Case: - case Catch: - case Char: - case Char16: - case Char32: - case Class: - case Const: - case Constexpr: - case Const_cast: - case Continue: - case Decltype: - case Default: - case Delete: - case Do: - case Double: - case Dynamic_cast: - case Else: - case Enum: - case Explicit: - case Export: - case Extern: - case False_: - case Final: - case Float: - case For: - case Friend: - case Goto: - case If: - case Inline: - case Int: - case Long: - case Mutable: - case Namespace: - case New: - case Noexcept: - case Nullptr: - case Operator: - case Override: - case Private: - case Protected: - case Public: - case Register: - case Reinterpret_cast: - case Return: - case Short: - case Signed: - case Sizeof: - case Static: - case Static_assert: - case Static_cast: - case Struct: - case Switch: - case Template: - case This: - case Thread_local: - case Throw: - case True_: - case Try: - case Typedef: - case Typeid_: - case Typename_: - case Union: - case Unsigned: - case Using: - case Virtual: - case Void: - case Volatile: - case Wchar: - case While: - case Plus: - case Minus: - case Star: - case Div: - case Mod: - case Caret: - case And: - case Or: - case Tilde: - case Not: - case Assign: - case Less: - case Greater: - case PlusAssign: - case MinusAssign: - case StarAssign: - case DivAssign: - case ModAssign: - case XorAssign: - case AndAssign: - case OrAssign: - case LeftShiftAssign: - case RightShiftAssign: - case Equal: - case NotEqual: - case LessEqual: - case GreaterEqual: - case AndAnd: - case OrOr: - case PlusPlus: - case MinusMinus: - case Comma: - case ArrowStar: - case Arrow: - case Question: - case Colon: - case Doublecolon: - case Semi: - case Dot: - case DotStar: - case Ellipsis: - case Identifier: - case DecimalLiteral: - case OctalLiteral: - case HexadecimalLiteral: - case BinaryLiteral: - case Integersuffix: - case UserDefinedIntegerLiteral: - case UserDefinedFloatingLiteral: - case UserDefinedStringLiteral: - case UserDefinedCharacterLiteral: - case Whitespace: - case Newline: - case BlockComment: - case LineComment: - enterOuterAlt(_localctx, 4); - { - setState(1353); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(1352); - _la = _input.LA(1); - if ( _la <= 0 || (((((_la - 85)) & ~0x3f) == 0 && ((1L << (_la - 85)) & 63L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(1355); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,155,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InitDeclaratorListContext extends ParserRuleContext { - public List initDeclarator() { - return getRuleContexts(InitDeclaratorContext.class); - } - public InitDeclaratorContext initDeclarator(int i) { - return getRuleContext(InitDeclaratorContext.class,i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public InitDeclaratorListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_initDeclaratorList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterInitDeclaratorList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitInitDeclaratorList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitInitDeclaratorList(this); - else return visitor.visitChildren(this); - } - } - - public final InitDeclaratorListContext initDeclaratorList() throws RecognitionException { - InitDeclaratorListContext _localctx = new InitDeclaratorListContext(_ctx, getState()); - enterRule(_localctx, 222, RULE_initDeclaratorList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1359); - initDeclarator(); - setState(1364); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1360); - match(Comma); - setState(1361); - initDeclarator(); - } - } - setState(1366); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InitDeclaratorContext extends ParserRuleContext { - public DeclaratorContext declarator() { - return getRuleContext(DeclaratorContext.class,0); - } - public InitializerContext initializer() { - return getRuleContext(InitializerContext.class,0); - } - public InitDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_initDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterInitDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitInitDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitInitDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final InitDeclaratorContext initDeclarator() throws RecognitionException { - InitDeclaratorContext _localctx = new InitDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 224, RULE_initDeclarator); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1367); - declarator(); - setState(1369); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 85)) & ~0x3f) == 0 && ((1L << (_la - 85)) & 65553L) != 0)) { - { - setState(1368); - initializer(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - @SuppressWarnings("CheckReturnValue") - public static class DeclaratorContext extends ParserRuleContext { - public PointerDeclaratorContext pointerDeclarator() { - return getRuleContext(PointerDeclaratorContext.class,0); - } - public NoPointerDeclaratorContext noPointerDeclarator() { - return getRuleContext(NoPointerDeclaratorContext.class,0); - } - public ParametersAndQualifiersContext parametersAndQualifiers() { - return getRuleContext(ParametersAndQualifiersContext.class,0); - } - public TrailingReturnTypeContext trailingReturnType() { - return getRuleContext(TrailingReturnTypeContext.class,0); - } - public DeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_declarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeclarator(this); - } } \ No newline at end of file -- Gitee From 6361cb7040ac1f5d89e4263b8c00cb46e7690c2b Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:45:32 +0800 Subject: [PATCH 31/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1919 ----------------- 1 file changed, 1919 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index 34f48637..556a7b16 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -5984,1926 +5984,7 @@ public class CPP14Parser extends CPP14ParserBase { } } - public final SimpleDeclarationContext simpleDeclaration() throws RecognitionException { - SimpleDeclarationContext _localctx = new SimpleDeclarationContext(_ctx, getState()); - enterRule(_localctx, 128, RULE_simpleDeclaration); - int _la; - try { - setState(1021); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Class: - case Const: - case Constexpr: - case Decltype: - case Double: - case Enum: - case Explicit: - case Extern: - case Float: - case Friend: - case Inline: - case Int: - case Long: - case Mutable: - case Operator: - case Register: - case Short: - case Signed: - case Static: - case Struct: - case Thread_local: - case Typedef: - case Typename_: - case Union: - case Unsigned: - case Virtual: - case Void: - case Volatile: - case Wchar: - case LeftParen: - case Star: - case And: - case Tilde: - case AndAnd: - case Doublecolon: - case Semi: - case Ellipsis: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(1008); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,99,_ctx) ) { - case 1: - { - setState(1007); - declSpecifierSeq(); - } - break; - } - setState(1011); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Decltype || _la==Operator || ((((_la - 85)) & ~0x3f) == 0 && ((1L << (_la - 85)) & 215512868999425L) != 0)) { - { - setState(1010); - initDeclaratorList(); - } - } - - setState(1013); - match(Semi); - } - break; - case Alignas: - case LeftBracket: - enterOuterAlt(_localctx, 2); - { - setState(1014); - attributeSpecifierSeq(); - setState(1016); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,101,_ctx) ) { - case 1: - { - setState(1015); - declSpecifierSeq(); - } - break; - } - setState(1018); - initDeclaratorList(); - setState(1019); - match(Semi); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class StaticAssertDeclarationContext extends ParserRuleContext { - public TerminalNode Static_assert() { return getToken(CPP14Parser.Static_assert, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public TerminalNode Comma() { return getToken(CPP14Parser.Comma, 0); } - public TerminalNode StringLiteral() { return getToken(CPP14Parser.StringLiteral, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public StaticAssertDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_staticAssertDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterStaticAssertDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitStaticAssertDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitStaticAssertDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final StaticAssertDeclarationContext staticAssertDeclaration() throws RecognitionException { - StaticAssertDeclarationContext _localctx = new StaticAssertDeclarationContext(_ctx, getState()); - enterRule(_localctx, 130, RULE_staticAssertDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(1023); - match(Static_assert); - setState(1024); - match(LeftParen); - setState(1025); - constantExpression(); - setState(1026); - match(Comma); - setState(1027); - match(StringLiteral); - setState(1028); - match(RightParen); - setState(1029); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EmptyDeclaration_Context extends ParserRuleContext { - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public EmptyDeclaration_Context(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_emptyDeclaration_; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEmptyDeclaration_(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEmptyDeclaration_(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEmptyDeclaration_(this); - else return visitor.visitChildren(this); - } - } - - public final EmptyDeclaration_Context emptyDeclaration_() throws RecognitionException { - EmptyDeclaration_Context _localctx = new EmptyDeclaration_Context(_ctx, getState()); - enterRule(_localctx, 132, RULE_emptyDeclaration_); - try { - enterOuterAlt(_localctx, 1); - { - setState(1031); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AttributeDeclarationContext extends ParserRuleContext { - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public AttributeDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_attributeDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAttributeDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAttributeDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAttributeDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final AttributeDeclarationContext attributeDeclaration() throws RecognitionException { - AttributeDeclarationContext _localctx = new AttributeDeclarationContext(_ctx, getState()); - enterRule(_localctx, 134, RULE_attributeDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(1033); - attributeSpecifierSeq(); - setState(1034); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DeclSpecifierContext extends ParserRuleContext { - public StorageClassSpecifierContext storageClassSpecifier() { - return getRuleContext(StorageClassSpecifierContext.class,0); - } - public TypeSpecifierContext typeSpecifier() { - return getRuleContext(TypeSpecifierContext.class,0); - } - public FunctionSpecifierContext functionSpecifier() { - return getRuleContext(FunctionSpecifierContext.class,0); - } - public TerminalNode Friend() { return getToken(CPP14Parser.Friend, 0); } - public TerminalNode Typedef() { return getToken(CPP14Parser.Typedef, 0); } - public TerminalNode Constexpr() { return getToken(CPP14Parser.Constexpr, 0); } - public DeclSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_declSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeclSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDeclSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDeclSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final DeclSpecifierContext declSpecifier() throws RecognitionException { - DeclSpecifierContext _localctx = new DeclSpecifierContext(_ctx, getState()); - enterRule(_localctx, 136, RULE_declSpecifier); - try { - setState(1042); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Extern: - case Mutable: - case Register: - case Static: - case Thread_local: - enterOuterAlt(_localctx, 1); - { - setState(1036); - storageClassSpecifier(); - } - break; - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Class: - case Const: - case Decltype: - case Double: - case Enum: - case Float: - case Int: - case Long: - case Short: - case Signed: - case Struct: - case Typename_: - case Union: - case Unsigned: - case Void: - case Volatile: - case Wchar: - case Doublecolon: - case Identifier: - enterOuterAlt(_localctx, 2); - { - setState(1037); - typeSpecifier(); - } - break; - case Explicit: - case Inline: - case Virtual: - enterOuterAlt(_localctx, 3); - { - setState(1038); - functionSpecifier(); - } - break; - case Friend: - enterOuterAlt(_localctx, 4); - { - setState(1039); - match(Friend); - } - break; - case Typedef: - enterOuterAlt(_localctx, 5); - { - setState(1040); - match(Typedef); - } - break; - case Constexpr: - enterOuterAlt(_localctx, 6); - { - setState(1041); - match(Constexpr); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DeclSpecifierSeqContext extends ParserRuleContext { - public List declSpecifier() { - return getRuleContexts(DeclSpecifierContext.class); - } - public DeclSpecifierContext declSpecifier(int i) { - return getRuleContext(DeclSpecifierContext.class,i); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public DeclSpecifierSeqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_declSpecifierSeq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeclSpecifierSeq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDeclSpecifierSeq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDeclSpecifierSeq(this); - else return visitor.visitChildren(this); - } - } - - public final DeclSpecifierSeqContext declSpecifierSeq() throws RecognitionException { - DeclSpecifierSeqContext _localctx = new DeclSpecifierSeqContext(_ctx, getState()); - enterRule(_localctx, 138, RULE_declSpecifierSeq); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1045); - _errHandler.sync(this); - _alt = 1+1; - do { - switch (_alt) { - case 1+1: - { - { - setState(1044); - declSpecifier(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(1047); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,104,_ctx); - } while ( _alt!=1 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - setState(1050); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,105,_ctx) ) { - case 1: - { - setState(1049); - attributeSpecifierSeq(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class StorageClassSpecifierContext extends ParserRuleContext { - public TerminalNode Register() { return getToken(CPP14Parser.Register, 0); } - public TerminalNode Static() { return getToken(CPP14Parser.Static, 0); } - public TerminalNode Thread_local() { return getToken(CPP14Parser.Thread_local, 0); } - public TerminalNode Extern() { return getToken(CPP14Parser.Extern, 0); } - public TerminalNode Mutable() { return getToken(CPP14Parser.Mutable, 0); } - public StorageClassSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_storageClassSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterStorageClassSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitStorageClassSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitStorageClassSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final StorageClassSpecifierContext storageClassSpecifier() throws RecognitionException { - StorageClassSpecifierContext _localctx = new StorageClassSpecifierContext(_ctx, getState()); - enterRule(_localctx, 140, RULE_storageClassSpecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1052); - _la = _input.LA(1); - if ( !(((((_la - 36)) & ~0x3f) == 0 && ((1L << (_la - 36)) & 17316186113L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FunctionSpecifierContext extends ParserRuleContext { - public TerminalNode Inline() { return getToken(CPP14Parser.Inline, 0); } - public TerminalNode Virtual() { return getToken(CPP14Parser.Virtual, 0); } - public TerminalNode Explicit() { return getToken(CPP14Parser.Explicit, 0); } - public FunctionSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_functionSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterFunctionSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitFunctionSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitFunctionSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final FunctionSpecifierContext functionSpecifier() throws RecognitionException { - FunctionSpecifierContext _localctx = new FunctionSpecifierContext(_ctx, getState()); - enterRule(_localctx, 142, RULE_functionSpecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1054); - _la = _input.LA(1); - if ( !(((((_la - 34)) & ~0x3f) == 0 && ((1L << (_la - 34)) & 70368744178689L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypedefNameContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TypedefNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typedefName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTypedefName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTypedefName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTypedefName(this); - else return visitor.visitChildren(this); - } - } - - public final TypedefNameContext typedefName() throws RecognitionException { - TypedefNameContext _localctx = new TypedefNameContext(_ctx, getState()); - enterRule(_localctx, 144, RULE_typedefName); - try { - enterOuterAlt(_localctx, 1); - { - setState(1056); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeSpecifierContext extends ParserRuleContext { - public TrailingTypeSpecifierContext trailingTypeSpecifier() { - return getRuleContext(TrailingTypeSpecifierContext.class,0); - } - public ClassSpecifierContext classSpecifier() { - return getRuleContext(ClassSpecifierContext.class,0); - } - public EnumSpecifierContext enumSpecifier() { - return getRuleContext(EnumSpecifierContext.class,0); - } - public TypeSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTypeSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTypeSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTypeSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final TypeSpecifierContext typeSpecifier() throws RecognitionException { - TypeSpecifierContext _localctx = new TypeSpecifierContext(_ctx, getState()); - enterRule(_localctx, 146, RULE_typeSpecifier); - try { - setState(1061); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,106,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1058); - trailingTypeSpecifier(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1059); - classSpecifier(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1060); - enumSpecifier(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TrailingTypeSpecifierContext extends ParserRuleContext { - public SimpleTypeSpecifierContext simpleTypeSpecifier() { - return getRuleContext(SimpleTypeSpecifierContext.class,0); - } - public ElaboratedTypeSpecifierContext elaboratedTypeSpecifier() { - return getRuleContext(ElaboratedTypeSpecifierContext.class,0); - } - public TypeNameSpecifierContext typeNameSpecifier() { - return getRuleContext(TypeNameSpecifierContext.class,0); - } - public CvQualifierContext cvQualifier() { - return getRuleContext(CvQualifierContext.class,0); - } - public TrailingTypeSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_trailingTypeSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTrailingTypeSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTrailingTypeSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTrailingTypeSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final TrailingTypeSpecifierContext trailingTypeSpecifier() throws RecognitionException { - TrailingTypeSpecifierContext _localctx = new TrailingTypeSpecifierContext(_ctx, getState()); - enterRule(_localctx, 148, RULE_trailingTypeSpecifier); - try { - setState(1067); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Decltype: - case Double: - case Float: - case Int: - case Long: - case Short: - case Signed: - case Unsigned: - case Void: - case Wchar: - case Doublecolon: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(1063); - simpleTypeSpecifier(); - } - break; - case Class: - case Enum: - case Struct: - enterOuterAlt(_localctx, 2); - { - setState(1064); - elaboratedTypeSpecifier(); - } - break; - case Typename_: - enterOuterAlt(_localctx, 3); - { - setState(1065); - typeNameSpecifier(); - } - break; - case Const: - case Volatile: - enterOuterAlt(_localctx, 4); - { - setState(1066); - cvQualifier(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeSpecifierSeqContext extends ParserRuleContext { - public List typeSpecifier() { - return getRuleContexts(TypeSpecifierContext.class); - } - public TypeSpecifierContext typeSpecifier(int i) { - return getRuleContext(TypeSpecifierContext.class,i); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TypeSpecifierSeqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeSpecifierSeq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTypeSpecifierSeq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTypeSpecifierSeq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTypeSpecifierSeq(this); - else return visitor.visitChildren(this); - } - } - - public final TypeSpecifierSeqContext typeSpecifierSeq() throws RecognitionException { - TypeSpecifierSeqContext _localctx = new TypeSpecifierSeqContext(_ctx, getState()); - enterRule(_localctx, 150, RULE_typeSpecifierSeq); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1070); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(1069); - typeSpecifier(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(1072); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,108,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - setState(1075); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,109,_ctx) ) { - case 1: - { - setState(1074); - attributeSpecifierSeq(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TrailingTypeSpecifierSeqContext extends ParserRuleContext { - public List trailingTypeSpecifier() { - return getRuleContexts(TrailingTypeSpecifierContext.class); - } - public TrailingTypeSpecifierContext trailingTypeSpecifier(int i) { - return getRuleContext(TrailingTypeSpecifierContext.class,i); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TrailingTypeSpecifierSeqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_trailingTypeSpecifierSeq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTrailingTypeSpecifierSeq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTrailingTypeSpecifierSeq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTrailingTypeSpecifierSeq(this); - else return visitor.visitChildren(this); - } - } - - public final TrailingTypeSpecifierSeqContext trailingTypeSpecifierSeq() throws RecognitionException { - TrailingTypeSpecifierSeqContext _localctx = new TrailingTypeSpecifierSeqContext(_ctx, getState()); - enterRule(_localctx, 152, RULE_trailingTypeSpecifierSeq); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1078); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(1077); - trailingTypeSpecifier(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(1080); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,110,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - setState(1083); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,111,_ctx) ) { - case 1: - { - setState(1082); - attributeSpecifierSeq(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SimpleTypeLengthModifierContext extends ParserRuleContext { - public TerminalNode Short() { return getToken(CPP14Parser.Short, 0); } - public TerminalNode Long() { return getToken(CPP14Parser.Long, 0); } - public SimpleTypeLengthModifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_simpleTypeLengthModifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterSimpleTypeLengthModifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitSimpleTypeLengthModifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitSimpleTypeLengthModifier(this); - else return visitor.visitChildren(this); - } - } - - public final SimpleTypeLengthModifierContext simpleTypeLengthModifier() throws RecognitionException { - SimpleTypeLengthModifierContext _localctx = new SimpleTypeLengthModifierContext(_ctx, getState()); - enterRule(_localctx, 154, RULE_simpleTypeLengthModifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1085); - _la = _input.LA(1); - if ( !(_la==Long || _la==Short) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SimpleTypeSignednessModifierContext extends ParserRuleContext { - public TerminalNode Unsigned() { return getToken(CPP14Parser.Unsigned, 0); } - public TerminalNode Signed() { return getToken(CPP14Parser.Signed, 0); } - public SimpleTypeSignednessModifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_simpleTypeSignednessModifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterSimpleTypeSignednessModifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitSimpleTypeSignednessModifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitSimpleTypeSignednessModifier(this); - else return visitor.visitChildren(this); - } - } - - public final SimpleTypeSignednessModifierContext simpleTypeSignednessModifier() throws RecognitionException { - SimpleTypeSignednessModifierContext _localctx = new SimpleTypeSignednessModifierContext(_ctx, getState()); - enterRule(_localctx, 156, RULE_simpleTypeSignednessModifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1087); - _la = _input.LA(1); - if ( !(_la==Signed || _la==Unsigned) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SimpleTypeSpecifierContext extends ParserRuleContext { - public TheTypeNameContext theTypeName() { - return getRuleContext(TheTypeNameContext.class,0); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public SimpleTemplateIdContext simpleTemplateId() { - return getRuleContext(SimpleTemplateIdContext.class,0); - } - public TerminalNode Char() { return getToken(CPP14Parser.Char, 0); } - public TerminalNode Char16() { return getToken(CPP14Parser.Char16, 0); } - public TerminalNode Char32() { return getToken(CPP14Parser.Char32, 0); } - public TerminalNode Wchar() { return getToken(CPP14Parser.Wchar, 0); } - public TerminalNode Bool() { return getToken(CPP14Parser.Bool, 0); } - public TerminalNode Short() { return getToken(CPP14Parser.Short, 0); } - public TerminalNode Int() { return getToken(CPP14Parser.Int, 0); } - public TerminalNode Long() { return getToken(CPP14Parser.Long, 0); } - public TerminalNode Float() { return getToken(CPP14Parser.Float, 0); } - public TerminalNode Signed() { return getToken(CPP14Parser.Signed, 0); } - public TerminalNode Unsigned() { return getToken(CPP14Parser.Unsigned, 0); } - public TerminalNode Double() { return getToken(CPP14Parser.Double, 0); } - public TerminalNode Void() { return getToken(CPP14Parser.Void, 0); } - public TerminalNode Auto() { return getToken(CPP14Parser.Auto, 0); } - public DecltypeSpecifierContext decltypeSpecifier() { - return getRuleContext(DecltypeSpecifierContext.class,0); - } - public SimpleTypeSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_simpleTypeSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterSimpleTypeSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitSimpleTypeSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitSimpleTypeSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final SimpleTypeSpecifierContext simpleTypeSpecifier() throws RecognitionException { - SimpleTypeSpecifierContext _localctx = new SimpleTypeSpecifierContext(_ctx, getState()); - enterRule(_localctx, 158, RULE_simpleTypeSpecifier); - try { - setState(1113); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,113,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1090); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,112,_ctx) ) { - case 1: - { - setState(1089); - nestedNameSpecifier(0); - } - break; - } - setState(1092); - theTypeName(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1093); - nestedNameSpecifier(0); - setState(1094); - match(Template); - setState(1095); - simpleTemplateId(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1097); - match(Char); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(1098); - match(Char16); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(1099); - match(Char32); - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(1100); - match(Wchar); - } - break; - case 7: - enterOuterAlt(_localctx, 7); - { - setState(1101); - match(Bool); - } - break; - case 8: - enterOuterAlt(_localctx, 8); - { - setState(1102); - match(Short); - } - break; - case 9: - enterOuterAlt(_localctx, 9); - { - setState(1103); - match(Int); - } - break; - case 10: - enterOuterAlt(_localctx, 10); - { - setState(1104); - match(Long); - } - break; - case 11: - enterOuterAlt(_localctx, 11); - { - setState(1105); - match(Float); - } - break; - case 12: - enterOuterAlt(_localctx, 12); - { - setState(1106); - match(Signed); - } - break; - case 13: - enterOuterAlt(_localctx, 13); - { - setState(1107); - match(Unsigned); - } - break; - case 14: - enterOuterAlt(_localctx, 14); - { - setState(1108); - match(Float); - } - break; - case 15: - enterOuterAlt(_localctx, 15); - { - setState(1109); - match(Double); - } - break; - case 16: - enterOuterAlt(_localctx, 16); - { - setState(1110); - match(Void); - } - break; - case 17: - enterOuterAlt(_localctx, 17); - { - setState(1111); - match(Auto); - } - break; - case 18: - enterOuterAlt(_localctx, 18); - { - setState(1112); - decltypeSpecifier(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TheTypeNameContext extends ParserRuleContext { - public ClassNameContext className() { - return getRuleContext(ClassNameContext.class,0); - } - public EnumNameContext enumName() { - return getRuleContext(EnumNameContext.class,0); - } - public TypedefNameContext typedefName() { - return getRuleContext(TypedefNameContext.class,0); - } - public SimpleTemplateIdContext simpleTemplateId() { - return getRuleContext(SimpleTemplateIdContext.class,0); - } - public TheTypeNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_theTypeName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTheTypeName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTheTypeName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTheTypeName(this); - else return visitor.visitChildren(this); - } - } - - public final TheTypeNameContext theTypeName() throws RecognitionException { - TheTypeNameContext _localctx = new TheTypeNameContext(_ctx, getState()); - enterRule(_localctx, 160, RULE_theTypeName); - try { - setState(1119); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,114,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1115); - className(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1116); - enumName(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1117); - typedefName(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(1118); - simpleTemplateId(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DecltypeSpecifierContext extends ParserRuleContext { - public TerminalNode Decltype() { return getToken(CPP14Parser.Decltype, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public TerminalNode Auto() { return getToken(CPP14Parser.Auto, 0); } - public DecltypeSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_decltypeSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDecltypeSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDecltypeSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDecltypeSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final DecltypeSpecifierContext decltypeSpecifier() throws RecognitionException { - DecltypeSpecifierContext _localctx = new DecltypeSpecifierContext(_ctx, getState()); - enterRule(_localctx, 162, RULE_decltypeSpecifier); - try { - enterOuterAlt(_localctx, 1); - { - setState(1121); - match(Decltype); - setState(1122); - match(LeftParen); - setState(1125); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,115,_ctx) ) { - case 1: - { - setState(1123); - expression(); - } - break; - case 2: - { - setState(1124); - match(Auto); - } - break; - } - setState(1127); - match(RightParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ElaboratedTypeSpecifierContext extends ParserRuleContext { - public ClassKeyContext classKey() { - return getRuleContext(ClassKeyContext.class,0); - } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public SimpleTemplateIdContext simpleTemplateId() { - return getRuleContext(SimpleTemplateIdContext.class,0); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public TerminalNode Enum() { return getToken(CPP14Parser.Enum, 0); } - public ElaboratedTypeSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_elaboratedTypeSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterElaboratedTypeSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitElaboratedTypeSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitElaboratedTypeSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final ElaboratedTypeSpecifierContext elaboratedTypeSpecifier() throws RecognitionException { - ElaboratedTypeSpecifierContext _localctx = new ElaboratedTypeSpecifierContext(_ctx, getState()); - enterRule(_localctx, 164, RULE_elaboratedTypeSpecifier); - int _la; - try { - setState(1151); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Class: - case Struct: - enterOuterAlt(_localctx, 1); - { - setState(1129); - classKey(); - setState(1144); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,119,_ctx) ) { - case 1: - { - setState(1131); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1130); - attributeSpecifierSeq(); - } - } - - setState(1134); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,117,_ctx) ) { - case 1: - { - setState(1133); - nestedNameSpecifier(0); - } - break; - } - setState(1136); - match(Identifier); - } - break; - case 2: - { - setState(1137); - simpleTemplateId(); - } - break; - case 3: - { - setState(1138); - nestedNameSpecifier(0); - setState(1140); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Template) { - { - setState(1139); - match(Template); - } - } - - setState(1142); - simpleTemplateId(); - } - break; - } - } - break; - case Enum: - enterOuterAlt(_localctx, 2); - { - setState(1146); - match(Enum); - setState(1148); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,120,_ctx) ) { - case 1: - { - setState(1147); - nestedNameSpecifier(0); - } - break; - } - setState(1150); - match(Identifier); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumNameContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public EnumNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEnumName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEnumName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEnumName(this); - else return visitor.visitChildren(this); - } - } - - public final EnumNameContext enumName() throws RecognitionException { - EnumNameContext _localctx = new EnumNameContext(_ctx, getState()); - enterRule(_localctx, 166, RULE_enumName); - try { - enterOuterAlt(_localctx, 1); - { - setState(1153); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumSpecifierContext extends ParserRuleContext { - public EnumHeadContext enumHead() { - return getRuleContext(EnumHeadContext.class,0); - } - public TerminalNode LeftBrace() { return getToken(CPP14Parser.LeftBrace, 0); } - public TerminalNode RightBrace() { return getToken(CPP14Parser.RightBrace, 0); } - public EnumeratorListContext enumeratorList() { - return getRuleContext(EnumeratorListContext.class,0); - } - public TerminalNode Comma() { return getToken(CPP14Parser.Comma, 0); } - public EnumSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEnumSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEnumSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEnumSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final EnumSpecifierContext enumSpecifier() throws RecognitionException { - EnumSpecifierContext _localctx = new EnumSpecifierContext(_ctx, getState()); - enterRule(_localctx, 168, RULE_enumSpecifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1155); - enumHead(); - setState(1156); - match(LeftBrace); - setState(1161); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Identifier) { - { - setState(1157); - enumeratorList(); - setState(1159); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(1158); - match(Comma); - } - } - - } - } - - setState(1163); - match(RightBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumHeadContext extends ParserRuleContext { - public EnumkeyContext enumkey() { - return getRuleContext(EnumkeyContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public EnumbaseContext enumbase() { - return getRuleContext(EnumbaseContext.class,0); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public EnumHeadContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumHead; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEnumHead(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEnumHead(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEnumHead(this); - else return visitor.visitChildren(this); - } - } - - public final EnumHeadContext enumHead() throws RecognitionException { - EnumHeadContext _localctx = new EnumHeadContext(_ctx, getState()); - enterRule(_localctx, 170, RULE_enumHead); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1165); - enumkey(); - setState(1167); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1166); - attributeSpecifierSeq(); - } - } - - setState(1173); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Decltype || _la==Doublecolon || _la==Identifier) { - { - setState(1170); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,125,_ctx) ) { - case 1: - { - setState(1169); - nestedNameSpecifier(0); - } - break; - } - setState(1172); - match(Identifier); - } - } - - setState(1176); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1175); - enumbase(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class OpaqueEnumDeclarationContext extends ParserRuleContext { - public EnumkeyContext enumkey() { - return getRuleContext(EnumkeyContext.class,0); - } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public EnumbaseContext enumbase() { - return getRuleContext(EnumbaseContext.class,0); - } - public OpaqueEnumDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_opaqueEnumDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterOpaqueEnumDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitOpaqueEnumDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitOpaqueEnumDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final OpaqueEnumDeclarationContext opaqueEnumDeclaration() throws RecognitionException { - OpaqueEnumDeclarationContext _localctx = new OpaqueEnumDeclarationContext(_ctx, getState()); - enterRule(_localctx, 172, RULE_opaqueEnumDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1178); - enumkey(); - setState(1180); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1179); - attributeSpecifierSeq(); - } - } - - setState(1182); - match(Identifier); - setState(1184); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1183); - enumbase(); - } - } - - setState(1186); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumkeyContext extends ParserRuleContext { - public TerminalNode Enum() { return getToken(CPP14Parser.Enum, 0); } - public TerminalNode Class() { return getToken(CPP14Parser.Class, 0); } - public TerminalNode Struct() { return getToken(CPP14Parser.Struct, 0); } - public EnumkeyContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumkey; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEnumkey(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEnumkey(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEnumkey(this); - else return visitor.visitChildren(this); - } - } - - public final EnumkeyContext enumkey() throws RecognitionException { - EnumkeyContext _localctx = new EnumkeyContext(_ctx, getState()); - enterRule(_localctx, 174, RULE_enumkey); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1188); - match(Enum); - setState(1190); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Class || _la==Struct) { - { - setState(1189); - _la = _input.LA(1); - if ( !(_la==Class || _la==Struct) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } -- Gitee From 0588058b45b2e22d35e02bb4a4f9e112273c9ddd Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:45:55 +0800 Subject: [PATCH 32/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1978 ----------------- 1 file changed, 1978 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index 556a7b16..e7aab323 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -4009,1983 +4009,5 @@ public class CPP14Parser extends CPP14ParserBase { } } - public final ConditionalExpressionContext conditionalExpression() throws RecognitionException { - ConditionalExpressionContext _localctx = new ConditionalExpressionContext(_ctx, getState()); - enterRule(_localctx, 84, RULE_conditionalExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(807); - logicalOrExpression(); - setState(813); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Question) { - { - setState(808); - match(Question); - setState(809); - expression(); - setState(810); - match(Colon); - setState(811); - assignmentExpression(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AssignmentExpressionContext extends ParserRuleContext { - public ConditionalExpressionContext conditionalExpression() { - return getRuleContext(ConditionalExpressionContext.class,0); - } - public LogicalOrExpressionContext logicalOrExpression() { - return getRuleContext(LogicalOrExpressionContext.class,0); - } - public AssignmentOperatorContext assignmentOperator() { - return getRuleContext(AssignmentOperatorContext.class,0); - } - public InitializerClauseContext initializerClause() { - return getRuleContext(InitializerClauseContext.class,0); - } - public ThrowExpressionContext throwExpression() { - return getRuleContext(ThrowExpressionContext.class,0); - } - public AssignmentExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_assignmentExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAssignmentExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAssignmentExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAssignmentExpression(this); - else return visitor.visitChildren(this); - } - } - - public final AssignmentExpressionContext assignmentExpression() throws RecognitionException { - AssignmentExpressionContext _localctx = new AssignmentExpressionContext(_ctx, getState()); - enterRule(_localctx, 86, RULE_assignmentExpression); - try { - setState(821); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,71,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(815); - conditionalExpression(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(816); - logicalOrExpression(); - setState(817); - assignmentOperator(); - setState(818); - initializerClause(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(820); - throwExpression(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AssignmentOperatorContext extends ParserRuleContext { - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public TerminalNode StarAssign() { return getToken(CPP14Parser.StarAssign, 0); } - public TerminalNode DivAssign() { return getToken(CPP14Parser.DivAssign, 0); } - public TerminalNode ModAssign() { return getToken(CPP14Parser.ModAssign, 0); } - public TerminalNode PlusAssign() { return getToken(CPP14Parser.PlusAssign, 0); } - public TerminalNode MinusAssign() { return getToken(CPP14Parser.MinusAssign, 0); } - public TerminalNode RightShiftAssign() { return getToken(CPP14Parser.RightShiftAssign, 0); } - public TerminalNode LeftShiftAssign() { return getToken(CPP14Parser.LeftShiftAssign, 0); } - public TerminalNode AndAssign() { return getToken(CPP14Parser.AndAssign, 0); } - public TerminalNode XorAssign() { return getToken(CPP14Parser.XorAssign, 0); } - public TerminalNode OrAssign() { return getToken(CPP14Parser.OrAssign, 0); } - public AssignmentOperatorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_assignmentOperator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAssignmentOperator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAssignmentOperator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAssignmentOperator(this); - else return visitor.visitChildren(this); - } - } - - public final AssignmentOperatorContext assignmentOperator() throws RecognitionException { - AssignmentOperatorContext _localctx = new AssignmentOperatorContext(_ctx, getState()); - enterRule(_localctx, 88, RULE_assignmentOperator); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(823); - _la = _input.LA(1); - if ( !(((((_la - 101)) & ~0x3f) == 0 && ((1L << (_la - 101)) & 8185L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExpressionContext extends ParserRuleContext { - public List assignmentExpression() { - return getRuleContexts(AssignmentExpressionContext.class); - } - public AssignmentExpressionContext assignmentExpression(int i) { - return getRuleContext(AssignmentExpressionContext.class,i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public ExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_expression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitExpression(this); - else return visitor.visitChildren(this); - } - } - - public final ExpressionContext expression() throws RecognitionException { - ExpressionContext _localctx = new ExpressionContext(_ctx, getState()); - enterRule(_localctx, 90, RULE_expression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(825); - assignmentExpression(); - setState(830); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(826); - match(Comma); - setState(827); - assignmentExpression(); - } - } - setState(832); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConstantExpressionContext extends ParserRuleContext { - public ConditionalExpressionContext conditionalExpression() { - return getRuleContext(ConditionalExpressionContext.class,0); - } - public ConstantExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_constantExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterConstantExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitConstantExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitConstantExpression(this); - else return visitor.visitChildren(this); - } - } - - public final ConstantExpressionContext constantExpression() throws RecognitionException { - ConstantExpressionContext _localctx = new ConstantExpressionContext(_ctx, getState()); - enterRule(_localctx, 92, RULE_constantExpression); - try { - enterOuterAlt(_localctx, 1); - { - setState(833); - conditionalExpression(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class StatementContext extends ParserRuleContext { - public LabeledStatementContext labeledStatement() { - return getRuleContext(LabeledStatementContext.class,0); - } - public DeclarationStatementContext declarationStatement() { - return getRuleContext(DeclarationStatementContext.class,0); - } - public ExpressionStatementContext expressionStatement() { - return getRuleContext(ExpressionStatementContext.class,0); - } - public CompoundStatementContext compoundStatement() { - return getRuleContext(CompoundStatementContext.class,0); - } - public SelectionStatementContext selectionStatement() { - return getRuleContext(SelectionStatementContext.class,0); - } - public IterationStatementContext iterationStatement() { - return getRuleContext(IterationStatementContext.class,0); - } - public JumpStatementContext jumpStatement() { - return getRuleContext(JumpStatementContext.class,0); - } - public TryBlockContext tryBlock() { - return getRuleContext(TryBlockContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public StatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_statement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitStatement(this); - else return visitor.visitChildren(this); - } - } - - public final StatementContext statement() throws RecognitionException { - StatementContext _localctx = new StatementContext(_ctx, getState()); - enterRule(_localctx, 94, RULE_statement); - try { - setState(848); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,75,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(835); - labeledStatement(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(836); - declarationStatement(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(838); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,73,_ctx) ) { - case 1: - { - setState(837); - attributeSpecifierSeq(); - } - break; - } - setState(846); - _errHandler.sync(this); - switch (_input.LA(1)) { - case IntegerLiteral: - case CharacterLiteral: - case FloatingLiteral: - case StringLiteral: - case BooleanLiteral: - case PointerLiteral: - case UserDefinedLiteral: - case Alignof: - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Const_cast: - case Decltype: - case Delete: - case Double: - case Dynamic_cast: - case Float: - case Int: - case Long: - case New: - case Noexcept: - case Operator: - case Reinterpret_cast: - case Short: - case Signed: - case Sizeof: - case Static_cast: - case This: - case Throw: - case Typeid_: - case Typename_: - case Unsigned: - case Void: - case Wchar: - case LeftParen: - case LeftBracket: - case Plus: - case Minus: - case Star: - case And: - case Or: - case Tilde: - case Not: - case PlusPlus: - case MinusMinus: - case Doublecolon: - case Semi: - case Identifier: - { - setState(840); - expressionStatement(); - } - break; - case LeftBrace: - { - setState(841); - compoundStatement(); - } - break; - case If: - case Switch: - { - setState(842); - selectionStatement(); - } - break; - case Do: - case For: - case While: - { - setState(843); - iterationStatement(); - } - break; - case Break: - case Continue: - case Goto: - case Return: - { - setState(844); - jumpStatement(); - } - break; - case Try: - { - setState(845); - tryBlock(); - } - break; - default: - throw new NoViableAltException(this); - } - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LabeledStatementContext extends ParserRuleContext { - public TerminalNode Colon() { return getToken(CPP14Parser.Colon, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TerminalNode Case() { return getToken(CPP14Parser.Case, 0); } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public TerminalNode Default() { return getToken(CPP14Parser.Default, 0); } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public LabeledStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_labeledStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLabeledStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLabeledStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLabeledStatement(this); - else return visitor.visitChildren(this); - } - } - - public final LabeledStatementContext labeledStatement() throws RecognitionException { - LabeledStatementContext _localctx = new LabeledStatementContext(_ctx, getState()); - enterRule(_localctx, 96, RULE_labeledStatement); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(851); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(850); - attributeSpecifierSeq(); - } - } - - setState(857); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Identifier: - { - setState(853); - match(Identifier); - } - break; - case Case: - { - setState(854); - match(Case); - setState(855); - constantExpression(); - } - break; - case Default: - { - setState(856); - match(Default); - } - break; - default: - throw new NoViableAltException(this); - } - setState(859); - match(Colon); - setState(860); - statement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExpressionStatementContext extends ParserRuleContext { - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public ExpressionStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_expressionStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterExpressionStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitExpressionStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitExpressionStatement(this); - else return visitor.visitChildren(this); - } - } - - public final ExpressionStatementContext expressionStatement() throws RecognitionException { - ExpressionStatementContext _localctx = new ExpressionStatementContext(_ctx, getState()); - enterRule(_localctx, 98, RULE_expressionStatement); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(863); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384133201L) != 0) || _la==Identifier) { - { - setState(862); - expression(); - } - } - - setState(865); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CompoundStatementContext extends ParserRuleContext { - public TerminalNode LeftBrace() { return getToken(CPP14Parser.LeftBrace, 0); } - public TerminalNode RightBrace() { return getToken(CPP14Parser.RightBrace, 0); } - public StatementSeqContext statementSeq() { - return getRuleContext(StatementSeqContext.class,0); - } - public CompoundStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_compoundStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterCompoundStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitCompoundStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitCompoundStatement(this); - else return visitor.visitChildren(this); - } - } - - public final CompoundStatementContext compoundStatement() throws RecognitionException { - CompoundStatementContext _localctx = new CompoundStatementContext(_ctx, getState()); - enterRule(_localctx, 100, RULE_compoundStatement); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(867); - match(LeftBrace); - setState(869); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -137360239606498050L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -8989184726396829969L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 25L) != 0)) { - { - setState(868); - statementSeq(); - } - } - - setState(871); - match(RightBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class StatementSeqContext extends ParserRuleContext { - public List statement() { - return getRuleContexts(StatementContext.class); - } - public StatementContext statement(int i) { - return getRuleContext(StatementContext.class,i); - } - public StatementSeqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_statementSeq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterStatementSeq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitStatementSeq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitStatementSeq(this); - else return visitor.visitChildren(this); - } - } - - public final StatementSeqContext statementSeq() throws RecognitionException { - StatementSeqContext _localctx = new StatementSeqContext(_ctx, getState()); - enterRule(_localctx, 102, RULE_statementSeq); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(874); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(873); - statement(); - } - } - setState(876); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( (((_la) & ~0x3f) == 0 && ((1L << _la) & -137360239606498050L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -8989184726396829969L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 25L) != 0) ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SelectionStatementContext extends ParserRuleContext { - public TerminalNode If() { return getToken(CPP14Parser.If, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ConditionContext condition() { - return getRuleContext(ConditionContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public List statement() { - return getRuleContexts(StatementContext.class); - } - public StatementContext statement(int i) { - return getRuleContext(StatementContext.class,i); - } - public TerminalNode Else() { return getToken(CPP14Parser.Else, 0); } - public TerminalNode Switch() { return getToken(CPP14Parser.Switch, 0); } - public SelectionStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_selectionStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterSelectionStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitSelectionStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitSelectionStatement(this); - else return visitor.visitChildren(this); - } - } - - public final SelectionStatementContext selectionStatement() throws RecognitionException { - SelectionStatementContext _localctx = new SelectionStatementContext(_ctx, getState()); - enterRule(_localctx, 104, RULE_selectionStatement); - try { - setState(893); - _errHandler.sync(this); - switch (_input.LA(1)) { - case If: - enterOuterAlt(_localctx, 1); - { - setState(878); - match(If); - setState(879); - match(LeftParen); - setState(880); - condition(); - setState(881); - match(RightParen); - setState(882); - statement(); - setState(885); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,81,_ctx) ) { - case 1: - { - setState(883); - match(Else); - setState(884); - statement(); - } - break; - } - } - break; - case Switch: - enterOuterAlt(_localctx, 2); - { - setState(887); - match(Switch); - setState(888); - match(LeftParen); - setState(889); - condition(); - setState(890); - match(RightParen); - setState(891); - statement(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConditionContext extends ParserRuleContext { - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public DeclSpecifierSeqContext declSpecifierSeq() { - return getRuleContext(DeclSpecifierSeqContext.class,0); - } - public DeclaratorContext declarator() { - return getRuleContext(DeclaratorContext.class,0); - } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public InitializerClauseContext initializerClause() { - return getRuleContext(InitializerClauseContext.class,0); - } - public BracedInitListContext bracedInitList() { - return getRuleContext(BracedInitListContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public ConditionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_condition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterCondition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitCondition(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitCondition(this); - else return visitor.visitChildren(this); - } - } - - public final ConditionContext condition() throws RecognitionException { - ConditionContext _localctx = new ConditionContext(_ctx, getState()); - enterRule(_localctx, 106, RULE_condition); - int _la; - try { - setState(906); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,85,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(895); - expression(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(897); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(896); - attributeSpecifierSeq(); - } - } - - setState(899); - declSpecifierSeq(); - setState(900); - declarator(); - setState(904); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Assign: - { - setState(901); - match(Assign); - setState(902); - initializerClause(); - } - break; - case LeftBrace: - { - setState(903); - bracedInitList(); - } - break; - default: - throw new NoViableAltException(this); - } - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IterationStatementContext extends ParserRuleContext { - public TerminalNode While() { return getToken(CPP14Parser.While, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ConditionContext condition() { - return getRuleContext(ConditionContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode Do() { return getToken(CPP14Parser.Do, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public TerminalNode For() { return getToken(CPP14Parser.For, 0); } - public ForInitStatementContext forInitStatement() { - return getRuleContext(ForInitStatementContext.class,0); - } - public ForRangeDeclarationContext forRangeDeclaration() { - return getRuleContext(ForRangeDeclarationContext.class,0); - } - public TerminalNode Colon() { return getToken(CPP14Parser.Colon, 0); } - public ForRangeInitializerContext forRangeInitializer() { - return getRuleContext(ForRangeInitializerContext.class,0); - } - public IterationStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_iterationStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterIterationStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitIterationStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitIterationStatement(this); - else return visitor.visitChildren(this); - } - } - - public final IterationStatementContext iterationStatement() throws RecognitionException { - IterationStatementContext _localctx = new IterationStatementContext(_ctx, getState()); - enterRule(_localctx, 108, RULE_iterationStatement); - int _la; - try { - setState(941); - _errHandler.sync(this); - switch (_input.LA(1)) { - case While: - enterOuterAlt(_localctx, 1); - { - setState(908); - match(While); - setState(909); - match(LeftParen); - setState(910); - condition(); - setState(911); - match(RightParen); - setState(912); - statement(); - } - break; - case Do: - enterOuterAlt(_localctx, 2); - { - setState(914); - match(Do); - setState(915); - statement(); - setState(916); - match(While); - setState(917); - match(LeftParen); - setState(918); - expression(); - setState(919); - match(RightParen); - setState(920); - match(Semi); - } - break; - case For: - enterOuterAlt(_localctx, 3); - { - setState(922); - match(For); - setState(923); - match(LeftParen); - setState(936); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,88,_ctx) ) { - case 1: - { - setState(924); - forInitStatement(); - setState(926); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -714116761242538754L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384301683L) != 0) || _la==Identifier) { - { - setState(925); - condition(); - } - } - - setState(928); - match(Semi); - setState(930); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474384133201L) != 0) || _la==Identifier) { - { - setState(929); - expression(); - } - } - - } - break; - case 2: - { - setState(932); - forRangeDeclaration(); - setState(933); - match(Colon); - setState(934); - forRangeInitializer(); - } - break; - } - setState(938); - match(RightParen); - setState(939); - statement(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ForInitStatementContext extends ParserRuleContext { - public ExpressionStatementContext expressionStatement() { - return getRuleContext(ExpressionStatementContext.class,0); - } - public SimpleDeclarationContext simpleDeclaration() { - return getRuleContext(SimpleDeclarationContext.class,0); - } - public ForInitStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_forInitStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterForInitStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitForInitStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitForInitStatement(this); - else return visitor.visitChildren(this); - } - } - - public final ForInitStatementContext forInitStatement() throws RecognitionException { - ForInitStatementContext _localctx = new ForInitStatementContext(_ctx, getState()); - enterRule(_localctx, 110, RULE_forInitStatement); - try { - setState(945); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,90,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(943); - expressionStatement(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(944); - simpleDeclaration(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ForRangeDeclarationContext extends ParserRuleContext { - public DeclSpecifierSeqContext declSpecifierSeq() { - return getRuleContext(DeclSpecifierSeqContext.class,0); - } - public DeclaratorContext declarator() { - return getRuleContext(DeclaratorContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public ForRangeDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_forRangeDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterForRangeDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitForRangeDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitForRangeDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final ForRangeDeclarationContext forRangeDeclaration() throws RecognitionException { - ForRangeDeclarationContext _localctx = new ForRangeDeclarationContext(_ctx, getState()); - enterRule(_localctx, 112, RULE_forRangeDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(948); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(947); - attributeSpecifierSeq(); - } - } - - setState(950); - declSpecifierSeq(); - setState(951); - declarator(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ForRangeInitializerContext extends ParserRuleContext { - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public BracedInitListContext bracedInitList() { - return getRuleContext(BracedInitListContext.class,0); - } - public ForRangeInitializerContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_forRangeInitializer; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterForRangeInitializer(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitForRangeInitializer(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitForRangeInitializer(this); - else return visitor.visitChildren(this); - } - } - - public final ForRangeInitializerContext forRangeInitializer() throws RecognitionException { - ForRangeInitializerContext _localctx = new ForRangeInitializerContext(_ctx, getState()); - enterRule(_localctx, 114, RULE_forRangeInitializer); - try { - setState(955); - _errHandler.sync(this); - switch (_input.LA(1)) { - case IntegerLiteral: - case CharacterLiteral: - case FloatingLiteral: - case StringLiteral: - case BooleanLiteral: - case PointerLiteral: - case UserDefinedLiteral: - case Alignof: - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Const_cast: - case Decltype: - case Delete: - case Double: - case Dynamic_cast: - case Float: - case Int: - case Long: - case New: - case Noexcept: - case Operator: - case Reinterpret_cast: - case Short: - case Signed: - case Sizeof: - case Static_cast: - case This: - case Throw: - case Typeid_: - case Typename_: - case Unsigned: - case Void: - case Wchar: - case LeftParen: - case LeftBracket: - case Plus: - case Minus: - case Star: - case And: - case Or: - case Tilde: - case Not: - case PlusPlus: - case MinusMinus: - case Doublecolon: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(953); - expression(); - } - break; - case LeftBrace: - enterOuterAlt(_localctx, 2); - { - setState(954); - bracedInitList(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class JumpStatementContext extends ParserRuleContext { - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public TerminalNode Break() { return getToken(CPP14Parser.Break, 0); } - public TerminalNode Continue() { return getToken(CPP14Parser.Continue, 0); } - public TerminalNode Return() { return getToken(CPP14Parser.Return, 0); } - public TerminalNode Goto() { return getToken(CPP14Parser.Goto, 0); } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public BracedInitListContext bracedInitList() { - return getRuleContext(BracedInitListContext.class,0); - } - public JumpStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_jumpStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterJumpStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitJumpStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitJumpStatement(this); - else return visitor.visitChildren(this); - } - } - - public final JumpStatementContext jumpStatement() throws RecognitionException { - JumpStatementContext _localctx = new JumpStatementContext(_ctx, getState()); - enterRule(_localctx, 116, RULE_jumpStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(966); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Break: - { - setState(957); - match(Break); - } - break; - case Continue: - { - setState(958); - match(Continue); - } - break; - case Return: - { - setState(959); - match(Return); - setState(962); - _errHandler.sync(this); - switch (_input.LA(1)) { - case IntegerLiteral: - case CharacterLiteral: - case FloatingLiteral: - case StringLiteral: - case BooleanLiteral: - case PointerLiteral: - case UserDefinedLiteral: - case Alignof: - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Const_cast: - case Decltype: - case Delete: - case Double: - case Dynamic_cast: - case Float: - case Int: - case Long: - case New: - case Noexcept: - case Operator: - case Reinterpret_cast: - case Short: - case Signed: - case Sizeof: - case Static_cast: - case This: - case Throw: - case Typeid_: - case Typename_: - case Unsigned: - case Void: - case Wchar: - case LeftParen: - case LeftBracket: - case Plus: - case Minus: - case Star: - case And: - case Or: - case Tilde: - case Not: - case PlusPlus: - case MinusMinus: - case Doublecolon: - case Identifier: - { - setState(960); - expression(); - } - break; - case LeftBrace: - { - setState(961); - bracedInitList(); - } - break; - case Semi: - break; - default: - break; - } - } - break; - case Goto: - { - setState(964); - match(Goto); - setState(965); - match(Identifier); - } - break; - default: - throw new NoViableAltException(this); - } - setState(968); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DeclarationStatementContext extends ParserRuleContext { - public BlockDeclarationContext blockDeclaration() { - return getRuleContext(BlockDeclarationContext.class,0); - } - public DeclarationStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_declarationStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeclarationStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDeclarationStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDeclarationStatement(this); - else return visitor.visitChildren(this); - } - } - - public final DeclarationStatementContext declarationStatement() throws RecognitionException { - DeclarationStatementContext _localctx = new DeclarationStatementContext(_ctx, getState()); - enterRule(_localctx, 118, RULE_declarationStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(970); - blockDeclaration(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DeclarationseqContext extends ParserRuleContext { - public List declaration() { - return getRuleContexts(DeclarationContext.class); - } - public DeclarationContext declaration(int i) { - return getRuleContext(DeclarationContext.class,i); - } - public DeclarationseqContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_declarationseq; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeclarationseq(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDeclarationseq(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDeclarationseq(this); - else return visitor.visitChildren(this); - } - } - - public final DeclarationseqContext declarationseq() throws RecognitionException { - DeclarationseqContext _localctx = new DeclarationseqContext(_ctx, getState()); - enterRule(_localctx, 120, RULE_declarationseq); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(973); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(972); - declaration(); - } - } - setState(975); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( ((((_la - 10)) & ~0x3f) == 0 && ((1L << (_la - 10)) & 1543754443169808157L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 459384754220313597L) != 0) ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DeclarationContext extends ParserRuleContext { - public BlockDeclarationContext blockDeclaration() { - return getRuleContext(BlockDeclarationContext.class,0); - } - public FunctionDefinitionContext functionDefinition() { - return getRuleContext(FunctionDefinitionContext.class,0); - } - public TemplateDeclarationContext templateDeclaration() { - return getRuleContext(TemplateDeclarationContext.class,0); - } - public ExplicitInstantiationContext explicitInstantiation() { - return getRuleContext(ExplicitInstantiationContext.class,0); - } - public ExplicitSpecializationContext explicitSpecialization() { - return getRuleContext(ExplicitSpecializationContext.class,0); - } - public LinkageSpecificationContext linkageSpecification() { - return getRuleContext(LinkageSpecificationContext.class,0); - } - public NamespaceDefinitionContext namespaceDefinition() { - return getRuleContext(NamespaceDefinitionContext.class,0); - } - public EmptyDeclaration_Context emptyDeclaration_() { - return getRuleContext(EmptyDeclaration_Context.class,0); - } - public AttributeDeclarationContext attributeDeclaration() { - return getRuleContext(AttributeDeclarationContext.class,0); - } - public DeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_declaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final DeclarationContext declaration() throws RecognitionException { - DeclarationContext _localctx = new DeclarationContext(_ctx, getState()); - enterRule(_localctx, 122, RULE_declaration); - try { - setState(986); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,96,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(977); - blockDeclaration(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(978); - functionDefinition(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(979); - templateDeclaration(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(980); - explicitInstantiation(); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(981); - explicitSpecialization(); - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(982); - linkageSpecification(); - } - break; - case 7: - enterOuterAlt(_localctx, 7); - { - setState(983); - namespaceDefinition(); - } - break; - case 8: - enterOuterAlt(_localctx, 8); - { - setState(984); - emptyDeclaration_(); - } - break; - case 9: - enterOuterAlt(_localctx, 9); - { - setState(985); - attributeDeclaration(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BlockDeclarationContext extends ParserRuleContext { - public SimpleDeclarationContext simpleDeclaration() { - return getRuleContext(SimpleDeclarationContext.class,0); - } - public AsmDefinitionContext asmDefinition() { - return getRuleContext(AsmDefinitionContext.class,0); - } - public NamespaceAliasDefinitionContext namespaceAliasDefinition() { - return getRuleContext(NamespaceAliasDefinitionContext.class,0); - } - public UsingDeclarationContext usingDeclaration() { - return getRuleContext(UsingDeclarationContext.class,0); - } - public UsingDirectiveContext usingDirective() { - return getRuleContext(UsingDirectiveContext.class,0); - } - public StaticAssertDeclarationContext staticAssertDeclaration() { - return getRuleContext(StaticAssertDeclarationContext.class,0); - } - public AliasDeclarationContext aliasDeclaration() { - return getRuleContext(AliasDeclarationContext.class,0); - } - public OpaqueEnumDeclarationContext opaqueEnumDeclaration() { - return getRuleContext(OpaqueEnumDeclarationContext.class,0); - } - public BlockDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_blockDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterBlockDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitBlockDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitBlockDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final BlockDeclarationContext blockDeclaration() throws RecognitionException { - BlockDeclarationContext _localctx = new BlockDeclarationContext(_ctx, getState()); - enterRule(_localctx, 124, RULE_blockDeclaration); - try { - setState(996); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,97,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(988); - simpleDeclaration(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(989); - asmDefinition(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(990); - namespaceAliasDefinition(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(991); - usingDeclaration(); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(992); - usingDirective(); - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(993); - staticAssertDeclaration(); - } - break; - case 7: - enterOuterAlt(_localctx, 7); - { - setState(994); - aliasDeclaration(); - } - break; - case 8: - enterOuterAlt(_localctx, 8); - { - setState(995); - opaqueEnumDeclaration(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AliasDeclarationContext extends ParserRuleContext { - public TerminalNode Using() { return getToken(CPP14Parser.Using, 0); } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public TheTypeIdContext theTypeId() { - return getRuleContext(TheTypeIdContext.class,0); - } - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public AliasDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_aliasDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAliasDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAliasDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAliasDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final AliasDeclarationContext aliasDeclaration() throws RecognitionException { - AliasDeclarationContext _localctx = new AliasDeclarationContext(_ctx, getState()); - enterRule(_localctx, 126, RULE_aliasDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(998); - match(Using); - setState(999); - match(Identifier); - setState(1001); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(1000); - attributeSpecifierSeq(); - } - } - - setState(1003); - match(Assign); - setState(1004); - theTypeId(); - setState(1005); - match(Semi); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SimpleDeclarationContext extends ParserRuleContext { - public TerminalNode Semi() { return getToken(CPP14Parser.Semi, 0); } - public DeclSpecifierSeqContext declSpecifierSeq() { - return getRuleContext(DeclSpecifierSeqContext.class,0); - } - public InitDeclaratorListContext initDeclaratorList() { - return getRuleContext(InitDeclaratorListContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public SimpleDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_simpleDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterSimpleDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitSimpleDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitSimpleDeclaration(this); - else return visitor.visitChildren(this); - } - } - - - - } \ No newline at end of file -- Gitee From eb94bf994cc44de463d7fa2d70e77a8b7e773094 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:46:15 +0800 Subject: [PATCH 33/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1854 ----------------- 1 file changed, 1854 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index e7aab323..3e7787ae 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -2153,1861 +2153,7 @@ public class CPP14Parser extends CPP14ParserBase { } } - public final UnaryExpressionContext unaryExpression() throws RecognitionException { - UnaryExpressionContext _localctx = new UnaryExpressionContext(_ctx, getState()); - enterRule(_localctx, 38, RULE_unaryExpression); - try { - setState(626); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,42,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(599); - postfixExpression(0); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(604); - _errHandler.sync(this); - switch (_input.LA(1)) { - case PlusPlus: - { - setState(600); - match(PlusPlus); - } - break; - case MinusMinus: - { - setState(601); - match(MinusMinus); - } - break; - case Plus: - case Minus: - case Star: - case And: - case Or: - case Tilde: - case Not: - { - setState(602); - unaryOperator(); - } - break; - case Sizeof: - { - setState(603); - match(Sizeof); - } - break; - default: - throw new NoViableAltException(this); - } - setState(606); - unaryExpression(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(607); - match(Sizeof); - setState(616); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - { - setState(608); - match(LeftParen); - setState(609); - theTypeId(); - setState(610); - match(RightParen); - } - break; - case Ellipsis: - { - setState(612); - match(Ellipsis); - setState(613); - match(LeftParen); - setState(614); - match(Identifier); - setState(615); - match(RightParen); - } - break; - default: - throw new NoViableAltException(this); - } - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(618); - match(Alignof); - setState(619); - match(LeftParen); - setState(620); - theTypeId(); - setState(621); - match(RightParen); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(623); - noExceptExpression(); - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(624); - newExpression_(); - } - break; - case 7: - enterOuterAlt(_localctx, 7); - { - setState(625); - deleteExpression(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class UnaryOperatorContext extends ParserRuleContext { - public TerminalNode Or() { return getToken(CPP14Parser.Or, 0); } - public TerminalNode Star() { return getToken(CPP14Parser.Star, 0); } - public TerminalNode And() { return getToken(CPP14Parser.And, 0); } - public TerminalNode Plus() { return getToken(CPP14Parser.Plus, 0); } - public TerminalNode Tilde() { return getToken(CPP14Parser.Tilde, 0); } - public TerminalNode Minus() { return getToken(CPP14Parser.Minus, 0); } - public TerminalNode Not() { return getToken(CPP14Parser.Not, 0); } - public UnaryOperatorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_unaryOperator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterUnaryOperator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitUnaryOperator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitUnaryOperator(this); - else return visitor.visitChildren(this); - } - } - - public final UnaryOperatorContext unaryOperator() throws RecognitionException { - UnaryOperatorContext _localctx = new UnaryOperatorContext(_ctx, getState()); - enterRule(_localctx, 40, RULE_unaryOperator); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(628); - _la = _input.LA(1); - if ( !(((((_la - 91)) & ~0x3f) == 0 && ((1L << (_la - 91)) & 967L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NewExpression_Context extends ParserRuleContext { - public TerminalNode New() { return getToken(CPP14Parser.New, 0); } - public NewTypeIdContext newTypeId() { - return getRuleContext(NewTypeIdContext.class,0); - } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TheTypeIdContext theTypeId() { - return getRuleContext(TheTypeIdContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public TerminalNode Doublecolon() { return getToken(CPP14Parser.Doublecolon, 0); } - public NewPlacementContext newPlacement() { - return getRuleContext(NewPlacementContext.class,0); - } - public NewInitializer_Context newInitializer_() { - return getRuleContext(NewInitializer_Context.class,0); - } - public NewExpression_Context(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_newExpression_; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNewExpression_(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNewExpression_(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNewExpression_(this); - else return visitor.visitChildren(this); - } - } - - public final NewExpression_Context newExpression_() throws RecognitionException { - NewExpression_Context _localctx = new NewExpression_Context(_ctx, getState()); - enterRule(_localctx, 42, RULE_newExpression_); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(631); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Doublecolon) { - { - setState(630); - match(Doublecolon); - } - } - - setState(633); - match(New); - setState(635); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,44,_ctx) ) { - case 1: - { - setState(634); - newPlacement(); - } - break; - } - setState(642); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Class: - case Const: - case Decltype: - case Double: - case Enum: - case Float: - case Int: - case Long: - case Short: - case Signed: - case Struct: - case Typename_: - case Union: - case Unsigned: - case Void: - case Volatile: - case Wchar: - case Doublecolon: - case Identifier: - { - setState(637); - newTypeId(); - } - break; - case LeftParen: - { - setState(638); - match(LeftParen); - setState(639); - theTypeId(); - setState(640); - match(RightParen); - } - break; - default: - throw new NoViableAltException(this); - } - setState(645); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LeftParen || _la==LeftBrace) { - { - setState(644); - newInitializer_(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NewPlacementContext extends ParserRuleContext { - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ExpressionListContext expressionList() { - return getRuleContext(ExpressionListContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public NewPlacementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_newPlacement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNewPlacement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNewPlacement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNewPlacement(this); - else return visitor.visitChildren(this); - } - } - - public final NewPlacementContext newPlacement() throws RecognitionException { - NewPlacementContext _localctx = new NewPlacementContext(_ctx, getState()); - enterRule(_localctx, 44, RULE_newPlacement); - try { - enterOuterAlt(_localctx, 1); - { - setState(647); - match(LeftParen); - setState(648); - expressionList(); - setState(649); - match(RightParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NewTypeIdContext extends ParserRuleContext { - public TypeSpecifierSeqContext typeSpecifierSeq() { - return getRuleContext(TypeSpecifierSeqContext.class,0); - } - public NewDeclarator_Context newDeclarator_() { - return getRuleContext(NewDeclarator_Context.class,0); - } - public NewTypeIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_newTypeId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNewTypeId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNewTypeId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNewTypeId(this); - else return visitor.visitChildren(this); - } - } - - public final NewTypeIdContext newTypeId() throws RecognitionException { - NewTypeIdContext _localctx = new NewTypeIdContext(_ctx, getState()); - enterRule(_localctx, 46, RULE_newTypeId); - try { - enterOuterAlt(_localctx, 1); - { - setState(651); - typeSpecifierSeq(); - setState(653); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,47,_ctx) ) { - case 1: - { - setState(652); - newDeclarator_(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NewDeclarator_Context extends ParserRuleContext { - public PointerOperatorContext pointerOperator() { - return getRuleContext(PointerOperatorContext.class,0); - } - public NewDeclarator_Context newDeclarator_() { - return getRuleContext(NewDeclarator_Context.class,0); - } - public NoPointerNewDeclaratorContext noPointerNewDeclarator() { - return getRuleContext(NoPointerNewDeclaratorContext.class,0); - } - public NewDeclarator_Context(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_newDeclarator_; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNewDeclarator_(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNewDeclarator_(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNewDeclarator_(this); - else return visitor.visitChildren(this); - } - } - - public final NewDeclarator_Context newDeclarator_() throws RecognitionException { - NewDeclarator_Context _localctx = new NewDeclarator_Context(_ctx, getState()); - enterRule(_localctx, 48, RULE_newDeclarator_); - try { - setState(660); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Decltype: - case Star: - case And: - case AndAnd: - case Doublecolon: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(655); - pointerOperator(); - setState(657); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,48,_ctx) ) { - case 1: - { - setState(656); - newDeclarator_(); - } - break; - } - } - break; - case LeftBracket: - enterOuterAlt(_localctx, 2); - { - setState(659); - noPointerNewDeclarator(0); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NoPointerNewDeclaratorContext extends ParserRuleContext { - public TerminalNode LeftBracket() { return getToken(CPP14Parser.LeftBracket, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public TerminalNode RightBracket() { return getToken(CPP14Parser.RightBracket, 0); } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public NoPointerNewDeclaratorContext noPointerNewDeclarator() { - return getRuleContext(NoPointerNewDeclaratorContext.class,0); - } - public ConstantExpressionContext constantExpression() { - return getRuleContext(ConstantExpressionContext.class,0); - } - public NoPointerNewDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_noPointerNewDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNoPointerNewDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNoPointerNewDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNoPointerNewDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final NoPointerNewDeclaratorContext noPointerNewDeclarator() throws RecognitionException { - return noPointerNewDeclarator(0); - } - - private NoPointerNewDeclaratorContext noPointerNewDeclarator(int _p) throws RecognitionException { - ParserRuleContext _parentctx = _ctx; - int _parentState = getState(); - NoPointerNewDeclaratorContext _localctx = new NoPointerNewDeclaratorContext(_ctx, _parentState); - NoPointerNewDeclaratorContext _prevctx = _localctx; - int _startState = 50; - enterRecursionRule(_localctx, 50, RULE_noPointerNewDeclarator, _p); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - { - setState(663); - match(LeftBracket); - setState(664); - expression(); - setState(665); - match(RightBracket); - setState(667); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,50,_ctx) ) { - case 1: - { - setState(666); - attributeSpecifierSeq(); - } - break; - } - } - _ctx.stop = _input.LT(-1); - setState(678); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,52,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - { - _localctx = new NoPointerNewDeclaratorContext(_parentctx, _parentState); - pushNewRecursionContext(_localctx, _startState, RULE_noPointerNewDeclarator); - setState(669); - if (!(precpred(_ctx, 1))) throw new FailedPredicateException(this, "precpred(_ctx, 1)"); - setState(670); - match(LeftBracket); - setState(671); - constantExpression(); - setState(672); - match(RightBracket); - setState(674); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,51,_ctx) ) { - case 1: - { - setState(673); - attributeSpecifierSeq(); - } - break; - } - } - } - } - setState(680); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,52,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NewInitializer_Context extends ParserRuleContext { - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public ExpressionListContext expressionList() { - return getRuleContext(ExpressionListContext.class,0); - } - public BracedInitListContext bracedInitList() { - return getRuleContext(BracedInitListContext.class,0); - } - public NewInitializer_Context(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_newInitializer_; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNewInitializer_(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNewInitializer_(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNewInitializer_(this); - else return visitor.visitChildren(this); - } - } - - public final NewInitializer_Context newInitializer_() throws RecognitionException { - NewInitializer_Context _localctx = new NewInitializer_Context(_ctx, getState()); - enterRule(_localctx, 52, RULE_newInitializer_); - int _la; - try { - setState(687); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - enterOuterAlt(_localctx, 1); - { - setState(681); - match(LeftParen); - setState(683); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474400910417L) != 0) || _la==Identifier) { - { - setState(682); - expressionList(); - } - } - - setState(685); - match(RightParen); - } - break; - case LeftBrace: - enterOuterAlt(_localctx, 2); - { - setState(686); - bracedInitList(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DeleteExpressionContext extends ParserRuleContext { - public TerminalNode Delete() { return getToken(CPP14Parser.Delete, 0); } - public CastExpressionContext castExpression() { - return getRuleContext(CastExpressionContext.class,0); - } - public TerminalNode Doublecolon() { return getToken(CPP14Parser.Doublecolon, 0); } - public TerminalNode LeftBracket() { return getToken(CPP14Parser.LeftBracket, 0); } - public TerminalNode RightBracket() { return getToken(CPP14Parser.RightBracket, 0); } - public DeleteExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_deleteExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterDeleteExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitDeleteExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitDeleteExpression(this); - else return visitor.visitChildren(this); - } - } - - public final DeleteExpressionContext deleteExpression() throws RecognitionException { - DeleteExpressionContext _localctx = new DeleteExpressionContext(_ctx, getState()); - enterRule(_localctx, 54, RULE_deleteExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(690); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Doublecolon) { - { - setState(689); - match(Doublecolon); - } - } - - setState(692); - match(Delete); - setState(695); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,56,_ctx) ) { - case 1: - { - setState(693); - match(LeftBracket); - setState(694); - match(RightBracket); - } - break; - } - setState(697); - castExpression(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NoExceptExpressionContext extends ParserRuleContext { - public TerminalNode Noexcept() { return getToken(CPP14Parser.Noexcept, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public NoExceptExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_noExceptExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNoExceptExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNoExceptExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNoExceptExpression(this); - else return visitor.visitChildren(this); - } - } - - public final NoExceptExpressionContext noExceptExpression() throws RecognitionException { - NoExceptExpressionContext _localctx = new NoExceptExpressionContext(_ctx, getState()); - enterRule(_localctx, 56, RULE_noExceptExpression); - try { - enterOuterAlt(_localctx, 1); - { - setState(699); - match(Noexcept); - setState(700); - match(LeftParen); - setState(701); - expression(); - setState(702); - match(RightParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CastExpressionContext extends ParserRuleContext { - public UnaryExpressionContext unaryExpression() { - return getRuleContext(UnaryExpressionContext.class,0); - } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TheTypeIdContext theTypeId() { - return getRuleContext(TheTypeIdContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public CastExpressionContext castExpression() { - return getRuleContext(CastExpressionContext.class,0); - } - public CastExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_castExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterCastExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitCastExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitCastExpression(this); - else return visitor.visitChildren(this); - } - } - - public final CastExpressionContext castExpression() throws RecognitionException { - CastExpressionContext _localctx = new CastExpressionContext(_ctx, getState()); - enterRule(_localctx, 58, RULE_castExpression); - try { - setState(710); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,57,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(704); - unaryExpression(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(705); - match(LeftParen); - setState(706); - theTypeId(); - setState(707); - match(RightParen); - setState(708); - castExpression(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PointerMemberExpressionContext extends ParserRuleContext { - public List castExpression() { - return getRuleContexts(CastExpressionContext.class); - } - public CastExpressionContext castExpression(int i) { - return getRuleContext(CastExpressionContext.class,i); - } - public List DotStar() { return getTokens(CPP14Parser.DotStar); } - public TerminalNode DotStar(int i) { - return getToken(CPP14Parser.DotStar, i); - } - public List ArrowStar() { return getTokens(CPP14Parser.ArrowStar); } - public TerminalNode ArrowStar(int i) { - return getToken(CPP14Parser.ArrowStar, i); - } - public PointerMemberExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_pointerMemberExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterPointerMemberExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitPointerMemberExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitPointerMemberExpression(this); - else return visitor.visitChildren(this); - } - } - - public final PointerMemberExpressionContext pointerMemberExpression() throws RecognitionException { - PointerMemberExpressionContext _localctx = new PointerMemberExpressionContext(_ctx, getState()); - enterRule(_localctx, 60, RULE_pointerMemberExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(712); - castExpression(); - setState(717); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==ArrowStar || _la==DotStar) { - { - { - setState(713); - _la = _input.LA(1); - if ( !(_la==ArrowStar || _la==DotStar) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(714); - castExpression(); - } - } - setState(719); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MultiplicativeExpressionContext extends ParserRuleContext { - public List pointerMemberExpression() { - return getRuleContexts(PointerMemberExpressionContext.class); - } - public PointerMemberExpressionContext pointerMemberExpression(int i) { - return getRuleContext(PointerMemberExpressionContext.class,i); - } - public List Star() { return getTokens(CPP14Parser.Star); } - public TerminalNode Star(int i) { - return getToken(CPP14Parser.Star, i); - } - public List Div() { return getTokens(CPP14Parser.Div); } - public TerminalNode Div(int i) { - return getToken(CPP14Parser.Div, i); - } - public List Mod() { return getTokens(CPP14Parser.Mod); } - public TerminalNode Mod(int i) { - return getToken(CPP14Parser.Mod, i); - } - public MultiplicativeExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_multiplicativeExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterMultiplicativeExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitMultiplicativeExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitMultiplicativeExpression(this); - else return visitor.visitChildren(this); - } - } - - public final MultiplicativeExpressionContext multiplicativeExpression() throws RecognitionException { - MultiplicativeExpressionContext _localctx = new MultiplicativeExpressionContext(_ctx, getState()); - enterRule(_localctx, 62, RULE_multiplicativeExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(720); - pointerMemberExpression(); - setState(725); - _errHandler.sync(this); - _la = _input.LA(1); - while (((((_la - 93)) & ~0x3f) == 0 && ((1L << (_la - 93)) & 7L) != 0)) { - { - { - setState(721); - _la = _input.LA(1); - if ( !(((((_la - 93)) & ~0x3f) == 0 && ((1L << (_la - 93)) & 7L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(722); - pointerMemberExpression(); - } - } - setState(727); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AdditiveExpressionContext extends ParserRuleContext { - public List multiplicativeExpression() { - return getRuleContexts(MultiplicativeExpressionContext.class); - } - public MultiplicativeExpressionContext multiplicativeExpression(int i) { - return getRuleContext(MultiplicativeExpressionContext.class,i); - } - public List Plus() { return getTokens(CPP14Parser.Plus); } - public TerminalNode Plus(int i) { - return getToken(CPP14Parser.Plus, i); - } - public List Minus() { return getTokens(CPP14Parser.Minus); } - public TerminalNode Minus(int i) { - return getToken(CPP14Parser.Minus, i); - } - public AdditiveExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_additiveExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAdditiveExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAdditiveExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAdditiveExpression(this); - else return visitor.visitChildren(this); - } - } - - public final AdditiveExpressionContext additiveExpression() throws RecognitionException { - AdditiveExpressionContext _localctx = new AdditiveExpressionContext(_ctx, getState()); - enterRule(_localctx, 64, RULE_additiveExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(728); - multiplicativeExpression(); - setState(733); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Plus || _la==Minus) { - { - { - setState(729); - _la = _input.LA(1); - if ( !(_la==Plus || _la==Minus) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(730); - multiplicativeExpression(); - } - } - setState(735); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ShiftExpressionContext extends ParserRuleContext { - public List additiveExpression() { - return getRuleContexts(AdditiveExpressionContext.class); - } - public AdditiveExpressionContext additiveExpression(int i) { - return getRuleContext(AdditiveExpressionContext.class,i); - } - public List shiftOperator() { - return getRuleContexts(ShiftOperatorContext.class); - } - public ShiftOperatorContext shiftOperator(int i) { - return getRuleContext(ShiftOperatorContext.class,i); - } - public ShiftExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_shiftExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterShiftExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitShiftExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitShiftExpression(this); - else return visitor.visitChildren(this); - } - } - - public final ShiftExpressionContext shiftExpression() throws RecognitionException { - ShiftExpressionContext _localctx = new ShiftExpressionContext(_ctx, getState()); - enterRule(_localctx, 66, RULE_shiftExpression); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(736); - additiveExpression(); - setState(742); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,61,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(737); - shiftOperator(); - setState(738); - additiveExpression(); - } - } - } - setState(744); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,61,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ShiftOperatorContext extends ParserRuleContext { - public List Greater() { return getTokens(CPP14Parser.Greater); } - public TerminalNode Greater(int i) { - return getToken(CPP14Parser.Greater, i); - } - public List Less() { return getTokens(CPP14Parser.Less); } - public TerminalNode Less(int i) { - return getToken(CPP14Parser.Less, i); - } - public ShiftOperatorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_shiftOperator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterShiftOperator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitShiftOperator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitShiftOperator(this); - else return visitor.visitChildren(this); - } - } - - public final ShiftOperatorContext shiftOperator() throws RecognitionException { - ShiftOperatorContext _localctx = new ShiftOperatorContext(_ctx, getState()); - enterRule(_localctx, 68, RULE_shiftOperator); - try { - setState(749); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Greater: - enterOuterAlt(_localctx, 1); - { - setState(745); - match(Greater); - setState(746); - match(Greater); - } - break; - case Less: - enterOuterAlt(_localctx, 2); - { - setState(747); - match(Less); - setState(748); - match(Less); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class RelationalExpressionContext extends ParserRuleContext { - public List shiftExpression() { - return getRuleContexts(ShiftExpressionContext.class); - } - public ShiftExpressionContext shiftExpression(int i) { - return getRuleContext(ShiftExpressionContext.class,i); - } - public List Less() { return getTokens(CPP14Parser.Less); } - public TerminalNode Less(int i) { - return getToken(CPP14Parser.Less, i); - } - public List Greater() { return getTokens(CPP14Parser.Greater); } - public TerminalNode Greater(int i) { - return getToken(CPP14Parser.Greater, i); - } - public List LessEqual() { return getTokens(CPP14Parser.LessEqual); } - public TerminalNode LessEqual(int i) { - return getToken(CPP14Parser.LessEqual, i); - } - public List GreaterEqual() { return getTokens(CPP14Parser.GreaterEqual); } - public TerminalNode GreaterEqual(int i) { - return getToken(CPP14Parser.GreaterEqual, i); - } - public RelationalExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_relationalExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterRelationalExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitRelationalExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitRelationalExpression(this); - else return visitor.visitChildren(this); - } - } - - public final RelationalExpressionContext relationalExpression() throws RecognitionException { - RelationalExpressionContext _localctx = new RelationalExpressionContext(_ctx, getState()); - enterRule(_localctx, 70, RULE_relationalExpression); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(751); - shiftExpression(); - setState(756); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,63,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(752); - _la = _input.LA(1); - if ( !(((((_la - 102)) & ~0x3f) == 0 && ((1L << (_la - 102)) & 49155L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(753); - shiftExpression(); - } - } - } - setState(758); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,63,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EqualityExpressionContext extends ParserRuleContext { - public List relationalExpression() { - return getRuleContexts(RelationalExpressionContext.class); - } - public RelationalExpressionContext relationalExpression(int i) { - return getRuleContext(RelationalExpressionContext.class,i); - } - public List Equal() { return getTokens(CPP14Parser.Equal); } - public TerminalNode Equal(int i) { - return getToken(CPP14Parser.Equal, i); - } - public List NotEqual() { return getTokens(CPP14Parser.NotEqual); } - public TerminalNode NotEqual(int i) { - return getToken(CPP14Parser.NotEqual, i); - } - public EqualityExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_equalityExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterEqualityExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitEqualityExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitEqualityExpression(this); - else return visitor.visitChildren(this); - } - } - - public final EqualityExpressionContext equalityExpression() throws RecognitionException { - EqualityExpressionContext _localctx = new EqualityExpressionContext(_ctx, getState()); - enterRule(_localctx, 72, RULE_equalityExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(759); - relationalExpression(); - setState(764); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Equal || _la==NotEqual) { - { - { - setState(760); - _la = _input.LA(1); - if ( !(_la==Equal || _la==NotEqual) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(761); - relationalExpression(); - } - } - setState(766); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AndExpressionContext extends ParserRuleContext { - public List equalityExpression() { - return getRuleContexts(EqualityExpressionContext.class); - } - public EqualityExpressionContext equalityExpression(int i) { - return getRuleContext(EqualityExpressionContext.class,i); - } - public List And() { return getTokens(CPP14Parser.And); } - public TerminalNode And(int i) { - return getToken(CPP14Parser.And, i); - } - public AndExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_andExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterAndExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitAndExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitAndExpression(this); - else return visitor.visitChildren(this); - } - } - - public final AndExpressionContext andExpression() throws RecognitionException { - AndExpressionContext _localctx = new AndExpressionContext(_ctx, getState()); - enterRule(_localctx, 74, RULE_andExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(767); - equalityExpression(); - setState(772); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==And) { - { - { - setState(768); - match(And); - setState(769); - equalityExpression(); - } - } - setState(774); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExclusiveOrExpressionContext extends ParserRuleContext { - public List andExpression() { - return getRuleContexts(AndExpressionContext.class); - } - public AndExpressionContext andExpression(int i) { - return getRuleContext(AndExpressionContext.class,i); - } - public List Caret() { return getTokens(CPP14Parser.Caret); } - public TerminalNode Caret(int i) { - return getToken(CPP14Parser.Caret, i); - } - public ExclusiveOrExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_exclusiveOrExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterExclusiveOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitExclusiveOrExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitExclusiveOrExpression(this); - else return visitor.visitChildren(this); - } - } - - public final ExclusiveOrExpressionContext exclusiveOrExpression() throws RecognitionException { - ExclusiveOrExpressionContext _localctx = new ExclusiveOrExpressionContext(_ctx, getState()); - enterRule(_localctx, 76, RULE_exclusiveOrExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(775); - andExpression(); - setState(780); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Caret) { - { - { - setState(776); - match(Caret); - setState(777); - andExpression(); - } - } - setState(782); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InclusiveOrExpressionContext extends ParserRuleContext { - public List exclusiveOrExpression() { - return getRuleContexts(ExclusiveOrExpressionContext.class); - } - public ExclusiveOrExpressionContext exclusiveOrExpression(int i) { - return getRuleContext(ExclusiveOrExpressionContext.class,i); - } - public List Or() { return getTokens(CPP14Parser.Or); } - public TerminalNode Or(int i) { - return getToken(CPP14Parser.Or, i); - } - public InclusiveOrExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_inclusiveOrExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterInclusiveOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitInclusiveOrExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitInclusiveOrExpression(this); - else return visitor.visitChildren(this); - } - } - - public final InclusiveOrExpressionContext inclusiveOrExpression() throws RecognitionException { - InclusiveOrExpressionContext _localctx = new InclusiveOrExpressionContext(_ctx, getState()); - enterRule(_localctx, 78, RULE_inclusiveOrExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(783); - exclusiveOrExpression(); - setState(788); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Or) { - { - { - setState(784); - match(Or); - setState(785); - exclusiveOrExpression(); - } - } - setState(790); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LogicalAndExpressionContext extends ParserRuleContext { - public List inclusiveOrExpression() { - return getRuleContexts(InclusiveOrExpressionContext.class); - } - public InclusiveOrExpressionContext inclusiveOrExpression(int i) { - return getRuleContext(InclusiveOrExpressionContext.class,i); - } - public List AndAnd() { return getTokens(CPP14Parser.AndAnd); } - public TerminalNode AndAnd(int i) { - return getToken(CPP14Parser.AndAnd, i); - } - public LogicalAndExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_logicalAndExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLogicalAndExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLogicalAndExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLogicalAndExpression(this); - else return visitor.visitChildren(this); - } - } - - public final LogicalAndExpressionContext logicalAndExpression() throws RecognitionException { - LogicalAndExpressionContext _localctx = new LogicalAndExpressionContext(_ctx, getState()); - enterRule(_localctx, 80, RULE_logicalAndExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(791); - inclusiveOrExpression(); - setState(796); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==AndAnd) { - { - { - setState(792); - match(AndAnd); - setState(793); - inclusiveOrExpression(); - } - } - setState(798); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LogicalOrExpressionContext extends ParserRuleContext { - public List logicalAndExpression() { - return getRuleContexts(LogicalAndExpressionContext.class); - } - public LogicalAndExpressionContext logicalAndExpression(int i) { - return getRuleContext(LogicalAndExpressionContext.class,i); - } - public List OrOr() { return getTokens(CPP14Parser.OrOr); } - public TerminalNode OrOr(int i) { - return getToken(CPP14Parser.OrOr, i); - } - public LogicalOrExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_logicalOrExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLogicalOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLogicalOrExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLogicalOrExpression(this); - else return visitor.visitChildren(this); - } - } - - public final LogicalOrExpressionContext logicalOrExpression() throws RecognitionException { - LogicalOrExpressionContext _localctx = new LogicalOrExpressionContext(_ctx, getState()); - enterRule(_localctx, 82, RULE_logicalOrExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(799); - logicalAndExpression(); - setState(804); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==OrOr) { - { - { - setState(800); - match(OrOr); - setState(801); - logicalAndExpression(); - } - } - setState(806); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - @SuppressWarnings("CheckReturnValue") - public static class ConditionalExpressionContext extends ParserRuleContext { - public LogicalOrExpressionContext logicalOrExpression() { - return getRuleContext(LogicalOrExpressionContext.class,0); - } - public TerminalNode Question() { return getToken(CPP14Parser.Question, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public TerminalNode Colon() { return getToken(CPP14Parser.Colon, 0); } - public AssignmentExpressionContext assignmentExpression() { - return getRuleContext(AssignmentExpressionContext.class,0); - } - public ConditionalExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_conditionalExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterConditionalExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitConditionalExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitConditionalExpression(this); - else return visitor.visitChildren(this); - } - } } \ No newline at end of file -- Gitee From 3e2057446762a3b5068969ca6bb1ac84ed0ef3fa Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:46:34 +0800 Subject: [PATCH 34/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1046 ----------------- 1 file changed, 1046 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java index 3e7787ae..c6d248f6 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java @@ -1106,1052 +1106,6 @@ public class CPP14Parser extends CPP14ParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class CaptureListContext extends ParserRuleContext { - public List capture() { - return getRuleContexts(CaptureContext.class); - } - public CaptureContext capture(int i) { - return getRuleContext(CaptureContext.class,i); - } - public List Comma() { return getTokens(CPP14Parser.Comma); } - public TerminalNode Comma(int i) { - return getToken(CPP14Parser.Comma, i); - } - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public CaptureListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_captureList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterCaptureList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitCaptureList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitCaptureList(this); - else return visitor.visitChildren(this); - } - } - - public final CaptureListContext captureList() throws RecognitionException { - CaptureListContext _localctx = new CaptureListContext(_ctx, getState()); - enterRule(_localctx, 20, RULE_captureList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(467); - capture(); - setState(472); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(468); - match(Comma); - setState(469); - capture(); - } - } - setState(474); - _errHandler.sync(this); - _la = _input.LA(1); - } - setState(476); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(475); - match(Ellipsis); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CaptureContext extends ParserRuleContext { - public SimpleCaptureContext simpleCapture() { - return getRuleContext(SimpleCaptureContext.class,0); - } - public InitcaptureContext initcapture() { - return getRuleContext(InitcaptureContext.class,0); - } - public CaptureContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_capture; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterCapture(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitCapture(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitCapture(this); - else return visitor.visitChildren(this); - } - } - - public final CaptureContext capture() throws RecognitionException { - CaptureContext _localctx = new CaptureContext(_ctx, getState()); - enterRule(_localctx, 22, RULE_capture); - try { - setState(480); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,17,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(478); - simpleCapture(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(479); - initcapture(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SimpleCaptureContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TerminalNode And() { return getToken(CPP14Parser.And, 0); } - public TerminalNode This() { return getToken(CPP14Parser.This, 0); } - public SimpleCaptureContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_simpleCapture; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterSimpleCapture(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitSimpleCapture(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitSimpleCapture(this); - else return visitor.visitChildren(this); - } - } - - public final SimpleCaptureContext simpleCapture() throws RecognitionException { - SimpleCaptureContext _localctx = new SimpleCaptureContext(_ctx, getState()); - enterRule(_localctx, 24, RULE_simpleCapture); - int _la; - try { - setState(487); - _errHandler.sync(this); - switch (_input.LA(1)) { - case And: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(483); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==And) { - { - setState(482); - match(And); - } - } - - setState(485); - match(Identifier); - } - break; - case This: - enterOuterAlt(_localctx, 2); - { - setState(486); - match(This); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InitcaptureContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public InitializerContext initializer() { - return getRuleContext(InitializerContext.class,0); - } - public TerminalNode And() { return getToken(CPP14Parser.And, 0); } - public InitcaptureContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_initcapture; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterInitcapture(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitInitcapture(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitInitcapture(this); - else return visitor.visitChildren(this); - } - } - - public final InitcaptureContext initcapture() throws RecognitionException { - InitcaptureContext _localctx = new InitcaptureContext(_ctx, getState()); - enterRule(_localctx, 26, RULE_initcapture); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(490); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==And) { - { - setState(489); - match(And); - } - } - - setState(492); - match(Identifier); - setState(493); - initializer(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LambdaDeclaratorContext extends ParserRuleContext { - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public ParameterDeclarationClauseContext parameterDeclarationClause() { - return getRuleContext(ParameterDeclarationClauseContext.class,0); - } - public TerminalNode Mutable() { return getToken(CPP14Parser.Mutable, 0); } - public ExceptionSpecificationContext exceptionSpecification() { - return getRuleContext(ExceptionSpecificationContext.class,0); - } - public AttributeSpecifierSeqContext attributeSpecifierSeq() { - return getRuleContext(AttributeSpecifierSeqContext.class,0); - } - public TrailingReturnTypeContext trailingReturnType() { - return getRuleContext(TrailingReturnTypeContext.class,0); - } - public LambdaDeclaratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_lambdaDeclarator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLambdaDeclarator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLambdaDeclarator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLambdaDeclarator(this); - else return visitor.visitChildren(this); - } - } - - public final LambdaDeclaratorContext lambdaDeclarator() throws RecognitionException { - LambdaDeclaratorContext _localctx = new LambdaDeclaratorContext(_ctx, getState()); - enterRule(_localctx, 28, RULE_lambdaDeclarator); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(495); - match(LeftParen); - setState(497); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 10)) & ~0x3f) == 0 && ((1L << (_la - 10)) & 1237504995584196377L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 297237575406461917L) != 0)) { - { - setState(496); - parameterDeclarationClause(); - } - } - - setState(499); - match(RightParen); - setState(501); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Mutable) { - { - setState(500); - match(Mutable); - } - } - - setState(504); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Noexcept || _la==Throw) { - { - setState(503); - exceptionSpecification(); - } - } - - setState(507); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Alignas || _la==LeftBracket) { - { - setState(506); - attributeSpecifierSeq(); - } - } - - setState(510); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Arrow) { - { - setState(509); - trailingReturnType(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PostfixExpressionContext extends ParserRuleContext { - public PrimaryExpressionContext primaryExpression() { - return getRuleContext(PrimaryExpressionContext.class,0); - } - public SimpleTypeSpecifierContext simpleTypeSpecifier() { - return getRuleContext(SimpleTypeSpecifierContext.class,0); - } - public TypeNameSpecifierContext typeNameSpecifier() { - return getRuleContext(TypeNameSpecifierContext.class,0); - } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public BracedInitListContext bracedInitList() { - return getRuleContext(BracedInitListContext.class,0); - } - public ExpressionListContext expressionList() { - return getRuleContext(ExpressionListContext.class,0); - } - public TerminalNode Less() { return getToken(CPP14Parser.Less, 0); } - public TheTypeIdContext theTypeId() { - return getRuleContext(TheTypeIdContext.class,0); - } - public TerminalNode Greater() { return getToken(CPP14Parser.Greater, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public TerminalNode Dynamic_cast() { return getToken(CPP14Parser.Dynamic_cast, 0); } - public TerminalNode Static_cast() { return getToken(CPP14Parser.Static_cast, 0); } - public TerminalNode Reinterpret_cast() { return getToken(CPP14Parser.Reinterpret_cast, 0); } - public TerminalNode Const_cast() { return getToken(CPP14Parser.Const_cast, 0); } - public TypeIdOfTheTypeIdContext typeIdOfTheTypeId() { - return getRuleContext(TypeIdOfTheTypeIdContext.class,0); - } - public PostfixExpressionContext postfixExpression() { - return getRuleContext(PostfixExpressionContext.class,0); - } - public TerminalNode LeftBracket() { return getToken(CPP14Parser.LeftBracket, 0); } - public TerminalNode RightBracket() { return getToken(CPP14Parser.RightBracket, 0); } - public TerminalNode Dot() { return getToken(CPP14Parser.Dot, 0); } - public TerminalNode Arrow() { return getToken(CPP14Parser.Arrow, 0); } - public IdExpressionContext idExpression() { - return getRuleContext(IdExpressionContext.class,0); - } - public PseudoDestructorNameContext pseudoDestructorName() { - return getRuleContext(PseudoDestructorNameContext.class,0); - } - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public TerminalNode PlusPlus() { return getToken(CPP14Parser.PlusPlus, 0); } - public TerminalNode MinusMinus() { return getToken(CPP14Parser.MinusMinus, 0); } - public PostfixExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_postfixExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterPostfixExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitPostfixExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitPostfixExpression(this); - else return visitor.visitChildren(this); - } - } - - public final PostfixExpressionContext postfixExpression() throws RecognitionException { - return postfixExpression(0); - } - - private PostfixExpressionContext postfixExpression(int _p) throws RecognitionException { - ParserRuleContext _parentctx = _ctx; - int _parentState = getState(); - PostfixExpressionContext _localctx = new PostfixExpressionContext(_ctx, _parentState); - PostfixExpressionContext _prevctx = _localctx; - int _startState = 30; - enterRecursionRule(_localctx, 30, RULE_postfixExpression, _p); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(542); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,30,_ctx) ) { - case 1: - { - setState(513); - primaryExpression(); - } - break; - case 2: - { - setState(516); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Decltype: - case Double: - case Float: - case Int: - case Long: - case Short: - case Signed: - case Unsigned: - case Void: - case Wchar: - case Doublecolon: - case Identifier: - { - setState(514); - simpleTypeSpecifier(); - } - break; - case Typename_: - { - setState(515); - typeNameSpecifier(); - } - break; - default: - throw new NoViableAltException(this); - } - setState(524); - _errHandler.sync(this); - switch (_input.LA(1)) { - case LeftParen: - { - setState(518); - match(LeftParen); - setState(520); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474400910417L) != 0) || _la==Identifier) { - { - setState(519); - expressionList(); - } - } - - setState(522); - match(RightParen); - } - break; - case LeftBrace: - { - setState(523); - bracedInitList(); - } - break; - default: - throw new NoViableAltException(this); - } - } - break; - case 3: - { - setState(526); - _la = _input.LA(1); - if ( !(((((_la - 24)) & ~0x3f) == 0 && ((1L << (_la - 24)) & 2216203124865L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(527); - match(Less); - setState(528); - theTypeId(); - setState(529); - match(Greater); - setState(530); - match(LeftParen); - setState(531); - expression(); - setState(532); - match(RightParen); - } - break; - case 4: - { - setState(534); - typeIdOfTheTypeId(); - setState(535); - match(LeftParen); - setState(538); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,29,_ctx) ) { - case 1: - { - setState(536); - expression(); - } - break; - case 2: - { - setState(537); - theTypeId(); - } - break; - } - setState(540); - match(RightParen); - } - break; - } - _ctx.stop = _input.LT(-1); - setState(571); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,36,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - setState(569); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,35,_ctx) ) { - case 1: - { - _localctx = new PostfixExpressionContext(_parentctx, _parentState); - pushNewRecursionContext(_localctx, _startState, RULE_postfixExpression); - setState(544); - if (!(precpred(_ctx, 7))) throw new FailedPredicateException(this, "precpred(_ctx, 7)"); - setState(545); - match(LeftBracket); - setState(548); - _errHandler.sync(this); - switch (_input.LA(1)) { - case IntegerLiteral: - case CharacterLiteral: - case FloatingLiteral: - case StringLiteral: - case BooleanLiteral: - case PointerLiteral: - case UserDefinedLiteral: - case Alignof: - case Auto: - case Bool: - case Char: - case Char16: - case Char32: - case Const_cast: - case Decltype: - case Delete: - case Double: - case Dynamic_cast: - case Float: - case Int: - case Long: - case New: - case Noexcept: - case Operator: - case Reinterpret_cast: - case Short: - case Signed: - case Sizeof: - case Static_cast: - case This: - case Throw: - case Typeid_: - case Typename_: - case Unsigned: - case Void: - case Wchar: - case LeftParen: - case LeftBracket: - case Plus: - case Minus: - case Star: - case And: - case Or: - case Tilde: - case Not: - case PlusPlus: - case MinusMinus: - case Doublecolon: - case Identifier: - { - setState(546); - expression(); - } - break; - case LeftBrace: - { - setState(547); - bracedInitList(); - } - break; - default: - throw new NoViableAltException(this); - } - setState(550); - match(RightBracket); - } - break; - case 2: - { - _localctx = new PostfixExpressionContext(_parentctx, _parentState); - pushNewRecursionContext(_localctx, _startState, RULE_postfixExpression); - setState(552); - if (!(precpred(_ctx, 6))) throw new FailedPredicateException(this, "precpred(_ctx, 6)"); - setState(553); - match(LeftParen); - setState(555); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 8364979464334764286L) != 0) || ((((_la - 65)) & ~0x3f) == 0 && ((1L << (_la - 65)) & 4719772474400910417L) != 0) || _la==Identifier) { - { - setState(554); - expressionList(); - } - } - - setState(557); - match(RightParen); - } - break; - case 3: - { - _localctx = new PostfixExpressionContext(_parentctx, _parentState); - pushNewRecursionContext(_localctx, _startState, RULE_postfixExpression); - setState(558); - if (!(precpred(_ctx, 4))) throw new FailedPredicateException(this, "precpred(_ctx, 4)"); - setState(559); - _la = _input.LA(1); - if ( !(_la==Arrow || _la==Dot) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(565); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,34,_ctx) ) { - case 1: - { - setState(561); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Template) { - { - setState(560); - match(Template); - } - } - - setState(563); - idExpression(); - } - break; - case 2: - { - setState(564); - pseudoDestructorName(); - } - break; - } - } - break; - case 4: - { - _localctx = new PostfixExpressionContext(_parentctx, _parentState); - pushNewRecursionContext(_localctx, _startState, RULE_postfixExpression); - setState(567); - if (!(precpred(_ctx, 3))) throw new FailedPredicateException(this, "precpred(_ctx, 3)"); - setState(568); - _la = _input.LA(1); - if ( !(_la==PlusPlus || _la==MinusMinus) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - break; - } - } - } - setState(573); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,36,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeIdOfTheTypeIdContext extends ParserRuleContext { - public TerminalNode Typeid_() { return getToken(CPP14Parser.Typeid_, 0); } - public TypeIdOfTheTypeIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeIdOfTheTypeId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTypeIdOfTheTypeId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTypeIdOfTheTypeId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTypeIdOfTheTypeId(this); - else return visitor.visitChildren(this); - } - } - - public final TypeIdOfTheTypeIdContext typeIdOfTheTypeId() throws RecognitionException { - TypeIdOfTheTypeIdContext _localctx = new TypeIdOfTheTypeIdContext(_ctx, getState()); - enterRule(_localctx, 32, RULE_typeIdOfTheTypeId); - try { - enterOuterAlt(_localctx, 1); - { - setState(574); - match(Typeid_); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExpressionListContext extends ParserRuleContext { - public InitializerListContext initializerList() { - return getRuleContext(InitializerListContext.class,0); - } - public ExpressionListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_expressionList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterExpressionList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitExpressionList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitExpressionList(this); - else return visitor.visitChildren(this); - } - } - - public final ExpressionListContext expressionList() throws RecognitionException { - ExpressionListContext _localctx = new ExpressionListContext(_ctx, getState()); - enterRule(_localctx, 34, RULE_expressionList); - try { - enterOuterAlt(_localctx, 1); - { - setState(576); - initializerList(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PseudoDestructorNameContext extends ParserRuleContext { - public TerminalNode Tilde() { return getToken(CPP14Parser.Tilde, 0); } - public List theTypeName() { - return getRuleContexts(TheTypeNameContext.class); - } - public TheTypeNameContext theTypeName(int i) { - return getRuleContext(TheTypeNameContext.class,i); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public TerminalNode Doublecolon() { return getToken(CPP14Parser.Doublecolon, 0); } - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public SimpleTemplateIdContext simpleTemplateId() { - return getRuleContext(SimpleTemplateIdContext.class,0); - } - public DecltypeSpecifierContext decltypeSpecifier() { - return getRuleContext(DecltypeSpecifierContext.class,0); - } - public PseudoDestructorNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_pseudoDestructorName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterPseudoDestructorName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitPseudoDestructorName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitPseudoDestructorName(this); - else return visitor.visitChildren(this); - } - } - - public final PseudoDestructorNameContext pseudoDestructorName() throws RecognitionException { - PseudoDestructorNameContext _localctx = new PseudoDestructorNameContext(_ctx, getState()); - enterRule(_localctx, 36, RULE_pseudoDestructorName); - int _la; - try { - setState(597); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,39,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(579); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,37,_ctx) ) { - case 1: - { - setState(578); - nestedNameSpecifier(0); - } - break; - } - setState(584); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Identifier) { - { - setState(581); - theTypeName(); - setState(582); - match(Doublecolon); - } - } - - setState(586); - match(Tilde); - setState(587); - theTypeName(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(588); - nestedNameSpecifier(0); - setState(589); - match(Template); - setState(590); - simpleTemplateId(); - setState(591); - match(Doublecolon); - setState(592); - match(Tilde); - setState(593); - theTypeName(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(595); - match(Tilde); - setState(596); - decltypeSpecifier(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class UnaryExpressionContext extends ParserRuleContext { - public PostfixExpressionContext postfixExpression() { - return getRuleContext(PostfixExpressionContext.class,0); - } - public UnaryExpressionContext unaryExpression() { - return getRuleContext(UnaryExpressionContext.class,0); - } - public TerminalNode PlusPlus() { return getToken(CPP14Parser.PlusPlus, 0); } - public TerminalNode MinusMinus() { return getToken(CPP14Parser.MinusMinus, 0); } - public UnaryOperatorContext unaryOperator() { - return getRuleContext(UnaryOperatorContext.class,0); - } - public TerminalNode Sizeof() { return getToken(CPP14Parser.Sizeof, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public TheTypeIdContext theTypeId() { - return getRuleContext(TheTypeIdContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public TerminalNode Ellipsis() { return getToken(CPP14Parser.Ellipsis, 0); } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public TerminalNode Alignof() { return getToken(CPP14Parser.Alignof, 0); } - public NoExceptExpressionContext noExceptExpression() { - return getRuleContext(NoExceptExpressionContext.class,0); - } - public NewExpression_Context newExpression_() { - return getRuleContext(NewExpression_Context.class,0); - } - public DeleteExpressionContext deleteExpression() { - return getRuleContext(DeleteExpressionContext.class,0); - } - public UnaryExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_unaryExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterUnaryExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitUnaryExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitUnaryExpression(this); - else return visitor.visitChildren(this); - } - } -- Gitee From 0db1d7e2b989504f2568a09c0dbbf1b5ade59ed7 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:46:52 +0800 Subject: [PATCH 35/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/CPP14Parser.java | 1113 ----------------- 1 file changed, 1113 deletions(-) delete mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java deleted file mode 100644 index c6d248f6..00000000 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/CPP14Parser.java +++ /dev/null @@ -1,1113 +0,0 @@ -/* - * Copyright (c) 2025 Shenzhen Kaihong Digital. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package antlr; - -// Generated from ./CPP14Parser.g4 by ANTLR 4.13.2 -import org.antlr.v4.runtime.atn.*; -import org.antlr.v4.runtime.dfa.DFA; -import org.antlr.v4.runtime.*; -import org.antlr.v4.runtime.misc.*; -import org.antlr.v4.runtime.tree.*; -import java.util.List; -import java.util.Iterator; -import java.util.ArrayList; - -@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast", "CheckReturnValue", "this-escape"}) -public class CPP14Parser extends CPP14ParserBase { - static { RuntimeMetaData.checkVersion("4.13.2", RuntimeMetaData.VERSION); } - - protected static final DFA[] _decisionToDFA; - protected static final PredictionContextCache _sharedContextCache = - new PredictionContextCache(); - public static final int - IntegerLiteral=1, CharacterLiteral=2, FloatingLiteral=3, StringLiteral=4, - BooleanLiteral=5, PointerLiteral=6, UserDefinedLiteral=7, MultiLineMacro=8, - Directive=9, Alignas=10, Alignof=11, Asm=12, Auto=13, Bool=14, Break=15, - Case=16, Catch=17, Char=18, Char16=19, Char32=20, Class=21, Const=22, - Constexpr=23, Const_cast=24, Continue=25, Decltype=26, Default=27, Delete=28, - Do=29, Double=30, Dynamic_cast=31, Else=32, Enum=33, Explicit=34, Export=35, - Extern=36, False_=37, Final=38, Float=39, For=40, Friend=41, Goto=42, - If=43, Inline=44, Int=45, Long=46, Mutable=47, Namespace=48, New=49, Noexcept=50, - Nullptr=51, Operator=52, Override=53, Private=54, Protected=55, Public=56, - Register=57, Reinterpret_cast=58, Return=59, Short=60, Signed=61, Sizeof=62, - Static=63, Static_assert=64, Static_cast=65, Struct=66, Switch=67, Template=68, - This=69, Thread_local=70, Throw=71, True_=72, Try=73, Typedef=74, Typeid_=75, - Typename_=76, Union=77, Unsigned=78, Using=79, Virtual=80, Void=81, Volatile=82, - Wchar=83, While=84, LeftParen=85, RightParen=86, LeftBracket=87, RightBracket=88, - LeftBrace=89, RightBrace=90, Plus=91, Minus=92, Star=93, Div=94, Mod=95, - Caret=96, And=97, Or=98, Tilde=99, Not=100, Assign=101, Less=102, Greater=103, - PlusAssign=104, MinusAssign=105, StarAssign=106, DivAssign=107, ModAssign=108, - XorAssign=109, AndAssign=110, OrAssign=111, LeftShiftAssign=112, RightShiftAssign=113, - Equal=114, NotEqual=115, LessEqual=116, GreaterEqual=117, AndAnd=118, - OrOr=119, PlusPlus=120, MinusMinus=121, Comma=122, ArrowStar=123, Arrow=124, - Question=125, Colon=126, Doublecolon=127, Semi=128, Dot=129, DotStar=130, - Ellipsis=131, Identifier=132, DecimalLiteral=133, OctalLiteral=134, HexadecimalLiteral=135, - BinaryLiteral=136, Integersuffix=137, UserDefinedIntegerLiteral=138, UserDefinedFloatingLiteral=139, - UserDefinedStringLiteral=140, UserDefinedCharacterLiteral=141, Whitespace=142, - Newline=143, BlockComment=144, LineComment=145; - public static final int - RULE_translationUnit = 0, RULE_primaryExpression = 1, RULE_idExpression = 2, - RULE_unqualifiedId = 3, RULE_qualifiedId = 4, RULE_nestedNameSpecifier = 5, - RULE_lambdaExpression = 6, RULE_lambdaIntroducer = 7, RULE_lambdaCapture = 8, - RULE_captureDefault = 9, RULE_captureList = 10, RULE_capture = 11, RULE_simpleCapture = 12, - RULE_initcapture = 13, RULE_lambdaDeclarator = 14, RULE_postfixExpression = 15, - RULE_typeIdOfTheTypeId = 16, RULE_expressionList = 17, RULE_pseudoDestructorName = 18, - RULE_unaryExpression = 19, RULE_unaryOperator = 20, RULE_newExpression_ = 21, - RULE_newPlacement = 22, RULE_newTypeId = 23, RULE_newDeclarator_ = 24, - RULE_noPointerNewDeclarator = 25, RULE_newInitializer_ = 26, RULE_deleteExpression = 27, - RULE_noExceptExpression = 28, RULE_castExpression = 29, RULE_pointerMemberExpression = 30, - RULE_multiplicativeExpression = 31, RULE_additiveExpression = 32, RULE_shiftExpression = 33, - RULE_shiftOperator = 34, RULE_relationalExpression = 35, RULE_equalityExpression = 36, - RULE_andExpression = 37, RULE_exclusiveOrExpression = 38, RULE_inclusiveOrExpression = 39, - RULE_logicalAndExpression = 40, RULE_logicalOrExpression = 41, RULE_conditionalExpression = 42, - RULE_assignmentExpression = 43, RULE_assignmentOperator = 44, RULE_expression = 45, - RULE_constantExpression = 46, RULE_statement = 47, RULE_labeledStatement = 48, - RULE_expressionStatement = 49, RULE_compoundStatement = 50, RULE_statementSeq = 51, - RULE_selectionStatement = 52, RULE_condition = 53, RULE_iterationStatement = 54, - RULE_forInitStatement = 55, RULE_forRangeDeclaration = 56, RULE_forRangeInitializer = 57, - RULE_jumpStatement = 58, RULE_declarationStatement = 59, RULE_declarationseq = 60, - RULE_declaration = 61, RULE_blockDeclaration = 62, RULE_aliasDeclaration = 63, - RULE_simpleDeclaration = 64, RULE_staticAssertDeclaration = 65, RULE_emptyDeclaration_ = 66, - RULE_attributeDeclaration = 67, RULE_declSpecifier = 68, RULE_declSpecifierSeq = 69, - RULE_storageClassSpecifier = 70, RULE_functionSpecifier = 71, RULE_typedefName = 72, - RULE_typeSpecifier = 73, RULE_trailingTypeSpecifier = 74, RULE_typeSpecifierSeq = 75, - RULE_trailingTypeSpecifierSeq = 76, RULE_simpleTypeLengthModifier = 77, - RULE_simpleTypeSignednessModifier = 78, RULE_simpleTypeSpecifier = 79, - RULE_theTypeName = 80, RULE_decltypeSpecifier = 81, RULE_elaboratedTypeSpecifier = 82, - RULE_enumName = 83, RULE_enumSpecifier = 84, RULE_enumHead = 85, RULE_opaqueEnumDeclaration = 86, - RULE_enumkey = 87, RULE_enumbase = 88, RULE_enumeratorList = 89, RULE_enumeratorDefinition = 90, - RULE_enumerator = 91, RULE_namespaceName = 92, RULE_originalNamespaceName = 93, - RULE_namespaceDefinition = 94, RULE_namespaceAlias = 95, RULE_namespaceAliasDefinition = 96, - RULE_qualifiednamespacespecifier = 97, RULE_usingDeclaration = 98, RULE_usingDirective = 99, - RULE_asmDefinition = 100, RULE_linkageSpecification = 101, RULE_attributeSpecifierSeq = 102, - RULE_attributeSpecifier = 103, RULE_alignmentspecifier = 104, RULE_attributeList = 105, - RULE_attribute = 106, RULE_attributeNamespace = 107, RULE_attributeArgumentClause = 108, - RULE_balancedTokenSeq = 109, RULE_balancedtoken = 110, RULE_initDeclaratorList = 111, - RULE_initDeclarator = 112, RULE_declarator = 113, RULE_pointerDeclarator = 114, - RULE_noPointerDeclarator = 115, RULE_parametersAndQualifiers = 116, RULE_trailingReturnType = 117, - RULE_pointerOperator = 118, RULE_cvqualifierseq = 119, RULE_cvQualifier = 120, - RULE_refqualifier = 121, RULE_declaratorid = 122, RULE_theTypeId = 123, - RULE_abstractDeclarator = 124, RULE_pointerAbstractDeclarator = 125, RULE_noPointerAbstractDeclarator = 126, - RULE_abstractPackDeclarator = 127, RULE_noPointerAbstractPackDeclarator = 128, - RULE_parameterDeclarationClause = 129, RULE_parameterDeclarationList = 130, - RULE_parameterDeclaration = 131, RULE_functionDefinition = 132, RULE_functionBody = 133, - RULE_initializer = 134, RULE_braceOrEqualInitializer = 135, RULE_initializerClause = 136, - RULE_initializerList = 137, RULE_bracedInitList = 138, RULE_className = 139, - RULE_classSpecifier = 140, RULE_classHead = 141, RULE_classHeadName = 142, - RULE_classVirtSpecifier = 143, RULE_classKey = 144, RULE_memberSpecification = 145, - RULE_memberdeclaration = 146, RULE_memberDeclaratorList = 147, RULE_memberDeclarator = 148, - RULE_virtualSpecifierSeq = 149, RULE_virtualSpecifier = 150, RULE_pureSpecifier = 151, - RULE_baseClause = 152, RULE_baseSpecifierList = 153, RULE_baseSpecifier = 154, - RULE_classOrDeclType = 155, RULE_baseTypeSpecifier = 156, RULE_accessSpecifier = 157, - RULE_conversionFunctionId = 158, RULE_conversionTypeId = 159, RULE_conversionDeclarator = 160, - RULE_constructorInitializer = 161, RULE_memInitializerList = 162, RULE_memInitializer = 163, - RULE_meminitializerid = 164, RULE_operatorFunctionId = 165, RULE_literalOperatorId = 166, - RULE_templateDeclaration = 167, RULE_templateparameterList = 168, RULE_templateParameter = 169, - RULE_typeParameter = 170, RULE_simpleTemplateId = 171, RULE_templateId = 172, - RULE_templateName = 173, RULE_templateArgumentList = 174, RULE_templateArgument = 175, - RULE_typeNameSpecifier = 176, RULE_explicitInstantiation = 177, RULE_explicitSpecialization = 178, - RULE_tryBlock = 179, RULE_functionTryBlock = 180, RULE_handlerSeq = 181, - RULE_handler = 182, RULE_exceptionDeclaration = 183, RULE_throwExpression = 184, - RULE_exceptionSpecification = 185, RULE_dynamicExceptionSpecification = 186, - RULE_typeIdList = 187, RULE_noeExceptSpecification = 188, RULE_theOperator = 189, - RULE_literal = 190; - private static String[] makeRuleNames() { - return new String[] { - "translationUnit", "primaryExpression", "idExpression", "unqualifiedId", - "qualifiedId", "nestedNameSpecifier", "lambdaExpression", "lambdaIntroducer", - "lambdaCapture", "captureDefault", "captureList", "capture", "simpleCapture", - "initcapture", "lambdaDeclarator", "postfixExpression", "typeIdOfTheTypeId", - "expressionList", "pseudoDestructorName", "unaryExpression", "unaryOperator", - "newExpression_", "newPlacement", "newTypeId", "newDeclarator_", "noPointerNewDeclarator", - "newInitializer_", "deleteExpression", "noExceptExpression", "castExpression", - "pointerMemberExpression", "multiplicativeExpression", "additiveExpression", - "shiftExpression", "shiftOperator", "relationalExpression", "equalityExpression", - "andExpression", "exclusiveOrExpression", "inclusiveOrExpression", "logicalAndExpression", - "logicalOrExpression", "conditionalExpression", "assignmentExpression", - "assignmentOperator", "expression", "constantExpression", "statement", - "labeledStatement", "expressionStatement", "compoundStatement", "statementSeq", - "selectionStatement", "condition", "iterationStatement", "forInitStatement", - "forRangeDeclaration", "forRangeInitializer", "jumpStatement", "declarationStatement", - "declarationseq", "declaration", "blockDeclaration", "aliasDeclaration", - "simpleDeclaration", "staticAssertDeclaration", "emptyDeclaration_", - "attributeDeclaration", "declSpecifier", "declSpecifierSeq", "storageClassSpecifier", - "functionSpecifier", "typedefName", "typeSpecifier", "trailingTypeSpecifier", - "typeSpecifierSeq", "trailingTypeSpecifierSeq", "simpleTypeLengthModifier", - "simpleTypeSignednessModifier", "simpleTypeSpecifier", "theTypeName", - "decltypeSpecifier", "elaboratedTypeSpecifier", "enumName", "enumSpecifier", - "enumHead", "opaqueEnumDeclaration", "enumkey", "enumbase", "enumeratorList", - "enumeratorDefinition", "enumerator", "namespaceName", "originalNamespaceName", - "namespaceDefinition", "namespaceAlias", "namespaceAliasDefinition", - "qualifiednamespacespecifier", "usingDeclaration", "usingDirective", - "asmDefinition", "linkageSpecification", "attributeSpecifierSeq", "attributeSpecifier", - "alignmentspecifier", "attributeList", "attribute", "attributeNamespace", - "attributeArgumentClause", "balancedTokenSeq", "balancedtoken", "initDeclaratorList", - "initDeclarator", "declarator", "pointerDeclarator", "noPointerDeclarator", - "parametersAndQualifiers", "trailingReturnType", "pointerOperator", "cvqualifierseq", - "cvQualifier", "refqualifier", "declaratorid", "theTypeId", "abstractDeclarator", - "pointerAbstractDeclarator", "noPointerAbstractDeclarator", "abstractPackDeclarator", - "noPointerAbstractPackDeclarator", "parameterDeclarationClause", "parameterDeclarationList", - "parameterDeclaration", "functionDefinition", "functionBody", "initializer", - "braceOrEqualInitializer", "initializerClause", "initializerList", "bracedInitList", - "className", "classSpecifier", "classHead", "classHeadName", "classVirtSpecifier", - "classKey", "memberSpecification", "memberdeclaration", "memberDeclaratorList", - "memberDeclarator", "virtualSpecifierSeq", "virtualSpecifier", "pureSpecifier", - "baseClause", "baseSpecifierList", "baseSpecifier", "classOrDeclType", - "baseTypeSpecifier", "accessSpecifier", "conversionFunctionId", "conversionTypeId", - "conversionDeclarator", "constructorInitializer", "memInitializerList", - "memInitializer", "meminitializerid", "operatorFunctionId", "literalOperatorId", - "templateDeclaration", "templateparameterList", "templateParameter", - "typeParameter", "simpleTemplateId", "templateId", "templateName", "templateArgumentList", - "templateArgument", "typeNameSpecifier", "explicitInstantiation", "explicitSpecialization", - "tryBlock", "functionTryBlock", "handlerSeq", "handler", "exceptionDeclaration", - "throwExpression", "exceptionSpecification", "dynamicExceptionSpecification", - "typeIdList", "noeExceptSpecification", "theOperator", "literal" - }; - } - public static final String[] ruleNames = makeRuleNames(); - - private static String[] makeLiteralNames() { - return new String[] { - null, null, null, null, null, null, null, null, null, null, "'alignas'", - "'alignof'", "'asm'", "'auto'", "'bool'", "'break'", "'case'", "'catch'", - "'char'", "'char16_t'", "'char32_t'", "'class'", "'const'", "'constexpr'", - "'const_cast'", "'continue'", "'decltype'", "'default'", "'delete'", - "'do'", "'double'", "'dynamic_cast'", "'else'", "'enum'", "'explicit'", - "'export'", "'extern'", "'false'", "'final'", "'float'", "'for'", "'friend'", - "'goto'", "'if'", "'inline'", "'int'", "'long'", "'mutable'", "'namespace'", - "'new'", "'noexcept'", "'nullptr'", "'operator'", "'override'", "'private'", - "'protected'", "'public'", "'register'", "'reinterpret_cast'", "'return'", - "'short'", "'signed'", "'sizeof'", "'static'", "'static_assert'", "'static_cast'", - "'struct'", "'switch'", "'template'", "'this'", "'thread_local'", "'throw'", - "'true'", "'try'", "'typedef'", "'typeid'", "'typename'", "'union'", - "'unsigned'", "'using'", "'virtual'", "'void'", "'volatile'", "'wchar_t'", - "'while'", "'('", "')'", "'['", "']'", "'{'", "'}'", "'+'", "'-'", "'*'", - "'/'", "'%'", "'^'", "'&'", "'|'", "'~'", null, "'='", "'<'", "'>'", - "'+='", "'-='", "'*='", "'/='", "'%='", "'^='", "'&='", "'|='", "'<<='", - "'>>='", "'=='", "'!='", "'<='", "'>='", null, null, "'++'", "'--'", - "','", "'->*'", "'->'", "'?'", "':'", "'::'", "';'", "'.'", "'.*'", "'...'" - }; - } - private static final String[] _LITERAL_NAMES = makeLiteralNames(); - private static String[] makeSymbolicNames() { - return new String[] { - null, "IntegerLiteral", "CharacterLiteral", "FloatingLiteral", "StringLiteral", - "BooleanLiteral", "PointerLiteral", "UserDefinedLiteral", "MultiLineMacro", - "Directive", "Alignas", "Alignof", "Asm", "Auto", "Bool", "Break", "Case", - "Catch", "Char", "Char16", "Char32", "Class", "Const", "Constexpr", "Const_cast", - "Continue", "Decltype", "Default", "Delete", "Do", "Double", "Dynamic_cast", - "Else", "Enum", "Explicit", "Export", "Extern", "False_", "Final", "Float", - "For", "Friend", "Goto", "If", "Inline", "Int", "Long", "Mutable", "Namespace", - "New", "Noexcept", "Nullptr", "Operator", "Override", "Private", "Protected", - "Public", "Register", "Reinterpret_cast", "Return", "Short", "Signed", - "Sizeof", "Static", "Static_assert", "Static_cast", "Struct", "Switch", - "Template", "This", "Thread_local", "Throw", "True_", "Try", "Typedef", - "Typeid_", "Typename_", "Union", "Unsigned", "Using", "Virtual", "Void", - "Volatile", "Wchar", "While", "LeftParen", "RightParen", "LeftBracket", - "RightBracket", "LeftBrace", "RightBrace", "Plus", "Minus", "Star", "Div", - "Mod", "Caret", "And", "Or", "Tilde", "Not", "Assign", "Less", "Greater", - "PlusAssign", "MinusAssign", "StarAssign", "DivAssign", "ModAssign", - "XorAssign", "AndAssign", "OrAssign", "LeftShiftAssign", "RightShiftAssign", - "Equal", "NotEqual", "LessEqual", "GreaterEqual", "AndAnd", "OrOr", "PlusPlus", - "MinusMinus", "Comma", "ArrowStar", "Arrow", "Question", "Colon", "Doublecolon", - "Semi", "Dot", "DotStar", "Ellipsis", "Identifier", "DecimalLiteral", - "OctalLiteral", "HexadecimalLiteral", "BinaryLiteral", "Integersuffix", - "UserDefinedIntegerLiteral", "UserDefinedFloatingLiteral", "UserDefinedStringLiteral", - "UserDefinedCharacterLiteral", "Whitespace", "Newline", "BlockComment", - "LineComment" - }; - } - private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames(); - public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); - - /** - * @deprecated Use {@link #VOCABULARY} instead. - */ - @Deprecated - public static final String[] tokenNames; - static { - tokenNames = new String[_SYMBOLIC_NAMES.length]; - for (int i = 0; i < tokenNames.length; i++) { - tokenNames[i] = VOCABULARY.getLiteralName(i); - if (tokenNames[i] == null) { - tokenNames[i] = VOCABULARY.getSymbolicName(i); - } - - if (tokenNames[i] == null) { - tokenNames[i] = ""; - } - } - } - - @Override - @Deprecated - public String[] getTokenNames() { - return tokenNames; - } - - @Override - - public Vocabulary getVocabulary() { - return VOCABULARY; - } - - @Override - public String getGrammarFileName() { return "CPP14Parser.g4"; } - - @Override - public String[] getRuleNames() { return ruleNames; } - - @Override - public String getSerializedATN() { return _serializedATN; } - - @Override - public ATN getATN() { return _ATN; } - - public CPP14Parser(TokenStream input) { - super(input); - _interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); - } - - @SuppressWarnings("CheckReturnValue") - public static class TranslationUnitContext extends ParserRuleContext { - public TerminalNode EOF() { return getToken(CPP14Parser.EOF, 0); } - public DeclarationseqContext declarationseq() { - return getRuleContext(DeclarationseqContext.class,0); - } - public TranslationUnitContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_translationUnit; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterTranslationUnit(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitTranslationUnit(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitTranslationUnit(this); - else return visitor.visitChildren(this); - } - } - - public final TranslationUnitContext translationUnit() throws RecognitionException { - TranslationUnitContext _localctx = new TranslationUnitContext(_ctx, getState()); - enterRule(_localctx, 0, RULE_translationUnit); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(383); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 10)) & ~0x3f) == 0 && ((1L << (_la - 10)) & 1543754443169808157L) != 0) || ((((_la - 74)) & ~0x3f) == 0 && ((1L << (_la - 74)) & 459384754220313597L) != 0)) { - { - setState(382); - declarationseq(); - } - } - - setState(385); - match(EOF); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PrimaryExpressionContext extends ParserRuleContext { - public List literal() { - return getRuleContexts(LiteralContext.class); - } - public LiteralContext literal(int i) { - return getRuleContext(LiteralContext.class,i); - } - public TerminalNode This() { return getToken(CPP14Parser.This, 0); } - public TerminalNode LeftParen() { return getToken(CPP14Parser.LeftParen, 0); } - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public TerminalNode RightParen() { return getToken(CPP14Parser.RightParen, 0); } - public IdExpressionContext idExpression() { - return getRuleContext(IdExpressionContext.class,0); - } - public LambdaExpressionContext lambdaExpression() { - return getRuleContext(LambdaExpressionContext.class,0); - } - public PrimaryExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_primaryExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterPrimaryExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitPrimaryExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitPrimaryExpression(this); - else return visitor.visitChildren(this); - } - } - - public final PrimaryExpressionContext primaryExpression() throws RecognitionException { - PrimaryExpressionContext _localctx = new PrimaryExpressionContext(_ctx, getState()); - enterRule(_localctx, 2, RULE_primaryExpression); - try { - int _alt; - setState(399); - _errHandler.sync(this); - switch (_input.LA(1)) { - case IntegerLiteral: - case CharacterLiteral: - case FloatingLiteral: - case StringLiteral: - case BooleanLiteral: - case PointerLiteral: - case UserDefinedLiteral: - enterOuterAlt(_localctx, 1); - { - setState(388); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(387); - literal(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(390); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,1,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - } - break; - case This: - enterOuterAlt(_localctx, 2); - { - setState(392); - match(This); - } - break; - case LeftParen: - enterOuterAlt(_localctx, 3); - { - setState(393); - match(LeftParen); - setState(394); - expression(); - setState(395); - match(RightParen); - } - break; - case Decltype: - case Operator: - case Tilde: - case Doublecolon: - case Identifier: - enterOuterAlt(_localctx, 4); - { - setState(397); - idExpression(); - } - break; - case LeftBracket: - enterOuterAlt(_localctx, 5); - { - setState(398); - lambdaExpression(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IdExpressionContext extends ParserRuleContext { - public UnqualifiedIdContext unqualifiedId() { - return getRuleContext(UnqualifiedIdContext.class,0); - } - public QualifiedIdContext qualifiedId() { - return getRuleContext(QualifiedIdContext.class,0); - } - public IdExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_idExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterIdExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitIdExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitIdExpression(this); - else return visitor.visitChildren(this); - } - } - - public final IdExpressionContext idExpression() throws RecognitionException { - IdExpressionContext _localctx = new IdExpressionContext(_ctx, getState()); - enterRule(_localctx, 4, RULE_idExpression); - try { - setState(403); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,3,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(401); - unqualifiedId(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(402); - qualifiedId(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class UnqualifiedIdContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public OperatorFunctionIdContext operatorFunctionId() { - return getRuleContext(OperatorFunctionIdContext.class,0); - } - public ConversionFunctionIdContext conversionFunctionId() { - return getRuleContext(ConversionFunctionIdContext.class,0); - } - public LiteralOperatorIdContext literalOperatorId() { - return getRuleContext(LiteralOperatorIdContext.class,0); - } - public TerminalNode Tilde() { return getToken(CPP14Parser.Tilde, 0); } - public ClassNameContext className() { - return getRuleContext(ClassNameContext.class,0); - } - public DecltypeSpecifierContext decltypeSpecifier() { - return getRuleContext(DecltypeSpecifierContext.class,0); - } - public TemplateIdContext templateId() { - return getRuleContext(TemplateIdContext.class,0); - } - public UnqualifiedIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_unqualifiedId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterUnqualifiedId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitUnqualifiedId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitUnqualifiedId(this); - else return visitor.visitChildren(this); - } - } - - public final UnqualifiedIdContext unqualifiedId() throws RecognitionException { - UnqualifiedIdContext _localctx = new UnqualifiedIdContext(_ctx, getState()); - enterRule(_localctx, 6, RULE_unqualifiedId); - try { - setState(415); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,5,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(405); - match(Identifier); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(406); - operatorFunctionId(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(407); - conversionFunctionId(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(408); - literalOperatorId(); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(409); - match(Tilde); - setState(412); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Identifier: - { - setState(410); - className(); - } - break; - case Decltype: - { - setState(411); - decltypeSpecifier(); - } - break; - default: - throw new NoViableAltException(this); - } - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(414); - templateId(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class QualifiedIdContext extends ParserRuleContext { - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public UnqualifiedIdContext unqualifiedId() { - return getRuleContext(UnqualifiedIdContext.class,0); - } - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public QualifiedIdContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_qualifiedId; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterQualifiedId(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitQualifiedId(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitQualifiedId(this); - else return visitor.visitChildren(this); - } - } - - public final QualifiedIdContext qualifiedId() throws RecognitionException { - QualifiedIdContext _localctx = new QualifiedIdContext(_ctx, getState()); - enterRule(_localctx, 8, RULE_qualifiedId); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(417); - nestedNameSpecifier(0); - setState(419); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Template) { - { - setState(418); - match(Template); - } - } - - setState(421); - unqualifiedId(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NestedNameSpecifierContext extends ParserRuleContext { - public TerminalNode Doublecolon() { return getToken(CPP14Parser.Doublecolon, 0); } - public TheTypeNameContext theTypeName() { - return getRuleContext(TheTypeNameContext.class,0); - } - public NamespaceNameContext namespaceName() { - return getRuleContext(NamespaceNameContext.class,0); - } - public DecltypeSpecifierContext decltypeSpecifier() { - return getRuleContext(DecltypeSpecifierContext.class,0); - } - public NestedNameSpecifierContext nestedNameSpecifier() { - return getRuleContext(NestedNameSpecifierContext.class,0); - } - public TerminalNode Identifier() { return getToken(CPP14Parser.Identifier, 0); } - public SimpleTemplateIdContext simpleTemplateId() { - return getRuleContext(SimpleTemplateIdContext.class,0); - } - public TerminalNode Template() { return getToken(CPP14Parser.Template, 0); } - public NestedNameSpecifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_nestedNameSpecifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterNestedNameSpecifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitNestedNameSpecifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitNestedNameSpecifier(this); - else return visitor.visitChildren(this); - } - } - - public final NestedNameSpecifierContext nestedNameSpecifier() throws RecognitionException { - return nestedNameSpecifier(0); - } - - private NestedNameSpecifierContext nestedNameSpecifier(int _p) throws RecognitionException { - ParserRuleContext _parentctx = _ctx; - int _parentState = getState(); - NestedNameSpecifierContext _localctx = new NestedNameSpecifierContext(_ctx, _parentState); - NestedNameSpecifierContext _prevctx = _localctx; - int _startState = 10; - enterRecursionRule(_localctx, 10, RULE_nestedNameSpecifier, _p); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - { - setState(427); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,7,_ctx) ) { - case 1: - { - setState(424); - theTypeName(); - } - break; - case 2: - { - setState(425); - namespaceName(); - } - break; - case 3: - { - setState(426); - decltypeSpecifier(); - } - break; - } - setState(429); - match(Doublecolon); - } - _ctx.stop = _input.LT(-1); - setState(442); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,10,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - { - _localctx = new NestedNameSpecifierContext(_parentctx, _parentState); - pushNewRecursionContext(_localctx, _startState, RULE_nestedNameSpecifier); - setState(431); - if (!(precpred(_ctx, 1))) throw new FailedPredicateException(this, "precpred(_ctx, 1)"); - setState(437); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,9,_ctx) ) { - case 1: - { - setState(432); - match(Identifier); - } - break; - case 2: - { - setState(434); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Template) { - { - setState(433); - match(Template); - } - } - - setState(436); - simpleTemplateId(); - } - break; - } - setState(439); - match(Doublecolon); - } - } - } - setState(444); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,10,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LambdaExpressionContext extends ParserRuleContext { - public LambdaIntroducerContext lambdaIntroducer() { - return getRuleContext(LambdaIntroducerContext.class,0); - } - public CompoundStatementContext compoundStatement() { - return getRuleContext(CompoundStatementContext.class,0); - } - public LambdaDeclaratorContext lambdaDeclarator() { - return getRuleContext(LambdaDeclaratorContext.class,0); - } - public LambdaExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_lambdaExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLambdaExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLambdaExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLambdaExpression(this); - else return visitor.visitChildren(this); - } - } - - public final LambdaExpressionContext lambdaExpression() throws RecognitionException { - LambdaExpressionContext _localctx = new LambdaExpressionContext(_ctx, getState()); - enterRule(_localctx, 12, RULE_lambdaExpression); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(445); - lambdaIntroducer(); - setState(447); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LeftParen) { - { - setState(446); - lambdaDeclarator(); - } - } - - setState(449); - compoundStatement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LambdaIntroducerContext extends ParserRuleContext { - public TerminalNode LeftBracket() { return getToken(CPP14Parser.LeftBracket, 0); } - public TerminalNode RightBracket() { return getToken(CPP14Parser.RightBracket, 0); } - public LambdaCaptureContext lambdaCapture() { - return getRuleContext(LambdaCaptureContext.class,0); - } - public LambdaIntroducerContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_lambdaIntroducer; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLambdaIntroducer(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLambdaIntroducer(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLambdaIntroducer(this); - else return visitor.visitChildren(this); - } - } - - public final LambdaIntroducerContext lambdaIntroducer() throws RecognitionException { - LambdaIntroducerContext _localctx = new LambdaIntroducerContext(_ctx, getState()); - enterRule(_localctx, 14, RULE_lambdaIntroducer); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(451); - match(LeftBracket); - setState(453); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 69)) & ~0x3f) == 0 && ((1L << (_la - 69)) & -9223372032291373055L) != 0)) { - { - setState(452); - lambdaCapture(); - } - } - - setState(455); - match(RightBracket); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LambdaCaptureContext extends ParserRuleContext { - public CaptureListContext captureList() { - return getRuleContext(CaptureListContext.class,0); - } - public CaptureDefaultContext captureDefault() { - return getRuleContext(CaptureDefaultContext.class,0); - } - public TerminalNode Comma() { return getToken(CPP14Parser.Comma, 0); } - public LambdaCaptureContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_lambdaCapture; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterLambdaCapture(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitLambdaCapture(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitLambdaCapture(this); - else return visitor.visitChildren(this); - } - } - - public final LambdaCaptureContext lambdaCapture() throws RecognitionException { - LambdaCaptureContext _localctx = new LambdaCaptureContext(_ctx, getState()); - enterRule(_localctx, 16, RULE_lambdaCapture); - int _la; - try { - setState(463); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,14,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(457); - captureList(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(458); - captureDefault(); - setState(461); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(459); - match(Comma); - setState(460); - captureList(); - } - } - - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CaptureDefaultContext extends ParserRuleContext { - public TerminalNode And() { return getToken(CPP14Parser.And, 0); } - public TerminalNode Assign() { return getToken(CPP14Parser.Assign, 0); } - public CaptureDefaultContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_captureDefault; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).enterCaptureDefault(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof CPP14ParserListener ) ((CPP14ParserListener)listener).exitCaptureDefault(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof CPP14ParserVisitor ) return ((CPP14ParserVisitor)visitor).visitCaptureDefault(this); - else return visitor.visitChildren(this); - } - } - - public final CaptureDefaultContext captureDefault() throws RecognitionException { - CaptureDefaultContext _localctx = new CaptureDefaultContext(_ctx, getState()); - enterRule(_localctx, 18, RULE_captureDefault); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(465); - _la = _input.LA(1); - if ( !(_la==And || _la==Assign) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - - - - -} \ No newline at end of file -- Gitee From fa64582e77fb790d2aaba95f5946a8ddb05349d6 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:47:35 +0800 Subject: [PATCH 36/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1821 ----------------- 1 file changed, 1821 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index f9cad25a..c1af38c9 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -14839,1825 +14839,4 @@ public class TypeScriptParser extends TypeScriptParserBase { } } - public final ReservedWordContext reservedWord() throws RecognitionException { - ReservedWordContext _localctx = new ReservedWordContext(_ctx, getState()); - enterRule(_localctx, 310, RULE_reservedWord); - try { - setState(1951); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Number: - case Boolean: - case String: - case TypeAlias: - case Require: - case Module: - enterOuterAlt(_localctx, 1); - { - setState(1948); - keyword(); - } - break; - case NullLiteral: - enterOuterAlt(_localctx, 2); - { - setState(1949); - match(NullLiteral); - } - break; - case BooleanLiteral: - enterOuterAlt(_localctx, 3); - { - setState(1950); - match(BooleanLiteral); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class KeywordContext extends ParserRuleContext { - public TerminalNode Break() { return getToken(TypeScriptParser.Break, 0); } - public TerminalNode Do() { return getToken(TypeScriptParser.Do, 0); } - public TerminalNode Instanceof() { return getToken(TypeScriptParser.Instanceof, 0); } - public TerminalNode Typeof() { return getToken(TypeScriptParser.Typeof, 0); } - public TerminalNode Case() { return getToken(TypeScriptParser.Case, 0); } - public TerminalNode Else() { return getToken(TypeScriptParser.Else, 0); } - public TerminalNode New() { return getToken(TypeScriptParser.New, 0); } - public TerminalNode Var() { return getToken(TypeScriptParser.Var, 0); } - public TerminalNode Catch() { return getToken(TypeScriptParser.Catch, 0); } - public TerminalNode Finally() { return getToken(TypeScriptParser.Finally, 0); } - public TerminalNode Return() { return getToken(TypeScriptParser.Return, 0); } - public TerminalNode Void() { return getToken(TypeScriptParser.Void, 0); } - public TerminalNode Continue() { return getToken(TypeScriptParser.Continue, 0); } - public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } - public TerminalNode Switch() { return getToken(TypeScriptParser.Switch, 0); } - public TerminalNode While() { return getToken(TypeScriptParser.While, 0); } - public TerminalNode Debugger() { return getToken(TypeScriptParser.Debugger, 0); } - public TerminalNode Function_() { return getToken(TypeScriptParser.Function_, 0); } - public TerminalNode This() { return getToken(TypeScriptParser.This, 0); } - public TerminalNode With() { return getToken(TypeScriptParser.With, 0); } - public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } - public TerminalNode If() { return getToken(TypeScriptParser.If, 0); } - public TerminalNode Throw() { return getToken(TypeScriptParser.Throw, 0); } - public TerminalNode Delete() { return getToken(TypeScriptParser.Delete, 0); } - public TerminalNode In() { return getToken(TypeScriptParser.In, 0); } - public TerminalNode Try() { return getToken(TypeScriptParser.Try, 0); } - public TerminalNode Class() { return getToken(TypeScriptParser.Class, 0); } - public TerminalNode Enum() { return getToken(TypeScriptParser.Enum, 0); } - public TerminalNode Extends() { return getToken(TypeScriptParser.Extends, 0); } - public TerminalNode Super() { return getToken(TypeScriptParser.Super, 0); } - public TerminalNode Const() { return getToken(TypeScriptParser.Const, 0); } - public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } - public TerminalNode Import() { return getToken(TypeScriptParser.Import, 0); } - public TerminalNode Implements() { return getToken(TypeScriptParser.Implements, 0); } - public TerminalNode Let() { return getToken(TypeScriptParser.Let, 0); } - public TerminalNode Private() { return getToken(TypeScriptParser.Private, 0); } - public TerminalNode Public() { return getToken(TypeScriptParser.Public, 0); } - public TerminalNode Interface() { return getToken(TypeScriptParser.Interface, 0); } - public TerminalNode Package() { return getToken(TypeScriptParser.Package, 0); } - public TerminalNode Protected() { return getToken(TypeScriptParser.Protected, 0); } - public TerminalNode Static() { return getToken(TypeScriptParser.Static, 0); } - public TerminalNode Yield() { return getToken(TypeScriptParser.Yield, 0); } - public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } - public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } - public TerminalNode ReadOnly() { return getToken(TypeScriptParser.ReadOnly, 0); } - public TerminalNode From() { return getToken(TypeScriptParser.From, 0); } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public TerminalNode Require() { return getToken(TypeScriptParser.Require, 0); } - public TerminalNode TypeAlias() { return getToken(TypeScriptParser.TypeAlias, 0); } - public TerminalNode String() { return getToken(TypeScriptParser.String, 0); } - public TerminalNode Boolean() { return getToken(TypeScriptParser.Boolean, 0); } - public TerminalNode Number() { return getToken(TypeScriptParser.Number, 0); } - public TerminalNode Module() { return getToken(TypeScriptParser.Module, 0); } - public KeywordContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_keyword; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterKeyword(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitKeyword(this); - } - } - - public final KeywordContext keyword() throws RecognitionException { - KeywordContext _localctx = new KeywordContext(_ctx, getState()); - enterRule(_localctx, 312, RULE_keyword); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1953); - _la = _input.LA(1); - if ( !(((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4027625446047744001L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EosContext extends ParserRuleContext { - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public TerminalNode EOF() { return getToken(TypeScriptParser.EOF, 0); } - public EosContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_eos; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEos(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEos(this); - } - } - - public final EosContext eos() throws RecognitionException { - EosContext _localctx = new EosContext(_ctx, getState()); - enterRule(_localctx, 314, RULE_eos); - try { - setState(1959); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,257,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1955); - match(SemiColon); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1956); - match(EOF); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1957); - if (!(this.lineTerminatorAhead())) throw new FailedPredicateException(this, "this.lineTerminatorAhead()"); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(1958); - if (!(this.closeBrace())) throw new FailedPredicateException(this, "this.closeBrace()"); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) { - switch (ruleIndex) { - case 10: - return unionOrIntersectionOrPrimaryType_sempred((UnionOrIntersectionOrPrimaryTypeContext)_localctx, predIndex); - case 11: - return primaryType_sempred((PrimaryTypeContext)_localctx, predIndex); - case 20: - return arrayType_sempred((ArrayTypeContext)_localctx, predIndex); - case 55: - return decoratorMemberExpression_sempred((DecoratorMemberExpressionContext)_localctx, predIndex); - case 82: - return expressionStatement_sempred((ExpressionStatementContext)_localctx, predIndex); - case 84: - return iterationStatement_sempred((IterationStatementContext)_localctx, predIndex); - case 86: - return continueStatement_sempred((ContinueStatementContext)_localctx, predIndex); - case 87: - return breakStatement_sempred((BreakStatementContext)_localctx, predIndex); - case 88: - return returnStatement_sempred((ReturnStatementContext)_localctx, predIndex); - case 89: - return yieldStatement_sempred((YieldStatementContext)_localctx, predIndex); - case 97: - return throwStatement_sempred((ThrowStatementContext)_localctx, predIndex); - case 112: - return generatorMethod_sempred((GeneratorMethodContext)_localctx, predIndex); - case 137: - return singleExpression_sempred((SingleExpressionContext)_localctx, predIndex); - case 150: - return getter_sempred((GetterContext)_localctx, predIndex); - case 151: - return setter_sempred((SetterContext)_localctx, predIndex); - case 157: - return eos_sempred((EosContext)_localctx, predIndex); - } - return true; - } - private boolean unionOrIntersectionOrPrimaryType_sempred(UnionOrIntersectionOrPrimaryTypeContext _localctx, int predIndex) { - switch (predIndex) { - case 0: - return precpred(_ctx, 3); - case 1: - return precpred(_ctx, 2); - } - return true; - } - private boolean primaryType_sempred(PrimaryTypeContext _localctx, int predIndex) { - switch (predIndex) { - case 2: - return precpred(_ctx, 6); - case 3: - return this.notLineTerminator(); - } - return true; - } - private boolean arrayType_sempred(ArrayTypeContext _localctx, int predIndex) { - switch (predIndex) { - case 4: - return this.notLineTerminator(); - } - return true; - } - private boolean decoratorMemberExpression_sempred(DecoratorMemberExpressionContext _localctx, int predIndex) { - switch (predIndex) { - case 5: - return precpred(_ctx, 2); - } - return true; - } - private boolean expressionStatement_sempred(ExpressionStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 6: - return this.notOpenBraceAndNotFunctionAndNotInterface(); - } - return true; - } - private boolean iterationStatement_sempred(IterationStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 7: - return this.p("of"); - case 8: - return this.p("of"); - } - return true; - } - private boolean continueStatement_sempred(ContinueStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 9: - return this.notLineTerminator(); - } - return true; - } - private boolean breakStatement_sempred(BreakStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 10: - return this.notLineTerminator(); - } - return true; - } - private boolean returnStatement_sempred(ReturnStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 11: - return this.notLineTerminator(); - } - return true; - } - private boolean yieldStatement_sempred(YieldStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 12: - return this.notLineTerminator(); - } - return true; - } - private boolean throwStatement_sempred(ThrowStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 13: - return this.notLineTerminator(); - } - return true; - } - private boolean generatorMethod_sempred(GeneratorMethodContext _localctx, int predIndex) { - switch (predIndex) { - case 14: - return this.notLineTerminator(); - } - return true; - } - private boolean singleExpression_sempred(SingleExpressionContext _localctx, int predIndex) { - switch (predIndex) { - case 15: - return precpred(_ctx, 50); - case 16: - return precpred(_ctx, 32); - case 17: - return precpred(_ctx, 31); - case 18: - return precpred(_ctx, 30); - case 19: - return precpred(_ctx, 29); - case 20: - return precpred(_ctx, 28); - case 21: - return precpred(_ctx, 27); - case 22: - return precpred(_ctx, 26); - case 23: - return precpred(_ctx, 25); - case 24: - return precpred(_ctx, 24); - case 25: - return precpred(_ctx, 23); - case 26: - return precpred(_ctx, 22); - case 27: - return precpred(_ctx, 21); - case 28: - return precpred(_ctx, 20); - case 29: - return precpred(_ctx, 19); - case 30: - return precpred(_ctx, 18); - case 31: - return precpred(_ctx, 17); - case 32: - return precpred(_ctx, 16); - case 33: - return precpred(_ctx, 51); - case 34: - return precpred(_ctx, 49); - case 35: - return precpred(_ctx, 48); - case 36: - return precpred(_ctx, 45); - case 37: - return precpred(_ctx, 44); - case 38: - return this.notLineTerminator(); - case 39: - return precpred(_ctx, 43); - case 40: - return this.notLineTerminator(); - case 41: - return precpred(_ctx, 15); - case 42: - return precpred(_ctx, 2); - case 43: - return precpred(_ctx, 1); - } - return true; - } - private boolean getter_sempred(GetterContext _localctx, int predIndex) { - switch (predIndex) { - case 44: - return this.n("get"); - } - return true; - } - private boolean setter_sempred(SetterContext _localctx, int predIndex) { - switch (predIndex) { - case 45: - return this.n("set"); - } - return true; - } - private boolean eos_sempred(EosContext _localctx, int predIndex) { - switch (predIndex) { - case 46: - return this.lineTerminatorAhead(); - case 47: - return this.closeBrace(); - } - return true; - } - - public static final String _serializedATN = - "\u0004\u0001\u0094\u07aa\u0002\u0000\u0007\u0000\u0002\u0001\u0007\u0001"+ - "\u0002\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002\u0004\u0007\u0004"+ - "\u0002\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002\u0007\u0007\u0007"+ - "\u0002\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002\u000b\u0007\u000b"+ - "\u0002\f\u0007\f\u0002\r\u0007\r\u0002\u000e\u0007\u000e\u0002\u000f\u0007"+ - "\u000f\u0002\u0010\u0007\u0010\u0002\u0011\u0007\u0011\u0002\u0012\u0007"+ - "\u0012\u0002\u0013\u0007\u0013\u0002\u0014\u0007\u0014\u0002\u0015\u0007"+ - "\u0015\u0002\u0016\u0007\u0016\u0002\u0017\u0007\u0017\u0002\u0018\u0007"+ - "\u0018\u0002\u0019\u0007\u0019\u0002\u001a\u0007\u001a\u0002\u001b\u0007"+ - "\u001b\u0002\u001c\u0007\u001c\u0002\u001d\u0007\u001d\u0002\u001e\u0007"+ - "\u001e\u0002\u001f\u0007\u001f\u0002 \u0007 \u0002!\u0007!\u0002\"\u0007"+ - "\"\u0002#\u0007#\u0002$\u0007$\u0002%\u0007%\u0002&\u0007&\u0002\'\u0007"+ - "\'\u0002(\u0007(\u0002)\u0007)\u0002*\u0007*\u0002+\u0007+\u0002,\u0007"+ - ",\u0002-\u0007-\u0002.\u0007.\u0002/\u0007/\u00020\u00070\u00021\u0007"+ - "1\u00022\u00072\u00023\u00073\u00024\u00074\u00025\u00075\u00026\u0007"+ - "6\u00027\u00077\u00028\u00078\u00029\u00079\u0002:\u0007:\u0002;\u0007"+ - ";\u0002<\u0007<\u0002=\u0007=\u0002>\u0007>\u0002?\u0007?\u0002@\u0007"+ - "@\u0002A\u0007A\u0002B\u0007B\u0002C\u0007C\u0002D\u0007D\u0002E\u0007"+ - "E\u0002F\u0007F\u0002G\u0007G\u0002H\u0007H\u0002I\u0007I\u0002J\u0007"+ - "J\u0002K\u0007K\u0002L\u0007L\u0002M\u0007M\u0002N\u0007N\u0002O\u0007"+ - "O\u0002P\u0007P\u0002Q\u0007Q\u0002R\u0007R\u0002S\u0007S\u0002T\u0007"+ - "T\u0002U\u0007U\u0002V\u0007V\u0002W\u0007W\u0002X\u0007X\u0002Y\u0007"+ - "Y\u0002Z\u0007Z\u0002[\u0007[\u0002\\\u0007\\\u0002]\u0007]\u0002^\u0007"+ - "^\u0002_\u0007_\u0002`\u0007`\u0002a\u0007a\u0002b\u0007b\u0002c\u0007"+ - "c\u0002d\u0007d\u0002e\u0007e\u0002f\u0007f\u0002g\u0007g\u0002h\u0007"+ - "h\u0002i\u0007i\u0002j\u0007j\u0002k\u0007k\u0002l\u0007l\u0002m\u0007"+ - "m\u0002n\u0007n\u0002o\u0007o\u0002p\u0007p\u0002q\u0007q\u0002r\u0007"+ - "r\u0002s\u0007s\u0002t\u0007t\u0002u\u0007u\u0002v\u0007v\u0002w\u0007"+ - "w\u0002x\u0007x\u0002y\u0007y\u0002z\u0007z\u0002{\u0007{\u0002|\u0007"+ - "|\u0002}\u0007}\u0002~\u0007~\u0002\u007f\u0007\u007f\u0002\u0080\u0007"+ - "\u0080\u0002\u0081\u0007\u0081\u0002\u0082\u0007\u0082\u0002\u0083\u0007"+ - "\u0083\u0002\u0084\u0007\u0084\u0002\u0085\u0007\u0085\u0002\u0086\u0007"+ - "\u0086\u0002\u0087\u0007\u0087\u0002\u0088\u0007\u0088\u0002\u0089\u0007"+ - "\u0089\u0002\u008a\u0007\u008a\u0002\u008b\u0007\u008b\u0002\u008c\u0007"+ - "\u008c\u0002\u008d\u0007\u008d\u0002\u008e\u0007\u008e\u0002\u008f\u0007"+ - "\u008f\u0002\u0090\u0007\u0090\u0002\u0091\u0007\u0091\u0002\u0092\u0007"+ - "\u0092\u0002\u0093\u0007\u0093\u0002\u0094\u0007\u0094\u0002\u0095\u0007"+ - "\u0095\u0002\u0096\u0007\u0096\u0002\u0097\u0007\u0097\u0002\u0098\u0007"+ - "\u0098\u0002\u0099\u0007\u0099\u0002\u009a\u0007\u009a\u0002\u009b\u0007"+ - "\u009b\u0002\u009c\u0007\u009c\u0002\u009d\u0007\u009d\u0001\u0000\u0001"+ - "\u0000\u0001\u0000\u0001\u0001\u0001\u0001\u0003\u0001\u0142\b\u0001\u0001"+ - "\u0002\u0001\u0002\u0003\u0002\u0146\b\u0002\u0001\u0002\u0001\u0002\u0001"+ - "\u0003\u0001\u0003\u0001\u0003\u0005\u0003\u014d\b\u0003\n\u0003\f\u0003"+ - "\u0150\t\u0003\u0001\u0004\u0001\u0004\u0003\u0004\u0154\b\u0004\u0001"+ - "\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0003\u0004\u015b"+ - "\b\u0004\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0006\u0001\u0006\u0003"+ - "\u0006\u0162\b\u0006\u0001\u0006\u0001\u0006\u0001\u0007\u0001\u0007\u0001"+ - "\u0007\u0005\u0007\u0169\b\u0007\n\u0007\f\u0007\u016c\t\u0007\u0001\b"+ - "\u0001\b\u0001\t\u0003\t\u0171\b\t\u0001\t\u0001\t\u0001\t\u0001\t\u0003"+ - "\t\u0177\b\t\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001"+ - "\n\u0001\n\u0005\n\u0182\b\n\n\n\f\n\u0185\t\n\u0001\u000b\u0001\u000b"+ - "\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b"+ - "\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b"+ - "\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b"+ - "\u0003\u000b\u019b\b\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b"+ - "\u0003\u000b\u01a1\b\u000b\u0001\u000b\u0005\u000b\u01a4\b\u000b\n\u000b"+ - "\f\u000b\u01a7\t\u000b\u0001\f\u0001\f\u0001\f\u0001\f\u0001\f\u0001\f"+ - "\u0001\f\u0001\f\u0001\f\u0003\f\u01b2\b\f\u0001\f\u0001\f\u0001\f\u0001"+ - "\f\u0001\f\u0003\f\u01b9\b\f\u0001\r\u0001\r\u0003\r\u01bd\b\r\u0001\u000e"+ - "\u0001\u000e\u0001\u000e\u0003\u000e\u01c2\b\u000e\u0001\u000e\u0001\u000e"+ - "\u0001\u000f\u0001\u000f\u0003\u000f\u01c8\b\u000f\u0001\u0010\u0001\u0010"+ - "\u0003\u0010\u01cc\b\u0010\u0001\u0010\u0001\u0010\u0001\u0011\u0001\u0011"+ - "\u0003\u0011\u01d2\b\u0011\u0001\u0012\u0001\u0012\u0001\u0012\u0005\u0012"+ - "\u01d7\b\u0012\n\u0012\f\u0012\u01da\t\u0012\u0001\u0013\u0001\u0013\u0001"+ - "\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0003\u0013\u01e3"+ - "\b\u0013\u0003\u0013\u01e5\b\u0013\u0001\u0014\u0001\u0014\u0001\u0014"+ - "\u0001\u0014\u0001\u0014\u0001\u0015\u0001\u0015\u0001\u0015\u0001\u0015"+ - "\u0001\u0016\u0001\u0016\u0001\u0016\u0005\u0016\u01f3\b\u0016\n\u0016"+ - "\f\u0016\u01f6\t\u0016\u0001\u0016\u0003\u0016\u01f9\b\u0016\u0001\u0017"+ - "\u0003\u0017\u01fc\b\u0017\u0001\u0017\u0001\u0017\u0003\u0017\u0200\b"+ - "\u0017\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0017\u0001\u0018\u0001"+ - "\u0018\u0003\u0018\u0208\b\u0018\u0001\u0018\u0001\u0018\u0003\u0018\u020c"+ - "\b\u0018\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0018\u0001\u0019\u0001"+ - "\u0019\u0001\u0019\u0001\u001a\u0001\u001a\u0001\u001a\u0001\u001a\u0004"+ - "\u001a\u0219\b\u001a\u000b\u001a\f\u001a\u021a\u0001\u001a\u0001\u001a"+ - "\u0003\u001a\u021f\b\u001a\u0001\u001b\u0003\u001b\u0222\b\u001b\u0001"+ - "\u001b\u0001\u001b\u0003\u001b\u0226\b\u001b\u0001\u001b\u0003\u001b\u0229"+ - "\b\u001b\u0001\u001b\u0001\u001b\u0003\u001b\u022d\b\u001b\u0001\u001c"+ - "\u0001\u001c\u0001\u001c\u0001\u001d\u0003\u001d\u0233\b\u001d\u0001\u001d"+ - "\u0001\u001d\u0003\u001d\u0237\b\u001d\u0001\u001d\u0001\u001d\u0003\u001d"+ - "\u023b\b\u001d\u0001\u001e\u0001\u001e\u0001\u001e\u0001\u001e\u0005\u001e"+ - "\u0241\b\u001e\n\u001e\f\u001e\u0244\t\u001e\u0001\u001e\u0001\u001e\u0003"+ - "\u001e\u0248\b\u001e\u0001\u001e\u0003\u001e\u024b\b\u001e\u0003\u001e"+ - "\u024d\b\u001e\u0001\u001f\u0001\u001f\u0001\u001f\u0005\u001f\u0252\b"+ - "\u001f\n\u001f\f\u001f\u0255\t\u001f\u0001 \u0001 \u0003 \u0259\b \u0001"+ - "!\u0003!\u025c\b!\u0001!\u0003!\u025f\b!\u0001!\u0001!\u0001!\u0003!\u0264"+ - "\b!\u0001!\u0003!\u0267\b!\u0001!\u0003!\u026a\b!\u0001\"\u0001\"\u0001"+ - "\"\u0003\"\u026f\b\"\u0001#\u0003#\u0272\b#\u0001#\u0003#\u0275\b#\u0001"+ - "#\u0001#\u0003#\u0279\b#\u0001$\u0001$\u0001%\u0001%\u0003%\u027f\b%\u0001"+ - "&\u0001&\u0003&\u0283\b&\u0001&\u0001&\u0003&\u0287\b&\u0001&\u0001&\u0003"+ - "&\u028b\b&\u0001\'\u0001\'\u0001\'\u0001\'\u0001\'\u0001\'\u0001\'\u0001"+ - "(\u0001(\u0003(\u0296\b(\u0001(\u0001(\u0001)\u0003)\u029b\b)\u0001)\u0001"+ - ")\u0001)\u0003)\u02a0\b)\u0001)\u0001)\u0001)\u0001)\u0001*\u0003*\u02a7"+ - "\b*\u0001*\u0001*\u0001*\u0003*\u02ac\b*\u0001*\u0001*\u0001*\u0001*\u0001"+ - "*\u0001*\u0003*\u02b4\b*\u0001+\u0003+\u02b7\b+\u0001+\u0003+\u02ba\b"+ - "+\u0001+\u0001+\u0001+\u0003+\u02bf\b+\u0001+\u0003+\u02c2\b+\u0001+\u0001"+ - "+\u0003+\u02c6\b+\u0001,\u0001,\u0001,\u0001-\u0001-\u0001-\u0005-\u02ce"+ - "\b-\n-\f-\u02d1\t-\u0001.\u0003.\u02d4\b.\u0001.\u0001.\u0001.\u0001."+ - "\u0003.\u02da\b.\u0001.\u0001.\u0001/\u0001/\u0003/\u02e0\b/\u00010\u0001"+ - "0\u00010\u00050\u02e5\b0\n0\f0\u02e8\t0\u00011\u00011\u00011\u00031\u02ed"+ - "\b1\u00012\u00032\u02f0\b2\u00012\u00012\u00012\u00012\u00032\u02f6\b"+ - "2\u00012\u00012\u00013\u00013\u00043\u02fc\b3\u000b3\f3\u02fd\u00013\u0005"+ - "3\u0301\b3\n3\f3\u0304\t3\u00014\u00014\u00014\u00014\u00014\u00015\u0004"+ - "5\u030c\b5\u000b5\f5\u030d\u00016\u00016\u00016\u00036\u0313\b6\u0001"+ - "7\u00017\u00017\u00017\u00017\u00017\u00037\u031b\b7\u00017\u00017\u0001"+ - "7\u00057\u0320\b7\n7\f7\u0323\t7\u00018\u00018\u00018\u00019\u00039\u0329"+ - "\b9\u00019\u00019\u0001:\u0003:\u032e\b:\u0001:\u0001:\u0001;\u0001;\u0001"+ - ";\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001"+ - ";\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0001"+ - ";\u0001;\u0001;\u0001;\u0001;\u0001;\u0001;\u0003;\u034f\b;\u0001<\u0001"+ - "<\u0003<\u0353\b<\u0001<\u0001<\u0001=\u0004=\u0358\b=\u000b=\f=\u0359"+ - "\u0001>\u0001>\u0001>\u0001>\u0001>\u0003>\u0361\b>\u0001>\u0001>\u0001"+ - "?\u0001?\u0001?\u0001@\u0003@\u0369\b@\u0001@\u0001@\u0003@\u036d\b@\u0001"+ - "@\u0001@\u0001@\u0001@\u0001@\u0003@\u0374\b@\u0001A\u0001A\u0001A\u0001"+ - "A\u0005A\u037a\bA\nA\fA\u037d\tA\u0001A\u0001A\u0003A\u0381\bA\u0003A"+ - "\u0383\bA\u0001A\u0001A\u0001B\u0001B\u0001B\u0003B\u038a\bB\u0001C\u0001"+ - "C\u0003C\u038e\bC\u0001D\u0001D\u0001E\u0001E\u0001E\u0001F\u0001F\u0003"+ - "F\u0397\bF\u0001F\u0001F\u0003F\u039b\bF\u0001G\u0001G\u0001G\u0001H\u0001"+ - "H\u0001H\u0003H\u03a3\bH\u0001I\u0001I\u0003I\u03a7\bI\u0001I\u0001I\u0003"+ - "I\u03ab\bI\u0001I\u0001I\u0001I\u0001I\u0001I\u0001I\u0001I\u0003I\u03b4"+ - "\bI\u0001J\u0001J\u0001J\u0001J\u0001J\u0001J\u0003J\u03bc\bJ\u0001J\u0001"+ - "J\u0003J\u03c0\bJ\u0001K\u0001K\u0001K\u0001K\u0005K\u03c6\bK\nK\fK\u03c9"+ - "\tK\u0001K\u0001K\u0003K\u03cd\bK\u0003K\u03cf\bK\u0001K\u0001K\u0001"+ - "L\u0001L\u0001L\u0003L\u03d6\bL\u0001M\u0001M\u0001M\u0003M\u03db\bM\u0001"+ - "N\u0001N\u0003N\u03df\bN\u0001N\u0001N\u0003N\u03e3\bN\u0001N\u0003N\u03e6"+ - "\bN\u0001N\u0003N\u03e9\bN\u0001N\u0003N\u03ec\bN\u0001N\u0001N\u0003"+ - "N\u03f0\bN\u0001N\u0001N\u0003N\u03f4\bN\u0001N\u0001N\u0003N\u03f8\b"+ - "N\u0003N\u03fa\bN\u0001O\u0001O\u0001O\u0005O\u03ff\bO\nO\fO\u0402\tO"+ - "\u0001P\u0001P\u0001P\u0003P\u0407\bP\u0001P\u0003P\u040a\bP\u0001P\u0003"+ - "P\u040d\bP\u0001P\u0001P\u0003P\u0411\bP\u0001P\u0003P\u0414\bP\u0001"+ - "Q\u0001Q\u0001R\u0001R\u0001R\u0003R\u041b\bR\u0001S\u0001S\u0001S\u0001"+ - "S\u0001S\u0001S\u0001S\u0003S\u0424\bS\u0001T\u0001T\u0001T\u0001T\u0001"+ - "T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001"+ - "T\u0001T\u0001T\u0003T\u0437\bT\u0001T\u0001T\u0003T\u043b\bT\u0001T\u0001"+ - "T\u0003T\u043f\bT\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001"+ - "T\u0003T\u0449\bT\u0001T\u0001T\u0003T\u044d\bT\u0001T\u0001T\u0001T\u0001"+ - "T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001"+ - "T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0003T\u0465"+ - "\bT\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0001T\u0003T\u046e\bT\u0001"+ - "T\u0001T\u0001T\u0001T\u0001T\u0003T\u0475\bT\u0001T\u0001T\u0001T\u0001"+ - "T\u0001T\u0001T\u0001T\u0001T\u0003T\u047f\bT\u0001T\u0001T\u0001T\u0003"+ - "T\u0484\bT\u0001U\u0001U\u0001V\u0001V\u0001V\u0003V\u048b\bV\u0001V\u0001"+ - "V\u0001W\u0001W\u0001W\u0003W\u0492\bW\u0001W\u0001W\u0001X\u0001X\u0001"+ - "X\u0003X\u0499\bX\u0001X\u0001X\u0001Y\u0001Y\u0001Y\u0003Y\u04a0\bY\u0001"+ - "Y\u0001Y\u0001Z\u0001Z\u0001Z\u0001Z\u0001Z\u0001Z\u0001[\u0001[\u0001"+ - "[\u0001[\u0001[\u0001[\u0001\\\u0001\\\u0003\\\u04b2\b\\\u0001\\\u0001"+ - "\\\u0003\\\u04b6\b\\\u0003\\\u04b8\b\\\u0001\\\u0001\\\u0001]\u0004]\u04bd"+ - "\b]\u000b]\f]\u04be\u0001^\u0001^\u0001^\u0001^\u0003^\u04c5\b^\u0001"+ - "_\u0001_\u0001_\u0003_\u04ca\b_\u0001`\u0001`\u0001`\u0001`\u0001a\u0001"+ - "a\u0001a\u0001a\u0001a\u0001b\u0001b\u0001b\u0001b\u0003b\u04d9\bb\u0001"+ - "b\u0003b\u04dc\bb\u0001c\u0001c\u0001c\u0001c\u0003c\u04e2\bc\u0001c\u0001"+ - "c\u0003c\u04e6\bc\u0001c\u0001c\u0001d\u0001d\u0001d\u0001e\u0001e\u0001"+ - "e\u0001f\u0003f\u04f1\bf\u0001f\u0001f\u0003f\u04f5\bf\u0001f\u0001f\u0001"+ - "f\u0001f\u0001f\u0001f\u0001f\u0003f\u04fe\bf\u0001g\u0003g\u0501\bg\u0001"+ - "g\u0001g\u0003g\u0505\bg\u0003g\u0507\bg\u0001g\u0003g\u050a\bg\u0001"+ - "g\u0001g\u0001g\u0003g\u050f\bg\u0001g\u0001g\u0001g\u0001h\u0003h\u0515"+ - "\bh\u0001h\u0003h\u0518\bh\u0001i\u0001i\u0005i\u051c\bi\ni\fi\u051f\t"+ - "i\u0001i\u0001i\u0001j\u0001j\u0001j\u0001k\u0001k\u0001k\u0001l\u0001"+ - "l\u0003l\u052b\bl\u0001l\u0001l\u0001l\u0003l\u0530\bl\u0001m\u0001m\u0001"+ - "m\u0003m\u0535\bm\u0001m\u0003m\u0538\bm\u0001m\u0003m\u053b\bm\u0001"+ - "m\u0001m\u0001m\u0001m\u0001m\u0001m\u0001m\u0001m\u0001m\u0001m\u0003"+ - "m\u0547\bm\u0001m\u0001m\u0001m\u0003m\u054c\bm\u0001m\u0003m\u054f\b"+ - "m\u0001n\u0003n\u0552\bn\u0001n\u0003n\u0555\bn\u0001n\u0003n\u0558\b"+ - "n\u0001n\u0003n\u055b\bn\u0001o\u0001o\u0001o\u0001p\u0001p\u0003p\u0562"+ - "\bp\u0001p\u0003p\u0565\bp\u0001p\u0001p\u0001p\u0003p\u056a\bp\u0001"+ - "p\u0001p\u0001p\u0001p\u0001p\u0001q\u0003q\u0572\bq\u0001q\u0001q\u0001"+ - "q\u0003q\u0577\bq\u0001q\u0001q\u0003q\u057b\bq\u0001q\u0001q\u0001q\u0001"+ - "q\u0001q\u0001r\u0001r\u0001r\u0001r\u0005r\u0586\br\nr\fr\u0589\tr\u0001"+ - "r\u0003r\u058c\br\u0001r\u0001r\u0001s\u0001s\u0001s\u0001t\u0001t\u0001"+ - "t\u0001t\u0005t\u0597\bt\nt\ft\u059a\tt\u0001t\u0003t\u059d\bt\u0001t"+ - "\u0001t\u0001u\u0001u\u0001u\u0001u\u0001u\u0003u\u05a6\bu\u0001u\u0001"+ - "u\u0001u\u0001u\u0001u\u0001v\u0001v\u0003v\u05af\bv\u0001w\u0001w\u0001"+ - "w\u0001x\u0001x\u0001x\u0005x\u05b7\bx\nx\fx\u05ba\tx\u0001x\u0001x\u0003"+ - "x\u05be\bx\u0001x\u0003x\u05c1\bx\u0001x\u0001x\u0001x\u0001x\u0001x\u0003"+ - "x\u05c8\bx\u0003x\u05ca\bx\u0001y\u0003y\u05cd\by\u0001y\u0003y\u05d0"+ - "\by\u0001y\u0001y\u0003y\u05d4\by\u0001y\u0003y\u05d7\by\u0001y\u0001"+ - "y\u0003y\u05db\by\u0001z\u0001z\u0001z\u0003z\u05e0\bz\u0001{\u0003{\u05e3"+ - "\b{\u0001|\u0004|\u05e6\b|\u000b|\f|\u05e7\u0001}\u0001}\u0001}\u0001"+ - "}\u0001~\u0005~\u05ef\b~\n~\f~\u05f2\t~\u0001~\u0003~\u05f5\b~\u0001~"+ - "\u0004~\u05f8\b~\u000b~\f~\u05f9\u0001~\u0005~\u05fd\b~\n~\f~\u0600\t"+ - "~\u0001~\u0005~\u0603\b~\n~\f~\u0606\t~\u0001\u007f\u0003\u007f\u0609"+ - "\b\u007f\u0001\u007f\u0001\u007f\u0003\u007f\u060d\b\u007f\u0001\u007f"+ - "\u0003\u007f\u0610\b\u007f\u0001\u0080\u0001\u0080\u0001\u0080\u0001\u0080"+ - "\u0005\u0080\u0616\b\u0080\n\u0080\f\u0080\u0619\t\u0080\u0001\u0080\u0003"+ - "\u0080\u061c\b\u0080\u0003\u0080\u061e\b\u0080\u0001\u0080\u0001\u0080"+ - "\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081"+ - "\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081\u0001\u0081"+ - "\u0001\u0081\u0001\u0081\u0001\u0081\u0003\u0081\u0631\b\u0081\u0001\u0081"+ - "\u0001\u0081\u0003\u0081\u0635\b\u0081\u0001\u0082\u0001\u0082\u0001\u0082"+ - "\u0001\u0082\u0003\u0082\u063b\b\u0082\u0001\u0082\u0001\u0082\u0001\u0082"+ - "\u0001\u0082\u0001\u0083\u0001\u0083\u0001\u0083\u0003\u0083\u0644\b\u0083"+ - "\u0001\u0083\u0001\u0083\u0001\u0083\u0001\u0083\u0001\u0083\u0001\u0084"+ - "\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084\u0001\u0084"+ - "\u0003\u0084\u0652\b\u0084\u0001\u0085\u0001\u0085\u0001\u0085\u0003\u0085"+ - "\u0657\b\u0085\u0003\u0085\u0659\b\u0085\u0001\u0085\u0001\u0085\u0001"+ - "\u0086\u0001\u0086\u0001\u0086\u0005\u0086\u0660\b\u0086\n\u0086\f\u0086"+ - "\u0663\t\u0086\u0001\u0087\u0003\u0087\u0666\b\u0087\u0001\u0087\u0001"+ - "\u0087\u0003\u0087\u066a\b\u0087\u0001\u0088\u0001\u0088\u0001\u0088\u0005"+ - "\u0088\u066f\b\u0088\n\u0088\f\u0088\u0672\t\u0088\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0003\u0089\u0678\b\u0089\u0001\u0089\u0003\u0089"+ - "\u067b\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0003\u0089\u0683\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0003\u0089\u068a\b\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0003\u0089\u06a7\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0003\u0089\u06b3\b\u0089\u0003\u0089\u06b5\b\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0003\u0089\u06cd\b\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0003\u0089\u06fa\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001"+ - "\u0089\u0001\u0089\u0001\u0089\u0003\u0089\u0702\b\u0089\u0001\u0089\u0001"+ - "\u0089\u0003\u0089\u0706\b\u0089\u0001\u0089\u0001\u0089\u0003\u0089\u070a"+ - "\b\u0089\u0001\u0089\u0001\u0089\u0003\u0089\u070e\b\u0089\u0001\u0089"+ - "\u0001\u0089\u0003\u0089\u0712\b\u0089\u0001\u0089\u0001\u0089\u0003\u0089"+ - "\u0716\b\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089"+ - "\u0001\u0089\u0001\u0089\u0001\u0089\u0001\u0089\u0005\u0089\u0727\b\u0089"+ - "\n\u0089\f\u0089\u072a\t\u0089\u0001\u008a\u0001\u008a\u0001\u008a\u0003"+ - "\u008a\u072f\b\u008a\u0001\u008a\u0003\u008a\u0732\b\u008a\u0001\u008b"+ - "\u0001\u008b\u0001\u008b\u0001\u008b\u0003\u008b\u0738\b\u008b\u0001\u008c"+ - "\u0001\u008c\u0003\u008c\u073c\b\u008c\u0001\u008c\u0001\u008c\u0003\u008c"+ - "\u0740\b\u008c\u0001\u008c\u0001\u008c\u0003\u008c\u0744\b\u008c\u0001"+ - "\u008c\u0001\u008c\u0003\u008c\u0748\b\u008c\u0001\u008c\u0001\u008c\u0001"+ - "\u008c\u0001\u008c\u0001\u008c\u0003\u008c\u074f\b\u008c\u0001\u008d\u0003"+ - "\u008d\u0752\b\u008d\u0001\u008d\u0001\u008d\u0003\u008d\u0756\b\u008d"+ - "\u0001\u008d\u0001\u008d\u0001\u008d\u0001\u008e\u0001\u008e\u0001\u008e"+ - "\u0003\u008e\u075e\b\u008e\u0001\u008e\u0003\u008e\u0761\b\u008e\u0001"+ - "\u008f\u0001\u008f\u0001\u008f\u0001\u008f\u0001\u008f\u0003\u008f\u0768"+ - "\b\u008f\u0001\u0090\u0001\u0090\u0001\u0091\u0001\u0091\u0001\u0091\u0001"+ - "\u0091\u0001\u0091\u0001\u0091\u0001\u0091\u0003\u0091\u0773\b\u0091\u0001"+ - "\u0092\u0001\u0092\u0005\u0092\u0777\b\u0092\n\u0092\f\u0092\u077a\t\u0092"+ - "\u0001\u0092\u0001\u0092\u0001\u0093\u0001\u0093\u0001\u0093\u0001\u0093"+ - "\u0001\u0093\u0001\u0093\u0003\u0093\u0784\b\u0093\u0001\u0094\u0001\u0094"+ - "\u0001\u0095\u0001\u0095\u0001\u0096\u0001\u0096\u0001\u0096\u0001\u0096"+ - "\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0097\u0001\u0098\u0001\u0098"+ - "\u0003\u0098\u0794\b\u0098\u0001\u0099\u0001\u0099\u0001\u009a\u0001\u009a"+ - "\u0001\u009a\u0003\u009a\u079b\b\u009a\u0001\u009b\u0001\u009b\u0001\u009b"+ - "\u0003\u009b\u07a0\b\u009b\u0001\u009c\u0001\u009c\u0001\u009d\u0001\u009d"+ - "\u0001\u009d\u0001\u009d\u0003\u009d\u07a8\b\u009d\u0001\u009d\u0000\u0004"+ - "\u0014\u0016n\u0112\u009e\u0000\u0002\u0004\u0006\b\n\f\u000e\u0010\u0012"+ - "\u0014\u0016\u0018\u001a\u001c\u001e \"$&(*,.02468:<>@BDFHJLNPRTVXZ\\"+ - "^`bdfhjlnprtvxz|~\u0080\u0082\u0084\u0086\u0088\u008a\u008c\u008e\u0090"+ - "\u0092\u0094\u0096\u0098\u009a\u009c\u009e\u00a0\u00a2\u00a4\u00a6\u00a8"+ - "\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6\u00b8\u00ba\u00bc\u00be\u00c0"+ - "\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc\u00ce\u00d0\u00d2\u00d4\u00d6\u00d8"+ - "\u00da\u00dc\u00de\u00e0\u00e2\u00e4\u00e6\u00e8\u00ea\u00ec\u00ee\u00f0"+ - "\u00f2\u00f4\u00f6\u00f8\u00fa\u00fc\u00fe\u0100\u0102\u0104\u0106\u0108"+ - "\u010a\u010c\u010e\u0110\u0112\u0114\u0116\u0118\u011a\u011c\u011e\u0120"+ - "\u0122\u0124\u0126\u0128\u012a\u012c\u012e\u0130\u0132\u0134\u0136\u0138"+ - "\u013a\u0000\u0011\u0002\u0000((**\u0001\u0000\u000b\f\u0002\u0000pqt"+ - "t\u0002\u0000wwzz\u0002\u0000de\u008a\u008a\u0003\u0000MMkkoo\u0001\u0000"+ - "ef\u0002\u0000\r\r\u0010\u0010\u0001\u0000\u0019\u001b\u0001\u0000\u0015"+ - "\u0016\u0001\u0000 #\u0001\u0000$\'\u0001\u0000-9\u0001\u0000=A\u0001"+ - "\u0000BE\u0006\u0000`acceev\u0083\u0087\u0087\u008a\u008a\u0006\u0000"+ - "Feguwwyz\u0081\u0081\u0084\u0085\u0896\u0000\u013c\u0001\u0000\u0000\u0000"+ - "\u0002\u0141\u0001\u0000\u0000\u0000\u0004\u0143\u0001\u0000\u0000\u0000"+ - "\u0006\u0149\u0001\u0000\u0000\u0000\b\u015a\u0001\u0000\u0000\u0000\n"+ - "\u015c\u0001\u0000\u0000\u0000\f\u015f\u0001\u0000\u0000\u0000\u000e\u0165"+ - "\u0001\u0000\u0000\u0000\u0010\u016d\u0001\u0000\u0000\u0000\u0012\u0176"+ - "\u0001\u0000\u0000\u0000\u0014\u0178\u0001\u0000\u0000\u0000\u0016\u019a"+ - "\u0001\u0000\u0000\u0000\u0018\u01b8\u0001\u0000\u0000\u0000\u001a\u01ba"+ - "\u0001\u0000\u0000\u0000\u001c\u01be\u0001\u0000\u0000\u0000\u001e\u01c7"+ - "\u0001\u0000\u0000\u0000 \u01c9\u0001\u0000\u0000\u0000\"\u01cf\u0001"+ - "\u0000\u0000\u0000$\u01d3\u0001\u0000\u0000\u0000&\u01e4\u0001\u0000\u0000"+ - "\u0000(\u01e6\u0001\u0000\u0000\u0000*\u01eb\u0001\u0000\u0000\u0000,"+ - "\u01ef\u0001\u0000\u0000\u0000.\u01fb\u0001\u0000\u0000\u00000\u0205\u0001"+ - "\u0000\u0000\u00002\u0211\u0001\u0000\u0000\u00004\u021e\u0001\u0000\u0000"+ - "\u00006\u0221\u0001\u0000\u0000\u00008\u022e\u0001\u0000\u0000\u0000:"+ - "\u0232\u0001\u0000\u0000\u0000<\u024c\u0001\u0000\u0000\u0000>\u024e\u0001"+ - "\u0000\u0000\u0000@\u0258\u0001\u0000\u0000\u0000B\u025b\u0001\u0000\u0000"+ - "\u0000D\u026b\u0001\u0000\u0000\u0000F\u0271\u0001\u0000\u0000\u0000H"+ - "\u027a\u0001\u0000\u0000\u0000J\u027e\u0001\u0000\u0000\u0000L\u0280\u0001"+ - "\u0000\u0000\u0000N\u028c\u0001\u0000\u0000\u0000P\u0293\u0001\u0000\u0000"+ - "\u0000R\u029a\u0001\u0000\u0000\u0000T\u02a6\u0001\u0000\u0000\u0000V"+ - "\u02b6\u0001\u0000\u0000\u0000X\u02c7\u0001\u0000\u0000\u0000Z\u02ca\u0001"+ - "\u0000\u0000\u0000\\\u02d3\u0001\u0000\u0000\u0000^\u02dd\u0001\u0000"+ - "\u0000\u0000`\u02e1\u0001\u0000\u0000\u0000b\u02e9\u0001\u0000\u0000\u0000"+ - "d\u02ef\u0001\u0000\u0000\u0000f\u02f9\u0001\u0000\u0000\u0000h\u0305"+ - "\u0001\u0000\u0000\u0000j\u030b\u0001\u0000\u0000\u0000l\u030f\u0001\u0000"+ - "\u0000\u0000n\u031a\u0001\u0000\u0000\u0000p\u0324\u0001\u0000\u0000\u0000"+ - "r\u0328\u0001\u0000\u0000\u0000t\u032d\u0001\u0000\u0000\u0000v\u034e"+ - "\u0001\u0000\u0000\u0000x\u0350\u0001\u0000\u0000\u0000z\u0357\u0001\u0000"+ - "\u0000\u0000|\u035b\u0001\u0000\u0000\u0000~\u0364\u0001\u0000\u0000\u0000"+ - "\u0080\u0373\u0001\u0000\u0000\u0000\u0082\u0375\u0001\u0000\u0000\u0000"+ - "\u0084\u0386\u0001\u0000\u0000\u0000\u0086\u038d\u0001\u0000\u0000\u0000"+ - "\u0088\u038f\u0001\u0000\u0000\u0000\u008a\u0391\u0001\u0000\u0000\u0000"+ - "\u008c\u0396\u0001\u0000\u0000\u0000\u008e\u039c\u0001\u0000\u0000\u0000"+ - "\u0090\u039f\u0001\u0000\u0000\u0000\u0092\u03b3\u0001\u0000\u0000\u0000"+ - "\u0094\u03bf\u0001\u0000\u0000\u0000\u0096\u03c1\u0001\u0000\u0000\u0000"+ - "\u0098\u03d2\u0001\u0000\u0000\u0000\u009a\u03da\u0001\u0000\u0000\u0000"+ - "\u009c\u03f9\u0001\u0000\u0000\u0000\u009e\u03fb\u0001\u0000\u0000\u0000"+ - "\u00a0\u0406\u0001\u0000\u0000\u0000\u00a2\u0415\u0001\u0000\u0000\u0000"+ - "\u00a4\u0417\u0001\u0000\u0000\u0000\u00a6\u041c\u0001\u0000\u0000\u0000"+ - "\u00a8\u0483\u0001\u0000\u0000\u0000\u00aa\u0485\u0001\u0000\u0000\u0000"+ - "\u00ac\u0487\u0001\u0000\u0000\u0000\u00ae\u048e\u0001\u0000\u0000\u0000"+ - "\u00b0\u0495\u0001\u0000\u0000\u0000\u00b2\u049c\u0001\u0000\u0000\u0000"+ - "\u00b4\u04a3\u0001\u0000\u0000\u0000\u00b6\u04a9\u0001\u0000\u0000\u0000"+ - "\u00b8\u04af\u0001\u0000\u0000\u0000\u00ba\u04bc\u0001\u0000\u0000\u0000"+ - "\u00bc\u04c0\u0001\u0000\u0000\u0000\u00be\u04c6\u0001\u0000\u0000\u0000"+ - "\u00c0\u04cb\u0001\u0000\u0000\u0000\u00c2\u04cf\u0001\u0000\u0000\u0000"+ - "\u00c4\u04d4\u0001\u0000\u0000\u0000\u00c6\u04dd\u0001\u0000\u0000\u0000"+ - "\u00c8\u04e9\u0001\u0000\u0000\u0000\u00ca\u04ec\u0001\u0000\u0000\u0000"+ - "\u00cc\u04f0\u0001\u0000\u0000\u0000\u00ce\u0500\u0001\u0000\u0000\u0000"+ - "\u00d0\u0514\u0001\u0000\u0000\u0000\u00d2\u0519\u0001\u0000\u0000\u0000"+ - "\u00d4\u0522\u0001\u0000\u0000\u0000\u00d6\u0525\u0001\u0000\u0000\u0000"+ - "\u00d8\u052f\u0001\u0000\u0000\u0000\u00da\u054e\u0001\u0000\u0000\u0000"+ - "\u00dc\u0551\u0001\u0000\u0000\u0000\u00de\u055c\u0001\u0000\u0000\u0000"+ - "\u00e0\u0561\u0001\u0000\u0000\u0000\u00e2\u0571\u0001\u0000\u0000\u0000"+ - "\u00e4\u0581\u0001\u0000\u0000\u0000\u00e6\u058f\u0001\u0000\u0000\u0000"+ - "\u00e8\u0592\u0001\u0000\u0000\u0000\u00ea\u05a0\u0001\u0000\u0000\u0000"+ - "\u00ec\u05ae\u0001\u0000\u0000\u0000\u00ee\u05b0\u0001\u0000\u0000\u0000"+ - "\u00f0\u05c9\u0001\u0000\u0000\u0000\u00f2\u05cc\u0001\u0000\u0000\u0000"+ - "\u00f4\u05dc\u0001\u0000\u0000\u0000\u00f6\u05e2\u0001\u0000\u0000\u0000"+ - "\u00f8\u05e5\u0001\u0000\u0000\u0000\u00fa\u05e9\u0001\u0000\u0000\u0000"+ - "\u00fc\u05f0\u0001\u0000\u0000\u0000\u00fe\u0608\u0001\u0000\u0000\u0000"+ - "\u0100\u0611\u0001\u0000\u0000\u0000\u0102\u0634\u0001\u0000\u0000\u0000"+ - "\u0104\u0636\u0001\u0000\u0000\u0000\u0106\u0640\u0001\u0000\u0000\u0000"+ - "\u0108\u0651\u0001\u0000\u0000\u0000\u010a\u0653\u0001\u0000\u0000\u0000"+ - "\u010c\u065c\u0001\u0000\u0000\u0000\u010e\u0665\u0001\u0000\u0000\u0000"+ - "\u0110\u066b\u0001\u0000\u0000\u0000\u0112\u06b4\u0001\u0000\u0000\u0000"+ - "\u0114\u0731\u0001\u0000\u0000\u0000\u0116\u0737\u0001\u0000\u0000\u0000"+ - "\u0118\u074e\u0001\u0000\u0000\u0000\u011a\u0751\u0001\u0000\u0000\u0000"+ - "\u011c\u0760\u0001\u0000\u0000\u0000\u011e\u0767\u0001\u0000\u0000\u0000"+ - "\u0120\u0769\u0001\u0000\u0000\u0000\u0122\u0772\u0001\u0000\u0000\u0000"+ - "\u0124\u0774\u0001\u0000\u0000\u0000\u0126\u0783\u0001\u0000\u0000\u0000"+ - "\u0128\u0785\u0001\u0000\u0000\u0000\u012a\u0787\u0001\u0000\u0000\u0000"+ - "\u012c\u0789\u0001\u0000\u0000\u0000\u012e\u078d\u0001\u0000\u0000\u0000"+ - "\u0130\u0793\u0001\u0000\u0000\u0000\u0132\u0795\u0001\u0000\u0000\u0000"+ - "\u0134\u079a\u0001\u0000\u0000\u0000\u0136\u079f\u0001\u0000\u0000\u0000"+ - "\u0138\u07a1\u0001\u0000\u0000\u0000\u013a\u07a7\u0001\u0000\u0000\u0000"+ - "\u013c\u013d\u0005\r\u0000\u0000\u013d\u013e\u0003\u0112\u0089\u0000\u013e"+ - "\u0001\u0001\u0000\u0000\u0000\u013f\u0142\u0003\u00fa}\u0000\u0140\u0142"+ - "\u0003\u0100\u0080\u0000\u0141\u013f\u0001\u0000\u0000\u0000\u0141\u0140"+ - "\u0001\u0000\u0000\u0000\u0142\u0003\u0001\u0000\u0000\u0000\u0143\u0145"+ - "\u0005 \u0000\u0000\u0144\u0146\u0003\u0006\u0003\u0000\u0145\u0144\u0001"+ - "\u0000\u0000\u0000\u0145\u0146\u0001\u0000\u0000\u0000\u0146\u0147\u0001"+ - "\u0000\u0000\u0000\u0147\u0148\u0005!\u0000\u0000\u0148\u0005\u0001\u0000"+ - "\u0000\u0000\u0149\u014e\u0003\b\u0004\u0000\u014a\u014b\u0005\f\u0000"+ - "\u0000\u014b\u014d\u0003\b\u0004\u0000\u014c\u014a\u0001\u0000\u0000\u0000"+ - "\u014d\u0150\u0001\u0000\u0000\u0000\u014e\u014c\u0001\u0000\u0000\u0000"+ - "\u014e\u014f\u0001\u0000\u0000\u0000\u014f\u0007\u0001\u0000\u0000\u0000"+ - "\u0150\u014e\u0001\u0000\u0000\u0000\u0151\u0153\u0003\u0132\u0099\u0000"+ - "\u0152\u0154\u0003\n\u0005\u0000\u0153\u0152\u0001\u0000\u0000\u0000\u0153"+ - "\u0154\u0001\u0000\u0000\u0000\u0154\u015b\u0001\u0000\u0000\u0000\u0155"+ - "\u0156\u0003\u0132\u0099\u0000\u0156\u0157\u0005\r\u0000\u0000\u0157\u0158"+ - "\u0003\u0010\b\u0000\u0158\u015b\u0001\u0000\u0000\u0000\u0159\u015b\u0003"+ - "\u0004\u0002\u0000\u015a\u0151\u0001\u0000\u0000\u0000\u015a\u0155\u0001"+ - "\u0000\u0000\u0000\u015a\u0159\u0001\u0000\u0000\u0000\u015b\t\u0001\u0000"+ - "\u0000\u0000\u015c\u015d\u0005i\u0000\u0000\u015d\u015e\u0003\u0012\t"+ - "\u0000\u015e\u000b\u0001\u0000\u0000\u0000\u015f\u0161\u0005 \u0000\u0000"+ - "\u0160\u0162\u0003\u000e\u0007\u0000\u0161\u0160\u0001\u0000\u0000\u0000"+ - "\u0161\u0162\u0001\u0000\u0000\u0000\u0162\u0163\u0001\u0000\u0000\u0000"+ - "\u0163\u0164\u0005!\u0000\u0000\u0164\r\u0001\u0000\u0000\u0000\u0165"+ - "\u016a\u0003\u0010\b\u0000\u0166\u0167\u0005\f\u0000\u0000\u0167\u0169"+ - "\u0003\u0010\b\u0000\u0168\u0166\u0001\u0000\u0000\u0000\u0169\u016c\u0001"+ - "\u0000\u0000\u0000\u016a\u0168\u0001\u0000\u0000\u0000\u016a\u016b\u0001"+ - "\u0000\u0000\u0000\u016b\u000f\u0001\u0000\u0000\u0000\u016c\u016a\u0001"+ - "\u0000\u0000\u0000\u016d\u016e\u0003\u0012\t\u0000\u016e\u0011\u0001\u0000"+ - "\u0000\u0000\u016f\u0171\u0007\u0000\u0000\u0000\u0170\u016f\u0001\u0000"+ - "\u0000\u0000\u0170\u0171\u0001\u0000\u0000\u0000\u0171\u0172\u0001\u0000"+ - "\u0000\u0000\u0172\u0177\u0003\u0014\n\u0000\u0173\u0177\u0003.\u0017"+ - "\u0000\u0174\u0177\u00030\u0018\u0000\u0175\u0177\u0003\u001c\u000e\u0000"+ - "\u0176\u0170\u0001\u0000\u0000\u0000\u0176\u0173\u0001\u0000\u0000\u0000"+ - "\u0176\u0174\u0001\u0000\u0000\u0000\u0176\u0175\u0001\u0000\u0000\u0000"+ - "\u0177\u0013\u0001\u0000\u0000\u0000\u0178\u0179\u0006\n\uffff\uffff\u0000"+ - "\u0179\u017a\u0003\u0016\u000b\u0000\u017a\u0183\u0001\u0000\u0000\u0000"+ - "\u017b\u017c\n\u0003\u0000\u0000\u017c\u017d\u0005*\u0000\u0000\u017d"+ - "\u0182\u0003\u0014\n\u0004\u017e\u017f\n\u0002\u0000\u0000\u017f\u0180"+ - "\u0005(\u0000\u0000\u0180\u0182\u0003\u0014\n\u0003\u0181\u017b\u0001"+ - "\u0000\u0000\u0000\u0181\u017e\u0001\u0000\u0000\u0000\u0182\u0185\u0001"+ - "\u0000\u0000\u0000\u0183\u0181\u0001\u0000\u0000\u0000\u0183\u0184\u0001"+ - "\u0000\u0000\u0000\u0184\u0015\u0001\u0000\u0000\u0000\u0185\u0183\u0001"+ - "\u0000\u0000\u0000\u0186\u0187\u0006\u000b\uffff\uffff\u0000\u0187\u0188"+ - "\u0005\u0006\u0000\u0000\u0188\u0189\u0003\u0012\t\u0000\u0189\u018a\u0005"+ - "\u0007\u0000\u0000\u018a\u019b\u0001\u0000\u0000\u0000\u018b\u019b\u0003"+ - "\u0018\f\u0000\u018c\u019b\u0003\u001a\r\u0000\u018d\u019b\u0003 \u0010"+ - "\u0000\u018e\u018f\u0005\u0004\u0000\u0000\u018f\u0190\u0003,\u0016\u0000"+ - "\u0190\u0191\u0005\u0005\u0000\u0000\u0191\u019b\u0001\u0000\u0000\u0000"+ - "\u0192\u019b\u00032\u0019\u0000\u0193\u019b\u0005X\u0000\u0000\u0194\u0195"+ - "\u0003\u001a\r\u0000\u0195\u0196\u0005\u0088\u0000\u0000\u0196\u0197\u0003"+ - "\u0016\u000b\u0002\u0197\u019b\u0001\u0000\u0000\u0000\u0198\u0199\u0005"+ - "\u0080\u0000\u0000\u0199\u019b\u0003\u0016\u000b\u0001\u019a\u0186\u0001"+ - "\u0000\u0000\u0000\u019a\u018b\u0001\u0000\u0000\u0000\u019a\u018c\u0001"+ - "\u0000\u0000\u0000\u019a\u018d\u0001\u0000\u0000\u0000\u019a\u018e\u0001"+ - "\u0000\u0000\u0000\u019a\u0192\u0001\u0000\u0000\u0000\u019a\u0193\u0001"+ - "\u0000\u0000\u0000\u019a\u0194\u0001\u0000\u0000\u0000\u019a\u0198\u0001"+ - "\u0000\u0000\u0000\u019b\u01a5\u0001\u0000\u0000\u0000\u019c\u019d\n\u0006"+ - "\u0000\u0000\u019d\u019e\u0004\u000b\u0003\u0000\u019e\u01a0\u0005\u0004"+ - "\u0000\u0000\u019f\u01a1\u0003\u0016\u000b\u0000\u01a0\u019f\u0001\u0000"+ - "\u0000\u0000\u01a0\u01a1\u0001\u0000\u0000\u0000\u01a1\u01a2\u0001\u0000"+ - "\u0000\u0000\u01a2\u01a4\u0005\u0005\u0000\u0000\u01a3\u019c\u0001\u0000"+ - "\u0000\u0000\u01a4\u01a7\u0001\u0000\u0000\u0000\u01a5\u01a3\u0001\u0000"+ - "\u0000\u0000\u01a5\u01a6\u0001\u0000\u0000\u0000\u01a6\u0017\u0001\u0000"+ - "\u0000\u0000\u01a7\u01a5\u0001\u0000\u0000\u0000\u01a8\u01b9\u0005v\u0000"+ - "\u0000\u01a9\u01b9\u0005;\u0000\u0000\u01aa\u01b9\u0005w\u0000\u0000\u01ab"+ - "\u01b9\u0005=\u0000\u0000\u01ac\u01b9\u0005y\u0000\u0000\u01ad\u01b9\u0005"+ - "<\u0000\u0000\u01ae\u01b9\u0005z\u0000\u0000\u01af\u01b9\u0005\u008b\u0000"+ - "\u0000\u01b0\u01b2\u0005{\u0000\u0000\u01b1\u01b0\u0001\u0000\u0000\u0000"+ - "\u01b1\u01b2\u0001\u0000\u0000\u0000\u01b2\u01b3\u0001\u0000\u0000\u0000"+ - "\u01b3\u01b9\u0005|\u0000\u0000\u01b4\u01b9\u0005x\u0000\u0000\u01b5\u01b9"+ - "\u0005}\u0000\u0000\u01b6\u01b9\u0005~\u0000\u0000\u01b7\u01b9\u0005Q"+ - "\u0000\u0000\u01b8\u01a8\u0001\u0000\u0000\u0000\u01b8\u01a9\u0001\u0000"+ - "\u0000\u0000\u01b8\u01aa\u0001\u0000\u0000\u0000\u01b8\u01ab\u0001\u0000"+ - "\u0000\u0000\u01b8\u01ac\u0001\u0000\u0000\u0000\u01b8\u01ad\u0001\u0000"+ - "\u0000\u0000\u01b8\u01ae\u0001\u0000\u0000\u0000\u01b8\u01af\u0001\u0000"+ - "\u0000\u0000\u01b8\u01b1\u0001\u0000\u0000\u0000\u01b8\u01b4\u0001\u0000"+ - "\u0000\u0000\u01b8\u01b5\u0001\u0000\u0000\u0000\u01b8\u01b6\u0001\u0000"+ - "\u0000\u0000\u01b8\u01b7\u0001\u0000\u0000\u0000\u01b9\u0019\u0001\u0000"+ - "\u0000\u0000\u01ba\u01bc\u0003\u001e\u000f\u0000\u01bb\u01bd\u0003\u001c"+ - "\u000e\u0000\u01bc\u01bb\u0001\u0000\u0000\u0000\u01bc\u01bd\u0001\u0000"+ - "\u0000\u0000\u01bd\u001b\u0001\u0000\u0000\u0000\u01be\u01bf\u0005 \u0000"+ - "\u0000\u01bf\u01c1\u0003\u000e\u0007\u0000\u01c0\u01c2\u0003\u001c\u000e"+ - "\u0000\u01c1\u01c0\u0001\u0000\u0000\u0000\u01c1\u01c2\u0001\u0000\u0000"+ - "\u0000\u01c2\u01c3\u0001\u0000\u0000\u0000\u01c3\u01c4\u0005!\u0000\u0000"+ - "\u01c4\u001d\u0001\u0000\u0000\u0000\u01c5\u01c8\u0003\u0132\u0099\u0000"+ - "\u01c6\u01c8\u0003f3\u0000\u01c7\u01c5\u0001\u0000\u0000\u0000\u01c7\u01c6"+ - "\u0001\u0000\u0000\u0000\u01c8\u001f\u0001\u0000\u0000\u0000\u01c9\u01cb"+ - "\u0005\b\u0000\u0000\u01ca\u01cc\u0003\"\u0011\u0000\u01cb\u01ca\u0001"+ - "\u0000\u0000\u0000\u01cb\u01cc\u0001\u0000\u0000\u0000\u01cc\u01cd\u0001"+ - "\u0000\u0000\u0000\u01cd\u01ce\u0005\n\u0000\u0000\u01ce!\u0001\u0000"+ - "\u0000\u0000\u01cf\u01d1\u0003$\u0012\u0000\u01d0\u01d2\u0007\u0001\u0000"+ - "\u0000\u01d1\u01d0\u0001\u0000\u0000\u0000\u01d1\u01d2\u0001\u0000\u0000"+ - "\u0000\u01d2#\u0001\u0000\u0000\u0000\u01d3\u01d8\u0003&\u0013\u0000\u01d4"+ - "\u01d5\u0007\u0001\u0000\u0000\u01d5\u01d7\u0003&\u0013\u0000\u01d6\u01d4"+ - "\u0001\u0000\u0000\u0000\u01d7\u01da\u0001\u0000\u0000\u0000\u01d8\u01d6"+ - "\u0001\u0000\u0000\u0000\u01d8\u01d9\u0001\u0000\u0000\u0000\u01d9%\u0001"+ - "\u0000\u0000\u0000\u01da\u01d8\u0001\u0000\u0000\u0000\u01db\u01e5\u0003"+ - "6\u001b\u0000\u01dc\u01e5\u0003:\u001d\u0000\u01dd\u01e5\u0003L&\u0000"+ - "\u01de\u01e5\u0003N\'\u0000\u01df\u01e2\u0003P(\u0000\u01e0\u01e1\u0005"+ - ":\u0000\u0000\u01e1\u01e3\u0003\u0012\t\u0000\u01e2\u01e0\u0001\u0000"+ - "\u0000\u0000\u01e2\u01e3\u0001\u0000\u0000\u0000\u01e3\u01e5\u0001\u0000"+ - "\u0000\u0000\u01e4\u01db\u0001\u0000\u0000\u0000\u01e4\u01dc\u0001\u0000"+ - "\u0000\u0000\u01e4\u01dd\u0001\u0000\u0000\u0000\u01e4\u01de\u0001\u0000"+ - "\u0000\u0000\u01e4\u01df\u0001\u0000\u0000\u0000\u01e5\'\u0001\u0000\u0000"+ - "\u0000\u01e6\u01e7\u0003\u0016\u000b\u0000\u01e7\u01e8\u0004\u0014\u0004"+ - "\u0000\u01e8\u01e9\u0005\u0004\u0000\u0000\u01e9\u01ea\u0005\u0005\u0000"+ - "\u0000\u01ea)\u0001\u0000\u0000\u0000\u01eb\u01ec\u0005\u0004\u0000\u0000"+ - "\u01ec\u01ed\u0003,\u0016\u0000\u01ed\u01ee\u0005\u0005\u0000\u0000\u01ee"+ - "+\u0001\u0000\u0000\u0000\u01ef\u01f4\u0003\u0012\t\u0000\u01f0\u01f1"+ - "\u0005\f\u0000\u0000\u01f1\u01f3\u0003\u0012\t\u0000\u01f2\u01f0\u0001"+ - "\u0000\u0000\u0000\u01f3\u01f6\u0001\u0000\u0000\u0000\u01f4\u01f2\u0001"+ - "\u0000\u0000\u0000\u01f4\u01f5\u0001\u0000\u0000\u0000\u01f5\u01f8\u0001"+ - "\u0000\u0000\u0000\u01f6\u01f4\u0001\u0000\u0000\u0000\u01f7\u01f9\u0005"+ - "\f\u0000\u0000\u01f8\u01f7\u0001\u0000\u0000\u0000\u01f8\u01f9\u0001\u0000"+ - "\u0000\u0000\u01f9-\u0001\u0000\u0000\u0000\u01fa\u01fc\u0003\u0004\u0002"+ - "\u0000\u01fb\u01fa\u0001\u0000\u0000\u0000\u01fb\u01fc\u0001\u0000\u0000"+ - "\u0000\u01fc\u01fd\u0001\u0000\u0000\u0000\u01fd\u01ff\u0005\u0006\u0000"+ - "\u0000\u01fe\u0200\u0003<\u001e\u0000\u01ff\u01fe\u0001\u0000\u0000\u0000"+ - "\u01ff\u0200\u0001\u0000\u0000\u0000\u0200\u0201\u0001\u0000\u0000\u0000"+ - "\u0201\u0202\u0005\u0007\u0000\u0000\u0202\u0203\u0005:\u0000\u0000\u0203"+ - "\u0204\u0003\u0012\t\u0000\u0204/\u0001\u0000\u0000\u0000\u0205\u0207"+ - "\u0005L\u0000\u0000\u0206\u0208\u0003\u0004\u0002\u0000\u0207\u0206\u0001"+ - "\u0000\u0000\u0000\u0207\u0208\u0001\u0000\u0000\u0000\u0208\u0209\u0001"+ - "\u0000\u0000\u0000\u0209\u020b\u0005\u0006\u0000\u0000\u020a\u020c\u0003"+ - "<\u001e\u0000\u020b\u020a\u0001\u0000\u0000\u0000\u020b\u020c\u0001\u0000"+ - "\u0000\u0000\u020c\u020d\u0001\u0000\u0000\u0000\u020d\u020e\u0005\u0007"+ - "\u0000\u0000\u020e\u020f\u0005:\u0000\u0000\u020f\u0210\u0003\u0012\t"+ - "\u0000\u02101\u0001\u0000\u0000\u0000\u0211\u0212\u0005I\u0000\u0000\u0212"+ - "\u0213\u00034\u001a\u0000\u02133\u0001\u0000\u0000\u0000\u0214\u021f\u0003"+ - "\u0132\u0099\u0000\u0215\u0216\u0003\u0130\u0098\u0000\u0216\u0217\u0005"+ - "\u0012\u0000\u0000\u0217\u0219\u0001\u0000\u0000\u0000\u0218\u0215\u0001"+ - "\u0000\u0000\u0000\u0219\u021a\u0001\u0000\u0000\u0000\u021a\u0218\u0001"+ - "\u0000\u0000\u0000\u021a\u021b\u0001\u0000\u0000\u0000\u021b\u021c\u0001"+ - "\u0000\u0000\u0000\u021c\u021d\u0003\u0130\u0098\u0000\u021d\u021f\u0001"+ - "\u0000\u0000\u0000\u021e\u0214\u0001\u0000\u0000\u0000\u021e\u0218\u0001"+ - "\u0000\u0000\u0000\u021f5\u0001\u0000\u0000\u0000\u0220\u0222\u0005b\u0000"+ - "\u0000\u0221\u0220\u0001\u0000\u0000\u0000\u0221\u0222\u0001\u0000\u0000"+ - "\u0000\u0222\u0223\u0001\u0000\u0000\u0000\u0223\u0225\u0003\u0108\u0084"+ - "\u0000\u0224\u0226\u0005\u000e\u0000\u0000\u0225\u0224\u0001\u0000\u0000"+ - "\u0000\u0225\u0226\u0001\u0000\u0000\u0000\u0226\u0228\u0001\u0000\u0000"+ - "\u0000\u0227\u0229\u00038\u001c\u0000\u0228\u0227\u0001\u0000\u0000\u0000"+ - "\u0228\u0229\u0001\u0000\u0000\u0000\u0229\u022c\u0001\u0000\u0000\u0000"+ - "\u022a\u022b\u0005:\u0000\u0000\u022b\u022d\u0003\u0012\t\u0000\u022c"+ - "\u022a\u0001\u0000\u0000\u0000\u022c\u022d\u0001\u0000\u0000\u0000\u022d"+ - "7\u0001\u0000\u0000\u0000\u022e\u022f\u0005\u0010\u0000\u0000\u022f\u0230"+ - "\u0003\u0012\t\u0000\u02309\u0001\u0000\u0000\u0000\u0231\u0233\u0003"+ - "\u0004\u0002\u0000\u0232\u0231\u0001\u0000\u0000\u0000\u0232\u0233\u0001"+ - "\u0000\u0000\u0000\u0233\u0234\u0001\u0000\u0000\u0000\u0234\u0236\u0005"+ - "\u0006\u0000\u0000\u0235\u0237\u0003<\u001e\u0000\u0236\u0235\u0001\u0000"+ - "\u0000\u0000\u0236\u0237\u0001\u0000\u0000\u0000\u0237\u0238\u0001\u0000"+ - "\u0000\u0000\u0238\u023a\u0005\u0007\u0000\u0000\u0239\u023b\u00038\u001c"+ - "\u0000\u023a\u0239\u0001\u0000\u0000\u0000\u023a\u023b\u0001\u0000\u0000"+ - "\u0000\u023b;\u0001\u0000\u0000\u0000\u023c\u024d\u0003D\"\u0000\u023d"+ - "\u0242\u0003@ \u0000\u023e\u023f\u0005\f\u0000\u0000\u023f\u0241\u0003"+ - "@ \u0000\u0240\u023e\u0001\u0000\u0000\u0000\u0241\u0244\u0001\u0000\u0000"+ - "\u0000\u0242\u0240\u0001\u0000\u0000\u0000\u0242\u0243\u0001\u0000\u0000"+ - "\u0000\u0243\u0247\u0001\u0000\u0000\u0000\u0244\u0242\u0001\u0000\u0000"+ - "\u0000\u0245\u0246\u0005\f\u0000\u0000\u0246\u0248\u0003D\"\u0000\u0247"+ - "\u0245\u0001\u0000\u0000\u0000\u0247\u0248\u0001\u0000\u0000\u0000\u0248"+ - "\u024a\u0001\u0000\u0000\u0000\u0249\u024b\u0005\f\u0000\u0000\u024a\u0249"+ - "\u0001\u0000\u0000\u0000\u024a\u024b\u0001\u0000\u0000\u0000\u024b\u024d"+ - "\u0001\u0000\u0000\u0000\u024c\u023c\u0001\u0000\u0000\u0000\u024c\u023d"+ - "\u0001\u0000\u0000\u0000\u024d=\u0001\u0000\u0000\u0000\u024e\u0253\u0003"+ - "F#\u0000\u024f\u0250\u0005\f\u0000\u0000\u0250\u0252\u0003F#\u0000\u0251"+ - "\u024f\u0001\u0000\u0000\u0000\u0252\u0255\u0001\u0000\u0000\u0000\u0253"+ - "\u0251\u0001\u0000\u0000\u0000\u0253\u0254\u0001\u0000\u0000\u0000\u0254"+ - "?\u0001\u0000\u0000\u0000\u0255\u0253\u0001\u0000\u0000\u0000\u0256\u0259"+ - "\u0003F#\u0000\u0257\u0259\u0003B!\u0000\u0258\u0256\u0001\u0000\u0000"+ - "\u0000\u0258\u0257\u0001\u0000\u0000\u0000\u0259A\u0001\u0000\u0000\u0000"+ - "\u025a\u025c\u0003j5\u0000\u025b\u025a\u0001\u0000\u0000\u0000\u025b\u025c"+ - "\u0001\u0000\u0000\u0000\u025c\u025e\u0001\u0000\u0000\u0000\u025d\u025f"+ - "\u0003H$\u0000\u025e\u025d\u0001\u0000\u0000\u0000\u025e\u025f\u0001\u0000"+ - "\u0000\u0000\u025f\u0260\u0001\u0000\u0000\u0000\u0260\u0269\u0003J%\u0000"+ - "\u0261\u0263\u0005\u000e\u0000\u0000\u0262\u0264\u00038\u001c\u0000\u0263"+ - "\u0262\u0001\u0000\u0000\u0000\u0263\u0264\u0001\u0000\u0000\u0000\u0264"+ - "\u026a\u0001\u0000\u0000\u0000\u0265\u0267\u00038\u001c\u0000\u0266\u0265"+ - "\u0001\u0000\u0000\u0000\u0266\u0267\u0001\u0000\u0000\u0000\u0267\u0268"+ - "\u0001\u0000\u0000\u0000\u0268\u026a\u0003\u0000\u0000\u0000\u0269\u0261"+ - "\u0001\u0000\u0000\u0000\u0269\u0266\u0001\u0000\u0000\u0000\u026aC\u0001"+ - "\u0000\u0000\u0000\u026b\u026c\u0005\u0011\u0000\u0000\u026c\u026e\u0003"+ - "\u0112\u0089\u0000\u026d\u026f\u00038\u001c\u0000\u026e\u026d\u0001\u0000"+ - "\u0000\u0000\u026e\u026f\u0001\u0000\u0000\u0000\u026fE\u0001\u0000\u0000"+ - "\u0000\u0270\u0272\u0003j5\u0000\u0271\u0270\u0001\u0000\u0000\u0000\u0271"+ - "\u0272\u0001\u0000\u0000\u0000\u0272\u0274\u0001\u0000\u0000\u0000\u0273"+ - "\u0275\u0003H$\u0000\u0274\u0273\u0001\u0000\u0000\u0000\u0274\u0275\u0001"+ - "\u0000\u0000\u0000\u0275\u0276\u0001\u0000\u0000\u0000\u0276\u0278\u0003"+ - "J%\u0000\u0277\u0279\u00038\u001c\u0000\u0278\u0277\u0001\u0000\u0000"+ - "\u0000\u0278\u0279\u0001\u0000\u0000\u0000\u0279G\u0001\u0000\u0000\u0000"+ - "\u027a\u027b\u0007\u0002\u0000\u0000\u027bI\u0001\u0000\u0000\u0000\u027c"+ - "\u027f\u0003\u0130\u0098\u0000\u027d\u027f\u0003\u0002\u0001\u0000\u027e"+ - "\u027c\u0001\u0000\u0000\u0000\u027e\u027d\u0001\u0000\u0000\u0000\u027f"+ - "K\u0001\u0000\u0000\u0000\u0280\u0282\u0005L\u0000\u0000\u0281\u0283\u0003"+ - "\u0004\u0002\u0000\u0282\u0281\u0001\u0000\u0000\u0000\u0282\u0283\u0001"+ - "\u0000\u0000\u0000\u0283\u0284\u0001\u0000\u0000\u0000\u0284\u0286\u0005"+ - "\u0006\u0000\u0000\u0285\u0287\u0003<\u001e\u0000\u0286\u0285\u0001\u0000"+ - "\u0000\u0000\u0286\u0287\u0001\u0000\u0000\u0000\u0287\u0288\u0001\u0000"+ - "\u0000\u0000\u0288\u028a\u0005\u0007\u0000\u0000\u0289\u028b\u00038\u001c"+ - "\u0000\u028a\u0289\u0001\u0000\u0000\u0000\u028a\u028b\u0001\u0000\u0000"+ - "\u0000\u028bM\u0001\u0000\u0000\u0000\u028c\u028d\u0005\u0004\u0000\u0000"+ - "\u028d\u028e\u0003\u0132\u0099\u0000\u028e\u028f\u0005\u0010\u0000\u0000"+ - "\u028f\u0290\u0007\u0003\u0000\u0000\u0290\u0291\u0005\u0005\u0000\u0000"+ - "\u0291\u0292\u00038\u001c\u0000\u0292O\u0001\u0000\u0000\u0000\u0293\u0295"+ - "\u0003\u0108\u0084\u0000\u0294\u0296\u0005\u000e\u0000\u0000\u0295\u0294"+ - "\u0001\u0000\u0000\u0000\u0295\u0296\u0001\u0000\u0000\u0000\u0296\u0297"+ - "\u0001\u0000\u0000\u0000\u0297\u0298\u0003:\u001d\u0000\u0298Q\u0001\u0000"+ - "\u0000\u0000\u0299\u029b\u0005l\u0000\u0000\u029a\u0299\u0001\u0000\u0000"+ - "\u0000\u029a\u029b\u0001\u0000\u0000\u0000\u029b\u029c\u0001\u0000\u0000"+ - "\u0000\u029c\u029d\u0005\u0081\u0000\u0000\u029d\u029f\u0003\u0132\u0099"+ - "\u0000\u029e\u02a0\u0003\u0004\u0002\u0000\u029f\u029e\u0001\u0000\u0000"+ - "\u0000\u029f\u02a0\u0001\u0000\u0000\u0000\u02a0\u02a1\u0001\u0000\u0000"+ - "\u0000\u02a1\u02a2\u0005\r\u0000\u0000\u02a2\u02a3\u0003\u0012\t\u0000"+ - "\u02a3\u02a4\u0003\u013a\u009d\u0000\u02a4S\u0001\u0000\u0000\u0000\u02a5"+ - "\u02a7\u0003H$\u0000\u02a6\u02a5\u0001\u0000\u0000\u0000\u02a6\u02a7\u0001"+ - "\u0000\u0000\u0000\u02a7\u02a8\u0001\u0000\u0000\u0000\u02a8\u02a9\u0005"+ - "\u0082\u0000\u0000\u02a9\u02ab\u0005\u0006\u0000\u0000\u02aa\u02ac\u0003"+ - "\u00f0x\u0000\u02ab\u02aa\u0001\u0000\u0000\u0000\u02ab\u02ac\u0001\u0000"+ - "\u0000\u0000\u02ac\u02ad\u0001\u0000\u0000\u0000\u02ad\u02b3\u0005\u0007"+ - "\u0000\u0000\u02ae\u02af\u0005\b\u0000\u0000\u02af\u02b0\u0003\u00f6{"+ - "\u0000\u02b0\u02b1\u0005\n\u0000\u0000\u02b1\u02b4\u0001\u0000\u0000\u0000"+ - "\u02b2\u02b4\u0005\u000b\u0000\u0000\u02b3\u02ae\u0001\u0000\u0000\u0000"+ - "\u02b3\u02b2\u0001\u0000\u0000\u0000\u02b3\u02b4\u0001\u0000\u0000\u0000"+ - "\u02b4U\u0001\u0000\u0000\u0000\u02b5\u02b7\u0005l\u0000\u0000\u02b6\u02b5"+ - "\u0001\u0000\u0000\u0000\u02b6\u02b7\u0001\u0000\u0000\u0000\u02b7\u02b9"+ - "\u0001\u0000\u0000\u0000\u02b8\u02ba\u0005\u0086\u0000\u0000\u02b9\u02b8"+ - "\u0001\u0000\u0000\u0000\u02b9\u02ba\u0001\u0000\u0000\u0000\u02ba\u02bb"+ - "\u0001\u0000\u0000\u0000\u02bb\u02bc\u0005r\u0000\u0000\u02bc\u02be\u0003"+ - "\u0132\u0099\u0000\u02bd\u02bf\u0003\u0004\u0002\u0000\u02be\u02bd\u0001"+ - "\u0000\u0000\u0000\u02be\u02bf\u0001\u0000\u0000\u0000\u02bf\u02c1\u0001"+ - "\u0000\u0000\u0000\u02c0\u02c2\u0003X,\u0000\u02c1\u02c0\u0001\u0000\u0000"+ - "\u0000\u02c1\u02c2\u0001\u0000\u0000\u0000\u02c2\u02c3\u0001\u0000\u0000"+ - "\u0000\u02c3\u02c5\u0003 \u0010\u0000\u02c4\u02c6\u0005\u000b\u0000\u0000"+ - "\u02c5\u02c4\u0001\u0000\u0000\u0000\u02c5\u02c6\u0001\u0000\u0000\u0000"+ - "\u02c6W\u0001\u0000\u0000\u0000\u02c7\u02c8\u0005i\u0000\u0000\u02c8\u02c9"+ - "\u0003Z-\u0000\u02c9Y\u0001\u0000\u0000\u0000\u02ca\u02cf\u0003\u001a"+ - "\r\u0000\u02cb\u02cc\u0005\f\u0000\u0000\u02cc\u02ce\u0003\u001a\r\u0000"+ - "\u02cd\u02cb\u0001\u0000\u0000\u0000\u02ce\u02d1\u0001\u0000\u0000\u0000"+ - "\u02cf\u02cd\u0001\u0000\u0000\u0000\u02cf\u02d0\u0001\u0000\u0000\u0000"+ - "\u02d0[\u0001\u0000\u0000\u0000\u02d1\u02cf\u0001\u0000\u0000\u0000\u02d2"+ - "\u02d4\u0005k\u0000\u0000\u02d3\u02d2\u0001\u0000\u0000\u0000\u02d3\u02d4"+ - "\u0001\u0000\u0000\u0000\u02d4\u02d5\u0001\u0000\u0000\u0000\u02d5\u02d6"+ - "\u0005h\u0000\u0000\u02d6\u02d7\u0003\u0132\u0099\u0000\u02d7\u02d9\u0005"+ - "\b\u0000\u0000\u02d8\u02da\u0003^/\u0000\u02d9\u02d8\u0001\u0000\u0000"+ - "\u0000\u02d9\u02da\u0001\u0000\u0000\u0000\u02da\u02db\u0001\u0000\u0000"+ - "\u0000\u02db\u02dc\u0005\n\u0000\u0000\u02dc]\u0001\u0000\u0000\u0000"+ - "\u02dd\u02df\u0003`0\u0000\u02de\u02e0\u0005\f\u0000\u0000\u02df\u02de"+ - "\u0001\u0000\u0000\u0000\u02df\u02e0\u0001\u0000\u0000\u0000\u02e0_\u0001"+ - "\u0000\u0000\u0000\u02e1\u02e6\u0003b1\u0000\u02e2\u02e3\u0005\f\u0000"+ - "\u0000\u02e3\u02e5\u0003b1\u0000\u02e4\u02e2\u0001\u0000\u0000\u0000\u02e5"+ - "\u02e8\u0001\u0000\u0000\u0000\u02e6\u02e4\u0001\u0000\u0000\u0000\u02e6"+ - "\u02e7\u0001\u0000\u0000\u0000\u02e7a\u0001\u0000\u0000\u0000\u02e8\u02e6"+ - "\u0001\u0000\u0000\u0000\u02e9\u02ec\u0003\u0108\u0084\u0000\u02ea\u02eb"+ - "\u0005\r\u0000\u0000\u02eb\u02ed\u0003\u0112\u0089\u0000\u02ec\u02ea\u0001"+ - "\u0000\u0000\u0000\u02ec\u02ed\u0001\u0000\u0000\u0000\u02edc\u0001\u0000"+ - "\u0000\u0000\u02ee\u02f0\u0005\u0086\u0000\u0000\u02ef\u02ee\u0001\u0000"+ - "\u0000\u0000\u02ef\u02f0\u0001\u0000\u0000\u0000\u02f0\u02f1\u0001\u0000"+ - "\u0000\u0000\u02f1\u02f2\u0005\u0083\u0000\u0000\u02f2\u02f3\u0003f3\u0000"+ - "\u02f3\u02f5\u0005\b\u0000\u0000\u02f4\u02f6\u0003z=\u0000\u02f5\u02f4"+ - "\u0001\u0000\u0000\u0000\u02f5\u02f6\u0001\u0000\u0000\u0000\u02f6\u02f7"+ - "\u0001\u0000\u0000\u0000\u02f7\u02f8\u0005\n\u0000\u0000\u02f8e\u0001"+ - "\u0000\u0000\u0000\u02f9\u0302\u0003\u0132\u0099\u0000\u02fa\u02fc\u0005"+ - "\u0012\u0000\u0000\u02fb\u02fa\u0001\u0000\u0000\u0000\u02fc\u02fd\u0001"+ - "\u0000\u0000\u0000\u02fd\u02fb\u0001\u0000\u0000\u0000\u02fd\u02fe\u0001"+ - "\u0000\u0000\u0000\u02fe\u02ff\u0001\u0000\u0000\u0000\u02ff\u0301\u0003"+ - "\u0132\u0099\u0000\u0300\u02fb\u0001\u0000\u0000\u0000\u0301\u0304\u0001"+ - "\u0000\u0000\u0000\u0302\u0300\u0001\u0000\u0000\u0000\u0302\u0303\u0001"+ - "\u0000\u0000\u0000\u0303g\u0001\u0000\u0000\u0000\u0304\u0302\u0001\u0000"+ - "\u0000\u0000\u0305\u0306\u0003\u0132\u0099\u0000\u0306\u0307\u0005\r\u0000"+ - "\u0000\u0307\u0308\u0003f3\u0000\u0308\u0309\u0005\u000b\u0000\u0000\u0309"+ - "i\u0001\u0000\u0000\u0000\u030a\u030c\u0003l6\u0000\u030b\u030a\u0001"+ - "\u0000\u0000\u0000\u030c\u030d\u0001\u0000\u0000\u0000\u030d\u030b\u0001"+ - "\u0000\u0000\u0000\u030d\u030e\u0001\u0000\u0000\u0000\u030ek\u0001\u0000"+ - "\u0000\u0000\u030f\u0312\u0005\u0089\u0000\u0000\u0310\u0313\u0003n7\u0000"+ - "\u0311\u0313\u0003p8\u0000\u0312\u0310\u0001\u0000\u0000\u0000\u0312\u0311"+ - "\u0001\u0000\u0000\u0000\u0313m\u0001\u0000\u0000\u0000\u0314\u0315\u0006"+ - "7\uffff\uffff\u0000\u0315\u031b\u0003\u0132\u0099\u0000\u0316\u0317\u0005"+ - "\u0006\u0000\u0000\u0317\u0318\u0003\u0112\u0089\u0000\u0318\u0319\u0005"+ - "\u0007\u0000\u0000\u0319\u031b\u0001\u0000\u0000\u0000\u031a\u0314\u0001"+ - "\u0000\u0000\u0000\u031a\u0316\u0001\u0000\u0000\u0000\u031b\u0321\u0001"+ - "\u0000\u0000\u0000\u031c\u031d\n\u0002\u0000\u0000\u031d\u031e\u0005\u0012"+ - "\u0000\u0000\u031e\u0320\u0003\u0130\u0098\u0000\u031f\u031c\u0001\u0000"+ - "\u0000\u0000\u0320\u0323\u0001\u0000\u0000\u0000\u0321\u031f\u0001\u0000"+ - "\u0000\u0000\u0321\u0322\u0001\u0000\u0000\u0000\u0322o\u0001\u0000\u0000"+ - "\u0000\u0323\u0321\u0001\u0000\u0000\u0000\u0324\u0325\u0003n7\u0000\u0325"+ - "\u0326\u0003\u010a\u0085\u0000\u0326q\u0001\u0000\u0000\u0000\u0327\u0329"+ - "\u0003\u00f8|\u0000\u0328\u0327\u0001\u0000\u0000\u0000\u0328\u0329\u0001"+ - "\u0000\u0000\u0000\u0329\u032a\u0001\u0000\u0000\u0000\u032a\u032b\u0005"+ - "\u0000\u0000\u0001\u032bs\u0001\u0000\u0000\u0000\u032c\u032e\u0005l\u0000"+ - "\u0000\u032d\u032c\u0001\u0000\u0000\u0000\u032d\u032e\u0001\u0000\u0000"+ - "\u0000\u032e\u032f\u0001\u0000\u0000\u0000\u032f\u0330\u0003v;\u0000\u0330"+ - "u\u0001\u0000\u0000\u0000\u0331\u034f\u0003x<\u0000\u0332\u034f\u0003"+ - "\u009cN\u0000\u0333\u034f\u0003~?\u0000\u0334\u034f\u0003\u0092I\u0000"+ - "\u0335\u034f\u0003\u00a2Q\u0000\u0336\u034f\u0003|>\u0000\u0337\u034f"+ - "\u0003\u00ceg\u0000\u0338\u034f\u0003\u00ccf\u0000\u0339\u034f\u0003\u00a4"+ - "R\u0000\u033a\u034f\u0003V+\u0000\u033b\u034f\u0003d2\u0000\u033c\u034f"+ - "\u0003\u00a6S\u0000\u033d\u034f\u0003\u00a8T\u0000\u033e\u034f\u0003\u00ac"+ - "V\u0000\u033f\u034f\u0003\u00aeW\u0000\u0340\u034f\u0003\u00b0X\u0000"+ - "\u0341\u034f\u0003\u00b2Y\u0000\u0342\u034f\u0003\u00b4Z\u0000\u0343\u034f"+ - "\u0003\u00c0`\u0000\u0344\u034f\u0003\u00b6[\u0000\u0345\u034f\u0003\u00c2"+ - "a\u0000\u0346\u034f\u0003\u00c4b\u0000\u0347\u034f\u0003\u00cae\u0000"+ - "\u0348\u034f\u0003\u011a\u008d\u0000\u0349\u034f\u0003\u00e2q\u0000\u034a"+ - "\u034f\u0003R)\u0000\u034b\u034f\u0003\\.\u0000\u034c\u034d\u0005l\u0000"+ - "\u0000\u034d\u034f\u0003v;\u0000\u034e\u0331\u0001\u0000\u0000\u0000\u034e"+ - "\u0332\u0001\u0000\u0000\u0000\u034e\u0333\u0001\u0000\u0000\u0000\u034e"+ - "\u0334\u0001\u0000\u0000\u0000\u034e\u0335\u0001\u0000\u0000\u0000\u034e"+ - "\u0336\u0001\u0000\u0000\u0000\u034e\u0337\u0001\u0000\u0000\u0000\u034e"+ - "\u0338\u0001\u0000\u0000\u0000\u034e\u0339\u0001\u0000\u0000\u0000\u034e"+ - "\u033a\u0001\u0000\u0000\u0000\u034e\u033b\u0001\u0000\u0000\u0000\u034e"+ - "\u033c\u0001\u0000\u0000\u0000\u034e\u033d\u0001\u0000\u0000\u0000\u034e"+ - "\u033e\u0001\u0000\u0000\u0000\u034e\u033f\u0001\u0000\u0000\u0000\u034e"+ - "\u0340\u0001\u0000\u0000\u0000\u034e\u0341\u0001\u0000\u0000\u0000\u034e"+ - "\u0342\u0001\u0000\u0000\u0000\u034e\u0343\u0001\u0000\u0000\u0000\u034e"+ - "\u0344\u0001\u0000\u0000\u0000\u034e\u0345\u0001\u0000\u0000\u0000\u034e"+ - "\u0346\u0001\u0000\u0000\u0000\u034e\u0347\u0001\u0000\u0000\u0000\u034e"+ - "\u0348\u0001\u0000\u0000\u0000\u034e\u0349\u0001\u0000\u0000\u0000\u034e"+ - "\u034a\u0001\u0000\u0000\u0000\u034e\u034b\u0001\u0000\u0000\u0000\u034e"+ - "\u034c\u0001\u0000\u0000\u0000\u034fw\u0001\u0000\u0000\u0000\u0350\u0352"+ - "\u0005\b\u0000\u0000\u0351\u0353\u0003z=\u0000\u0352\u0351\u0001\u0000"+ - "\u0000\u0000\u0352\u0353\u0001\u0000\u0000\u0000\u0353\u0354\u0001\u0000"+ - "\u0000\u0000\u0354\u0355\u0005\n\u0000\u0000\u0355y\u0001\u0000\u0000"+ - "\u0000\u0356\u0358\u0003v;\u0000\u0357\u0356\u0001\u0000\u0000\u0000\u0358"+ - "\u0359\u0001\u0000\u0000\u0000\u0359\u0357\u0001\u0000\u0000\u0000\u0359"+ - "\u035a\u0001\u0000\u0000\u0000\u035a{\u0001\u0000\u0000\u0000\u035b\u0360"+ - "\u0005\u0087\u0000\u0000\u035c\u035d\u0003\u0132\u0099\u0000\u035d\u035e"+ - "\u0003:\u001d\u0000\u035e\u0361\u0001\u0000\u0000\u0000\u035f\u0361\u0003"+ - "\u009cN\u0000\u0360\u035c\u0001\u0000\u0000\u0000\u0360\u035f\u0001\u0000"+ - "\u0000\u0000\u0361\u0362\u0001\u0000\u0000\u0000\u0362\u0363\u0003\u013a"+ - "\u009d\u0000\u0363}\u0001\u0000\u0000\u0000\u0364\u0365\u0005m\u0000\u0000"+ - "\u0365\u0366\u0003\u0080@\u0000\u0366\u007f\u0001\u0000\u0000\u0000\u0367"+ - "\u0369\u0003\u008aE\u0000\u0368\u0367\u0001\u0000\u0000\u0000\u0368\u0369"+ - "\u0001\u0000\u0000\u0000\u0369\u036c\u0001\u0000\u0000\u0000\u036a\u036d"+ - "\u0003\u008cF\u0000\u036b\u036d\u0003\u0082A\u0000\u036c\u036a\u0001\u0000"+ - "\u0000\u0000\u036c\u036b\u0001\u0000\u0000\u0000\u036d\u036e\u0001\u0000"+ - "\u0000\u0000\u036e\u036f\u0003\u008eG\u0000\u036f\u0370\u0003\u013a\u009d"+ - "\u0000\u0370\u0374\u0001\u0000\u0000\u0000\u0371\u0372\u0005\u008b\u0000"+ - "\u0000\u0372\u0374\u0003\u013a\u009d\u0000\u0373\u0368\u0001\u0000\u0000"+ - "\u0000\u0373\u0371\u0001\u0000\u0000\u0000\u0374\u0081\u0001\u0000\u0000"+ - "\u0000\u0375\u037b\u0005\b\u0000\u0000\u0376\u0377\u0003\u0084B\u0000"+ - "\u0377\u0378\u0005\f\u0000\u0000\u0378\u037a\u0001\u0000\u0000\u0000\u0379"+ - "\u0376\u0001\u0000\u0000\u0000\u037a\u037d\u0001\u0000\u0000\u0000\u037b"+ - "\u0379\u0001\u0000\u0000\u0000\u037b\u037c\u0001\u0000\u0000\u0000\u037c"+ - "\u0382\u0001\u0000\u0000\u0000\u037d\u037b\u0001\u0000\u0000\u0000\u037e"+ - "\u0380\u0003\u0084B\u0000\u037f\u0381\u0005\f\u0000\u0000\u0380\u037f"+ - "\u0001\u0000\u0000\u0000\u0380\u0381\u0001\u0000\u0000\u0000\u0381\u0383"+ - "\u0001\u0000\u0000\u0000\u0382\u037e\u0001\u0000\u0000\u0000\u0382\u0383"+ - "\u0001\u0000\u0000\u0000\u0383\u0384\u0001\u0000\u0000\u0000\u0384\u0385"+ - "\u0005\n\u0000\u0000\u0385\u0083\u0001\u0000\u0000\u0000\u0386\u0389\u0003"+ - "\u0086C\u0000\u0387\u0388\u0005`\u0000\u0000\u0388\u038a\u0003\u0088D"+ - "\u0000\u0389\u0387\u0001\u0000\u0000\u0000\u0389\u038a\u0001\u0000\u0000"+ - "\u0000\u038a\u0085\u0001\u0000\u0000\u0000\u038b\u038e\u0003\u0130\u0098"+ - "\u0000\u038c\u038e\u0005\u008b\u0000\u0000\u038d\u038b\u0001\u0000\u0000"+ - "\u0000\u038d\u038c\u0001\u0000\u0000\u0000\u038e\u0087\u0001\u0000\u0000"+ - "\u0000\u038f\u0390\u0007\u0004\u0000\u0000\u0390\u0089\u0001\u0000\u0000"+ - "\u0000\u0391\u0392\u0003\u0090H\u0000\u0392\u0393\u0005\f\u0000\u0000"+ - "\u0393\u008b\u0001\u0000\u0000\u0000\u0394\u0397\u0005\u0019\u0000\u0000"+ - "\u0395\u0397\u0003\u0130\u0098\u0000\u0396\u0394\u0001\u0000\u0000\u0000"+ - "\u0396\u0395\u0001\u0000\u0000\u0000\u0397\u039a\u0001\u0000\u0000\u0000"+ - "\u0398\u0399\u0005`\u0000\u0000\u0399\u039b\u0003\u0130\u0098\u0000\u039a"+ - "\u0398\u0001\u0000\u0000\u0000\u039a\u039b\u0001\u0000\u0000\u0000\u039b"+ - "\u008d\u0001\u0000\u0000\u0000\u039c\u039d\u0005a\u0000\u0000\u039d\u039e"+ - "\u0005\u008b\u0000\u0000\u039e\u008f\u0001\u0000\u0000\u0000\u039f\u03a2"+ - "\u0003\u0130\u0098\u0000\u03a0\u03a1\u0005`\u0000\u0000\u03a1\u03a3\u0003"+ - "\u0130\u0098\u0000\u03a2\u03a0\u0001\u0000\u0000\u0000\u03a2\u03a3\u0001"+ - "\u0000\u0000\u0000\u03a3\u0091\u0001\u0000\u0000\u0000\u03a4\u03a6\u0005"+ - "l\u0000\u0000\u03a5\u03a7\u0005Z\u0000\u0000\u03a6\u03a5\u0001\u0000\u0000"+ - "\u0000\u03a6\u03a7\u0001\u0000\u0000\u0000\u03a7\u03aa\u0001\u0000\u0000"+ - "\u0000\u03a8\u03ab\u0003\u0094J\u0000\u03a9\u03ab\u0003\u009aM\u0000\u03aa"+ - "\u03a8\u0001\u0000\u0000\u0000\u03aa\u03a9\u0001\u0000\u0000\u0000\u03ab"+ - "\u03ac\u0001\u0000\u0000\u0000\u03ac\u03ad\u0003\u013a\u009d\u0000\u03ad"+ - "\u03b4\u0001\u0000\u0000\u0000\u03ae\u03af\u0005l\u0000\u0000\u03af\u03b0"+ - "\u0005Z\u0000\u0000\u03b0\u03b1\u0003\u0112\u0089\u0000\u03b1\u03b2\u0003"+ - "\u013a\u009d\u0000\u03b2\u03b4\u0001\u0000\u0000\u0000\u03b3\u03a4\u0001"+ - "\u0000\u0000\u0000\u03b3\u03ae\u0001\u0000\u0000\u0000\u03b4\u0093\u0001"+ - "\u0000\u0000\u0000\u03b5\u03b6\u0003\u008cF\u0000\u03b6\u03b7\u0003\u008e"+ - "G\u0000\u03b7\u03b8\u0003\u013a\u009d\u0000\u03b8\u03c0\u0001\u0000\u0000"+ - "\u0000\u03b9\u03bb\u0003\u0096K\u0000\u03ba\u03bc\u0003\u008eG\u0000\u03bb"+ - "\u03ba\u0001\u0000\u0000\u0000\u03bb\u03bc\u0001\u0000\u0000\u0000\u03bc"+ - "\u03bd\u0001\u0000\u0000\u0000\u03bd\u03be\u0003\u013a\u009d\u0000\u03be"+ - "\u03c0\u0001\u0000\u0000\u0000\u03bf\u03b5\u0001\u0000\u0000\u0000\u03bf"+ - "\u03b9\u0001\u0000\u0000\u0000\u03c0\u0095\u0001\u0000\u0000\u0000\u03c1"+ - "\u03c7\u0005\b\u0000\u0000\u03c2\u03c3\u0003\u0098L\u0000\u03c3\u03c4"+ - "\u0005\f\u0000\u0000\u03c4\u03c6\u0001\u0000\u0000\u0000\u03c5\u03c2\u0001"+ - "\u0000\u0000\u0000\u03c6\u03c9\u0001\u0000\u0000\u0000\u03c7\u03c5\u0001"+ - "\u0000\u0000\u0000\u03c7\u03c8\u0001\u0000\u0000\u0000\u03c8\u03ce\u0001"+ - "\u0000\u0000\u0000\u03c9\u03c7\u0001\u0000\u0000\u0000\u03ca\u03cc\u0003"+ - "\u0098L\u0000\u03cb\u03cd\u0005\f\u0000\u0000\u03cc\u03cb\u0001\u0000"+ - "\u0000\u0000\u03cc\u03cd\u0001\u0000\u0000\u0000\u03cd\u03cf\u0001\u0000"+ - "\u0000\u0000\u03ce\u03ca\u0001\u0000\u0000\u0000\u03ce\u03cf\u0001\u0000"+ - "\u0000\u0000\u03cf\u03d0\u0001\u0000\u0000\u0000\u03d0\u03d1\u0005\n\u0000"+ - "\u0000\u03d1\u0097\u0001\u0000\u0000\u0000\u03d2\u03d5\u0003\u0086C\u0000"+ - "\u03d3\u03d4\u0005`\u0000\u0000\u03d4\u03d6\u0003\u0086C\u0000\u03d5\u03d3"+ - "\u0001\u0000\u0000\u0000\u03d5\u03d6\u0001\u0000\u0000\u0000\u03d6\u0099"+ - "\u0001\u0000\u0000\u0000\u03d7\u03db\u0003\u009cN\u0000\u03d8\u03db\u0003"+ - "\u00ceg\u0000\u03d9\u03db\u0003\u00ccf\u0000\u03da\u03d7\u0001\u0000\u0000"+ - "\u0000\u03da\u03d8\u0001\u0000\u0000\u0000\u03da\u03d9\u0001\u0000\u0000"+ - "\u0000\u03db\u009b\u0001\u0000\u0000\u0000\u03dc\u03de\u0003\u0002\u0001"+ - "\u0000\u03dd\u03df\u00038\u001c\u0000\u03de\u03dd\u0001\u0000\u0000\u0000"+ - "\u03de\u03df\u0001\u0000\u0000\u0000\u03df\u03e0\u0001\u0000\u0000\u0000"+ - "\u03e0\u03e2\u0003\u0000\u0000\u0000\u03e1\u03e3\u0005\u000b\u0000\u0000"+ - "\u03e2\u03e1\u0001\u0000\u0000\u0000\u03e2\u03e3\u0001\u0000\u0000\u0000"+ - "\u03e3\u03fa\u0001\u0000\u0000\u0000\u03e4\u03e6\u0003H$\u0000\u03e5\u03e4"+ - "\u0001\u0000\u0000\u0000\u03e5\u03e6\u0001\u0000\u0000\u0000\u03e6\u03e8"+ - "\u0001\u0000\u0000\u0000\u03e7\u03e9\u0003\u00aaU\u0000\u03e8\u03e7\u0001"+ - "\u0000\u0000\u0000\u03e8\u03e9\u0001\u0000\u0000\u0000\u03e9\u03eb\u0001"+ - "\u0000\u0000\u0000\u03ea\u03ec\u0005b\u0000\u0000\u03eb\u03ea\u0001\u0000"+ - "\u0000\u0000\u03eb\u03ec\u0001\u0000\u0000\u0000\u03ec\u03ed\u0001\u0000"+ - "\u0000\u0000\u03ed\u03ef\u0003\u009eO\u0000\u03ee\u03f0\u0005\u000b\u0000"+ - "\u0000\u03ef\u03ee\u0001\u0000\u0000\u0000\u03ef\u03f0\u0001\u0000\u0000"+ - "\u0000\u03f0\u03fa\u0001\u0000\u0000\u0000\u03f1\u03f3\u0005\u0086\u0000"+ - "\u0000\u03f2\u03f4\u0003\u00aaU\u0000\u03f3\u03f2\u0001\u0000\u0000\u0000"+ - "\u03f3\u03f4\u0001\u0000\u0000\u0000\u03f4\u03f5\u0001\u0000\u0000\u0000"+ - "\u03f5\u03f7\u0003\u009eO\u0000\u03f6\u03f8\u0005\u000b\u0000\u0000\u03f7"+ - "\u03f6\u0001\u0000\u0000\u0000\u03f7\u03f8\u0001\u0000\u0000\u0000\u03f8"+ - "\u03fa\u0001\u0000\u0000\u0000\u03f9\u03dc\u0001\u0000\u0000\u0000\u03f9"+ - "\u03e5\u0001\u0000\u0000\u0000\u03f9\u03f1\u0001\u0000\u0000\u0000\u03fa"+ - "\u009d\u0001\u0000\u0000\u0000\u03fb\u0400\u0003\u00a0P\u0000\u03fc\u03fd"+ - "\u0005\f\u0000\u0000\u03fd\u03ff\u0003\u00a0P\u0000\u03fe\u03fc\u0001"+ - "\u0000\u0000\u0000\u03ff\u0402\u0001\u0000\u0000\u0000\u0400\u03fe\u0001"+ - "\u0000\u0000\u0000\u0400\u0401\u0001\u0000\u0000\u0000\u0401\u009f\u0001"+ - "\u0000\u0000\u0000\u0402\u0400\u0001\u0000\u0000\u0000\u0403\u0407\u0003"+ - "\u0134\u009a\u0000\u0404\u0407\u0003\u00fa}\u0000\u0405\u0407\u0003\u0100"+ - "\u0080\u0000\u0406\u0403\u0001\u0000\u0000\u0000\u0406\u0404\u0001\u0000"+ - "\u0000\u0000\u0406\u0405\u0001\u0000\u0000\u0000\u0407\u0409\u0001\u0000"+ - "\u0000\u0000\u0408\u040a\u00038\u001c\u0000\u0409\u0408\u0001\u0000\u0000"+ - "\u0000\u0409\u040a\u0001\u0000\u0000\u0000\u040a\u040c\u0001\u0000\u0000"+ - "\u0000\u040b\u040d\u0003\u0112\u0089\u0000\u040c\u040b\u0001\u0000\u0000"+ - "\u0000\u040c\u040d\u0001\u0000\u0000\u0000\u040d\u0413\u0001\u0000\u0000"+ - "\u0000\u040e\u0410\u0005\r\u0000\u0000\u040f\u0411\u0003\u0004\u0002\u0000"+ - "\u0410\u040f\u0001\u0000\u0000\u0000\u0410\u0411\u0001\u0000\u0000\u0000"+ - "\u0411\u0412\u0001\u0000\u0000\u0000\u0412\u0414\u0003\u0112\u0089\u0000"+ - "\u0413\u040e\u0001\u0000\u0000\u0000\u0413\u0414\u0001\u0000\u0000\u0000"+ - "\u0414\u00a1\u0001\u0000\u0000\u0000\u0415\u0416\u0005\u000b\u0000\u0000"+ - "\u0416\u00a3\u0001\u0000\u0000\u0000\u0417\u0418\u0004R\u0006\u0000\u0418"+ - "\u041a\u0003\u0110\u0088\u0000\u0419\u041b\u0005\u000b\u0000\u0000\u041a"+ - "\u0419\u0001\u0000\u0000\u0000\u041a\u041b\u0001\u0000\u0000\u0000\u041b"+ - "\u00a5\u0001\u0000\u0000\u0000\u041c\u041d\u0005[\u0000\u0000\u041d\u041e"+ - "\u0005\u0006\u0000\u0000\u041e\u041f\u0003\u0110\u0088\u0000\u041f\u0420"+ - "\u0005\u0007\u0000\u0000\u0420\u0423\u0003v;\u0000\u0421\u0422\u0005K"+ - "\u0000\u0000\u0422\u0424\u0003v;\u0000\u0423\u0421\u0001\u0000\u0000\u0000"+ - "\u0423\u0424\u0001\u0000\u0000\u0000\u0424\u00a7\u0001\u0000\u0000\u0000"+ - "\u0425\u0426\u0005G\u0000\u0000\u0426\u0427\u0003v;\u0000\u0427\u0428"+ - "\u0005U\u0000\u0000\u0428\u0429\u0005\u0006\u0000\u0000\u0429\u042a\u0003"+ - "\u0110\u0088\u0000\u042a\u042b\u0005\u0007\u0000\u0000\u042b\u042c\u0003"+ - "\u013a\u009d\u0000\u042c\u0484\u0001\u0000\u0000\u0000\u042d\u042e\u0005"+ - "U\u0000\u0000\u042e\u042f\u0005\u0006\u0000\u0000\u042f\u0430\u0003\u0110"+ - "\u0088\u0000\u0430\u0431\u0005\u0007\u0000\u0000\u0431\u0432\u0003v;\u0000"+ - "\u0432\u0484\u0001\u0000\u0000\u0000\u0433\u0434\u0005S\u0000\u0000\u0434"+ - "\u0436\u0005\u0006\u0000\u0000\u0435\u0437\u0003\u0110\u0088\u0000\u0436"+ - "\u0435\u0001\u0000\u0000\u0000\u0436\u0437\u0001\u0000\u0000\u0000\u0437"+ - "\u0438\u0001\u0000\u0000\u0000\u0438\u043a\u0005\u000b\u0000\u0000\u0439"+ - "\u043b\u0003\u0110\u0088\u0000\u043a\u0439\u0001\u0000\u0000\u0000\u043a"+ - "\u043b\u0001\u0000\u0000\u0000\u043b\u043c\u0001\u0000\u0000\u0000\u043c"+ - "\u043e\u0005\u000b\u0000\u0000\u043d\u043f\u0003\u0110\u0088\u0000\u043e"+ - "\u043d\u0001\u0000\u0000\u0000\u043e\u043f\u0001\u0000\u0000\u0000\u043f"+ - "\u0440\u0001\u0000\u0000\u0000\u0440\u0441\u0005\u0007\u0000\u0000\u0441"+ - "\u0484\u0003v;\u0000\u0442\u0443\u0005S\u0000\u0000\u0443\u0444\u0005"+ - "\u0006\u0000\u0000\u0444\u0445\u0003\u00aaU\u0000\u0445\u0446\u0003\u009e"+ - "O\u0000\u0446\u0448\u0005\u000b\u0000\u0000\u0447\u0449\u0003\u0110\u0088"+ - "\u0000\u0448\u0447\u0001\u0000\u0000\u0000\u0448\u0449\u0001\u0000\u0000"+ - "\u0000\u0449\u044a\u0001\u0000\u0000\u0000\u044a\u044c\u0005\u000b\u0000"+ - "\u0000\u044b\u044d\u0003\u0110\u0088\u0000\u044c\u044b\u0001\u0000\u0000"+ - "\u0000\u044c\u044d\u0001\u0000\u0000\u0000\u044d\u044e\u0001\u0000\u0000"+ - "\u0000\u044e\u044f\u0005\u0007\u0000\u0000\u044f\u0450\u0003v;\u0000\u0450"+ - "\u0484\u0001\u0000\u0000\u0000\u0451\u0452\u0005S\u0000\u0000\u0452\u0453"+ - "\u0005\u0006\u0000\u0000\u0453\u0454\u0003\u0112\u0089\u0000\u0454\u0455"+ - "\u0005^\u0000\u0000\u0455\u0456\u0003\u0110\u0088\u0000\u0456\u0457\u0005"+ - "\u0007\u0000\u0000\u0457\u0458\u0003v;\u0000\u0458\u0484\u0001\u0000\u0000"+ - "\u0000\u0459\u045a\u0005S\u0000\u0000\u045a\u045b\u0005\u0006\u0000\u0000"+ - "\u045b\u045c\u0003\u00aaU\u0000\u045c\u045d\u0003\u00a0P\u0000\u045d\u045e"+ - "\u0005^\u0000\u0000\u045e\u045f\u0003\u0110\u0088\u0000\u045f\u0460\u0005"+ - "\u0007\u0000\u0000\u0460\u0461\u0003v;\u0000\u0461\u0484\u0001\u0000\u0000"+ - "\u0000\u0462\u0464\u0005S\u0000\u0000\u0463\u0465\u0005d\u0000\u0000\u0464"+ - "\u0463\u0001\u0000\u0000\u0000\u0464\u0465\u0001\u0000\u0000\u0000\u0465"+ - "\u0466\u0001\u0000\u0000\u0000\u0466\u0467\u0005\u0006\u0000\u0000\u0467"+ - "\u0468\u0003\u0112\u0089\u0000\u0468\u0469\u0003\u0132\u0099\u0000\u0469"+ - "\u046a\u0004T\u0007\u0000\u046a\u046d\u0003\u0110\u0088\u0000\u046b\u046c"+ - "\u0005`\u0000\u0000\u046c\u046e\u0003\u0012\t\u0000\u046d\u046b\u0001"+ - "\u0000\u0000\u0000\u046d\u046e\u0001\u0000\u0000\u0000\u046e\u046f\u0001"+ - "\u0000\u0000\u0000\u046f\u0470\u0005\u0007\u0000\u0000\u0470\u0471\u0003"+ - "v;\u0000\u0471\u0484\u0001\u0000\u0000\u0000\u0472\u0474\u0005S\u0000"+ - "\u0000\u0473\u0475\u0005d\u0000\u0000\u0474\u0473\u0001\u0000\u0000\u0000"+ - "\u0474\u0475\u0001\u0000\u0000\u0000\u0475\u0476\u0001\u0000\u0000\u0000"+ - "\u0476\u0477\u0005\u0006\u0000\u0000\u0477\u0478\u0003\u00aaU\u0000\u0478"+ - "\u0479\u0003\u00a0P\u0000\u0479\u047a\u0003\u0132\u0099\u0000\u047a\u047b"+ - "\u0004T\b\u0000\u047b\u047e\u0003\u0110\u0088\u0000\u047c\u047d\u0005"+ - "`\u0000\u0000\u047d\u047f\u0003\u0012\t\u0000\u047e\u047c\u0001\u0000"+ - "\u0000\u0000\u047e\u047f\u0001\u0000\u0000\u0000\u047f\u0480\u0001\u0000"+ - "\u0000\u0000\u0480\u0481\u0005\u0007\u0000\u0000\u0481\u0482\u0003v;\u0000"+ - "\u0482\u0484\u0001\u0000\u0000\u0000\u0483\u0425\u0001\u0000\u0000\u0000"+ - "\u0483\u042d\u0001\u0000\u0000\u0000\u0483\u0433\u0001\u0000\u0000\u0000"+ - "\u0483\u0442\u0001\u0000\u0000\u0000\u0483\u0451\u0001\u0000\u0000\u0000"+ - "\u0483\u0459\u0001\u0000\u0000\u0000\u0483\u0462\u0001\u0000\u0000\u0000"+ - "\u0483\u0472\u0001\u0000\u0000\u0000\u0484\u00a9\u0001\u0000\u0000\u0000"+ - "\u0485\u0486\u0007\u0005\u0000\u0000\u0486\u00ab\u0001\u0000\u0000\u0000"+ - "\u0487\u048a\u0005R\u0000\u0000\u0488\u0489\u0004V\t\u0000\u0489\u048b"+ - "\u0003\u0132\u0099\u0000\u048a\u0488\u0001\u0000\u0000\u0000\u048a\u048b"+ - "\u0001\u0000\u0000\u0000\u048b\u048c\u0001\u0000\u0000\u0000\u048c\u048d"+ - "\u0003\u013a\u009d\u0000\u048d\u00ad\u0001\u0000\u0000\u0000\u048e\u0491"+ - "\u0005F\u0000\u0000\u048f\u0490\u0004W\n\u0000\u0490\u0492\u0003\u0132"+ - "\u0099\u0000\u0491\u048f\u0001\u0000\u0000\u0000\u0491\u0492\u0001\u0000"+ - "\u0000\u0000\u0492\u0493\u0001\u0000\u0000\u0000\u0493\u0494\u0003\u013a"+ - "\u009d\u0000\u0494\u00af\u0001\u0000\u0000\u0000\u0495\u0498\u0005P\u0000"+ - "\u0000\u0496\u0497\u0004X\u000b\u0000\u0497\u0499\u0003\u0110\u0088\u0000"+ - "\u0498\u0496\u0001\u0000\u0000\u0000\u0498\u0499\u0001\u0000\u0000\u0000"+ - "\u0499\u049a\u0001\u0000\u0000\u0000\u049a\u049b\u0003\u013a\u009d\u0000"+ - "\u049b\u00b1\u0001\u0000\u0000\u0000\u049c\u049f\u0007\u0006\u0000\u0000"+ - "\u049d\u049e\u0004Y\f\u0000\u049e\u04a0\u0003\u0110\u0088\u0000\u049f"+ - "\u049d\u0001\u0000\u0000\u0000\u049f\u04a0\u0001\u0000\u0000\u0000\u04a0"+ - "\u04a1\u0001\u0000\u0000\u0000\u04a1\u04a2\u0003\u013a\u009d\u0000\u04a2"+ - "\u00b3\u0001\u0000\u0000\u0000\u04a3\u04a4\u0005Y\u0000\u0000\u04a4\u04a5"+ - "\u0005\u0006\u0000\u0000\u04a5\u04a6\u0003\u0110\u0088\u0000\u04a6\u04a7"+ - "\u0005\u0007\u0000\u0000\u04a7\u04a8\u0003v;\u0000\u04a8\u00b5\u0001\u0000"+ - "\u0000\u0000\u04a9\u04aa\u0005T\u0000\u0000\u04aa\u04ab\u0005\u0006\u0000"+ - "\u0000\u04ab\u04ac\u0003\u0110\u0088\u0000\u04ac\u04ad\u0005\u0007\u0000"+ - "\u0000\u04ad\u04ae\u0003\u00b8\\\u0000\u04ae\u00b7\u0001\u0000\u0000\u0000"+ - "\u04af\u04b1\u0005\b\u0000\u0000\u04b0\u04b2\u0003\u00ba]\u0000\u04b1"+ - "\u04b0\u0001\u0000\u0000\u0000\u04b1\u04b2\u0001\u0000\u0000\u0000\u04b2"+ - "\u04b7\u0001\u0000\u0000\u0000\u04b3\u04b5\u0003\u00be_\u0000\u04b4\u04b6"+ - "\u0003\u00ba]\u0000\u04b5\u04b4\u0001\u0000\u0000\u0000\u04b5\u04b6\u0001"+ - "\u0000\u0000\u0000\u04b6\u04b8\u0001\u0000\u0000\u0000\u04b7\u04b3\u0001"+ - "\u0000\u0000\u0000\u04b7\u04b8\u0001\u0000\u0000\u0000\u04b8\u04b9\u0001"+ - "\u0000\u0000\u0000\u04b9\u04ba\u0005\n\u0000\u0000\u04ba\u00b9\u0001\u0000"+ - "\u0000\u0000\u04bb\u04bd\u0003\u00bc^\u0000\u04bc\u04bb\u0001\u0000\u0000"+ - "\u0000\u04bd\u04be\u0001\u0000\u0000\u0000\u04be\u04bc\u0001\u0000\u0000"+ - "\u0000\u04be\u04bf\u0001\u0000\u0000\u0000\u04bf\u00bb\u0001\u0000\u0000"+ - "\u0000\u04c0\u04c1\u0005J\u0000\u0000\u04c1\u04c2\u0003\u0110\u0088\u0000"+ - "\u04c2\u04c4\u0005\u0010\u0000\u0000\u04c3\u04c5\u0003z=\u0000\u04c4\u04c3"+ - "\u0001\u0000\u0000\u0000\u04c4\u04c5\u0001\u0000\u0000\u0000\u04c5\u00bd"+ - "\u0001\u0000\u0000\u0000\u04c6\u04c7\u0005Z\u0000\u0000\u04c7\u04c9\u0005"+ - "\u0010\u0000\u0000\u04c8\u04ca\u0003z=\u0000\u04c9\u04c8\u0001\u0000\u0000"+ - "\u0000\u04c9\u04ca\u0001\u0000\u0000\u0000\u04ca\u00bf\u0001\u0000\u0000"+ - "\u0000\u04cb\u04cc\u0003\u0132\u0099\u0000\u04cc\u04cd\u0005\u0010\u0000"+ - "\u0000\u04cd\u04ce\u0003v;\u0000\u04ce\u00c1\u0001\u0000\u0000\u0000\u04cf"+ - "\u04d0\u0005\\\u0000\u0000\u04d0\u04d1\u0004a\r\u0000\u04d1\u04d2\u0003"+ - "\u0110\u0088\u0000\u04d2\u04d3\u0003\u013a\u009d\u0000\u04d3\u00c3\u0001"+ - "\u0000\u0000\u0000\u04d4\u04d5\u0005_\u0000\u0000\u04d5\u04db\u0003x<"+ - "\u0000\u04d6\u04d8\u0003\u00c6c\u0000\u04d7\u04d9\u0003\u00c8d\u0000\u04d8"+ - "\u04d7\u0001\u0000\u0000\u0000\u04d8\u04d9\u0001\u0000\u0000\u0000\u04d9"+ - "\u04dc\u0001\u0000\u0000\u0000\u04da\u04dc\u0003\u00c8d\u0000\u04db\u04d6"+ - "\u0001\u0000\u0000\u0000\u04db\u04da\u0001\u0000\u0000\u0000\u04dc\u00c5"+ - "\u0001\u0000\u0000\u0000\u04dd\u04e5\u0005N\u0000\u0000\u04de\u04df\u0005"+ - "\u0006\u0000\u0000\u04df\u04e1\u0003\u0132\u0099\u0000\u04e0\u04e2\u0003"+ - "8\u001c\u0000\u04e1\u04e0\u0001\u0000\u0000\u0000\u04e1\u04e2\u0001\u0000"+ - "\u0000\u0000\u04e2\u04e3\u0001\u0000\u0000\u0000\u04e3\u04e4\u0005\u0007"+ - "\u0000\u0000\u04e4\u04e6\u0001\u0000\u0000\u0000\u04e5\u04de\u0001\u0000"+ - "\u0000\u0000\u04e5\u04e6\u0001\u0000\u0000\u0000\u04e6\u04e7\u0001\u0000"+ - "\u0000\u0000\u04e7\u04e8\u0003x<\u0000\u04e8\u00c7\u0001\u0000\u0000\u0000"+ - "\u04e9\u04ea\u0005O\u0000\u0000\u04ea\u04eb\u0003x<\u0000\u04eb\u00c9"+ - "\u0001\u0000\u0000\u0000\u04ec\u04ed\u0005V\u0000\u0000\u04ed\u04ee\u0003"+ - "\u013a\u009d\u0000\u04ee\u00cb\u0001\u0000\u0000\u0000\u04ef\u04f1\u0005"+ - "c\u0000\u0000\u04f0\u04ef\u0001\u0000\u0000\u0000\u04f0\u04f1\u0001\u0000"+ - "\u0000\u0000\u04f1\u04f2\u0001\u0000\u0000\u0000\u04f2\u04f4\u0005W\u0000"+ - "\u0000\u04f3\u04f5\u0005\u0019\u0000\u0000\u04f4\u04f3\u0001\u0000\u0000"+ - "\u0000\u04f4\u04f5\u0001\u0000\u0000\u0000\u04f5\u04f6\u0001\u0000\u0000"+ - "\u0000\u04f6\u04f7\u0003\u0132\u0099\u0000\u04f7\u04fd\u0003:\u001d\u0000"+ - "\u04f8\u04f9\u0005\b\u0000\u0000\u04f9\u04fa\u0003\u00f6{\u0000\u04fa"+ - "\u04fb\u0005\n\u0000\u0000\u04fb\u04fe\u0001\u0000\u0000\u0000\u04fc\u04fe"+ - "\u0005\u000b\u0000\u0000\u04fd\u04f8\u0001\u0000\u0000\u0000\u04fd\u04fc"+ - "\u0001\u0000\u0000\u0000\u04fe\u00cd\u0001\u0000\u0000\u0000\u04ff\u0501"+ - "\u0003j5\u0000\u0500\u04ff\u0001\u0000\u0000\u0000\u0500\u0501\u0001\u0000"+ - "\u0000\u0000\u0501\u0506\u0001\u0000\u0000\u0000\u0502\u0504\u0005l\u0000"+ - "\u0000\u0503\u0505\u0005Z\u0000\u0000\u0504\u0503\u0001\u0000\u0000\u0000"+ - "\u0504\u0505\u0001\u0000\u0000\u0000\u0505\u0507\u0001\u0000\u0000\u0000"+ - "\u0506\u0502\u0001\u0000\u0000\u0000\u0506\u0507\u0001\u0000\u0000\u0000"+ - "\u0507\u0509\u0001\u0000\u0000\u0000\u0508\u050a\u0005\u0087\u0000\u0000"+ - "\u0509\u0508\u0001\u0000\u0000\u0000\u0509\u050a\u0001\u0000\u0000\u0000"+ - "\u050a\u050b\u0001\u0000\u0000\u0000\u050b\u050c\u0005g\u0000\u0000\u050c"+ - "\u050e\u0003\u0132\u0099\u0000\u050d\u050f\u0003\u0004\u0002\u0000\u050e"+ - "\u050d\u0001\u0000\u0000\u0000\u050e\u050f\u0001\u0000\u0000\u0000\u050f"+ - "\u0510\u0001\u0000\u0000\u0000\u0510\u0511\u0003\u00d0h\u0000\u0511\u0512"+ - "\u0003\u00d2i\u0000\u0512\u00cf\u0001\u0000\u0000\u0000\u0513\u0515\u0003"+ - "\u00d4j\u0000\u0514\u0513\u0001\u0000\u0000\u0000\u0514\u0515\u0001\u0000"+ - "\u0000\u0000\u0515\u0517\u0001\u0000\u0000\u0000\u0516\u0518\u0003\u00d6"+ - "k\u0000\u0517\u0516\u0001\u0000\u0000\u0000\u0517\u0518\u0001\u0000\u0000"+ - "\u0000\u0518\u00d1\u0001\u0000\u0000\u0000\u0519\u051d\u0005\b\u0000\u0000"+ - "\u051a\u051c\u0003\u00d8l\u0000\u051b\u051a\u0001\u0000\u0000\u0000\u051c"+ - "\u051f\u0001\u0000\u0000\u0000\u051d\u051b\u0001\u0000\u0000\u0000\u051d"+ - "\u051e\u0001\u0000\u0000\u0000\u051e\u0520\u0001\u0000\u0000\u0000\u051f"+ - "\u051d\u0001\u0000\u0000\u0000\u0520\u0521\u0005\n\u0000\u0000\u0521\u00d3"+ - "\u0001\u0000\u0000\u0000\u0522\u0523\u0005i\u0000\u0000\u0523\u0524\u0003"+ - "\u001a\r\u0000\u0524\u00d5\u0001\u0000\u0000\u0000\u0525\u0526\u0005n"+ - "\u0000\u0000\u0526\u0527\u0003Z-\u0000\u0527\u00d7\u0001\u0000\u0000\u0000"+ - "\u0528\u0530\u0003T*\u0000\u0529\u052b\u0003j5\u0000\u052a\u0529\u0001"+ - "\u0000\u0000\u0000\u052a\u052b\u0001\u0000\u0000\u0000\u052b\u052c\u0001"+ - "\u0000\u0000\u0000\u052c\u0530\u0003\u00dam\u0000\u052d\u0530\u0003\u00de"+ - "o\u0000\u052e\u0530\u0003v;\u0000\u052f\u0528\u0001\u0000\u0000\u0000"+ - "\u052f\u052a\u0001\u0000\u0000\u0000\u052f\u052d\u0001\u0000\u0000\u0000"+ - "\u052f\u052e\u0001\u0000\u0000\u0000\u0530\u00d9\u0001\u0000\u0000\u0000"+ - "\u0531\u0532\u0003\u00dcn\u0000\u0532\u0534\u0003\u0108\u0084\u0000\u0533"+ - "\u0535\u0005\u000e\u0000\u0000\u0534\u0533\u0001\u0000\u0000\u0000\u0534"+ - "\u0535\u0001\u0000\u0000\u0000\u0535\u0537\u0001\u0000\u0000\u0000\u0536"+ - "\u0538\u00038\u001c\u0000\u0537\u0536\u0001\u0000\u0000\u0000\u0537\u0538"+ - "\u0001\u0000\u0000\u0000\u0538\u053a\u0001\u0000\u0000\u0000\u0539\u053b"+ - "\u0003\u0000\u0000\u0000\u053a\u0539\u0001\u0000\u0000\u0000\u053a\u053b"+ - "\u0001\u0000\u0000\u0000\u053b\u053c\u0001\u0000\u0000\u0000\u053c\u053d"+ - "\u0005\u000b\u0000\u0000\u053d\u054f\u0001\u0000\u0000\u0000\u053e\u053f"+ - "\u0003\u00dcn\u0000\u053f\u0540\u0003\u0108\u0084\u0000\u0540\u0546\u0003"+ - ":\u001d\u0000\u0541\u0542\u0005\b\u0000\u0000\u0542\u0543\u0003\u00f6"+ - "{\u0000\u0543\u0544\u0005\n\u0000\u0000\u0544\u0547\u0001\u0000\u0000"+ - "\u0000\u0545\u0547\u0005\u000b\u0000\u0000\u0546\u0541\u0001\u0000\u0000"+ - "\u0000\u0546\u0545\u0001\u0000\u0000\u0000\u0547\u054f\u0001\u0000\u0000"+ - "\u0000\u0548\u054b\u0003\u00dcn\u0000\u0549\u054c\u0003\u0104\u0082\u0000"+ - "\u054a\u054c\u0003\u0106\u0083\u0000\u054b\u0549\u0001\u0000\u0000\u0000"+ - "\u054b\u054a\u0001\u0000\u0000\u0000\u054c\u054f\u0001\u0000\u0000\u0000"+ - "\u054d\u054f\u0003|>\u0000\u054e\u0531\u0001\u0000\u0000\u0000\u054e\u053e"+ - "\u0001\u0000\u0000\u0000\u054e\u0548\u0001\u0000\u0000\u0000\u054e\u054d"+ - "\u0001\u0000\u0000\u0000\u054f\u00db\u0001\u0000\u0000\u0000\u0550\u0552"+ - "\u0003H$\u0000\u0551\u0550\u0001\u0000\u0000\u0000\u0551\u0552\u0001\u0000"+ - "\u0000\u0000\u0552\u0554\u0001\u0000\u0000\u0000\u0553\u0555\u0005c\u0000"+ - "\u0000\u0554\u0553\u0001\u0000\u0000\u0000\u0554\u0555\u0001\u0000\u0000"+ - "\u0000\u0555\u0557\u0001\u0000\u0000\u0000\u0556\u0558\u0005u\u0000\u0000"+ - "\u0557\u0556\u0001\u0000\u0000\u0000\u0557\u0558\u0001\u0000\u0000\u0000"+ - "\u0558\u055a\u0001\u0000\u0000\u0000\u0559\u055b\u0005b\u0000\u0000\u055a"+ - "\u0559\u0001\u0000\u0000\u0000\u055a\u055b\u0001\u0000\u0000\u0000\u055b"+ - "\u00dd\u0001\u0000\u0000\u0000\u055c\u055d\u0003N\'\u0000\u055d\u055e"+ - "\u0005\u000b\u0000\u0000\u055e\u00df\u0001\u0000\u0000\u0000\u055f\u0560"+ - "\u0005c\u0000\u0000\u0560\u0562\u0004p\u000e\u0000\u0561\u055f\u0001\u0000"+ - "\u0000\u0000\u0561\u0562\u0001\u0000\u0000\u0000\u0562\u0564\u0001\u0000"+ - "\u0000\u0000\u0563\u0565\u0005\u0019\u0000\u0000\u0564\u0563\u0001\u0000"+ - "\u0000\u0000\u0564\u0565\u0001\u0000\u0000\u0000\u0565\u0566\u0001\u0000"+ - "\u0000\u0000\u0566\u0567\u0003\u0108\u0084\u0000\u0567\u0569\u0005\u0006"+ - "\u0000\u0000\u0568\u056a\u0003\u00f0x\u0000\u0569\u0568\u0001\u0000\u0000"+ - "\u0000\u0569\u056a\u0001\u0000\u0000\u0000\u056a\u056b\u0001\u0000\u0000"+ - "\u0000\u056b\u056c\u0005\u0007\u0000\u0000\u056c\u056d\u0005\b\u0000\u0000"+ - "\u056d\u056e\u0003\u00f6{\u0000\u056e\u056f\u0005\n\u0000\u0000\u056f"+ - "\u00e1\u0001\u0000\u0000\u0000\u0570\u0572\u0005c\u0000\u0000\u0571\u0570"+ - "\u0001\u0000\u0000\u0000\u0571\u0572\u0001\u0000\u0000\u0000\u0572\u0573"+ - "\u0001\u0000\u0000\u0000\u0573\u0574\u0005W\u0000\u0000\u0574\u0576\u0005"+ - "\u0019\u0000\u0000\u0575\u0577\u0003\u0132\u0099\u0000\u0576\u0575\u0001"+ - "\u0000\u0000\u0000\u0576\u0577\u0001\u0000\u0000\u0000\u0577\u0578\u0001"+ - "\u0000\u0000\u0000\u0578\u057a\u0005\u0006\u0000\u0000\u0579\u057b\u0003"+ - "\u00f0x\u0000\u057a\u0579\u0001\u0000\u0000\u0000\u057a\u057b\u0001\u0000"+ - "\u0000\u0000\u057b\u057c\u0001\u0000\u0000\u0000\u057c\u057d\u0005\u0007"+ - "\u0000\u0000\u057d\u057e\u0005\b\u0000\u0000\u057e\u057f\u0003\u00f6{"+ - "\u0000\u057f\u0580\u0005\n\u0000\u0000\u0580\u00e3\u0001\u0000\u0000\u0000"+ - "\u0581\u0582\u0005\b\u0000\u0000\u0582\u0587\u0003\u00e6s\u0000\u0583"+ - "\u0584\u0005\f\u0000\u0000\u0584\u0586\u0003\u00e6s\u0000\u0585\u0583"+ - "\u0001\u0000\u0000\u0000\u0586\u0589\u0001\u0000\u0000\u0000\u0587\u0585"+ - "\u0001\u0000\u0000\u0000\u0587\u0588\u0001\u0000\u0000\u0000\u0588\u058b"+ - "\u0001\u0000\u0000\u0000\u0589\u0587\u0001\u0000\u0000\u0000\u058a\u058c"+ - "\u0005\f\u0000\u0000\u058b\u058a\u0001\u0000\u0000\u0000\u058b\u058c\u0001"+ - "\u0000\u0000\u0000\u058c\u058d\u0001\u0000\u0000\u0000\u058d\u058e\u0005"+ - "\n\u0000\u0000\u058e\u00e5\u0001\u0000\u0000\u0000\u058f\u0590\u0005\u0019"+ - "\u0000\u0000\u0590\u0591\u0003\u00eau\u0000\u0591\u00e7\u0001\u0000\u0000"+ - "\u0000\u0592\u0593\u0005\b\u0000\u0000\u0593\u0598\u0003\u00eau\u0000"+ - "\u0594\u0595\u0005\f\u0000\u0000\u0595\u0597\u0003\u00eau\u0000\u0596"+ - "\u0594\u0001\u0000\u0000\u0000\u0597\u059a\u0001\u0000\u0000\u0000\u0598"+ - "\u0596\u0001\u0000\u0000\u0000\u0598\u0599\u0001\u0000\u0000\u0000\u0599"+ - "\u059c\u0001\u0000\u0000\u0000\u059a\u0598\u0001\u0000\u0000\u0000\u059b"+ - "\u059d\u0005\f\u0000\u0000\u059c\u059b\u0001\u0000\u0000\u0000\u059c\u059d"+ - "\u0001\u0000\u0000\u0000\u059d\u059e\u0001\u0000\u0000\u0000\u059e\u059f"+ - "\u0005\n\u0000\u0000\u059f\u00e9\u0001\u0000\u0000\u0000\u05a0\u05a1\u0005"+ - "\u0004\u0000\u0000\u05a1\u05a2\u0003\u0112\u0089\u0000\u05a2\u05a3\u0005"+ - "\u0005\u0000\u0000\u05a3\u05a5\u0005\u0006\u0000\u0000\u05a4\u05a6\u0003"+ - "\u00f0x\u0000\u05a5\u05a4\u0001\u0000\u0000\u0000\u05a5\u05a6\u0001\u0000"+ - "\u0000\u0000\u05a6\u05a7\u0001\u0000\u0000\u0000\u05a7\u05a8\u0005\u0007"+ - "\u0000\u0000\u05a8\u05a9\u0005\b\u0000\u0000\u05a9\u05aa\u0003\u00f6{"+ - "\u0000\u05aa\u05ab\u0005\n\u0000\u0000\u05ab\u00eb\u0001\u0000\u0000\u0000"+ - "\u05ac\u05af\u0003\u0108\u0084\u0000\u05ad\u05af\u0003\u00eew\u0000\u05ae"+ - "\u05ac\u0001\u0000\u0000\u0000\u05ae\u05ad\u0001\u0000\u0000\u0000\u05af"+ - "\u00ed\u0001\u0000\u0000\u0000\u05b0\u05b1\u0005\u001e\u0000\u0000\u05b1"+ - "\u05b2\u0003\u0130\u0098\u0000\u05b2\u00ef\u0001\u0000\u0000\u0000\u05b3"+ - "\u05b8\u0003\u00f2y\u0000\u05b4\u05b5\u0005\f\u0000\u0000\u05b5\u05b7"+ - "\u0003\u00f2y\u0000\u05b6\u05b4\u0001\u0000\u0000\u0000\u05b7\u05ba\u0001"+ - "\u0000\u0000\u0000\u05b8\u05b6\u0001\u0000\u0000\u0000\u05b8\u05b9\u0001"+ - "\u0000\u0000\u0000\u05b9\u05bd\u0001\u0000\u0000\u0000\u05ba\u05b8\u0001"+ - "\u0000\u0000\u0000\u05bb\u05bc\u0005\f\u0000\u0000\u05bc\u05be\u0003\u00f4"+ - "z\u0000\u05bd\u05bb\u0001\u0000\u0000\u0000\u05bd\u05be\u0001\u0000\u0000"+ - "\u0000\u05be\u05c0\u0001\u0000\u0000\u0000\u05bf\u05c1\u0005\f\u0000\u0000"+ - "\u05c0\u05bf\u0001\u0000\u0000\u0000\u05c0\u05c1\u0001\u0000\u0000\u0000"+ - "\u05c1\u05ca\u0001\u0000\u0000\u0000\u05c2\u05ca\u0003\u00f4z\u0000\u05c3"+ - "\u05ca\u0003\u00fa}\u0000\u05c4\u05c7\u0003\u0100\u0080\u0000\u05c5\u05c6"+ - "\u0005\u0010\u0000\u0000\u05c6\u05c8\u0003\u00f0x\u0000\u05c7\u05c5\u0001"+ - "\u0000\u0000\u0000\u05c7\u05c8\u0001\u0000\u0000\u0000\u05c8\u05ca\u0001"+ - "\u0000\u0000\u0000\u05c9\u05b3\u0001\u0000\u0000\u0000\u05c9\u05c2\u0001"+ - "\u0000\u0000\u0000\u05c9\u05c3\u0001\u0000\u0000\u0000\u05c9\u05c4\u0001"+ - "\u0000\u0000\u0000\u05ca\u00f1\u0001\u0000\u0000\u0000\u05cb\u05cd\u0003"+ - "l6\u0000\u05cc\u05cb\u0001\u0000\u0000\u0000\u05cc\u05cd\u0001\u0000\u0000"+ - "\u0000\u05cd\u05cf\u0001\u0000\u0000\u0000\u05ce\u05d0\u0003H$\u0000\u05cf"+ - "\u05ce\u0001\u0000\u0000\u0000\u05cf\u05d0\u0001\u0000\u0000\u0000\u05d0"+ - "\u05d1\u0001\u0000\u0000\u0000\u05d1\u05d3\u0003\u0116\u008b\u0000\u05d2"+ - "\u05d4\u0005\u000e\u0000\u0000\u05d3\u05d2\u0001\u0000\u0000\u0000\u05d3"+ - "\u05d4\u0001\u0000\u0000\u0000\u05d4\u05d6\u0001\u0000\u0000\u0000\u05d5"+ - "\u05d7\u00038\u001c\u0000\u05d6\u05d5\u0001\u0000\u0000\u0000\u05d6\u05d7"+ - "\u0001\u0000\u0000\u0000\u05d7\u05da\u0001\u0000\u0000\u0000\u05d8\u05d9"+ - "\u0005\r\u0000\u0000\u05d9\u05db\u0003\u0112\u0089\u0000\u05da\u05d8\u0001"+ - "\u0000\u0000\u0000\u05da\u05db\u0001\u0000\u0000\u0000\u05db\u00f3\u0001"+ - "\u0000\u0000\u0000\u05dc\u05dd\u0005\u0011\u0000\u0000\u05dd\u05df\u0003"+ - "\u0132\u0099\u0000\u05de\u05e0\u00038\u001c\u0000\u05df\u05de\u0001\u0000"+ - "\u0000\u0000\u05df\u05e0\u0001\u0000\u0000\u0000\u05e0\u00f5\u0001\u0000"+ - "\u0000\u0000\u05e1\u05e3\u0003\u00f8|\u0000\u05e2\u05e1\u0001\u0000\u0000"+ - "\u0000\u05e2\u05e3\u0001\u0000\u0000\u0000\u05e3\u00f7\u0001\u0000\u0000"+ - "\u0000\u05e4\u05e6\u0003t:\u0000\u05e5\u05e4\u0001\u0000\u0000\u0000\u05e6"+ - "\u05e7\u0001\u0000\u0000\u0000\u05e7\u05e5\u0001\u0000\u0000\u0000\u05e7"+ - "\u05e8\u0001\u0000\u0000\u0000\u05e8\u00f9\u0001\u0000\u0000\u0000\u05e9"+ - "\u05ea\u0005\u0004\u0000\u0000\u05ea\u05eb\u0003\u00fc~\u0000\u05eb\u05ec"+ - "\u0005\u0005\u0000\u0000\u05ec\u00fb\u0001\u0000\u0000\u0000\u05ed\u05ef"+ - "\u0005\f\u0000\u0000\u05ee\u05ed\u0001\u0000\u0000\u0000\u05ef\u05f2\u0001"+ - "\u0000\u0000\u0000\u05f0\u05ee\u0001\u0000\u0000\u0000\u05f0\u05f1\u0001"+ - "\u0000\u0000\u0000\u05f1\u05f4\u0001\u0000\u0000\u0000\u05f2\u05f0\u0001"+ - "\u0000\u0000\u0000\u05f3\u05f5\u0003\u00fe\u007f\u0000\u05f4\u05f3\u0001"+ - "\u0000\u0000\u0000\u05f4\u05f5\u0001\u0000\u0000\u0000\u05f5\u05fe\u0001"+ - "\u0000\u0000\u0000\u05f6\u05f8\u0005\f\u0000\u0000\u05f7\u05f6\u0001\u0000"+ - "\u0000\u0000\u05f8\u05f9\u0001\u0000\u0000\u0000\u05f9\u05f7\u0001\u0000"+ - "\u0000\u0000\u05f9\u05fa\u0001\u0000\u0000\u0000\u05fa\u05fb\u0001\u0000"+ - "\u0000\u0000\u05fb\u05fd\u0003\u00fe\u007f\u0000\u05fc\u05f7\u0001\u0000"+ - "\u0000\u0000\u05fd\u0600\u0001\u0000\u0000\u0000\u05fe\u05fc\u0001\u0000"+ - "\u0000\u0000\u05fe\u05ff\u0001\u0000\u0000\u0000\u05ff\u0604\u0001\u0000"+ - "\u0000\u0000\u0600\u05fe\u0001\u0000\u0000\u0000\u0601\u0603\u0005\f\u0000"+ - "\u0000\u0602\u0601\u0001\u0000\u0000\u0000\u0603\u0606\u0001\u0000\u0000"+ - "\u0000\u0604\u0602\u0001\u0000\u0000\u0000\u0604\u0605\u0001\u0000\u0000"+ - "\u0000\u0605\u00fd\u0001\u0000\u0000\u0000\u0606\u0604\u0001\u0000\u0000"+ - "\u0000\u0607\u0609\u0005\u0011\u0000\u0000\u0608\u0607\u0001\u0000\u0000"+ - "\u0000\u0608\u0609\u0001\u0000\u0000\u0000\u0609\u060c\u0001\u0000\u0000"+ - "\u0000\u060a\u060d\u0003\u0112\u0089\u0000\u060b\u060d\u0003\u0132\u0099"+ - "\u0000\u060c\u060a\u0001\u0000\u0000\u0000\u060c\u060b\u0001\u0000\u0000"+ - "\u0000\u060d\u060f\u0001\u0000\u0000\u0000\u060e\u0610\u0005\f\u0000\u0000"+ - "\u060f\u060e\u0001\u0000\u0000\u0000\u060f\u0610\u0001\u0000\u0000\u0000"+ - "\u0610\u00ff\u0001\u0000\u0000\u0000\u0611\u061d\u0005\b\u0000\u0000\u0612"+ - "\u0617\u0003\u0102\u0081\u0000\u0613\u0614\u0005\f\u0000\u0000\u0614\u0616"+ - "\u0003\u0102\u0081\u0000\u0615\u0613\u0001\u0000\u0000\u0000\u0616\u0619"+ - "\u0001\u0000\u0000\u0000\u0617\u0615\u0001\u0000\u0000\u0000\u0617\u0618"+ - "\u0001\u0000\u0000\u0000\u0618\u061b\u0001\u0000\u0000\u0000\u0619\u0617"+ - "\u0001\u0000\u0000\u0000\u061a\u061c\u0005\f\u0000\u0000\u061b\u061a\u0001"+ - "\u0000\u0000\u0000\u061b\u061c\u0001\u0000\u0000\u0000\u061c\u061e\u0001"+ - "\u0000\u0000\u0000\u061d\u0612\u0001\u0000\u0000\u0000\u061d\u061e\u0001"+ - "\u0000\u0000\u0000\u061e\u061f\u0001\u0000\u0000\u0000\u061f\u0620\u0005"+ - "\n\u0000\u0000\u0620\u0101\u0001\u0000\u0000\u0000\u0621\u0622\u0003\u0108"+ - "\u0084\u0000\u0622\u0623\u0007\u0007\u0000\u0000\u0623\u0624\u0003\u0112"+ - "\u0089\u0000\u0624\u0635\u0001\u0000\u0000\u0000\u0625\u0626\u0005\u0004"+ - "\u0000\u0000\u0626\u0627\u0003\u0112\u0089\u0000\u0627\u0628\u0005\u0005"+ - "\u0000\u0000\u0628\u0629\u0005\u0010\u0000\u0000\u0629\u062a\u0003\u0112"+ - "\u0089\u0000\u062a\u0635\u0001\u0000\u0000\u0000\u062b\u0635\u0003\u0104"+ - "\u0082\u0000\u062c\u0635\u0003\u0106\u0083\u0000\u062d\u0635\u0003\u00e0"+ - "p\u0000\u062e\u0635\u0003\u0134\u009a\u0000\u062f\u0631\u0005\u0011\u0000"+ - "\u0000\u0630\u062f\u0001\u0000\u0000\u0000\u0630\u0631\u0001\u0000\u0000"+ - "\u0000\u0631\u0632\u0001\u0000\u0000\u0000\u0632\u0635\u0003\u0112\u0089"+ - "\u0000\u0633\u0635\u0003D\"\u0000\u0634\u0621\u0001\u0000\u0000\u0000"+ - "\u0634\u0625\u0001\u0000\u0000\u0000\u0634\u062b\u0001\u0000\u0000\u0000"+ - "\u0634\u062c\u0001\u0000\u0000\u0000\u0634\u062d\u0001\u0000\u0000\u0000"+ - "\u0634\u062e\u0001\u0000\u0000\u0000\u0634\u0630\u0001\u0000\u0000\u0000"+ - "\u0634\u0633\u0001\u0000\u0000\u0000\u0635\u0103\u0001\u0000\u0000\u0000"+ - "\u0636\u0637\u0003\u012c\u0096\u0000\u0637\u0638\u0005\u0006\u0000\u0000"+ - "\u0638\u063a\u0005\u0007\u0000\u0000\u0639\u063b\u00038\u001c\u0000\u063a"+ - "\u0639\u0001\u0000\u0000\u0000\u063a\u063b\u0001\u0000\u0000\u0000\u063b"+ - "\u063c\u0001\u0000\u0000\u0000\u063c\u063d\u0005\b\u0000\u0000\u063d\u063e"+ - "\u0003\u00f6{\u0000\u063e\u063f\u0005\n\u0000\u0000\u063f\u0105\u0001"+ - "\u0000\u0000\u0000\u0640\u0641\u0003\u012e\u0097\u0000\u0641\u0643\u0005"+ - "\u0006\u0000\u0000\u0642\u0644\u0003\u00f0x\u0000\u0643\u0642\u0001\u0000"+ - "\u0000\u0000\u0643\u0644\u0001\u0000\u0000\u0000\u0644\u0645\u0001\u0000"+ - "\u0000\u0000\u0645\u0646\u0005\u0007\u0000\u0000\u0646\u0647\u0005\b\u0000"+ - "\u0000\u0647\u0648\u0003\u00f6{\u0000\u0648\u0649\u0005\n\u0000\u0000"+ - "\u0649\u0107\u0001\u0000\u0000\u0000\u064a\u0652\u0003\u0130\u0098\u0000"+ - "\u064b\u0652\u0005\u008b\u0000\u0000\u064c\u0652\u0003\u0128\u0094\u0000"+ - "\u064d\u064e\u0005\u0004\u0000\u0000\u064e\u064f\u0003\u0112\u0089\u0000"+ - "\u064f\u0650\u0005\u0005\u0000\u0000\u0650\u0652\u0001\u0000\u0000\u0000"+ - "\u0651\u064a\u0001\u0000\u0000\u0000\u0651\u064b\u0001\u0000\u0000\u0000"+ - "\u0651\u064c\u0001\u0000\u0000\u0000\u0651\u064d\u0001\u0000\u0000\u0000"+ - "\u0652\u0109\u0001\u0000\u0000\u0000\u0653\u0658\u0005\u0006\u0000\u0000"+ - "\u0654\u0656\u0003\u010c\u0086\u0000\u0655\u0657\u0005\f\u0000\u0000\u0656"+ - "\u0655\u0001\u0000\u0000\u0000\u0656\u0657\u0001\u0000\u0000\u0000\u0657"+ - "\u0659\u0001\u0000\u0000\u0000\u0658\u0654\u0001\u0000\u0000\u0000\u0658"+ - "\u0659\u0001\u0000\u0000\u0000\u0659\u065a\u0001\u0000\u0000\u0000\u065a"+ - "\u065b\u0005\u0007\u0000\u0000\u065b\u010b\u0001\u0000\u0000\u0000\u065c"+ - "\u0661\u0003\u010e\u0087\u0000\u065d\u065e\u0005\f\u0000\u0000\u065e\u0660"+ - "\u0003\u010e\u0087\u0000\u065f\u065d\u0001\u0000\u0000\u0000\u0660\u0663"+ - "\u0001\u0000\u0000\u0000\u0661\u065f\u0001\u0000\u0000\u0000\u0661\u0662"+ - "\u0001\u0000\u0000\u0000\u0662\u010d\u0001\u0000\u0000\u0000\u0663\u0661"+ - "\u0001\u0000\u0000\u0000\u0664\u0666\u0005\u0011\u0000\u0000\u0665\u0664"+ - "\u0001\u0000\u0000\u0000\u0665\u0666\u0001\u0000\u0000\u0000\u0666\u0669"+ - "\u0001\u0000\u0000\u0000\u0667\u066a\u0003\u0112\u0089\u0000\u0668\u066a"+ - "\u0003\u0132\u0099\u0000\u0669\u0667\u0001\u0000\u0000\u0000\u0669\u0668"+ - "\u0001\u0000\u0000\u0000\u066a\u010f\u0001\u0000\u0000\u0000\u066b\u0670"+ - "\u0003\u0112\u0089\u0000\u066c\u066d\u0005\f\u0000\u0000\u066d\u066f\u0003"+ - "\u0112\u0089\u0000\u066e\u066c\u0001\u0000\u0000\u0000\u066f\u0672\u0001"+ - "\u0000\u0000\u0000\u0670\u066e\u0001\u0000\u0000\u0000\u0670\u0671\u0001"+ - "\u0000\u0000\u0000\u0671\u0111\u0001\u0000\u0000\u0000\u0672\u0670\u0001"+ - "\u0000\u0000\u0000\u0673\u0674\u0006\u0089\uffff\uffff\u0000\u0674\u06b5"+ - "\u0003\u0118\u008c\u0000\u0675\u0677\u0005g\u0000\u0000\u0676\u0678\u0003"+ - "\u0132\u0099\u0000\u0677\u0676\u0001\u0000\u0000\u0000\u0677\u0678\u0001"+ - "\u0000\u0000\u0000\u0678\u067a\u0001\u0000\u0000\u0000\u0679\u067b\u0003"+ - "\u0004\u0002\u0000\u067a\u0679\u0001\u0000\u0000\u0000\u067a\u067b\u0001"+ - "\u0000\u0000\u0000\u067b\u067c\u0001\u0000\u0000\u0000\u067c\u067d\u0003"+ - "\u00d0h\u0000\u067d\u067e\u0003\u00d2i\u0000\u067e\u06b5\u0001\u0000\u0000"+ - "\u0000\u067f\u0680\u0005L\u0000\u0000\u0680\u0682\u0003\u0112\u0089\u0000"+ - "\u0681\u0683\u0003\f\u0006\u0000\u0682\u0681\u0001\u0000\u0000\u0000\u0682"+ - "\u0683\u0001\u0000\u0000\u0000\u0683\u0684\u0001\u0000\u0000\u0000\u0684"+ - "\u0685\u0003\u010a\u0085\u0000\u0685\u06b5\u0001\u0000\u0000\u0000\u0686"+ - "\u0687\u0005L\u0000\u0000\u0687\u0689\u0003\u0112\u0089\u0000\u0688\u068a"+ - "\u0003\f\u0006\u0000\u0689\u0688\u0001\u0000\u0000\u0000\u0689\u068a\u0001"+ - "\u0000\u0000\u0000\u068a\u06b5\u0001\u0000\u0000\u0000\u068b\u068c\u0005"+ - "]\u0000\u0000\u068c\u06b5\u0003\u0112\u0089*\u068d\u068e\u0005Q\u0000"+ - "\u0000\u068e\u06b5\u0003\u0112\u0089)\u068f\u0690\u0005I\u0000\u0000\u0690"+ - "\u06b5\u0003\u0112\u0089(\u0691\u0692\u0005\u0013\u0000\u0000\u0692\u06b5"+ - "\u0003\u0112\u0089\'\u0693\u0694\u0005\u0014\u0000\u0000\u0694\u06b5\u0003"+ - "\u0112\u0089&\u0695\u0696\u0005\u0015\u0000\u0000\u0696\u06b5\u0003\u0112"+ - "\u0089%\u0697\u0698\u0005\u0016\u0000\u0000\u0698\u06b5\u0003\u0112\u0089"+ - "$\u0699\u069a\u0005\u0017\u0000\u0000\u069a\u06b5\u0003\u0112\u0089#\u069b"+ - "\u069c\u0005\u0018\u0000\u0000\u069c\u06b5\u0003\u0112\u0089\"\u069d\u069e"+ - "\u0005d\u0000\u0000\u069e\u06b5\u0003\u0112\u0089!\u069f\u06b5\u0003\u00e8"+ - "t\u0000\u06a0\u06b5\u0003\u00e4r\u0000\u06a1\u06b5\u0003\u00e2q\u0000"+ - "\u06a2\u06b5\u0003\u00b2Y\u0000\u06a3\u06b5\u0005X\u0000\u0000\u06a4\u06a6"+ - "\u0003\u0130\u0098\u0000\u06a5\u06a7\u0003\u0112\u0089\u0000\u06a6\u06a5"+ - "\u0001\u0000\u0000\u0000\u06a6\u06a7\u0001\u0000\u0000\u0000\u06a7\u06b5"+ - "\u0001\u0000\u0000\u0000\u06a8\u06b5\u0005j\u0000\u0000\u06a9\u06b5\u0003"+ - "\u0122\u0091\u0000\u06aa\u06b5\u0003\u00fa}\u0000\u06ab\u06b5\u0003\u0100"+ - "\u0080\u0000\u06ac\u06ad\u0005\u0006\u0000\u0000\u06ad\u06ae\u0003\u0110"+ - "\u0088\u0000\u06ae\u06af\u0005\u0007\u0000\u0000\u06af\u06b5\u0001\u0000"+ - "\u0000\u0000\u06b0\u06b2\u0003\f\u0006\u0000\u06b1\u06b3\u0003\u0110\u0088"+ - "\u0000\u06b2\u06b1\u0001\u0000\u0000\u0000\u06b2\u06b3\u0001\u0000\u0000"+ - "\u0000\u06b3\u06b5\u0001\u0000\u0000\u0000\u06b4\u0673\u0001\u0000\u0000"+ - "\u0000\u06b4\u0675\u0001\u0000\u0000\u0000\u06b4\u067f\u0001\u0000\u0000"+ - "\u0000\u06b4\u0686\u0001\u0000\u0000\u0000\u06b4\u068b\u0001\u0000\u0000"+ - "\u0000\u06b4\u068d\u0001\u0000\u0000\u0000\u06b4\u068f\u0001\u0000\u0000"+ - "\u0000\u06b4\u0691\u0001\u0000\u0000\u0000\u06b4\u0693\u0001\u0000\u0000"+ - "\u0000\u06b4\u0695\u0001\u0000\u0000\u0000\u06b4\u0697\u0001\u0000\u0000"+ - "\u0000\u06b4\u0699\u0001\u0000\u0000\u0000\u06b4\u069b\u0001\u0000\u0000"+ - "\u0000\u06b4\u069d\u0001\u0000\u0000\u0000\u06b4\u069f\u0001\u0000\u0000"+ - "\u0000\u06b4\u06a0\u0001\u0000\u0000\u0000\u06b4\u06a1\u0001\u0000\u0000"+ - "\u0000\u06b4\u06a2\u0001\u0000\u0000\u0000\u06b4\u06a3\u0001\u0000\u0000"+ - "\u0000\u06b4\u06a4\u0001\u0000\u0000\u0000\u06b4\u06a8\u0001\u0000\u0000"+ - "\u0000\u06b4\u06a9\u0001\u0000\u0000\u0000\u06b4\u06aa\u0001\u0000\u0000"+ - "\u0000\u06b4\u06ab\u0001\u0000\u0000\u0000\u06b4\u06ac\u0001\u0000\u0000"+ - "\u0000\u06b4\u06b0\u0001\u0000\u0000\u0000\u06b5\u0728\u0001\u0000\u0000"+ - "\u0000\u06b6\u06b7\n2\u0000\u0000\u06b7\u06b8\u0005\u000f\u0000\u0000"+ - "\u06b8\u0727\u0003\u0112\u00893\u06b9\u06ba\n \u0000\u0000\u06ba\u06bb"+ - "\u0005\u001c\u0000\u0000\u06bb\u0727\u0003\u0112\u0089 \u06bc\u06bd\n"+ - "\u001f\u0000\u0000\u06bd\u06be\u0007\b\u0000\u0000\u06be\u0727\u0003\u0112"+ - "\u0089 \u06bf\u06c0\n\u001e\u0000\u0000\u06c0\u06c1\u0007\t\u0000\u0000"+ - "\u06c1\u0727\u0003\u0112\u0089\u001f\u06c2\u06c3\n\u001d\u0000\u0000\u06c3"+ - "\u06c4\u0005\u001d\u0000\u0000\u06c4\u0727\u0003\u0112\u0089\u001e\u06c5"+ - "\u06cc\n\u001c\u0000\u0000\u06c6\u06cd\u0005\u001f\u0000\u0000\u06c7\u06c8"+ - "\u0005!\u0000\u0000\u06c8\u06cd\u0005!\u0000\u0000\u06c9\u06ca\u0005!"+ - "\u0000\u0000\u06ca\u06cb\u0005!\u0000\u0000\u06cb\u06cd\u0005!\u0000\u0000"+ - "\u06cc\u06c6\u0001\u0000\u0000\u0000\u06cc\u06c7\u0001\u0000\u0000\u0000"+ - "\u06cc\u06c9\u0001\u0000\u0000\u0000\u06cd\u06ce\u0001\u0000\u0000\u0000"+ - "\u06ce\u0727\u0003\u0112\u0089\u001d\u06cf\u06d0\n\u001b\u0000\u0000\u06d0"+ - "\u06d1\u0007\n\u0000\u0000\u06d1\u0727\u0003\u0112\u0089\u001c\u06d2\u06d3"+ - "\n\u001a\u0000\u0000\u06d3\u06d4\u0005H\u0000\u0000\u06d4\u0727\u0003"+ - "\u0112\u0089\u001b\u06d5\u06d6\n\u0019\u0000\u0000\u06d6\u06d7\u0005^"+ - "\u0000\u0000\u06d7\u0727\u0003\u0112\u0089\u001a\u06d8\u06d9\n\u0018\u0000"+ - "\u0000\u06d9\u06da\u0007\u000b\u0000\u0000\u06da\u0727\u0003\u0112\u0089"+ - "\u0019\u06db\u06dc\n\u0017\u0000\u0000\u06dc\u06dd\u0005(\u0000\u0000"+ - "\u06dd\u0727\u0003\u0112\u0089\u0018\u06de\u06df\n\u0016\u0000\u0000\u06df"+ - "\u06e0\u0005)\u0000\u0000\u06e0\u0727\u0003\u0112\u0089\u0017\u06e1\u06e2"+ - "\n\u0015\u0000\u0000\u06e2\u06e3\u0005*\u0000\u0000\u06e3\u0727\u0003"+ - "\u0112\u0089\u0016\u06e4\u06e5\n\u0014\u0000\u0000\u06e5\u06e6\u0005+"+ - "\u0000\u0000\u06e6\u0727\u0003\u0112\u0089\u0015\u06e7\u06e8\n\u0013\u0000"+ - "\u0000\u06e8\u06e9\u0005,\u0000\u0000\u06e9\u0727\u0003\u0112\u0089\u0014"+ - "\u06ea\u06eb\n\u0012\u0000\u0000\u06eb\u06ec\u0005\u000e\u0000\u0000\u06ec"+ - "\u06ed\u0003\u0112\u0089\u0000\u06ed\u06ee\u0005\u0010\u0000\u0000\u06ee"+ - "\u06ef\u0003\u0112\u0089\u0013\u06ef\u0727\u0001\u0000\u0000\u0000\u06f0"+ - "\u06f1\n\u0011\u0000\u0000\u06f1\u06f2\u0005\r\u0000\u0000\u06f2\u0727"+ - "\u0003\u0112\u0089\u0012\u06f3\u06f4\n\u0010\u0000\u0000\u06f4\u06f5\u0003"+ - "\u0120\u0090\u0000\u06f5\u06f6\u0003\u0112\u0089\u0011\u06f6\u0727\u0001"+ - "\u0000\u0000\u0000\u06f7\u06f9\n3\u0000\u0000\u06f8\u06fa\u0005\u000f"+ - "\u0000\u0000\u06f9\u06f8\u0001\u0000\u0000\u0000\u06f9\u06fa\u0001\u0000"+ - "\u0000\u0000\u06fa\u06fb\u0001\u0000\u0000\u0000\u06fb\u06fc\u0005\u0004"+ - "\u0000\u0000\u06fc\u06fd\u0003\u0110\u0088\u0000\u06fd\u06fe\u0005\u0005"+ - "\u0000\u0000\u06fe\u0727\u0001\u0000\u0000\u0000\u06ff\u0701\n1\u0000"+ - "\u0000\u0700\u0702\u0005\u0018\u0000\u0000\u0701\u0700\u0001\u0000\u0000"+ - "\u0000\u0701\u0702\u0001\u0000\u0000\u0000\u0702\u0703\u0001\u0000\u0000"+ - "\u0000\u0703\u0705\u0005\u0012\u0000\u0000\u0704\u0706\u0005\u001e\u0000"+ - "\u0000\u0705\u0704\u0001\u0000\u0000\u0000\u0705\u0706\u0001\u0000\u0000"+ - "\u0000\u0706\u0707\u0001\u0000\u0000\u0000\u0707\u0709\u0003\u0130\u0098"+ - "\u0000\u0708\u070a\u0003\u001c\u000e\u0000\u0709\u0708\u0001\u0000\u0000"+ - "\u0000\u0709\u070a\u0001\u0000\u0000\u0000\u070a\u0727\u0001\u0000\u0000"+ - "\u0000\u070b\u070d\n0\u0000\u0000\u070c\u070e\u0005\u000e\u0000\u0000"+ - "\u070d\u070c\u0001\u0000\u0000\u0000\u070d\u070e\u0001\u0000\u0000\u0000"+ - "\u070e\u070f\u0001\u0000\u0000\u0000\u070f\u0711\u0005\u0012\u0000\u0000"+ - "\u0710\u0712\u0005\u001e\u0000\u0000\u0711\u0710\u0001\u0000\u0000\u0000"+ - "\u0711\u0712\u0001\u0000\u0000\u0000\u0712\u0713\u0001\u0000\u0000\u0000"+ - "\u0713\u0715\u0003\u0130\u0098\u0000\u0714\u0716\u0003\u001c\u000e\u0000"+ - "\u0715\u0714\u0001\u0000\u0000\u0000\u0715\u0716\u0001\u0000\u0000\u0000"+ - "\u0716\u0727\u0001\u0000\u0000\u0000\u0717\u0718\n-\u0000\u0000\u0718"+ - "\u0727\u0003\u010a\u0085\u0000\u0719\u071a\n,\u0000\u0000\u071a\u071b"+ - "\u0004\u0089&\u0000\u071b\u0727\u0005\u0013\u0000\u0000\u071c\u071d\n"+ - "+\u0000\u0000\u071d\u071e\u0004\u0089(\u0000\u071e\u0727\u0005\u0014\u0000"+ - "\u0000\u071f\u0720\n\u000f\u0000\u0000\u0720\u0727\u0003\u0124\u0092\u0000"+ - "\u0721\u0722\n\u0002\u0000\u0000\u0722\u0723\u0005`\u0000\u0000\u0723"+ - "\u0727\u0003\u0114\u008a\u0000\u0724\u0725\n\u0001\u0000\u0000\u0725\u0727"+ - "\u0005\u0018\u0000\u0000\u0726\u06b6\u0001\u0000\u0000\u0000\u0726\u06b9"+ - "\u0001\u0000\u0000\u0000\u0726\u06bc\u0001\u0000\u0000\u0000\u0726\u06bf"+ - "\u0001\u0000\u0000\u0000\u0726\u06c2\u0001\u0000\u0000\u0000\u0726\u06c5"+ - "\u0001\u0000\u0000\u0000\u0726\u06cf\u0001\u0000\u0000\u0000\u0726\u06d2"+ - "\u0001\u0000\u0000\u0000\u0726\u06d5\u0001\u0000\u0000\u0000\u0726\u06d8"+ - "\u0001\u0000\u0000\u0000\u0726\u06db\u0001\u0000\u0000\u0000\u0726\u06de"+ - "\u0001\u0000\u0000\u0000\u0726\u06e1\u0001\u0000\u0000\u0000\u0726\u06e4"+ - "\u0001\u0000\u0000\u0000\u0726\u06e7\u0001\u0000\u0000\u0000\u0726\u06ea"+ - "\u0001\u0000\u0000\u0000\u0726\u06f0\u0001\u0000\u0000\u0000\u0726\u06f3"+ - "\u0001\u0000\u0000\u0000\u0726\u06f7\u0001\u0000\u0000\u0000\u0726\u06ff"+ - "\u0001\u0000\u0000\u0000\u0726\u070b\u0001\u0000\u0000\u0000\u0726\u0717"+ - "\u0001\u0000\u0000\u0000\u0726\u0719\u0001\u0000\u0000\u0000\u0726\u071c"+ - "\u0001\u0000\u0000\u0000\u0726\u071f\u0001\u0000\u0000\u0000\u0726\u0721"+ - "\u0001\u0000\u0000\u0000\u0726\u0724\u0001\u0000\u0000\u0000\u0727\u072a"+ - "\u0001\u0000\u0000\u0000\u0728\u0726\u0001\u0000\u0000\u0000\u0728\u0729"+ - "\u0001\u0000\u0000\u0000\u0729\u0113\u0001\u0000\u0000\u0000\u072a\u0728"+ - "\u0001\u0000\u0000\u0000\u072b\u072e\u0003\u0018\f\u0000\u072c\u072d\u0005"+ - "\u0004\u0000\u0000\u072d\u072f\u0005\u0005\u0000\u0000\u072e\u072c\u0001"+ - "\u0000\u0000\u0000\u072e\u072f\u0001\u0000\u0000\u0000\u072f\u0732\u0001"+ - "\u0000\u0000\u0000\u0730\u0732\u0003\u0112\u0089\u0000\u0731\u072b\u0001"+ - "\u0000\u0000\u0000\u0731\u0730\u0001\u0000\u0000\u0000\u0732\u0115\u0001"+ - "\u0000\u0000\u0000\u0733\u0738\u0003\u0132\u0099\u0000\u0734\u0738\u0003"+ - "\u0138\u009c\u0000\u0735\u0738\u0003\u00fa}\u0000\u0736\u0738\u0003\u0100"+ - "\u0080\u0000\u0737\u0733\u0001\u0000\u0000\u0000\u0737\u0734\u0001\u0000"+ - "\u0000\u0000\u0737\u0735\u0001\u0000\u0000\u0000\u0737\u0736\u0001\u0000"+ - "\u0000\u0000\u0738\u0117\u0001\u0000\u0000\u0000\u0739\u074f\u0003\u00cc"+ - "f\u0000\u073a\u073c\u0005c\u0000\u0000\u073b\u073a\u0001\u0000\u0000\u0000"+ - "\u073b\u073c\u0001\u0000\u0000\u0000\u073c\u073d\u0001\u0000\u0000\u0000"+ - "\u073d\u073f\u0005W\u0000\u0000\u073e\u0740\u0005\u0019\u0000\u0000\u073f"+ - "\u073e\u0001\u0000\u0000\u0000\u073f\u0740\u0001\u0000\u0000\u0000\u0740"+ - "\u0741\u0001\u0000\u0000\u0000\u0741\u0743\u0005\u0006\u0000\u0000\u0742"+ - "\u0744\u0003\u00f0x\u0000\u0743\u0742\u0001\u0000\u0000\u0000\u0743\u0744"+ - "\u0001\u0000\u0000\u0000\u0744\u0745\u0001\u0000\u0000\u0000\u0745\u0747"+ - "\u0005\u0007\u0000\u0000\u0746\u0748\u00038\u001c\u0000\u0747\u0746\u0001"+ - "\u0000\u0000\u0000\u0747\u0748\u0001\u0000\u0000\u0000\u0748\u0749\u0001"+ - "\u0000\u0000\u0000\u0749\u074a\u0005\b\u0000\u0000\u074a\u074b\u0003\u00f6"+ - "{\u0000\u074b\u074c\u0005\n\u0000\u0000\u074c\u074f\u0001\u0000\u0000"+ - "\u0000\u074d\u074f\u0003\u011a\u008d\u0000\u074e\u0739\u0001\u0000\u0000"+ - "\u0000\u074e\u073b\u0001\u0000\u0000\u0000\u074e\u074d\u0001\u0000\u0000"+ - "\u0000\u074f\u0119\u0001\u0000\u0000\u0000\u0750\u0752\u0005c\u0000\u0000"+ - "\u0751\u0750\u0001\u0000\u0000\u0000\u0751\u0752\u0001\u0000\u0000\u0000"+ - "\u0752\u0753\u0001\u0000\u0000\u0000\u0753\u0755\u0003\u011c\u008e\u0000"+ - "\u0754\u0756\u00038\u001c\u0000\u0755\u0754\u0001\u0000\u0000\u0000\u0755"+ - "\u0756\u0001\u0000\u0000\u0000\u0756\u0757\u0001\u0000\u0000\u0000\u0757"+ - "\u0758\u0005:\u0000\u0000\u0758\u0759\u0003\u011e\u008f\u0000\u0759\u011b"+ - "\u0001\u0000\u0000\u0000\u075a\u0761\u0003\u0108\u0084\u0000\u075b\u075d"+ - "\u0005\u0006\u0000\u0000\u075c\u075e\u0003\u00f0x\u0000\u075d\u075c\u0001"+ - "\u0000\u0000\u0000\u075d\u075e\u0001\u0000\u0000\u0000\u075e\u075f\u0001"+ - "\u0000\u0000\u0000\u075f\u0761\u0005\u0007\u0000\u0000\u0760\u075a\u0001"+ - "\u0000\u0000\u0000\u0760\u075b\u0001\u0000\u0000\u0000\u0761\u011d\u0001"+ - "\u0000\u0000\u0000\u0762\u0768\u0003\u0112\u0089\u0000\u0763\u0764\u0005"+ - "\b\u0000\u0000\u0764\u0765\u0003\u00f6{\u0000\u0765\u0766\u0005\n\u0000"+ - "\u0000\u0766\u0768\u0001\u0000\u0000\u0000\u0767\u0762\u0001\u0000\u0000"+ - "\u0000\u0767\u0763\u0001\u0000\u0000\u0000\u0768\u011f\u0001\u0000\u0000"+ - "\u0000\u0769\u076a\u0007\f\u0000\u0000\u076a\u0121\u0001\u0000\u0000\u0000"+ - "\u076b\u0773\u0005;\u0000\u0000\u076c\u0773\u0005<\u0000\u0000\u076d\u0773"+ - "\u0005\u008b\u0000\u0000\u076e\u0773\u0003\u0124\u0092\u0000\u076f\u0773"+ - "\u0005\u0003\u0000\u0000\u0770\u0773\u0003\u0128\u0094\u0000\u0771\u0773"+ - "\u0003\u012a\u0095\u0000\u0772\u076b\u0001\u0000\u0000\u0000\u0772\u076c"+ - "\u0001\u0000\u0000\u0000\u0772\u076d\u0001\u0000\u0000\u0000\u0772\u076e"+ - "\u0001\u0000\u0000\u0000\u0772\u076f\u0001\u0000\u0000\u0000\u0772\u0770"+ - "\u0001\u0000\u0000\u0000\u0772\u0771\u0001\u0000\u0000\u0000\u0773\u0123"+ - "\u0001\u0000\u0000\u0000\u0774\u0778\u0005\u008c\u0000\u0000\u0775\u0777"+ - "\u0003\u0126\u0093\u0000\u0776\u0775\u0001\u0000\u0000\u0000\u0777\u077a"+ - "\u0001\u0000\u0000\u0000\u0778\u0776\u0001\u0000\u0000\u0000\u0778\u0779"+ - "\u0001\u0000\u0000\u0000\u0779\u077b\u0001\u0000\u0000\u0000\u077a\u0778"+ - "\u0001\u0000\u0000\u0000\u077b\u077c\u0005\u008c\u0000\u0000\u077c\u0125"+ - "\u0001\u0000\u0000\u0000\u077d\u0784\u0005\u0094\u0000\u0000\u077e\u077f"+ - "\u0005\u0093\u0000\u0000\u077f\u0780\u0003\u0112\u0089\u0000\u0780\u0781"+ - "\u0005\t\u0000\u0000\u0781\u0784\u0001\u0000\u0000\u0000\u0782\u0784\u0005"+ - "\u0092\u0000\u0000\u0783\u077d\u0001\u0000\u0000\u0000\u0783\u077e\u0001"+ - "\u0000\u0000\u0000\u0783\u0782\u0001\u0000\u0000\u0000\u0784\u0127\u0001"+ - "\u0000\u0000\u0000\u0785\u0786\u0007\r\u0000\u0000\u0786\u0129\u0001\u0000"+ - "\u0000\u0000\u0787\u0788\u0007\u000e\u0000\u0000\u0788\u012b\u0001\u0000"+ - "\u0000\u0000\u0789\u078a\u0004\u0096,\u0000\u078a\u078b\u0003\u0132\u0099"+ - "\u0000\u078b\u078c\u0003\u00ecv\u0000\u078c\u012d\u0001\u0000\u0000\u0000"+ - "\u078d\u078e\u0004\u0097-\u0000\u078e\u078f\u0003\u0132\u0099\u0000\u078f"+ - "\u0790\u0003\u00ecv\u0000\u0790\u012f\u0001\u0000\u0000\u0000\u0791\u0794"+ - "\u0003\u0132\u0099\u0000\u0792\u0794\u0003\u0136\u009b\u0000\u0793\u0791"+ - "\u0001\u0000\u0000\u0000\u0793\u0792\u0001\u0000\u0000\u0000\u0794\u0131"+ - "\u0001\u0000\u0000\u0000\u0795\u0796\u0007\u000f\u0000\u0000\u0796\u0133"+ - "\u0001\u0000\u0000\u0000\u0797\u079b\u0003\u0132\u0099\u0000\u0798\u079b"+ - "\u0005\u0081\u0000\u0000\u0799\u079b\u0005\u0084\u0000\u0000\u079a\u0797"+ - "\u0001\u0000\u0000\u0000\u079a\u0798\u0001\u0000\u0000\u0000\u079a\u0799"+ - "\u0001\u0000\u0000\u0000\u079b\u0135\u0001\u0000\u0000\u0000\u079c\u07a0"+ - "\u0003\u0138\u009c\u0000\u079d\u07a0\u0005;\u0000\u0000\u079e\u07a0\u0005"+ - "<\u0000\u0000\u079f\u079c\u0001\u0000\u0000\u0000\u079f\u079d\u0001\u0000"+ - "\u0000\u0000\u079f\u079e\u0001\u0000\u0000\u0000\u07a0\u0137\u0001\u0000"+ - "\u0000\u0000\u07a1\u07a2\u0007\u0010\u0000\u0000\u07a2\u0139\u0001\u0000"+ - "\u0000\u0000\u07a3\u07a8\u0005\u000b\u0000\u0000\u07a4\u07a8\u0005\u0000"+ - "\u0000\u0001\u07a5\u07a8\u0004\u009d.\u0000\u07a6\u07a8\u0004\u009d/\u0000"+ - "\u07a7\u07a3\u0001\u0000\u0000\u0000\u07a7\u07a4\u0001\u0000\u0000\u0000"+ - "\u07a7\u07a5\u0001\u0000\u0000\u0000\u07a7\u07a6\u0001\u0000\u0000\u0000"+ - "\u07a8\u013b\u0001\u0000\u0000\u0000\u0102\u0141\u0145\u014e\u0153\u015a"+ - "\u0161\u016a\u0170\u0176\u0181\u0183\u019a\u01a0\u01a5\u01b1\u01b8\u01bc"+ - "\u01c1\u01c7\u01cb\u01d1\u01d8\u01e2\u01e4\u01f4\u01f8\u01fb\u01ff\u0207"+ - "\u020b\u021a\u021e\u0221\u0225\u0228\u022c\u0232\u0236\u023a\u0242\u0247"+ - "\u024a\u024c\u0253\u0258\u025b\u025e\u0263\u0266\u0269\u026e\u0271\u0274"+ - "\u0278\u027e\u0282\u0286\u028a\u0295\u029a\u029f\u02a6\u02ab\u02b3\u02b6"+ - "\u02b9\u02be\u02c1\u02c5\u02cf\u02d3\u02d9\u02df\u02e6\u02ec\u02ef\u02f5"+ - "\u02fd\u0302\u030d\u0312\u031a\u0321\u0328\u032d\u034e\u0352\u0359\u0360"+ - "\u0368\u036c\u0373\u037b\u0380\u0382\u0389\u038d\u0396\u039a\u03a2\u03a6"+ - "\u03aa\u03b3\u03bb\u03bf\u03c7\u03cc\u03ce\u03d5\u03da\u03de\u03e2\u03e5"+ - "\u03e8\u03eb\u03ef\u03f3\u03f7\u03f9\u0400\u0406\u0409\u040c\u0410\u0413"+ - "\u041a\u0423\u0436\u043a\u043e\u0448\u044c\u0464\u046d\u0474\u047e\u0483"+ - "\u048a\u0491\u0498\u049f\u04b1\u04b5\u04b7\u04be\u04c4\u04c9\u04d8\u04db"+ - "\u04e1\u04e5\u04f0\u04f4\u04fd\u0500\u0504\u0506\u0509\u050e\u0514\u0517"+ - "\u051d\u052a\u052f\u0534\u0537\u053a\u0546\u054b\u054e\u0551\u0554\u0557"+ - "\u055a\u0561\u0564\u0569\u0571\u0576\u057a\u0587\u058b\u0598\u059c\u05a5"+ - "\u05ae\u05b8\u05bd\u05c0\u05c7\u05c9\u05cc\u05cf\u05d3\u05d6\u05da\u05df"+ - "\u05e2\u05e7\u05f0\u05f4\u05f9\u05fe\u0604\u0608\u060c\u060f\u0617\u061b"+ - "\u061d\u0630\u0634\u063a\u0643\u0651\u0656\u0658\u0661\u0665\u0669\u0670"+ - "\u0677\u067a\u0682\u0689\u06a6\u06b2\u06b4\u06cc\u06f9\u0701\u0705\u0709"+ - "\u070d\u0711\u0715\u0726\u0728\u072e\u0731\u0737\u073b\u073f\u0743\u0747"+ - "\u074e\u0751\u0755\u075d\u0760\u0767\u0772\u0778\u0783\u0793\u079a\u079f"+ - "\u07a7"; - public static final ATN _ATN = - new ATNDeserializer().deserialize(_serializedATN.toCharArray()); - static { - _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; - for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { - _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); - } - } } \ No newline at end of file -- Gitee From 20360a1febc07d25caa73f18fe673a2435b67fe0 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:48:22 +0800 Subject: [PATCH 37/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1256 ----------------- 1 file changed, 1256 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index c1af38c9..ccbb76fe 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -13582,1261 +13582,5 @@ public class TypeScriptParser extends TypeScriptParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class AsExpressionContext extends ParserRuleContext { - public PredefinedTypeContext predefinedType() { - return getRuleContext(PredefinedTypeContext.class,0); - } - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public AsExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_asExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAsExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAsExpression(this); - } - } - - public final AsExpressionContext asExpression() throws RecognitionException { - AsExpressionContext _localctx = new AsExpressionContext(_ctx, getState()); - enterRule(_localctx, 276, RULE_asExpression); - try { - setState(1841); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,239,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1835); - predefinedType(); - setState(1838); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,238,_ctx) ) { - case 1: - { - setState(1836); - match(OpenBracket); - setState(1837); - match(CloseBracket); - } - break; - } - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1840); - singleExpression(0); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AssignableContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public KeywordContext keyword() { - return getRuleContext(KeywordContext.class,0); - } - public ArrayLiteralContext arrayLiteral() { - return getRuleContext(ArrayLiteralContext.class,0); - } - public ObjectLiteralContext objectLiteral() { - return getRuleContext(ObjectLiteralContext.class,0); - } - public AssignableContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_assignable; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAssignable(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAssignable(this); - } - } - - public final AssignableContext assignable() throws RecognitionException { - AssignableContext _localctx = new AssignableContext(_ctx, getState()); - enterRule(_localctx, 278, RULE_assignable); - try { - setState(1847); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,240,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1843); - identifier(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1844); - keyword(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1845); - arrayLiteral(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(1846); - objectLiteral(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AnonymousFunctionContext extends ParserRuleContext { - public FunctionDeclarationContext functionDeclaration() { - return getRuleContext(FunctionDeclarationContext.class,0); - } - public TerminalNode Function_() { return getToken(TypeScriptParser.Function_, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } - public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public ArrowFunctionDeclarationContext arrowFunctionDeclaration() { - return getRuleContext(ArrowFunctionDeclarationContext.class,0); - } - public AnonymousFunctionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_anonymousFunction; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAnonymousFunction(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAnonymousFunction(this); - } - } - - public final AnonymousFunctionContext anonymousFunction() throws RecognitionException { - AnonymousFunctionContext _localctx = new AnonymousFunctionContext(_ctx, getState()); - enterRule(_localctx, 280, RULE_anonymousFunction); - int _la; - try { - setState(1870); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,245,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1849); - functionDeclaration(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1851); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Async) { - { - setState(1850); - match(Async); - } - } - - setState(1853); - match(Function_); - setState(1855); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Multiply) { - { - setState(1854); - match(Multiply); - } - } - - setState(1857); - match(OpenParen); - setState(1859); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(1858); - formalParameterList(); - } - } - - setState(1861); - match(CloseParen); - setState(1863); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1862); - typeAnnotation(); - } - } - - setState(1865); - match(OpenBrace); - setState(1866); - functionBody(); - setState(1867); - match(CloseBrace); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1869); - arrowFunctionDeclaration(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArrowFunctionDeclarationContext extends ParserRuleContext { - public ArrowFunctionParametersContext arrowFunctionParameters() { - return getRuleContext(ArrowFunctionParametersContext.class,0); - } - public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } - public ArrowFunctionBodyContext arrowFunctionBody() { - return getRuleContext(ArrowFunctionBodyContext.class,0); - } - public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public ArrowFunctionDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_arrowFunctionDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrowFunctionDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrowFunctionDeclaration(this); - } - } - - public final ArrowFunctionDeclarationContext arrowFunctionDeclaration() throws RecognitionException { - ArrowFunctionDeclarationContext _localctx = new ArrowFunctionDeclarationContext(_ctx, getState()); - enterRule(_localctx, 282, RULE_arrowFunctionDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1873); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,246,_ctx) ) { - case 1: - { - setState(1872); - match(Async); - } - break; - } - setState(1875); - arrowFunctionParameters(); - setState(1877); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1876); - typeAnnotation(); - } - } - - setState(1879); - match(ARROW); - setState(1880); - arrowFunctionBody(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArrowFunctionParametersContext extends ParserRuleContext { - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public ArrowFunctionParametersContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_arrowFunctionParameters; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrowFunctionParameters(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrowFunctionParameters(this); - } - } - - public final ArrowFunctionParametersContext arrowFunctionParameters() throws RecognitionException { - ArrowFunctionParametersContext _localctx = new ArrowFunctionParametersContext(_ctx, getState()); - enterRule(_localctx, 284, RULE_arrowFunctionParameters); - int _la; - try { - setState(1888); - _errHandler.sync(this); - switch (_input.LA(1)) { - case OpenBracket: - case NullLiteral: - case BooleanLiteral: - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - case StringLiteral: - enterOuterAlt(_localctx, 1); - { - setState(1882); - propertyName(); - } - break; - case OpenParen: - enterOuterAlt(_localctx, 2); - { - setState(1883); - match(OpenParen); - setState(1885); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(1884); - formalParameterList(); - } - } - - setState(1887); - match(CloseParen); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArrowFunctionBodyContext extends ParserRuleContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public ArrowFunctionBodyContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_arrowFunctionBody; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrowFunctionBody(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrowFunctionBody(this); - } - } - - public final ArrowFunctionBodyContext arrowFunctionBody() throws RecognitionException { - ArrowFunctionBodyContext _localctx = new ArrowFunctionBodyContext(_ctx, getState()); - enterRule(_localctx, 286, RULE_arrowFunctionBody); - try { - setState(1895); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,250,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1890); - singleExpression(0); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1891); - match(OpenBrace); - setState(1892); - functionBody(); - setState(1893); - match(CloseBrace); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AssignmentOperatorContext extends ParserRuleContext { - public TerminalNode MultiplyAssign() { return getToken(TypeScriptParser.MultiplyAssign, 0); } - public TerminalNode DivideAssign() { return getToken(TypeScriptParser.DivideAssign, 0); } - public TerminalNode ModulusAssign() { return getToken(TypeScriptParser.ModulusAssign, 0); } - public TerminalNode PlusAssign() { return getToken(TypeScriptParser.PlusAssign, 0); } - public TerminalNode MinusAssign() { return getToken(TypeScriptParser.MinusAssign, 0); } - public TerminalNode LeftShiftArithmeticAssign() { return getToken(TypeScriptParser.LeftShiftArithmeticAssign, 0); } - public TerminalNode RightShiftArithmeticAssign() { return getToken(TypeScriptParser.RightShiftArithmeticAssign, 0); } - public TerminalNode RightShiftLogicalAssign() { return getToken(TypeScriptParser.RightShiftLogicalAssign, 0); } - public TerminalNode BitAndAssign() { return getToken(TypeScriptParser.BitAndAssign, 0); } - public TerminalNode BitXorAssign() { return getToken(TypeScriptParser.BitXorAssign, 0); } - public TerminalNode BitOrAssign() { return getToken(TypeScriptParser.BitOrAssign, 0); } - public TerminalNode PowerAssign() { return getToken(TypeScriptParser.PowerAssign, 0); } - public TerminalNode NullishCoalescingAssign() { return getToken(TypeScriptParser.NullishCoalescingAssign, 0); } - public AssignmentOperatorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_assignmentOperator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAssignmentOperator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAssignmentOperator(this); - } - } - - public final AssignmentOperatorContext assignmentOperator() throws RecognitionException { - AssignmentOperatorContext _localctx = new AssignmentOperatorContext(_ctx, getState()); - enterRule(_localctx, 288, RULE_assignmentOperator); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1897); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 288195191779622912L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LiteralContext extends ParserRuleContext { - public TerminalNode NullLiteral() { return getToken(TypeScriptParser.NullLiteral, 0); } - public TerminalNode BooleanLiteral() { return getToken(TypeScriptParser.BooleanLiteral, 0); } - public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } - public TemplateStringLiteralContext templateStringLiteral() { - return getRuleContext(TemplateStringLiteralContext.class,0); - } - public TerminalNode RegularExpressionLiteral() { return getToken(TypeScriptParser.RegularExpressionLiteral, 0); } - public NumericLiteralContext numericLiteral() { - return getRuleContext(NumericLiteralContext.class,0); - } - public BigintLiteralContext bigintLiteral() { - return getRuleContext(BigintLiteralContext.class,0); - } - public LiteralContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_literal; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLiteral(this); - } - } - - public final LiteralContext literal() throws RecognitionException { - LiteralContext _localctx = new LiteralContext(_ctx, getState()); - enterRule(_localctx, 290, RULE_literal); - try { - setState(1906); - _errHandler.sync(this); - switch (_input.LA(1)) { - case NullLiteral: - enterOuterAlt(_localctx, 1); - { - setState(1899); - match(NullLiteral); - } - break; - case BooleanLiteral: - enterOuterAlt(_localctx, 2); - { - setState(1900); - match(BooleanLiteral); - } - break; - case StringLiteral: - enterOuterAlt(_localctx, 3); - { - setState(1901); - match(StringLiteral); - } - break; - case BackTick: - enterOuterAlt(_localctx, 4); - { - setState(1902); - templateStringLiteral(); - } - break; - case RegularExpressionLiteral: - enterOuterAlt(_localctx, 5); - { - setState(1903); - match(RegularExpressionLiteral); - } - break; - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - enterOuterAlt(_localctx, 6); - { - setState(1904); - numericLiteral(); - } - break; - case BigHexIntegerLiteral: - case BigOctalIntegerLiteral: - case BigBinaryIntegerLiteral: - case BigDecimalIntegerLiteral: - enterOuterAlt(_localctx, 7); - { - setState(1905); - bigintLiteral(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateStringLiteralContext extends ParserRuleContext { - public List BackTick() { return getTokens(TypeScriptParser.BackTick); } - public TerminalNode BackTick(int i) { - return getToken(TypeScriptParser.BackTick, i); - } - public List templateStringAtom() { - return getRuleContexts(TemplateStringAtomContext.class); - } - public TemplateStringAtomContext templateStringAtom(int i) { - return getRuleContext(TemplateStringAtomContext.class,i); - } - public TemplateStringLiteralContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateStringLiteral; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTemplateStringLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTemplateStringLiteral(this); - } - } - - public final TemplateStringLiteralContext templateStringLiteral() throws RecognitionException { - TemplateStringLiteralContext _localctx = new TemplateStringLiteralContext(_ctx, getState()); - enterRule(_localctx, 292, RULE_templateStringLiteral); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1908); - match(BackTick); - setState(1912); - _errHandler.sync(this); - _la = _input.LA(1); - while (((((_la - 146)) & ~0x3f) == 0 && ((1L << (_la - 146)) & 7L) != 0)) { - { - { - setState(1909); - templateStringAtom(); - } - } - setState(1914); - _errHandler.sync(this); - _la = _input.LA(1); - } - setState(1915); - match(BackTick); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TemplateStringAtomContext extends ParserRuleContext { - public TerminalNode TemplateStringAtom() { return getToken(TypeScriptParser.TemplateStringAtom, 0); } - public TerminalNode TemplateStringStartExpression() { return getToken(TypeScriptParser.TemplateStringStartExpression, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode TemplateCloseBrace() { return getToken(TypeScriptParser.TemplateCloseBrace, 0); } - public TerminalNode TemplateStringEscapeAtom() { return getToken(TypeScriptParser.TemplateStringEscapeAtom, 0); } - public TemplateStringAtomContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_templateStringAtom; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTemplateStringAtom(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTemplateStringAtom(this); - } - } - - public final TemplateStringAtomContext templateStringAtom() throws RecognitionException { - TemplateStringAtomContext _localctx = new TemplateStringAtomContext(_ctx, getState()); - enterRule(_localctx, 294, RULE_templateStringAtom); - try { - setState(1923); - _errHandler.sync(this); - switch (_input.LA(1)) { - case TemplateStringAtom: - enterOuterAlt(_localctx, 1); - { - setState(1917); - match(TemplateStringAtom); - } - break; - case TemplateStringStartExpression: - enterOuterAlt(_localctx, 2); - { - setState(1918); - match(TemplateStringStartExpression); - setState(1919); - singleExpression(0); - setState(1920); - match(TemplateCloseBrace); - } - break; - case TemplateStringEscapeAtom: - enterOuterAlt(_localctx, 3); - { - setState(1922); - match(TemplateStringEscapeAtom); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NumericLiteralContext extends ParserRuleContext { - public TerminalNode DecimalLiteral() { return getToken(TypeScriptParser.DecimalLiteral, 0); } - public TerminalNode HexIntegerLiteral() { return getToken(TypeScriptParser.HexIntegerLiteral, 0); } - public TerminalNode OctalIntegerLiteral() { return getToken(TypeScriptParser.OctalIntegerLiteral, 0); } - public TerminalNode OctalIntegerLiteral2() { return getToken(TypeScriptParser.OctalIntegerLiteral2, 0); } - public TerminalNode BinaryIntegerLiteral() { return getToken(TypeScriptParser.BinaryIntegerLiteral, 0); } - public NumericLiteralContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_numericLiteral; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNumericLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNumericLiteral(this); - } - } - - public final NumericLiteralContext numericLiteral() throws RecognitionException { - NumericLiteralContext _localctx = new NumericLiteralContext(_ctx, getState()); - enterRule(_localctx, 296, RULE_numericLiteral); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1925); - _la = _input.LA(1); - if ( !(((((_la - 61)) & ~0x3f) == 0 && ((1L << (_la - 61)) & 31L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BigintLiteralContext extends ParserRuleContext { - public TerminalNode BigDecimalIntegerLiteral() { return getToken(TypeScriptParser.BigDecimalIntegerLiteral, 0); } - public TerminalNode BigHexIntegerLiteral() { return getToken(TypeScriptParser.BigHexIntegerLiteral, 0); } - public TerminalNode BigOctalIntegerLiteral() { return getToken(TypeScriptParser.BigOctalIntegerLiteral, 0); } - public TerminalNode BigBinaryIntegerLiteral() { return getToken(TypeScriptParser.BigBinaryIntegerLiteral, 0); } - public BigintLiteralContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_bigintLiteral; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBigintLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBigintLiteral(this); - } - } - - public final BigintLiteralContext bigintLiteral() throws RecognitionException { - BigintLiteralContext _localctx = new BigintLiteralContext(_ctx, getState()); - enterRule(_localctx, 298, RULE_bigintLiteral); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1927); - _la = _input.LA(1); - if ( !(((((_la - 66)) & ~0x3f) == 0 && ((1L << (_la - 66)) & 15L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class GetterContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ClassElementNameContext classElementName() { - return getRuleContext(ClassElementNameContext.class,0); - } - public GetterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_getter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGetter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGetter(this); - } - } - - public final GetterContext getter() throws RecognitionException { - GetterContext _localctx = new GetterContext(_ctx, getState()); - enterRule(_localctx, 300, RULE_getter); - try { - enterOuterAlt(_localctx, 1); - { - setState(1929); - if (!(this.n("get"))) throw new FailedPredicateException(this, "this.n(\"get\")"); - setState(1930); - identifier(); - setState(1931); - classElementName(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SetterContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ClassElementNameContext classElementName() { - return getRuleContext(ClassElementNameContext.class,0); - } - public SetterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_setter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSetter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSetter(this); - } - } - - public final SetterContext setter() throws RecognitionException { - SetterContext _localctx = new SetterContext(_ctx, getState()); - enterRule(_localctx, 302, RULE_setter); - try { - enterOuterAlt(_localctx, 1); - { - setState(1933); - if (!(this.n("set"))) throw new FailedPredicateException(this, "this.n(\"set\")"); - setState(1934); - identifier(); - setState(1935); - classElementName(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IdentifierNameContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ReservedWordContext reservedWord() { - return getRuleContext(ReservedWordContext.class,0); - } - public IdentifierNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_identifierName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifierName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifierName(this); - } - } - - public final IdentifierNameContext identifierName() throws RecognitionException { - IdentifierNameContext _localctx = new IdentifierNameContext(_ctx, getState()); - enterRule(_localctx, 304, RULE_identifierName); - try { - setState(1939); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,254,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1937); - identifier(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1938); - reservedWord(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IdentifierContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(TypeScriptParser.Identifier, 0); } - public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public TerminalNode From() { return getToken(TypeScriptParser.From, 0); } - public TerminalNode Yield() { return getToken(TypeScriptParser.Yield, 0); } - public TerminalNode Of() { return getToken(TypeScriptParser.Of, 0); } - public TerminalNode Any() { return getToken(TypeScriptParser.Any, 0); } - public TerminalNode Number() { return getToken(TypeScriptParser.Number, 0); } - public TerminalNode Boolean() { return getToken(TypeScriptParser.Boolean, 0); } - public TerminalNode String() { return getToken(TypeScriptParser.String, 0); } - public TerminalNode Unique() { return getToken(TypeScriptParser.Unique, 0); } - public TerminalNode Symbol() { return getToken(TypeScriptParser.Symbol, 0); } - public TerminalNode Never() { return getToken(TypeScriptParser.Never, 0); } - public TerminalNode Undefined() { return getToken(TypeScriptParser.Undefined, 0); } - public TerminalNode Object() { return getToken(TypeScriptParser.Object, 0); } - public TerminalNode KeyOf() { return getToken(TypeScriptParser.KeyOf, 0); } - public TerminalNode TypeAlias() { return getToken(TypeScriptParser.TypeAlias, 0); } - public TerminalNode Constructor() { return getToken(TypeScriptParser.Constructor, 0); } - public TerminalNode Namespace() { return getToken(TypeScriptParser.Namespace, 0); } - public TerminalNode Abstract() { return getToken(TypeScriptParser.Abstract, 0); } - public IdentifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_identifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifier(this); - } - } - - public final IdentifierContext identifier() throws RecognitionException { - IdentifierContext _localctx = new IdentifierContext(_ctx, getState()); - enterRule(_localctx, 306, RULE_identifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1941); - _la = _input.LA(1); - if ( !(((((_la - 96)) & ~0x3f) == 0 && ((1L << (_la - 96)) & 5016517607467L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IdentifierOrKeyWordContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode TypeAlias() { return getToken(TypeScriptParser.TypeAlias, 0); } - public TerminalNode Require() { return getToken(TypeScriptParser.Require, 0); } - public IdentifierOrKeyWordContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_identifierOrKeyWord; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifierOrKeyWord(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifierOrKeyWord(this); - } - } - - public final IdentifierOrKeyWordContext identifierOrKeyWord() throws RecognitionException { - IdentifierOrKeyWordContext _localctx = new IdentifierOrKeyWordContext(_ctx, getState()); - enterRule(_localctx, 308, RULE_identifierOrKeyWord); - try { - setState(1946); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,255,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1943); - identifier(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1944); - match(TypeAlias); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1945); - match(Require); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ReservedWordContext extends ParserRuleContext { - public KeywordContext keyword() { - return getRuleContext(KeywordContext.class,0); - } - public TerminalNode NullLiteral() { return getToken(TypeScriptParser.NullLiteral, 0); } - public TerminalNode BooleanLiteral() { return getToken(TypeScriptParser.BooleanLiteral, 0); } - public ReservedWordContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_reservedWord; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterReservedWord(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitReservedWord(this); - } - } } \ No newline at end of file -- Gitee From b2da3b51470fa1e671ce972a750b93f3b6fbf931 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:48:43 +0800 Subject: [PATCH 38/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1758 ----------------- 1 file changed, 1758 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index ccbb76fe..be3d5ae6 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -11823,1764 +11823,6 @@ public class TypeScriptParser extends TypeScriptParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class SingleExpressionContext extends ParserRuleContext { - public SingleExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_singleExpression; } - - public SingleExpressionContext() { } - public void copyFrom(SingleExpressionContext ctx) { - super.copyFrom(ctx); - } - } - @SuppressWarnings("CheckReturnValue") - public static class TemplateStringExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TemplateStringLiteralContext templateStringLiteral() { - return getRuleContext(TemplateStringLiteralContext.class,0); - } - public TemplateStringExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTemplateStringExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTemplateStringExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class GeneratorsExpressionContext extends SingleExpressionContext { - public GeneratorBlockContext generatorBlock() { - return getRuleContext(GeneratorBlockContext.class,0); - } - public GeneratorsExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorsExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorsExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PowerExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode Power() { return getToken(TypeScriptParser.Power, 0); } - public PowerExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPowerExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPowerExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class InExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode In() { return getToken(TypeScriptParser.In, 0); } - public InExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class GenericTypesContext extends SingleExpressionContext { - public TypeArgumentsContext typeArguments() { - return getRuleContext(TypeArgumentsContext.class,0); - } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public GenericTypesContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGenericTypes(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGenericTypes(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class OptionalChainExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode QuestionMarkDot() { return getToken(TypeScriptParser.QuestionMarkDot, 0); } - public OptionalChainExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterOptionalChainExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitOptionalChainExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ArgumentsExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public ArgumentsContext arguments() { - return getRuleContext(ArgumentsContext.class,0); - } - public ArgumentsExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArgumentsExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArgumentsExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ThisExpressionContext extends SingleExpressionContext { - public TerminalNode This() { return getToken(TypeScriptParser.This, 0); } - public ThisExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterThisExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitThisExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class TypeofExpressionContext extends SingleExpressionContext { - public TerminalNode Typeof() { return getToken(TypeScriptParser.Typeof, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TypeofExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeofExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeofExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class GeneratorsFunctionExpressionContext extends SingleExpressionContext { - public GeneratorFunctionDeclarationContext generatorFunctionDeclaration() { - return getRuleContext(GeneratorFunctionDeclarationContext.class,0); - } - public GeneratorsFunctionExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorsFunctionExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorsFunctionExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class EqualityExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode Equals_() { return getToken(TypeScriptParser.Equals_, 0); } - public TerminalNode NotEquals() { return getToken(TypeScriptParser.NotEquals, 0); } - public TerminalNode IdentityEquals() { return getToken(TypeScriptParser.IdentityEquals, 0); } - public TerminalNode IdentityNotEquals() { return getToken(TypeScriptParser.IdentityNotEquals, 0); } - public EqualityExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEqualityExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEqualityExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class BitXOrExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode BitXOr() { return getToken(TypeScriptParser.BitXOr, 0); } - public BitXOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitXOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitXOrExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class CastAsExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public AsExpressionContext asExpression() { - return getRuleContext(AsExpressionContext.class,0); - } - public CastAsExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCastAsExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCastAsExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class MultiplicativeExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } - public TerminalNode Divide() { return getToken(TypeScriptParser.Divide, 0); } - public TerminalNode Modulus() { return getToken(TypeScriptParser.Modulus, 0); } - public MultiplicativeExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMultiplicativeExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMultiplicativeExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class BitShiftExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode LeftShiftArithmetic() { return getToken(TypeScriptParser.LeftShiftArithmetic, 0); } - public List MoreThan() { return getTokens(TypeScriptParser.MoreThan); } - public TerminalNode MoreThan(int i) { - return getToken(TypeScriptParser.MoreThan, i); - } - public BitShiftExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitShiftExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitShiftExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class AdditiveExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode Plus() { return getToken(TypeScriptParser.Plus, 0); } - public TerminalNode Minus() { return getToken(TypeScriptParser.Minus, 0); } - public AdditiveExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAdditiveExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAdditiveExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class RelationalExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode LessThan() { return getToken(TypeScriptParser.LessThan, 0); } - public TerminalNode MoreThan() { return getToken(TypeScriptParser.MoreThan, 0); } - public TerminalNode LessThanEquals() { return getToken(TypeScriptParser.LessThanEquals, 0); } - public TerminalNode GreaterThanEquals() { return getToken(TypeScriptParser.GreaterThanEquals, 0); } - public RelationalExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRelationalExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRelationalExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class BitNotExpressionContext extends SingleExpressionContext { - public TerminalNode BitNot() { return getToken(TypeScriptParser.BitNot, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public BitNotExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitNotExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitNotExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class NewExpressionContext extends SingleExpressionContext { - public TerminalNode New() { return getToken(TypeScriptParser.New, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public ArgumentsContext arguments() { - return getRuleContext(ArgumentsContext.class,0); - } - public TypeArgumentsContext typeArguments() { - return getRuleContext(TypeArgumentsContext.class,0); - } - public NewExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNewExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNewExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class LiteralExpressionContext extends SingleExpressionContext { - public LiteralContext literal() { - return getRuleContext(LiteralContext.class,0); - } - public LiteralExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLiteralExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLiteralExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ArrayLiteralExpressionContext extends SingleExpressionContext { - public ArrayLiteralContext arrayLiteral() { - return getRuleContext(ArrayLiteralContext.class,0); - } - public ArrayLiteralExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayLiteralExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayLiteralExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class MemberDotExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode Dot() { return getToken(TypeScriptParser.Dot, 0); } - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public TerminalNode Not() { return getToken(TypeScriptParser.Not, 0); } - public TerminalNode Hashtag() { return getToken(TypeScriptParser.Hashtag, 0); } - public TypeGenericContext typeGeneric() { - return getRuleContext(TypeGenericContext.class,0); - } - public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } - public MemberDotExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMemberDotExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMemberDotExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class MemberIndexExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public TerminalNode QuestionMarkDot() { return getToken(TypeScriptParser.QuestionMarkDot, 0); } - public MemberIndexExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMemberIndexExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMemberIndexExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class BitAndExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode BitAnd() { return getToken(TypeScriptParser.BitAnd, 0); } - public BitAndExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitAndExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitAndExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class BitOrExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode BitOr() { return getToken(TypeScriptParser.BitOr, 0); } - public BitOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBitOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBitOrExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class AssignmentOperatorExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public AssignmentOperatorContext assignmentOperator() { - return getRuleContext(AssignmentOperatorContext.class,0); - } - public AssignmentOperatorExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAssignmentOperatorExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAssignmentOperatorExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class VoidExpressionContext extends SingleExpressionContext { - public TerminalNode Void() { return getToken(TypeScriptParser.Void, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public VoidExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVoidExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVoidExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class TernaryExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public TernaryExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTernaryExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTernaryExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class LogicalAndExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode And() { return getToken(TypeScriptParser.And, 0); } - public LogicalAndExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLogicalAndExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLogicalAndExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PreIncrementExpressionContext extends SingleExpressionContext { - public TerminalNode PlusPlus() { return getToken(TypeScriptParser.PlusPlus, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public PreIncrementExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPreIncrementExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPreIncrementExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ObjectLiteralExpressionContext extends SingleExpressionContext { - public ObjectLiteralContext objectLiteral() { - return getRuleContext(ObjectLiteralContext.class,0); - } - public ObjectLiteralExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterObjectLiteralExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitObjectLiteralExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class LogicalOrExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode Or() { return getToken(TypeScriptParser.Or, 0); } - public LogicalOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLogicalOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLogicalOrExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class NonNullAssertionExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode Not() { return getToken(TypeScriptParser.Not, 0); } - public NonNullAssertionExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNonNullAssertionExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNonNullAssertionExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class NotExpressionContext extends SingleExpressionContext { - public TerminalNode Not() { return getToken(TypeScriptParser.Not, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public NotExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNotExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNotExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PreDecreaseExpressionContext extends SingleExpressionContext { - public TerminalNode MinusMinus() { return getToken(TypeScriptParser.MinusMinus, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public PreDecreaseExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPreDecreaseExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPreDecreaseExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class AwaitExpressionContext extends SingleExpressionContext { - public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public AwaitExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAwaitExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAwaitExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class FunctionExpressionContext extends SingleExpressionContext { - public AnonymousFunctionContext anonymousFunction() { - return getRuleContext(AnonymousFunctionContext.class,0); - } - public FunctionExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFunctionExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFunctionExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class UnaryMinusExpressionContext extends SingleExpressionContext { - public TerminalNode Minus() { return getToken(TypeScriptParser.Minus, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public UnaryMinusExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterUnaryMinusExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitUnaryMinusExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class AssignmentExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public AssignmentExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAssignmentExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAssignmentExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PostDecreaseExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode MinusMinus() { return getToken(TypeScriptParser.MinusMinus, 0); } - public PostDecreaseExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPostDecreaseExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPostDecreaseExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class InstanceofExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode Instanceof() { return getToken(TypeScriptParser.Instanceof, 0); } - public InstanceofExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInstanceofExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInstanceofExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class UnaryPlusExpressionContext extends SingleExpressionContext { - public TerminalNode Plus() { return getToken(TypeScriptParser.Plus, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public UnaryPlusExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterUnaryPlusExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitUnaryPlusExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class DeleteExpressionContext extends SingleExpressionContext { - public TerminalNode Delete() { return getToken(TypeScriptParser.Delete, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public DeleteExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDeleteExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDeleteExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class IteratorsExpressionContext extends SingleExpressionContext { - public IteratorBlockContext iteratorBlock() { - return getRuleContext(IteratorBlockContext.class,0); - } - public IteratorsExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIteratorsExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIteratorsExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class SuperExpressionContext extends SingleExpressionContext { - public TerminalNode Super() { return getToken(TypeScriptParser.Super, 0); } - public SuperExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSuperExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSuperExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ParenthesizedExpressionContext extends SingleExpressionContext { - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public ParenthesizedExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterParenthesizedExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitParenthesizedExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PostIncrementExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode PlusPlus() { return getToken(TypeScriptParser.PlusPlus, 0); } - public PostIncrementExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPostIncrementExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPostIncrementExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class YieldExpressionContext extends SingleExpressionContext { - public YieldStatementContext yieldStatement() { - return getRuleContext(YieldStatementContext.class,0); - } - public YieldExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterYieldExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitYieldExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ClassExpressionContext extends SingleExpressionContext { - public TerminalNode Class() { return getToken(TypeScriptParser.Class, 0); } - public ClassHeritageContext classHeritage() { - return getRuleContext(ClassHeritageContext.class,0); - } - public ClassTailContext classTail() { - return getRuleContext(ClassTailContext.class,0); - } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public ClassExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class IdentifierExpressionContext extends SingleExpressionContext { - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public IdentifierExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifierExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifierExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class CoalesceExpressionContext extends SingleExpressionContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode NullCoalesce() { return getToken(TypeScriptParser.NullCoalesce, 0); } - public CoalesceExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCoalesceExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCoalesceExpression(this); - } - } - - public final SingleExpressionContext singleExpression() throws RecognitionException { - return singleExpression(0); - } - - private SingleExpressionContext singleExpression(int _p) throws RecognitionException { - ParserRuleContext _parentctx = _ctx; - int _parentState = getState(); - SingleExpressionContext _localctx = new SingleExpressionContext(_ctx, _parentState); - SingleExpressionContext _prevctx = _localctx; - int _startState = 274; - enterRecursionRule(_localctx, 274, RULE_singleExpression, _p); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1716); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,227,_ctx) ) { - case 1: - { - _localctx = new FunctionExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - - setState(1652); - anonymousFunction(); - } - break; - case 2: - { - _localctx = new ClassExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1653); - match(Class); - setState(1655); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 96)) & ~0x3f) == 0 && ((1L << (_la - 96)) & 5016517607467L) != 0)) { - { - setState(1654); - identifier(); - } - } - - setState(1658); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(1657); - typeParameters(); - } - } - - setState(1660); - classHeritage(); - setState(1661); - classTail(); - } - break; - case 3: - { - _localctx = new NewExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1663); - match(New); - setState(1664); - singleExpression(0); - setState(1666); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(1665); - typeArguments(); - } - } - - setState(1668); - arguments(); - } - break; - case 4: - { - _localctx = new NewExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1670); - match(New); - setState(1671); - singleExpression(0); - setState(1673); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,224,_ctx) ) { - case 1: - { - setState(1672); - typeArguments(); - } - break; - } - } - break; - case 5: - { - _localctx = new DeleteExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1675); - match(Delete); - setState(1676); - singleExpression(42); - } - break; - case 6: - { - _localctx = new VoidExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1677); - match(Void); - setState(1678); - singleExpression(41); - } - break; - case 7: - { - _localctx = new TypeofExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1679); - match(Typeof); - setState(1680); - singleExpression(40); - } - break; - case 8: - { - _localctx = new PreIncrementExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1681); - match(PlusPlus); - setState(1682); - singleExpression(39); - } - break; - case 9: - { - _localctx = new PreDecreaseExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1683); - match(MinusMinus); - setState(1684); - singleExpression(38); - } - break; - case 10: - { - _localctx = new UnaryPlusExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1685); - match(Plus); - setState(1686); - singleExpression(37); - } - break; - case 11: - { - _localctx = new UnaryMinusExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1687); - match(Minus); - setState(1688); - singleExpression(36); - } - break; - case 12: - { - _localctx = new BitNotExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1689); - match(BitNot); - setState(1690); - singleExpression(35); - } - break; - case 13: - { - _localctx = new NotExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1691); - match(Not); - setState(1692); - singleExpression(34); - } - break; - case 14: - { - _localctx = new AwaitExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1693); - match(Await); - setState(1694); - singleExpression(33); - } - break; - case 15: - { - _localctx = new IteratorsExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1695); - iteratorBlock(); - } - break; - case 16: - { - _localctx = new GeneratorsExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1696); - generatorBlock(); - } - break; - case 17: - { - _localctx = new GeneratorsFunctionExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1697); - generatorFunctionDeclaration(); - } - break; - case 18: - { - _localctx = new YieldExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1698); - yieldStatement(); - } - break; - case 19: - { - _localctx = new ThisExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1699); - match(This); - } - break; - case 20: - { - _localctx = new IdentifierExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1700); - identifierName(); - setState(1702); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,225,_ctx) ) { - case 1: - { - setState(1701); - singleExpression(0); - } - break; - } - } - break; - case 21: - { - _localctx = new SuperExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1704); - match(Super); - } - break; - case 22: - { - _localctx = new LiteralExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1705); - literal(); - } - break; - case 23: - { - _localctx = new ArrayLiteralExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1706); - arrayLiteral(); - } - break; - case 24: - { - _localctx = new ObjectLiteralExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1707); - objectLiteral(); - } - break; - case 25: - { - _localctx = new ParenthesizedExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1708); - match(OpenParen); - setState(1709); - expressionSequence(); - setState(1710); - match(CloseParen); - } - break; - case 26: - { - _localctx = new GenericTypesContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(1712); - typeArguments(); - setState(1714); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,226,_ctx) ) { - case 1: - { - setState(1713); - expressionSequence(); - } - break; - } - } - break; - } - _ctx.stop = _input.LT(-1); - setState(1832); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,237,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - setState(1830); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,236,_ctx) ) { - case 1: - { - _localctx = new OptionalChainExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1718); - if (!(precpred(_ctx, 50))) throw new FailedPredicateException(this, "precpred(_ctx, 50)"); - setState(1719); - match(QuestionMarkDot); - setState(1720); - singleExpression(51); - } - break; - case 2: - { - _localctx = new PowerExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1721); - if (!(precpred(_ctx, 32))) throw new FailedPredicateException(this, "precpred(_ctx, 32)"); - setState(1722); - match(Power); - setState(1723); - singleExpression(32); - } - break; - case 3: - { - _localctx = new MultiplicativeExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1724); - if (!(precpred(_ctx, 31))) throw new FailedPredicateException(this, "precpred(_ctx, 31)"); - setState(1725); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 234881024L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(1726); - singleExpression(32); - } - break; - case 4: - { - _localctx = new AdditiveExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1727); - if (!(precpred(_ctx, 30))) throw new FailedPredicateException(this, "precpred(_ctx, 30)"); - setState(1728); - _la = _input.LA(1); - if ( !(_la==Plus || _la==Minus) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(1729); - singleExpression(31); - } - break; - case 5: - { - _localctx = new CoalesceExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1730); - if (!(precpred(_ctx, 29))) throw new FailedPredicateException(this, "precpred(_ctx, 29)"); - setState(1731); - match(NullCoalesce); - setState(1732); - singleExpression(30); - } - break; - case 6: - { - _localctx = new BitShiftExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1733); - if (!(precpred(_ctx, 28))) throw new FailedPredicateException(this, "precpred(_ctx, 28)"); - setState(1740); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,228,_ctx) ) { - case 1: - { - setState(1734); - match(LeftShiftArithmetic); - } - break; - case 2: - { - setState(1735); - match(MoreThan); - setState(1736); - match(MoreThan); - } - break; - case 3: - { - setState(1737); - match(MoreThan); - setState(1738); - match(MoreThan); - setState(1739); - match(MoreThan); - } - break; - } - setState(1742); - singleExpression(29); - } - break; - case 7: - { - _localctx = new RelationalExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1743); - if (!(precpred(_ctx, 27))) throw new FailedPredicateException(this, "precpred(_ctx, 27)"); - setState(1744); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 64424509440L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(1745); - singleExpression(28); - } - break; - case 8: - { - _localctx = new InstanceofExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1746); - if (!(precpred(_ctx, 26))) throw new FailedPredicateException(this, "precpred(_ctx, 26)"); - setState(1747); - match(Instanceof); - setState(1748); - singleExpression(27); - } - break; - case 9: - { - _localctx = new InExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1749); - if (!(precpred(_ctx, 25))) throw new FailedPredicateException(this, "precpred(_ctx, 25)"); - setState(1750); - match(In); - setState(1751); - singleExpression(26); - } - break; - case 10: - { - _localctx = new EqualityExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1752); - if (!(precpred(_ctx, 24))) throw new FailedPredicateException(this, "precpred(_ctx, 24)"); - setState(1753); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 1030792151040L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(1754); - singleExpression(25); - } - break; - case 11: - { - _localctx = new BitAndExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1755); - if (!(precpred(_ctx, 23))) throw new FailedPredicateException(this, "precpred(_ctx, 23)"); - setState(1756); - match(BitAnd); - setState(1757); - singleExpression(24); - } - break; - case 12: - { - _localctx = new BitXOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1758); - if (!(precpred(_ctx, 22))) throw new FailedPredicateException(this, "precpred(_ctx, 22)"); - setState(1759); - match(BitXOr); - setState(1760); - singleExpression(23); - } - break; - case 13: - { - _localctx = new BitOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1761); - if (!(precpred(_ctx, 21))) throw new FailedPredicateException(this, "precpred(_ctx, 21)"); - setState(1762); - match(BitOr); - setState(1763); - singleExpression(22); - } - break; - case 14: - { - _localctx = new LogicalAndExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1764); - if (!(precpred(_ctx, 20))) throw new FailedPredicateException(this, "precpred(_ctx, 20)"); - setState(1765); - match(And); - setState(1766); - singleExpression(21); - } - break; - case 15: - { - _localctx = new LogicalOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1767); - if (!(precpred(_ctx, 19))) throw new FailedPredicateException(this, "precpred(_ctx, 19)"); - setState(1768); - match(Or); - setState(1769); - singleExpression(20); - } - break; - case 16: - { - _localctx = new TernaryExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1770); - if (!(precpred(_ctx, 18))) throw new FailedPredicateException(this, "precpred(_ctx, 18)"); - setState(1771); - match(QuestionMark); - setState(1772); - singleExpression(0); - setState(1773); - match(Colon); - setState(1774); - singleExpression(19); - } - break; - case 17: - { - _localctx = new AssignmentExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1776); - if (!(precpred(_ctx, 17))) throw new FailedPredicateException(this, "precpred(_ctx, 17)"); - setState(1777); - match(Assign); - setState(1778); - singleExpression(18); - } - break; - case 18: - { - _localctx = new AssignmentOperatorExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1779); - if (!(precpred(_ctx, 16))) throw new FailedPredicateException(this, "precpred(_ctx, 16)"); - setState(1780); - assignmentOperator(); - setState(1781); - singleExpression(17); - } - break; - case 19: - { - _localctx = new MemberIndexExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1783); - if (!(precpred(_ctx, 51))) throw new FailedPredicateException(this, "precpred(_ctx, 51)"); - setState(1785); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==QuestionMarkDot) { - { - setState(1784); - match(QuestionMarkDot); - } - } - - setState(1787); - match(OpenBracket); - setState(1788); - expressionSequence(); - setState(1789); - match(CloseBracket); - } - break; - case 20: - { - _localctx = new MemberDotExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1791); - if (!(precpred(_ctx, 49))) throw new FailedPredicateException(this, "precpred(_ctx, 49)"); - setState(1793); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Not) { - { - setState(1792); - match(Not); - } - } - - setState(1795); - match(Dot); - setState(1797); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Hashtag) { - { - setState(1796); - match(Hashtag); - } - } - - setState(1799); - identifierName(); - setState(1801); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,232,_ctx) ) { - case 1: - { - setState(1800); - typeGeneric(); - } - break; - } - } - break; - case 21: - { - _localctx = new MemberDotExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1803); - if (!(precpred(_ctx, 48))) throw new FailedPredicateException(this, "precpred(_ctx, 48)"); - setState(1805); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==QuestionMark) { - { - setState(1804); - match(QuestionMark); - } - } - - setState(1807); - match(Dot); - setState(1809); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Hashtag) { - { - setState(1808); - match(Hashtag); - } - } - - setState(1811); - identifierName(); - setState(1813); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,235,_ctx) ) { - case 1: - { - setState(1812); - typeGeneric(); - } - break; - } - } - break; - case 22: - { - _localctx = new ArgumentsExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1815); - if (!(precpred(_ctx, 45))) throw new FailedPredicateException(this, "precpred(_ctx, 45)"); - setState(1816); - arguments(); - } - break; - case 23: - { - _localctx = new PostIncrementExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1817); - if (!(precpred(_ctx, 44))) throw new FailedPredicateException(this, "precpred(_ctx, 44)"); - setState(1818); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(1819); - match(PlusPlus); - } - break; - case 24: - { - _localctx = new PostDecreaseExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1820); - if (!(precpred(_ctx, 43))) throw new FailedPredicateException(this, "precpred(_ctx, 43)"); - setState(1821); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(1822); - match(MinusMinus); - } - break; - case 25: - { - _localctx = new TemplateStringExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1823); - if (!(precpred(_ctx, 15))) throw new FailedPredicateException(this, "precpred(_ctx, 15)"); - setState(1824); - templateStringLiteral(); - } - break; - case 26: - { - _localctx = new CastAsExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1825); - if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)"); - setState(1826); - match(As); - setState(1827); - asExpression(); - } - break; - case 27: - { - _localctx = new NonNullAssertionExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(1828); - if (!(precpred(_ctx, 1))) throw new FailedPredicateException(this, "precpred(_ctx, 1)"); - setState(1829); - match(Not); - } - break; - } - } - } - setState(1834); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,237,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } } \ No newline at end of file -- Gitee From 989d34237318259a294c59d265f1cb86a6692738 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:49:01 +0800 Subject: [PATCH 39/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1948 ----------------- 1 file changed, 1948 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index be3d5ae6..6b04a807 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -9874,1954 +9874,6 @@ public class TypeScriptParser extends TypeScriptParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class GeneratorDefinitionContext extends ParserRuleContext { - public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } - public IteratorDefinitionContext iteratorDefinition() { - return getRuleContext(IteratorDefinitionContext.class,0); - } - public GeneratorDefinitionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_generatorDefinition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorDefinition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorDefinition(this); - } - } - - public final GeneratorDefinitionContext generatorDefinition() throws RecognitionException { - GeneratorDefinitionContext _localctx = new GeneratorDefinitionContext(_ctx, getState()); - enterRule(_localctx, 230, RULE_generatorDefinition); - try { - enterOuterAlt(_localctx, 1); - { - setState(1423); - match(Multiply); - setState(1424); - iteratorDefinition(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IteratorBlockContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public List iteratorDefinition() { - return getRuleContexts(IteratorDefinitionContext.class); - } - public IteratorDefinitionContext iteratorDefinition(int i) { - return getRuleContext(IteratorDefinitionContext.class,i); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public IteratorBlockContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_iteratorBlock; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIteratorBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIteratorBlock(this); - } - } - - public final IteratorBlockContext iteratorBlock() throws RecognitionException { - IteratorBlockContext _localctx = new IteratorBlockContext(_ctx, getState()); - enterRule(_localctx, 232, RULE_iteratorBlock); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1426); - match(OpenBrace); - setState(1427); - iteratorDefinition(); - setState(1432); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,182,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1428); - match(Comma); - setState(1429); - iteratorDefinition(); - } - } - } - setState(1434); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,182,_ctx); - } - setState(1436); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(1435); - match(Comma); - } - } - - setState(1438); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IteratorDefinitionContext extends ParserRuleContext { - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public IteratorDefinitionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_iteratorDefinition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIteratorDefinition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIteratorDefinition(this); - } - } - - public final IteratorDefinitionContext iteratorDefinition() throws RecognitionException { - IteratorDefinitionContext _localctx = new IteratorDefinitionContext(_ctx, getState()); - enterRule(_localctx, 234, RULE_iteratorDefinition); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1440); - match(OpenBracket); - setState(1441); - singleExpression(0); - setState(1442); - match(CloseBracket); - setState(1443); - match(OpenParen); - setState(1445); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(1444); - formalParameterList(); - } - } - - setState(1447); - match(CloseParen); - setState(1448); - match(OpenBrace); - setState(1449); - functionBody(); - setState(1450); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassElementNameContext extends ParserRuleContext { - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public PrivateIdentifierContext privateIdentifier() { - return getRuleContext(PrivateIdentifierContext.class,0); - } - public ClassElementNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classElementName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassElementName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassElementName(this); - } - } - - public final ClassElementNameContext classElementName() throws RecognitionException { - ClassElementNameContext _localctx = new ClassElementNameContext(_ctx, getState()); - enterRule(_localctx, 236, RULE_classElementName); - try { - setState(1454); - _errHandler.sync(this); - switch (_input.LA(1)) { - case OpenBracket: - case NullLiteral: - case BooleanLiteral: - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - case StringLiteral: - enterOuterAlt(_localctx, 1); - { - setState(1452); - propertyName(); - } - break; - case Hashtag: - enterOuterAlt(_localctx, 2); - { - setState(1453); - privateIdentifier(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PrivateIdentifierContext extends ParserRuleContext { - public TerminalNode Hashtag() { return getToken(TypeScriptParser.Hashtag, 0); } - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public PrivateIdentifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_privateIdentifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPrivateIdentifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPrivateIdentifier(this); - } - } - - public final PrivateIdentifierContext privateIdentifier() throws RecognitionException { - PrivateIdentifierContext _localctx = new PrivateIdentifierContext(_ctx, getState()); - enterRule(_localctx, 238, RULE_privateIdentifier); - try { - enterOuterAlt(_localctx, 1); - { - setState(1456); - match(Hashtag); - setState(1457); - identifierName(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FormalParameterListContext extends ParserRuleContext { - public List formalParameterArg() { - return getRuleContexts(FormalParameterArgContext.class); - } - public FormalParameterArgContext formalParameterArg(int i) { - return getRuleContext(FormalParameterArgContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public LastFormalParameterArgContext lastFormalParameterArg() { - return getRuleContext(LastFormalParameterArgContext.class,0); - } - public ArrayLiteralContext arrayLiteral() { - return getRuleContext(ArrayLiteralContext.class,0); - } - public ObjectLiteralContext objectLiteral() { - return getRuleContext(ObjectLiteralContext.class,0); - } - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public FormalParameterListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_formalParameterList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFormalParameterList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFormalParameterList(this); - } - } - - public final FormalParameterListContext formalParameterList() throws RecognitionException { - FormalParameterListContext _localctx = new FormalParameterListContext(_ctx, getState()); - enterRule(_localctx, 240, RULE_formalParameterList); - int _la; - try { - int _alt; - setState(1481); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,190,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1459); - formalParameterArg(); - setState(1464); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,186,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1460); - match(Comma); - setState(1461); - formalParameterArg(); - } - } - } - setState(1466); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,186,_ctx); - } - setState(1469); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,187,_ctx) ) { - case 1: - { - setState(1467); - match(Comma); - setState(1468); - lastFormalParameterArg(); - } - break; - } - setState(1472); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(1471); - match(Comma); - } - } - - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1474); - lastFormalParameterArg(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1475); - arrayLiteral(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(1476); - objectLiteral(); - setState(1479); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1477); - match(Colon); - setState(1478); - formalParameterList(); - } - } - - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FormalParameterArgContext extends ParserRuleContext { - public AssignableContext assignable() { - return getRuleContext(AssignableContext.class,0); - } - public DecoratorContext decorator() { - return getRuleContext(DecoratorContext.class,0); - } - public AccessibilityModifierContext accessibilityModifier() { - return getRuleContext(AccessibilityModifierContext.class,0); - } - public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public FormalParameterArgContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_formalParameterArg; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFormalParameterArg(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFormalParameterArg(this); - } - } - - public final FormalParameterArgContext formalParameterArg() throws RecognitionException { - FormalParameterArgContext _localctx = new FormalParameterArgContext(_ctx, getState()); - enterRule(_localctx, 242, RULE_formalParameterArg); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1484); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==At) { - { - setState(1483); - decorator(); - } - } - - setState(1487); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,192,_ctx) ) { - case 1: - { - setState(1486); - accessibilityModifier(); - } - break; - } - setState(1489); - assignable(); - setState(1491); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==QuestionMark) { - { - setState(1490); - match(QuestionMark); - } - } - - setState(1494); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1493); - typeAnnotation(); - } - } - - setState(1498); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Assign) { - { - setState(1496); - match(Assign); - setState(1497); - singleExpression(0); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LastFormalParameterArgContext extends ParserRuleContext { - public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public LastFormalParameterArgContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_lastFormalParameterArg; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLastFormalParameterArg(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLastFormalParameterArg(this); - } - } - - public final LastFormalParameterArgContext lastFormalParameterArg() throws RecognitionException { - LastFormalParameterArgContext _localctx = new LastFormalParameterArgContext(_ctx, getState()); - enterRule(_localctx, 244, RULE_lastFormalParameterArg); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1500); - match(Ellipsis); - setState(1501); - identifier(); - setState(1503); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1502); - typeAnnotation(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FunctionBodyContext extends ParserRuleContext { - public SourceElementsContext sourceElements() { - return getRuleContext(SourceElementsContext.class,0); - } - public FunctionBodyContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_functionBody; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFunctionBody(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFunctionBody(this); - } - } - - public final FunctionBodyContext functionBody() throws RecognitionException { - FunctionBodyContext _localctx = new FunctionBodyContext(_ctx, getState()); - enterRule(_localctx, 246, RULE_functionBody); - try { - enterOuterAlt(_localctx, 1); - { - setState(1506); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,197,_ctx) ) { - case 1: - { - setState(1505); - sourceElements(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SourceElementsContext extends ParserRuleContext { - public List sourceElement() { - return getRuleContexts(SourceElementContext.class); - } - public SourceElementContext sourceElement(int i) { - return getRuleContext(SourceElementContext.class,i); - } - public SourceElementsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_sourceElements; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSourceElements(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSourceElements(this); - } - } - - public final SourceElementsContext sourceElements() throws RecognitionException { - SourceElementsContext _localctx = new SourceElementsContext(_ctx, getState()); - enterRule(_localctx, 248, RULE_sourceElements); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1509); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(1508); - sourceElement(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(1511); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,198,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArrayLiteralContext extends ParserRuleContext { - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public ElementListContext elementList() { - return getRuleContext(ElementListContext.class,0); - } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public ArrayLiteralContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_arrayLiteral; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayLiteral(this); - } - } - - public final ArrayLiteralContext arrayLiteral() throws RecognitionException { - ArrayLiteralContext _localctx = new ArrayLiteralContext(_ctx, getState()); - enterRule(_localctx, 250, RULE_arrayLiteral); - try { - enterOuterAlt(_localctx, 1); - { - { - setState(1513); - match(OpenBracket); - setState(1514); - elementList(); - setState(1515); - match(CloseBracket); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ElementListContext extends ParserRuleContext { - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public List arrayElement() { - return getRuleContexts(ArrayElementContext.class); - } - public ArrayElementContext arrayElement(int i) { - return getRuleContext(ArrayElementContext.class,i); - } - public ElementListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_elementList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterElementList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitElementList(this); - } - } - - public final ElementListContext elementList() throws RecognitionException { - ElementListContext _localctx = new ElementListContext(_ctx, getState()); - enterRule(_localctx, 252, RULE_elementList); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1520); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,199,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1517); - match(Comma); - } - } - } - setState(1522); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,199,_ctx); - } - setState(1524); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975294632L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { - { - setState(1523); - arrayElement(); - } - } - - setState(1534); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,202,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1527); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(1526); - match(Comma); - } - } - setState(1529); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==Comma ); - setState(1531); - arrayElement(); - } - } - } - setState(1536); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,202,_ctx); - } - setState(1540); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(1537); - match(Comma); - } - } - setState(1542); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArrayElementContext extends ParserRuleContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } - public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } - public ArrayElementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_arrayElement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayElement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayElement(this); - } - } - - public final ArrayElementContext arrayElement() throws RecognitionException { - ArrayElementContext _localctx = new ArrayElementContext(_ctx, getState()); - enterRule(_localctx, 254, RULE_arrayElement); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1544); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1543); - match(Ellipsis); - } - } - - setState(1548); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,205,_ctx) ) { - case 1: - { - setState(1546); - singleExpression(0); - } - break; - case 2: - { - setState(1547); - identifier(); - } - break; - } - setState(1551); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,206,_ctx) ) { - case 1: - { - setState(1550); - match(Comma); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ObjectLiteralContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public List propertyAssignment() { - return getRuleContexts(PropertyAssignmentContext.class); - } - public PropertyAssignmentContext propertyAssignment(int i) { - return getRuleContext(PropertyAssignmentContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public ObjectLiteralContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_objectLiteral; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterObjectLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitObjectLiteral(this); - } - } - - public final ObjectLiteralContext objectLiteral() throws RecognitionException { - ObjectLiteralContext _localctx = new ObjectLiteralContext(_ctx, getState()); - enterRule(_localctx, 256, RULE_objectLiteral); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1553); - match(OpenBrace); - setState(1565); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,209,_ctx) ) { - case 1: - { - setState(1554); - propertyAssignment(); - setState(1559); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,207,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1555); - match(Comma); - setState(1556); - propertyAssignment(); - } - } - } - setState(1561); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,207,_ctx); - } - setState(1563); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(1562); - match(Comma); - } - } - - } - break; - } - setState(1567); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PropertyAssignmentContext extends ParserRuleContext { - public PropertyAssignmentContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_propertyAssignment; } - - public PropertyAssignmentContext() { } - public void copyFrom(PropertyAssignmentContext ctx) { - super.copyFrom(ctx); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PropertyExpressionAssignmentContext extends PropertyAssignmentContext { - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public PropertyExpressionAssignmentContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyExpressionAssignment(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyExpressionAssignment(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ComputedPropertyExpressionAssignmentContext extends PropertyAssignmentContext { - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public ComputedPropertyExpressionAssignmentContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterComputedPropertyExpressionAssignment(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitComputedPropertyExpressionAssignment(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class SpreadOperatorContext extends PropertyAssignmentContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } - public SpreadOperatorContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSpreadOperator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSpreadOperator(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PropertyShorthandContext extends PropertyAssignmentContext { - public IdentifierOrKeyWordContext identifierOrKeyWord() { - return getRuleContext(IdentifierOrKeyWordContext.class,0); - } - public PropertyShorthandContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyShorthand(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyShorthand(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PropertySetterContext extends PropertyAssignmentContext { - public SetAccessorContext setAccessor() { - return getRuleContext(SetAccessorContext.class,0); - } - public PropertySetterContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertySetter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertySetter(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PropertyGetterContext extends PropertyAssignmentContext { - public GetAccessorContext getAccessor() { - return getRuleContext(GetAccessorContext.class,0); - } - public PropertyGetterContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyGetter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyGetter(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class RestParameterInObjectContext extends PropertyAssignmentContext { - public RestParameterContext restParameter() { - return getRuleContext(RestParameterContext.class,0); - } - public RestParameterInObjectContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRestParameterInObject(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRestParameterInObject(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class MethodPropertyContext extends PropertyAssignmentContext { - public GeneratorMethodContext generatorMethod() { - return getRuleContext(GeneratorMethodContext.class,0); - } - public MethodPropertyContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMethodProperty(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMethodProperty(this); - } - } - - public final PropertyAssignmentContext propertyAssignment() throws RecognitionException { - PropertyAssignmentContext _localctx = new PropertyAssignmentContext(_ctx, getState()); - enterRule(_localctx, 258, RULE_propertyAssignment); - int _la; - try { - setState(1588); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,211,_ctx) ) { - case 1: - _localctx = new PropertyExpressionAssignmentContext(_localctx); - enterOuterAlt(_localctx, 1); - { - setState(1569); - propertyName(); - setState(1570); - _la = _input.LA(1); - if ( !(_la==Assign || _la==Colon) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(1571); - singleExpression(0); - } - break; - case 2: - _localctx = new ComputedPropertyExpressionAssignmentContext(_localctx); - enterOuterAlt(_localctx, 2); - { - setState(1573); - match(OpenBracket); - setState(1574); - singleExpression(0); - setState(1575); - match(CloseBracket); - setState(1576); - match(Colon); - setState(1577); - singleExpression(0); - } - break; - case 3: - _localctx = new PropertyGetterContext(_localctx); - enterOuterAlt(_localctx, 3); - { - setState(1579); - getAccessor(); - } - break; - case 4: - _localctx = new PropertySetterContext(_localctx); - enterOuterAlt(_localctx, 4); - { - setState(1580); - setAccessor(); - } - break; - case 5: - _localctx = new MethodPropertyContext(_localctx); - enterOuterAlt(_localctx, 5); - { - setState(1581); - generatorMethod(); - } - break; - case 6: - _localctx = new PropertyShorthandContext(_localctx); - enterOuterAlt(_localctx, 6); - { - setState(1582); - identifierOrKeyWord(); - } - break; - case 7: - _localctx = new SpreadOperatorContext(_localctx); - enterOuterAlt(_localctx, 7); - { - setState(1584); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1583); - match(Ellipsis); - } - } - - setState(1586); - singleExpression(0); - } - break; - case 8: - _localctx = new RestParameterInObjectContext(_localctx); - enterOuterAlt(_localctx, 8); - { - setState(1587); - restParameter(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class GetAccessorContext extends ParserRuleContext { - public GetterContext getter() { - return getRuleContext(GetterContext.class,0); - } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public GetAccessorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_getAccessor; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGetAccessor(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGetAccessor(this); - } - } - - public final GetAccessorContext getAccessor() throws RecognitionException { - GetAccessorContext _localctx = new GetAccessorContext(_ctx, getState()); - enterRule(_localctx, 260, RULE_getAccessor); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1590); - getter(); - setState(1591); - match(OpenParen); - setState(1592); - match(CloseParen); - setState(1594); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1593); - typeAnnotation(); - } - } - - setState(1596); - match(OpenBrace); - setState(1597); - functionBody(); - setState(1598); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SetAccessorContext extends ParserRuleContext { - public SetterContext setter() { - return getRuleContext(SetterContext.class,0); - } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public SetAccessorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_setAccessor; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSetAccessor(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSetAccessor(this); - } - } - - public final SetAccessorContext setAccessor() throws RecognitionException { - SetAccessorContext _localctx = new SetAccessorContext(_ctx, getState()); - enterRule(_localctx, 262, RULE_setAccessor); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1600); - setter(); - setState(1601); - match(OpenParen); - setState(1603); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(1602); - formalParameterList(); - } - } - - setState(1605); - match(CloseParen); - setState(1606); - match(OpenBrace); - setState(1607); - functionBody(); - setState(1608); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PropertyNameContext extends ParserRuleContext { - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } - public NumericLiteralContext numericLiteral() { - return getRuleContext(NumericLiteralContext.class,0); - } - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public PropertyNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_propertyName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyName(this); - } - } - - public final PropertyNameContext propertyName() throws RecognitionException { - PropertyNameContext _localctx = new PropertyNameContext(_ctx, getState()); - enterRule(_localctx, 264, RULE_propertyName); - try { - setState(1617); - _errHandler.sync(this); - switch (_input.LA(1)) { - case NullLiteral: - case BooleanLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(1610); - identifierName(); - } - break; - case StringLiteral: - enterOuterAlt(_localctx, 2); - { - setState(1611); - match(StringLiteral); - } - break; - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - enterOuterAlt(_localctx, 3); - { - setState(1612); - numericLiteral(); - } - break; - case OpenBracket: - enterOuterAlt(_localctx, 4); - { - setState(1613); - match(OpenBracket); - setState(1614); - singleExpression(0); - setState(1615); - match(CloseBracket); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArgumentsContext extends ParserRuleContext { - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public ArgumentListContext argumentList() { - return getRuleContext(ArgumentListContext.class,0); - } - public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } - public ArgumentsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_arguments; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArguments(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArguments(this); - } - } - - public final ArgumentsContext arguments() throws RecognitionException { - ArgumentsContext _localctx = new ArgumentsContext(_ctx, getState()); - enterRule(_localctx, 266, RULE_arguments); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1619); - match(OpenParen); - setState(1624); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975294632L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { - { - setState(1620); - argumentList(); - setState(1622); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(1621); - match(Comma); - } - } - - } - } - - setState(1626); - match(CloseParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArgumentListContext extends ParserRuleContext { - public List argument() { - return getRuleContexts(ArgumentContext.class); - } - public ArgumentContext argument(int i) { - return getRuleContext(ArgumentContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public ArgumentListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_argumentList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArgumentList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArgumentList(this); - } - } - - public final ArgumentListContext argumentList() throws RecognitionException { - ArgumentListContext _localctx = new ArgumentListContext(_ctx, getState()); - enterRule(_localctx, 268, RULE_argumentList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1628); - argument(); - setState(1633); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,217,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1629); - match(Comma); - setState(1630); - argument(); - } - } - } - setState(1635); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,217,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArgumentContext extends ParserRuleContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } - public ArgumentContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_argument; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArgument(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArgument(this); - } - } - - public final ArgumentContext argument() throws RecognitionException { - ArgumentContext _localctx = new ArgumentContext(_ctx, getState()); - enterRule(_localctx, 270, RULE_argument); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1637); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Ellipsis) { - { - setState(1636); - match(Ellipsis); - } - } - - setState(1641); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,219,_ctx) ) { - case 1: - { - setState(1639); - singleExpression(0); - } - break; - case 2: - { - setState(1640); - identifier(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExpressionSequenceContext extends ParserRuleContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public ExpressionSequenceContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_expressionSequence; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExpressionSequence(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExpressionSequence(this); - } - } - - public final ExpressionSequenceContext expressionSequence() throws RecognitionException { - ExpressionSequenceContext _localctx = new ExpressionSequenceContext(_ctx, getState()); - enterRule(_localctx, 272, RULE_expressionSequence); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1643); - singleExpression(0); - setState(1648); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,220,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1644); - match(Comma); - setState(1645); - singleExpression(0); - } - } - } - setState(1650); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,220,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } -- Gitee From dfbee2e701410b4d915aefde3172bcbd4547c686 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:49:25 +0800 Subject: [PATCH 40/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1943 ----------------- 1 file changed, 1943 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index 6b04a807..5b14cf3d 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -7930,1949 +7930,6 @@ public class TypeScriptParser extends TypeScriptParserBase { } } - public final ReturnStatementContext returnStatement() throws RecognitionException { - ReturnStatementContext _localctx = new ReturnStatementContext(_ctx, getState()); - enterRule(_localctx, 176, RULE_returnStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1173); - match(Return); - setState(1176); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,139,_ctx) ) { - case 1: - { - setState(1174); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(1175); - expressionSequence(); - } - break; - } - setState(1178); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class YieldStatementContext extends ParserRuleContext { - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public TerminalNode Yield() { return getToken(TypeScriptParser.Yield, 0); } - public TerminalNode YieldStar() { return getToken(TypeScriptParser.YieldStar, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public YieldStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_yieldStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterYieldStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitYieldStatement(this); - } - } - - public final YieldStatementContext yieldStatement() throws RecognitionException { - YieldStatementContext _localctx = new YieldStatementContext(_ctx, getState()); - enterRule(_localctx, 178, RULE_yieldStatement); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1180); - _la = _input.LA(1); - if ( !(_la==Yield || _la==YieldStar) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(1183); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,140,_ctx) ) { - case 1: - { - setState(1181); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(1182); - expressionSequence(); - } - break; - } - setState(1185); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class WithStatementContext extends ParserRuleContext { - public TerminalNode With() { return getToken(TypeScriptParser.With, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public WithStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_withStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterWithStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitWithStatement(this); - } - } - - public final WithStatementContext withStatement() throws RecognitionException { - WithStatementContext _localctx = new WithStatementContext(_ctx, getState()); - enterRule(_localctx, 180, RULE_withStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1187); - match(With); - setState(1188); - match(OpenParen); - setState(1189); - expressionSequence(); - setState(1190); - match(CloseParen); - setState(1191); - statement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SwitchStatementContext extends ParserRuleContext { - public TerminalNode Switch() { return getToken(TypeScriptParser.Switch, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public CaseBlockContext caseBlock() { - return getRuleContext(CaseBlockContext.class,0); - } - public SwitchStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_switchStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSwitchStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSwitchStatement(this); - } - } - - public final SwitchStatementContext switchStatement() throws RecognitionException { - SwitchStatementContext _localctx = new SwitchStatementContext(_ctx, getState()); - enterRule(_localctx, 182, RULE_switchStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1193); - match(Switch); - setState(1194); - match(OpenParen); - setState(1195); - expressionSequence(); - setState(1196); - match(CloseParen); - setState(1197); - caseBlock(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CaseBlockContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public List caseClauses() { - return getRuleContexts(CaseClausesContext.class); - } - public CaseClausesContext caseClauses(int i) { - return getRuleContext(CaseClausesContext.class,i); - } - public DefaultClauseContext defaultClause() { - return getRuleContext(DefaultClauseContext.class,0); - } - public CaseBlockContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_caseBlock; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCaseBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCaseBlock(this); - } - } - - public final CaseBlockContext caseBlock() throws RecognitionException { - CaseBlockContext _localctx = new CaseBlockContext(_ctx, getState()); - enterRule(_localctx, 184, RULE_caseBlock); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1199); - match(OpenBrace); - setState(1201); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Case) { - { - setState(1200); - caseClauses(); - } - } - - setState(1207); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Default) { - { - setState(1203); - defaultClause(); - setState(1205); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Case) { - { - setState(1204); - caseClauses(); - } - } - - } - } - - setState(1209); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CaseClausesContext extends ParserRuleContext { - public List caseClause() { - return getRuleContexts(CaseClauseContext.class); - } - public CaseClauseContext caseClause(int i) { - return getRuleContext(CaseClauseContext.class,i); - } - public CaseClausesContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_caseClauses; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCaseClauses(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCaseClauses(this); - } - } - - public final CaseClausesContext caseClauses() throws RecognitionException { - CaseClausesContext _localctx = new CaseClausesContext(_ctx, getState()); - enterRule(_localctx, 186, RULE_caseClauses); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1212); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(1211); - caseClause(); - } - } - setState(1214); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==Case ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CaseClauseContext extends ParserRuleContext { - public TerminalNode Case() { return getToken(TypeScriptParser.Case, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public StatementListContext statementList() { - return getRuleContext(StatementListContext.class,0); - } - public CaseClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_caseClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCaseClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCaseClause(this); - } - } - - public final CaseClauseContext caseClause() throws RecognitionException { - CaseClauseContext _localctx = new CaseClauseContext(_ctx, getState()); - enterRule(_localctx, 188, RULE_caseClause); - try { - enterOuterAlt(_localctx, 1); - { - setState(1216); - match(Case); - setState(1217); - expressionSequence(); - setState(1218); - match(Colon); - setState(1220); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,145,_ctx) ) { - case 1: - { - setState(1219); - statementList(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DefaultClauseContext extends ParserRuleContext { - public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public StatementListContext statementList() { - return getRuleContext(StatementListContext.class,0); - } - public DefaultClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_defaultClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDefaultClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDefaultClause(this); - } - } - - public final DefaultClauseContext defaultClause() throws RecognitionException { - DefaultClauseContext _localctx = new DefaultClauseContext(_ctx, getState()); - enterRule(_localctx, 190, RULE_defaultClause); - try { - enterOuterAlt(_localctx, 1); - { - setState(1222); - match(Default); - setState(1223); - match(Colon); - setState(1225); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,146,_ctx) ) { - case 1: - { - setState(1224); - statementList(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class LabelledStatementContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public LabelledStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_labelledStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterLabelledStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitLabelledStatement(this); - } - } - - public final LabelledStatementContext labelledStatement() throws RecognitionException { - LabelledStatementContext _localctx = new LabelledStatementContext(_ctx, getState()); - enterRule(_localctx, 192, RULE_labelledStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1227); - identifier(); - setState(1228); - match(Colon); - setState(1229); - statement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ThrowStatementContext extends ParserRuleContext { - public TerminalNode Throw() { return getToken(TypeScriptParser.Throw, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public ThrowStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_throwStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterThrowStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitThrowStatement(this); - } - } - - public final ThrowStatementContext throwStatement() throws RecognitionException { - ThrowStatementContext _localctx = new ThrowStatementContext(_ctx, getState()); - enterRule(_localctx, 194, RULE_throwStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1231); - match(Throw); - setState(1232); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(1233); - expressionSequence(); - setState(1234); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TryStatementContext extends ParserRuleContext { - public TerminalNode Try() { return getToken(TypeScriptParser.Try, 0); } - public BlockContext block() { - return getRuleContext(BlockContext.class,0); - } - public CatchProductionContext catchProduction() { - return getRuleContext(CatchProductionContext.class,0); - } - public FinallyProductionContext finallyProduction() { - return getRuleContext(FinallyProductionContext.class,0); - } - public TryStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_tryStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTryStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTryStatement(this); - } - } - - public final TryStatementContext tryStatement() throws RecognitionException { - TryStatementContext _localctx = new TryStatementContext(_ctx, getState()); - enterRule(_localctx, 196, RULE_tryStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1236); - match(Try); - setState(1237); - block(); - setState(1243); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Catch: - { - setState(1238); - catchProduction(); - setState(1240); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,147,_ctx) ) { - case 1: - { - setState(1239); - finallyProduction(); - } - break; - } - } - break; - case Finally: - { - setState(1242); - finallyProduction(); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CatchProductionContext extends ParserRuleContext { - public TerminalNode Catch() { return getToken(TypeScriptParser.Catch, 0); } - public BlockContext block() { - return getRuleContext(BlockContext.class,0); - } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public CatchProductionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_catchProduction; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCatchProduction(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCatchProduction(this); - } - } - - public final CatchProductionContext catchProduction() throws RecognitionException { - CatchProductionContext _localctx = new CatchProductionContext(_ctx, getState()); - enterRule(_localctx, 198, RULE_catchProduction); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1245); - match(Catch); - setState(1253); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==OpenParen) { - { - setState(1246); - match(OpenParen); - setState(1247); - identifier(); - setState(1249); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1248); - typeAnnotation(); - } - } - - setState(1251); - match(CloseParen); - } - } - - setState(1255); - block(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FinallyProductionContext extends ParserRuleContext { - public TerminalNode Finally() { return getToken(TypeScriptParser.Finally, 0); } - public BlockContext block() { - return getRuleContext(BlockContext.class,0); - } - public FinallyProductionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_finallyProduction; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFinallyProduction(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFinallyProduction(this); - } - } - - public final FinallyProductionContext finallyProduction() throws RecognitionException { - FinallyProductionContext _localctx = new FinallyProductionContext(_ctx, getState()); - enterRule(_localctx, 200, RULE_finallyProduction); - try { - enterOuterAlt(_localctx, 1); - { - setState(1257); - match(Finally); - setState(1258); - block(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DebuggerStatementContext extends ParserRuleContext { - public TerminalNode Debugger() { return getToken(TypeScriptParser.Debugger, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public DebuggerStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_debuggerStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDebuggerStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDebuggerStatement(this); - } - } - - public final DebuggerStatementContext debuggerStatement() throws RecognitionException { - DebuggerStatementContext _localctx = new DebuggerStatementContext(_ctx, getState()); - enterRule(_localctx, 202, RULE_debuggerStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1260); - match(Debugger); - setState(1261); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class FunctionDeclarationContext extends ParserRuleContext { - public TerminalNode Function_() { return getToken(TypeScriptParser.Function_, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public CallSignatureContext callSignature() { - return getRuleContext(CallSignatureContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } - public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public FunctionDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_functionDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFunctionDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFunctionDeclaration(this); - } - } - - public final FunctionDeclarationContext functionDeclaration() throws RecognitionException { - FunctionDeclarationContext _localctx = new FunctionDeclarationContext(_ctx, getState()); - enterRule(_localctx, 204, RULE_functionDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1264); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Async) { - { - setState(1263); - match(Async); - } - } - - setState(1266); - match(Function_); - setState(1268); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Multiply) { - { - setState(1267); - match(Multiply); - } - } - - setState(1270); - identifier(); - setState(1271); - callSignature(); - setState(1277); - _errHandler.sync(this); - switch (_input.LA(1)) { - case OpenBrace: - { - { - setState(1272); - match(OpenBrace); - setState(1273); - functionBody(); - setState(1274); - match(CloseBrace); - } - } - break; - case SemiColon: - { - setState(1276); - match(SemiColon); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassDeclarationContext extends ParserRuleContext { - public TerminalNode Class() { return getToken(TypeScriptParser.Class, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ClassHeritageContext classHeritage() { - return getRuleContext(ClassHeritageContext.class,0); - } - public ClassTailContext classTail() { - return getRuleContext(ClassTailContext.class,0); - } - public DecoratorListContext decoratorList() { - return getRuleContext(DecoratorListContext.class,0); - } - public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } - public TerminalNode Abstract() { return getToken(TypeScriptParser.Abstract, 0); } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } - public ClassDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassDeclaration(this); - } - } - - public final ClassDeclarationContext classDeclaration() throws RecognitionException { - ClassDeclarationContext _localctx = new ClassDeclarationContext(_ctx, getState()); - enterRule(_localctx, 206, RULE_classDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1280); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==At) { - { - setState(1279); - decoratorList(); - } - } - - setState(1286); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Export) { - { - setState(1282); - match(Export); - setState(1284); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Default) { - { - setState(1283); - match(Default); - } - } - - } - } - - setState(1289); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Abstract) { - { - setState(1288); - match(Abstract); - } - } - - setState(1291); - match(Class); - setState(1292); - identifier(); - setState(1294); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(1293); - typeParameters(); - } - } - - setState(1296); - classHeritage(); - setState(1297); - classTail(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassHeritageContext extends ParserRuleContext { - public ClassExtendsClauseContext classExtendsClause() { - return getRuleContext(ClassExtendsClauseContext.class,0); - } - public ImplementsClauseContext implementsClause() { - return getRuleContext(ImplementsClauseContext.class,0); - } - public ClassHeritageContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classHeritage; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassHeritage(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassHeritage(this); - } - } - - public final ClassHeritageContext classHeritage() throws RecognitionException { - ClassHeritageContext _localctx = new ClassHeritageContext(_ctx, getState()); - enterRule(_localctx, 208, RULE_classHeritage); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1300); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Extends) { - { - setState(1299); - classExtendsClause(); - } - } - - setState(1303); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Implements) { - { - setState(1302); - implementsClause(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassTailContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public List classElement() { - return getRuleContexts(ClassElementContext.class); - } - public ClassElementContext classElement(int i) { - return getRuleContext(ClassElementContext.class,i); - } - public ClassTailContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classTail; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassTail(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassTail(this); - } - } - - public final ClassTailContext classTail() throws RecognitionException { - ClassTailContext _localctx = new ClassTailContext(_ctx, getState()); - enterRule(_localctx, 210, RULE_classTail); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1305); - match(OpenBrace); - setState(1309); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,161,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1306); - classElement(); - } - } - } - setState(1311); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,161,_ctx); - } - setState(1312); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassExtendsClauseContext extends ParserRuleContext { - public TerminalNode Extends() { return getToken(TypeScriptParser.Extends, 0); } - public TypeReferenceContext typeReference() { - return getRuleContext(TypeReferenceContext.class,0); - } - public ClassExtendsClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classExtendsClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassExtendsClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassExtendsClause(this); - } - } - - public final ClassExtendsClauseContext classExtendsClause() throws RecognitionException { - ClassExtendsClauseContext _localctx = new ClassExtendsClauseContext(_ctx, getState()); - enterRule(_localctx, 212, RULE_classExtendsClause); - try { - enterOuterAlt(_localctx, 1); - { - setState(1314); - match(Extends); - setState(1315); - typeReference(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImplementsClauseContext extends ParserRuleContext { - public TerminalNode Implements() { return getToken(TypeScriptParser.Implements, 0); } - public ClassOrInterfaceTypeListContext classOrInterfaceTypeList() { - return getRuleContext(ClassOrInterfaceTypeListContext.class,0); - } - public ImplementsClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_implementsClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImplementsClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImplementsClause(this); - } - } - - public final ImplementsClauseContext implementsClause() throws RecognitionException { - ImplementsClauseContext _localctx = new ImplementsClauseContext(_ctx, getState()); - enterRule(_localctx, 214, RULE_implementsClause); - try { - enterOuterAlt(_localctx, 1); - { - setState(1317); - match(Implements); - setState(1318); - classOrInterfaceTypeList(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassElementContext extends ParserRuleContext { - public ConstructorDeclarationContext constructorDeclaration() { - return getRuleContext(ConstructorDeclarationContext.class,0); - } - public PropertyMemberDeclarationContext propertyMemberDeclaration() { - return getRuleContext(PropertyMemberDeclarationContext.class,0); - } - public DecoratorListContext decoratorList() { - return getRuleContext(DecoratorListContext.class,0); - } - public IndexMemberDeclarationContext indexMemberDeclaration() { - return getRuleContext(IndexMemberDeclarationContext.class,0); - } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public ClassElementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classElement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassElement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassElement(this); - } - } - - public final ClassElementContext classElement() throws RecognitionException { - ClassElementContext _localctx = new ClassElementContext(_ctx, getState()); - enterRule(_localctx, 216, RULE_classElement); - try { - setState(1327); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,163,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(1320); - constructorDeclaration(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(1322); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,162,_ctx) ) { - case 1: - { - setState(1321); - decoratorList(); - } - break; - } - setState(1324); - propertyMemberDeclaration(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1325); - indexMemberDeclaration(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(1326); - statement(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PropertyMemberDeclarationContext extends ParserRuleContext { - public PropertyMemberDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_propertyMemberDeclaration; } - - public PropertyMemberDeclarationContext() { } - public void copyFrom(PropertyMemberDeclarationContext ctx) { - super.copyFrom(ctx); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PropertyDeclarationExpressionContext extends PropertyMemberDeclarationContext { - public PropertyMemberBaseContext propertyMemberBase() { - return getRuleContext(PropertyMemberBaseContext.class,0); - } - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public InitializerContext initializer() { - return getRuleContext(InitializerContext.class,0); - } - public PropertyDeclarationExpressionContext(PropertyMemberDeclarationContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyDeclarationExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyDeclarationExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class MethodDeclarationExpressionContext extends PropertyMemberDeclarationContext { - public PropertyMemberBaseContext propertyMemberBase() { - return getRuleContext(PropertyMemberBaseContext.class,0); - } - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public CallSignatureContext callSignature() { - return getRuleContext(CallSignatureContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public MethodDeclarationExpressionContext(PropertyMemberDeclarationContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMethodDeclarationExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMethodDeclarationExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class GetterSetterDeclarationExpressionContext extends PropertyMemberDeclarationContext { - public PropertyMemberBaseContext propertyMemberBase() { - return getRuleContext(PropertyMemberBaseContext.class,0); - } - public GetAccessorContext getAccessor() { - return getRuleContext(GetAccessorContext.class,0); - } - public SetAccessorContext setAccessor() { - return getRuleContext(SetAccessorContext.class,0); - } - public GetterSetterDeclarationExpressionContext(PropertyMemberDeclarationContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGetterSetterDeclarationExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGetterSetterDeclarationExpression(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class AbstractMemberDeclarationContext extends PropertyMemberDeclarationContext { - public AbstractDeclarationContext abstractDeclaration() { - return getRuleContext(AbstractDeclarationContext.class,0); - } - public AbstractMemberDeclarationContext(PropertyMemberDeclarationContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAbstractMemberDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAbstractMemberDeclaration(this); - } - } - - public final PropertyMemberDeclarationContext propertyMemberDeclaration() throws RecognitionException { - PropertyMemberDeclarationContext _localctx = new PropertyMemberDeclarationContext(_ctx, getState()); - enterRule(_localctx, 218, RULE_propertyMemberDeclaration); - int _la; - try { - setState(1358); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,169,_ctx) ) { - case 1: - _localctx = new PropertyDeclarationExpressionContext(_localctx); - enterOuterAlt(_localctx, 1); - { - setState(1329); - propertyMemberBase(); - setState(1330); - propertyName(); - setState(1332); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==QuestionMark) { - { - setState(1331); - match(QuestionMark); - } - } - - setState(1335); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(1334); - typeAnnotation(); - } - } - - setState(1338); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Assign) { - { - setState(1337); - initializer(); - } - } - - setState(1340); - match(SemiColon); - } - break; - case 2: - _localctx = new MethodDeclarationExpressionContext(_localctx); - enterOuterAlt(_localctx, 2); - { - setState(1342); - propertyMemberBase(); - setState(1343); - propertyName(); - setState(1344); - callSignature(); - setState(1350); - _errHandler.sync(this); - switch (_input.LA(1)) { - case OpenBrace: - { - { - setState(1345); - match(OpenBrace); - setState(1346); - functionBody(); - setState(1347); - match(CloseBrace); - } - } - break; - case SemiColon: - { - setState(1349); - match(SemiColon); - } - break; - default: - throw new NoViableAltException(this); - } - } - break; - case 3: - _localctx = new GetterSetterDeclarationExpressionContext(_localctx); - enterOuterAlt(_localctx, 3); - { - setState(1352); - propertyMemberBase(); - setState(1355); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,168,_ctx) ) { - case 1: - { - setState(1353); - getAccessor(); - } - break; - case 2: - { - setState(1354); - setAccessor(); - } - break; - } - } - break; - case 4: - _localctx = new AbstractMemberDeclarationContext(_localctx); - enterOuterAlt(_localctx, 4); - { - setState(1357); - abstractDeclaration(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PropertyMemberBaseContext extends ParserRuleContext { - public AccessibilityModifierContext accessibilityModifier() { - return getRuleContext(AccessibilityModifierContext.class,0); - } - public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } - public TerminalNode Static() { return getToken(TypeScriptParser.Static, 0); } - public TerminalNode ReadOnly() { return getToken(TypeScriptParser.ReadOnly, 0); } - public PropertyMemberBaseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_propertyMemberBase; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertyMemberBase(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertyMemberBase(this); - } - } - - public final PropertyMemberBaseContext propertyMemberBase() throws RecognitionException { - PropertyMemberBaseContext _localctx = new PropertyMemberBaseContext(_ctx, getState()); - enterRule(_localctx, 220, RULE_propertyMemberBase); - try { - enterOuterAlt(_localctx, 1); - { - setState(1361); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,170,_ctx) ) { - case 1: - { - setState(1360); - accessibilityModifier(); - } - break; - } - setState(1364); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,171,_ctx) ) { - case 1: - { - setState(1363); - match(Async); - } - break; - } - setState(1367); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,172,_ctx) ) { - case 1: - { - setState(1366); - match(Static); - } - break; - } - setState(1370); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,173,_ctx) ) { - case 1: - { - setState(1369); - match(ReadOnly); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IndexMemberDeclarationContext extends ParserRuleContext { - public IndexSignatureContext indexSignature() { - return getRuleContext(IndexSignatureContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public IndexMemberDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_indexMemberDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIndexMemberDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIndexMemberDeclaration(this); - } - } - - public final IndexMemberDeclarationContext indexMemberDeclaration() throws RecognitionException { - IndexMemberDeclarationContext _localctx = new IndexMemberDeclarationContext(_ctx, getState()); - enterRule(_localctx, 222, RULE_indexMemberDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(1372); - indexSignature(); - setState(1373); - match(SemiColon); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class GeneratorMethodContext extends ParserRuleContext { - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } - public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public GeneratorMethodContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_generatorMethod; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorMethod(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorMethod(this); - } - } - - public final GeneratorMethodContext generatorMethod() throws RecognitionException { - GeneratorMethodContext _localctx = new GeneratorMethodContext(_ctx, getState()); - enterRule(_localctx, 224, RULE_generatorMethod); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1377); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,174,_ctx) ) { - case 1: - { - setState(1375); - match(Async); - setState(1376); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - } - break; - } - setState(1380); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Multiply) { - { - setState(1379); - match(Multiply); - } - } - - setState(1382); - propertyName(); - setState(1383); - match(OpenParen); - setState(1385); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(1384); - formalParameterList(); - } - } - - setState(1387); - match(CloseParen); - setState(1388); - match(OpenBrace); - setState(1389); - functionBody(); - setState(1390); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class GeneratorFunctionDeclarationContext extends ParserRuleContext { - public TerminalNode Function_() { return getToken(TypeScriptParser.Function_, 0); } - public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public TerminalNode Async() { return getToken(TypeScriptParser.Async, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public GeneratorFunctionDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_generatorFunctionDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorFunctionDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorFunctionDeclaration(this); - } - } - - public final GeneratorFunctionDeclarationContext generatorFunctionDeclaration() throws RecognitionException { - GeneratorFunctionDeclarationContext _localctx = new GeneratorFunctionDeclarationContext(_ctx, getState()); - enterRule(_localctx, 226, RULE_generatorFunctionDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1393); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Async) { - { - setState(1392); - match(Async); - } - } - - setState(1395); - match(Function_); - setState(1396); - match(Multiply); - setState(1398); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 96)) & ~0x3f) == 0 && ((1L << (_la - 96)) & 5016517607467L) != 0)) { - { - setState(1397); - identifier(); - } - } - - setState(1400); - match(OpenParen); - setState(1402); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(1401); - formalParameterList(); - } - } - - setState(1404); - match(CloseParen); - setState(1405); - match(OpenBrace); - setState(1406); - functionBody(); - setState(1407); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class GeneratorBlockContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public List generatorDefinition() { - return getRuleContexts(GeneratorDefinitionContext.class); - } - public GeneratorDefinitionContext generatorDefinition(int i) { - return getRuleContext(GeneratorDefinitionContext.class,i); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public GeneratorBlockContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_generatorBlock; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterGeneratorBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitGeneratorBlock(this); - } - } - - public final GeneratorBlockContext generatorBlock() throws RecognitionException { - GeneratorBlockContext _localctx = new GeneratorBlockContext(_ctx, getState()); - enterRule(_localctx, 228, RULE_generatorBlock); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1409); - match(OpenBrace); - setState(1410); - generatorDefinition(); - setState(1415); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,180,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1411); - match(Comma); - setState(1412); - generatorDefinition(); - } - } - } - setState(1417); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,180,_ctx); - } - setState(1419); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(1418); - match(Comma); - } - } - - setState(1421); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } -- Gitee From f7a245addd947b09de5e7d9ac3a3dd78679c32ca Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:49:46 +0800 Subject: [PATCH 41/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1941 ----------------- 1 file changed, 1941 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index 5b14cf3d..97f00bed 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -5988,1947 +5988,6 @@ public class TypeScriptParser extends TypeScriptParserBase { } } - public final ImportNamespaceContext importNamespace() throws RecognitionException { - ImportNamespaceContext _localctx = new ImportNamespaceContext(_ctx, getState()); - enterRule(_localctx, 140, RULE_importNamespace); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(918); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Multiply: - { - setState(916); - match(Multiply); - } - break; - case NullLiteral: - case BooleanLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - { - setState(917); - identifierName(); - } - break; - default: - throw new NoViableAltException(this); - } - setState(922); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==As) { - { - setState(920); - match(As); - setState(921); - identifierName(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportFromContext extends ParserRuleContext { - public TerminalNode From() { return getToken(TypeScriptParser.From, 0); } - public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } - public ImportFromContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importFrom; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportFrom(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportFrom(this); - } - } - - public final ImportFromContext importFrom() throws RecognitionException { - ImportFromContext _localctx = new ImportFromContext(_ctx, getState()); - enterRule(_localctx, 142, RULE_importFrom); - try { - enterOuterAlt(_localctx, 1); - { - setState(924); - match(From); - setState(925); - match(StringLiteral); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AliasNameContext extends ParserRuleContext { - public List identifierName() { - return getRuleContexts(IdentifierNameContext.class); - } - public IdentifierNameContext identifierName(int i) { - return getRuleContext(IdentifierNameContext.class,i); - } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public AliasNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_aliasName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAliasName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAliasName(this); - } - } - - public final AliasNameContext aliasName() throws RecognitionException { - AliasNameContext _localctx = new AliasNameContext(_ctx, getState()); - enterRule(_localctx, 144, RULE_aliasName); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(927); - identifierName(); - setState(930); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==As) { - { - setState(928); - match(As); - setState(929); - identifierName(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExportStatementContext extends ParserRuleContext { - public ExportStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_exportStatement; } - - public ExportStatementContext() { } - public void copyFrom(ExportStatementContext ctx) { - super.copyFrom(ctx); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ExportDefaultDeclarationContext extends ExportStatementContext { - public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } - public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public ExportDefaultDeclarationContext(ExportStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportDefaultDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportDefaultDeclaration(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ExportDeclarationContext extends ExportStatementContext { - public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public ExportFromBlockContext exportFromBlock() { - return getRuleContext(ExportFromBlockContext.class,0); - } - public DeclarationContext declaration() { - return getRuleContext(DeclarationContext.class,0); - } - public TerminalNode Default() { return getToken(TypeScriptParser.Default, 0); } - public ExportDeclarationContext(ExportStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportDeclaration(this); - } - } - - public final ExportStatementContext exportStatement() throws RecognitionException { - ExportStatementContext _localctx = new ExportStatementContext(_ctx, getState()); - enterRule(_localctx, 146, RULE_exportStatement); - try { - setState(947); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,102,_ctx) ) { - case 1: - _localctx = new ExportDeclarationContext(_localctx); - enterOuterAlt(_localctx, 1); - { - setState(932); - match(Export); - setState(934); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,100,_ctx) ) { - case 1: - { - setState(933); - match(Default); - } - break; - } - setState(938); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,101,_ctx) ) { - case 1: - { - setState(936); - exportFromBlock(); - } - break; - case 2: - { - setState(937); - declaration(); - } - break; - } - setState(940); - eos(); - } - break; - case 2: - _localctx = new ExportDefaultDeclarationContext(_localctx); - enterOuterAlt(_localctx, 2); - { - setState(942); - match(Export); - setState(943); - match(Default); - setState(944); - singleExpression(0); - setState(945); - eos(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExportFromBlockContext extends ParserRuleContext { - public ImportNamespaceContext importNamespace() { - return getRuleContext(ImportNamespaceContext.class,0); - } - public ImportFromContext importFrom() { - return getRuleContext(ImportFromContext.class,0); - } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public ExportModuleItemsContext exportModuleItems() { - return getRuleContext(ExportModuleItemsContext.class,0); - } - public ExportFromBlockContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_exportFromBlock; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportFromBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportFromBlock(this); - } - } - - public final ExportFromBlockContext exportFromBlock() throws RecognitionException { - ExportFromBlockContext _localctx = new ExportFromBlockContext(_ctx, getState()); - enterRule(_localctx, 148, RULE_exportFromBlock); - try { - setState(959); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Multiply: - case NullLiteral: - case BooleanLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(949); - importNamespace(); - setState(950); - importFrom(); - setState(951); - eos(); - } - break; - case OpenBrace: - enterOuterAlt(_localctx, 2); - { - setState(953); - exportModuleItems(); - setState(955); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,103,_ctx) ) { - case 1: - { - setState(954); - importFrom(); - } - break; - } - setState(957); - eos(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExportModuleItemsContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public List exportAliasName() { - return getRuleContexts(ExportAliasNameContext.class); - } - public ExportAliasNameContext exportAliasName(int i) { - return getRuleContext(ExportAliasNameContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public ExportModuleItemsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_exportModuleItems; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportModuleItems(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportModuleItems(this); - } - } - - public final ExportModuleItemsContext exportModuleItems() throws RecognitionException { - ExportModuleItemsContext _localctx = new ExportModuleItemsContext(_ctx, getState()); - enterRule(_localctx, 150, RULE_exportModuleItems); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(961); - match(OpenBrace); - setState(967); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,105,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(962); - exportAliasName(); - setState(963); - match(Comma); - } - } - } - setState(969); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,105,_ctx); - } - setState(974); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 59)) & ~0x3f) == 0 && ((1L << (_la - 59)) & -8796093024253L) != 0) || ((((_la - 123)) & ~0x3f) == 0 && ((1L << (_la - 123)) & 104447L) != 0)) { - { - setState(970); - exportAliasName(); - setState(972); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(971); - match(Comma); - } - } - - } - } - - setState(976); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExportAliasNameContext extends ParserRuleContext { - public List moduleExportName() { - return getRuleContexts(ModuleExportNameContext.class); - } - public ModuleExportNameContext moduleExportName(int i) { - return getRuleContext(ModuleExportNameContext.class,i); - } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public ExportAliasNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_exportAliasName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExportAliasName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExportAliasName(this); - } - } - - public final ExportAliasNameContext exportAliasName() throws RecognitionException { - ExportAliasNameContext _localctx = new ExportAliasNameContext(_ctx, getState()); - enterRule(_localctx, 152, RULE_exportAliasName); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(978); - moduleExportName(); - setState(981); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==As) { - { - setState(979); - match(As); - setState(980); - moduleExportName(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DeclarationContext extends ParserRuleContext { - public VariableStatementContext variableStatement() { - return getRuleContext(VariableStatementContext.class,0); - } - public ClassDeclarationContext classDeclaration() { - return getRuleContext(ClassDeclarationContext.class,0); - } - public FunctionDeclarationContext functionDeclaration() { - return getRuleContext(FunctionDeclarationContext.class,0); - } - public DeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_declaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDeclaration(this); - } - } - - public final DeclarationContext declaration() throws RecognitionException { - DeclarationContext _localctx = new DeclarationContext(_ctx, getState()); - enterRule(_localctx, 154, RULE_declaration); - try { - setState(986); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,109,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(983); - variableStatement(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(984); - classDeclaration(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(985); - functionDeclaration(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class VariableStatementContext extends ParserRuleContext { - public BindingPatternContext bindingPattern() { - return getRuleContext(BindingPatternContext.class,0); - } - public InitializerContext initializer() { - return getRuleContext(InitializerContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public VariableDeclarationListContext variableDeclarationList() { - return getRuleContext(VariableDeclarationListContext.class,0); - } - public AccessibilityModifierContext accessibilityModifier() { - return getRuleContext(AccessibilityModifierContext.class,0); - } - public VarModifierContext varModifier() { - return getRuleContext(VarModifierContext.class,0); - } - public TerminalNode ReadOnly() { return getToken(TypeScriptParser.ReadOnly, 0); } - public TerminalNode Declare() { return getToken(TypeScriptParser.Declare, 0); } - public VariableStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_variableStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVariableStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVariableStatement(this); - } - } - - public final VariableStatementContext variableStatement() throws RecognitionException { - VariableStatementContext _localctx = new VariableStatementContext(_ctx, getState()); - enterRule(_localctx, 156, RULE_variableStatement); - int _la; - try { - setState(1017); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,118,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(988); - bindingPattern(); - setState(990); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(989); - typeAnnotation(); - } - } - - setState(992); - initializer(); - setState(994); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,111,_ctx) ) { - case 1: - { - setState(993); - match(SemiColon); - } - break; - } - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(997); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 112)) & ~0x3f) == 0 && ((1L << (_la - 112)) & 19L) != 0)) { - { - setState(996); - accessibilityModifier(); - } - } - - setState(1000); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 77)) & ~0x3f) == 0 && ((1L << (_la - 77)) & 18253611009L) != 0)) { - { - setState(999); - varModifier(); - } - } - - setState(1003); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==ReadOnly) { - { - setState(1002); - match(ReadOnly); - } - } - - setState(1005); - variableDeclarationList(); - setState(1007); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,115,_ctx) ) { - case 1: - { - setState(1006); - match(SemiColon); - } - break; - } - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(1009); - match(Declare); - setState(1011); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 77)) & ~0x3f) == 0 && ((1L << (_la - 77)) & 18253611009L) != 0)) { - { - setState(1010); - varModifier(); - } - } - - setState(1013); - variableDeclarationList(); - setState(1015); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,117,_ctx) ) { - case 1: - { - setState(1014); - match(SemiColon); - } - break; - } - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class VariableDeclarationListContext extends ParserRuleContext { - public List variableDeclaration() { - return getRuleContexts(VariableDeclarationContext.class); - } - public VariableDeclarationContext variableDeclaration(int i) { - return getRuleContext(VariableDeclarationContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public VariableDeclarationListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_variableDeclarationList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVariableDeclarationList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVariableDeclarationList(this); - } - } - - public final VariableDeclarationListContext variableDeclarationList() throws RecognitionException { - VariableDeclarationListContext _localctx = new VariableDeclarationListContext(_ctx, getState()); - enterRule(_localctx, 158, RULE_variableDeclarationList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(1019); - variableDeclaration(); - setState(1024); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,119,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(1020); - match(Comma); - setState(1021); - variableDeclaration(); - } - } - } - setState(1026); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,119,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class VariableDeclarationContext extends ParserRuleContext { - public IdentifierOrKeyWordContext identifierOrKeyWord() { - return getRuleContext(IdentifierOrKeyWordContext.class,0); - } - public ArrayLiteralContext arrayLiteral() { - return getRuleContext(ArrayLiteralContext.class,0); - } - public ObjectLiteralContext objectLiteral() { - return getRuleContext(ObjectLiteralContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public VariableDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_variableDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVariableDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVariableDeclaration(this); - } - } - - public final VariableDeclarationContext variableDeclaration() throws RecognitionException { - VariableDeclarationContext _localctx = new VariableDeclarationContext(_ctx, getState()); - enterRule(_localctx, 160, RULE_variableDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(1030); - _errHandler.sync(this); - switch (_input.LA(1)) { - case As: - case From: - case Async: - case Yield: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Abstract: - case Identifier: - { - setState(1027); - identifierOrKeyWord(); - } - break; - case OpenBracket: - { - setState(1028); - arrayLiteral(); - } - break; - case OpenBrace: - { - setState(1029); - objectLiteral(); - } - break; - default: - throw new NoViableAltException(this); - } - setState(1033); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,121,_ctx) ) { - case 1: - { - setState(1032); - typeAnnotation(); - } - break; - } - setState(1036); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,122,_ctx) ) { - case 1: - { - setState(1035); - singleExpression(0); - } - break; - } - setState(1043); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,124,_ctx) ) { - case 1: - { - setState(1038); - match(Assign); - setState(1040); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,123,_ctx) ) { - case 1: - { - setState(1039); - typeParameters(); - } - break; - } - setState(1042); - singleExpression(0); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EmptyStatement_Context extends ParserRuleContext { - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public EmptyStatement_Context(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_emptyStatement_; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEmptyStatement_(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEmptyStatement_(this); - } - } - - public final EmptyStatement_Context emptyStatement_() throws RecognitionException { - EmptyStatement_Context _localctx = new EmptyStatement_Context(_ctx, getState()); - enterRule(_localctx, 162, RULE_emptyStatement_); - try { - enterOuterAlt(_localctx, 1); - { - setState(1045); - match(SemiColon); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ExpressionStatementContext extends ParserRuleContext { - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public ExpressionStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_expressionStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterExpressionStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitExpressionStatement(this); - } - } - - public final ExpressionStatementContext expressionStatement() throws RecognitionException { - ExpressionStatementContext _localctx = new ExpressionStatementContext(_ctx, getState()); - enterRule(_localctx, 164, RULE_expressionStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1047); - if (!(this.notOpenBraceAndNotFunctionAndNotInterface())) throw new FailedPredicateException(this, "this.notOpenBraceAndNotFunctionAndNotInterface()"); - setState(1048); - expressionSequence(); - setState(1050); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,125,_ctx) ) { - case 1: - { - setState(1049); - match(SemiColon); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IfStatementContext extends ParserRuleContext { - public TerminalNode If() { return getToken(TypeScriptParser.If, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public List statement() { - return getRuleContexts(StatementContext.class); - } - public StatementContext statement(int i) { - return getRuleContext(StatementContext.class,i); - } - public TerminalNode Else() { return getToken(TypeScriptParser.Else, 0); } - public IfStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_ifStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIfStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIfStatement(this); - } - } - - public final IfStatementContext ifStatement() throws RecognitionException { - IfStatementContext _localctx = new IfStatementContext(_ctx, getState()); - enterRule(_localctx, 166, RULE_ifStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1052); - match(If); - setState(1053); - match(OpenParen); - setState(1054); - expressionSequence(); - setState(1055); - match(CloseParen); - setState(1056); - statement(); - setState(1059); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,126,_ctx) ) { - case 1: - { - setState(1057); - match(Else); - setState(1058); - statement(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IterationStatementContext extends ParserRuleContext { - public IterationStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_iterationStatement; } - - public IterationStatementContext() { } - public void copyFrom(IterationStatementContext ctx) { - super.copyFrom(ctx); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ForVarOfStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public VarModifierContext varModifier() { - return getRuleContext(VarModifierContext.class,0); - } - public VariableDeclarationContext variableDeclaration() { - return getRuleContext(VariableDeclarationContext.class,0); - } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public ForVarOfStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForVarOfStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForVarOfStatement(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class DoStatementContext extends IterationStatementContext { - public TerminalNode Do() { return getToken(TypeScriptParser.Do, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode While() { return getToken(TypeScriptParser.While, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public DoStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDoStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDoStatement(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ForVarStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public VarModifierContext varModifier() { - return getRuleContext(VarModifierContext.class,0); - } - public VariableDeclarationListContext variableDeclarationList() { - return getRuleContext(VariableDeclarationListContext.class,0); - } - public List SemiColon() { return getTokens(TypeScriptParser.SemiColon); } - public TerminalNode SemiColon(int i) { - return getToken(TypeScriptParser.SemiColon, i); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public List expressionSequence() { - return getRuleContexts(ExpressionSequenceContext.class); - } - public ExpressionSequenceContext expressionSequence(int i) { - return getRuleContext(ExpressionSequenceContext.class,i); - } - public ForVarStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForVarStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForVarStatement(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ForVarInStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public VarModifierContext varModifier() { - return getRuleContext(VarModifierContext.class,0); - } - public VariableDeclarationContext variableDeclaration() { - return getRuleContext(VariableDeclarationContext.class,0); - } - public TerminalNode In() { return getToken(TypeScriptParser.In, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public ForVarInStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForVarInStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForVarInStatement(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class WhileStatementContext extends IterationStatementContext { - public TerminalNode While() { return getToken(TypeScriptParser.While, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public WhileStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterWhileStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitWhileStatement(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ForStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public List SemiColon() { return getTokens(TypeScriptParser.SemiColon); } - public TerminalNode SemiColon(int i) { - return getToken(TypeScriptParser.SemiColon, i); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public List expressionSequence() { - return getRuleContexts(ExpressionSequenceContext.class); - } - public ExpressionSequenceContext expressionSequence(int i) { - return getRuleContext(ExpressionSequenceContext.class,i); - } - public ForStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForStatement(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ForInStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode In() { return getToken(TypeScriptParser.In, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public ForInStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForInStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForInStatement(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ForOfStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(TypeScriptParser.For, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public ForOfStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterForOfStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitForOfStatement(this); - } - } - - public final IterationStatementContext iterationStatement() throws RecognitionException { - IterationStatementContext _localctx = new IterationStatementContext(_ctx, getState()); - enterRule(_localctx, 168, RULE_iterationStatement); - int _la; - try { - setState(1155); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,136,_ctx) ) { - case 1: - _localctx = new DoStatementContext(_localctx); - enterOuterAlt(_localctx, 1); - { - setState(1061); - match(Do); - setState(1062); - statement(); - setState(1063); - match(While); - setState(1064); - match(OpenParen); - setState(1065); - expressionSequence(); - setState(1066); - match(CloseParen); - setState(1067); - eos(); - } - break; - case 2: - _localctx = new WhileStatementContext(_localctx); - enterOuterAlt(_localctx, 2); - { - setState(1069); - match(While); - setState(1070); - match(OpenParen); - setState(1071); - expressionSequence(); - setState(1072); - match(CloseParen); - setState(1073); - statement(); - } - break; - case 3: - _localctx = new ForStatementContext(_localctx); - enterOuterAlt(_localctx, 3); - { - setState(1075); - match(For); - setState(1076); - match(OpenParen); - setState(1078); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { - { - setState(1077); - expressionSequence(); - } - } - - setState(1080); - match(SemiColon); - setState(1082); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { - { - setState(1081); - expressionSequence(); - } - } - - setState(1084); - match(SemiColon); - setState(1086); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { - { - setState(1085); - expressionSequence(); - } - } - - setState(1088); - match(CloseParen); - setState(1089); - statement(); - } - break; - case 4: - _localctx = new ForVarStatementContext(_localctx); - enterOuterAlt(_localctx, 4); - { - setState(1090); - match(For); - setState(1091); - match(OpenParen); - setState(1092); - varModifier(); - setState(1093); - variableDeclarationList(); - setState(1094); - match(SemiColon); - setState(1096); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { - { - setState(1095); - expressionSequence(); - } - } - - setState(1098); - match(SemiColon); - setState(1100); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460747975425704L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -1L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 7359L) != 0)) { - { - setState(1099); - expressionSequence(); - } - } - - setState(1102); - match(CloseParen); - setState(1103); - statement(); - } - break; - case 5: - _localctx = new ForInStatementContext(_localctx); - enterOuterAlt(_localctx, 5); - { - setState(1105); - match(For); - setState(1106); - match(OpenParen); - setState(1107); - singleExpression(0); - setState(1108); - match(In); - setState(1109); - expressionSequence(); - setState(1110); - match(CloseParen); - setState(1111); - statement(); - } - break; - case 6: - _localctx = new ForVarInStatementContext(_localctx); - enterOuterAlt(_localctx, 6); - { - setState(1113); - match(For); - setState(1114); - match(OpenParen); - setState(1115); - varModifier(); - setState(1116); - variableDeclaration(); - setState(1117); - match(In); - setState(1118); - expressionSequence(); - setState(1119); - match(CloseParen); - setState(1120); - statement(); - } - break; - case 7: - _localctx = new ForOfStatementContext(_localctx); - enterOuterAlt(_localctx, 7); - { - setState(1122); - match(For); - setState(1124); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Await) { - { - setState(1123); - match(Await); - } - } - - setState(1126); - match(OpenParen); - setState(1127); - singleExpression(0); - setState(1128); - identifier(); - setState(1129); - if (!(this.p("of"))) throw new FailedPredicateException(this, "this.p(\"of\")"); - setState(1130); - expressionSequence(); - setState(1133); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==As) { - { - setState(1131); - match(As); - setState(1132); - type_(); - } - } - - setState(1135); - match(CloseParen); - setState(1136); - statement(); - } - break; - case 8: - _localctx = new ForVarOfStatementContext(_localctx); - enterOuterAlt(_localctx, 8); - { - setState(1138); - match(For); - setState(1140); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Await) { - { - setState(1139); - match(Await); - } - } - - setState(1142); - match(OpenParen); - setState(1143); - varModifier(); - setState(1144); - variableDeclaration(); - setState(1145); - identifier(); - setState(1146); - if (!(this.p("of"))) throw new FailedPredicateException(this, "this.p(\"of\")"); - setState(1147); - expressionSequence(); - setState(1150); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==As) { - { - setState(1148); - match(As); - setState(1149); - type_(); - } - } - - setState(1152); - match(CloseParen); - setState(1153); - statement(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class VarModifierContext extends ParserRuleContext { - public TerminalNode Var() { return getToken(TypeScriptParser.Var, 0); } - public TerminalNode Let() { return getToken(TypeScriptParser.Let, 0); } - public TerminalNode Const() { return getToken(TypeScriptParser.Const, 0); } - public VarModifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_varModifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterVarModifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitVarModifier(this); - } - } - - public final VarModifierContext varModifier() throws RecognitionException { - VarModifierContext _localctx = new VarModifierContext(_ctx, getState()); - enterRule(_localctx, 170, RULE_varModifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(1157); - _la = _input.LA(1); - if ( !(((((_la - 77)) & ~0x3f) == 0 && ((1L << (_la - 77)) & 18253611009L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ContinueStatementContext extends ParserRuleContext { - public TerminalNode Continue() { return getToken(TypeScriptParser.Continue, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ContinueStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_continueStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterContinueStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitContinueStatement(this); - } - } - - public final ContinueStatementContext continueStatement() throws RecognitionException { - ContinueStatementContext _localctx = new ContinueStatementContext(_ctx, getState()); - enterRule(_localctx, 172, RULE_continueStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1159); - match(Continue); - setState(1162); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,137,_ctx) ) { - case 1: - { - setState(1160); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(1161); - identifier(); - } - break; - } - setState(1164); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BreakStatementContext extends ParserRuleContext { - public TerminalNode Break() { return getToken(TypeScriptParser.Break, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public BreakStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_breakStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBreakStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBreakStatement(this); - } - } - - public final BreakStatementContext breakStatement() throws RecognitionException { - BreakStatementContext _localctx = new BreakStatementContext(_ctx, getState()); - enterRule(_localctx, 174, RULE_breakStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(1166); - match(Break); - setState(1169); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,138,_ctx) ) { - case 1: - { - setState(1167); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(1168); - identifier(); - } - break; - } - setState(1171); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ReturnStatementContext extends ParserRuleContext { - public TerminalNode Return() { return getToken(TypeScriptParser.Return, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public ReturnStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_returnStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterReturnStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitReturnStatement(this); - } - } -- Gitee From 066ccd81b7e8522069b8b93188589216fe906da0 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:50:21 +0800 Subject: [PATCH 42/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1894 ----------------- 1 file changed, 1894 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index 97f00bed..5b5f0109 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -4098,1899 +4098,5 @@ public class TypeScriptParser extends TypeScriptParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class EnumMemberListContext extends ParserRuleContext { - public List enumMember() { - return getRuleContexts(EnumMemberContext.class); - } - public EnumMemberContext enumMember(int i) { - return getRuleContext(EnumMemberContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public EnumMemberListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumMemberList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEnumMemberList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEnumMemberList(this); - } - } - - public final EnumMemberListContext enumMemberList() throws RecognitionException { - EnumMemberListContext _localctx = new EnumMemberListContext(_ctx, getState()); - enterRule(_localctx, 96, RULE_enumMemberList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(737); - enumMember(); - setState(742); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,73,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(738); - match(Comma); - setState(739); - enumMember(); - } - } - } - setState(744); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,73,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumMemberContext extends ParserRuleContext { - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public EnumMemberContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumMember; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEnumMember(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEnumMember(this); - } - } - - public final EnumMemberContext enumMember() throws RecognitionException { - EnumMemberContext _localctx = new EnumMemberContext(_ctx, getState()); - enterRule(_localctx, 98, RULE_enumMember); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(745); - propertyName(); - setState(748); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Assign) { - { - setState(746); - match(Assign); - setState(747); - singleExpression(0); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NamespaceDeclarationContext extends ParserRuleContext { - public TerminalNode Namespace() { return getToken(TypeScriptParser.Namespace, 0); } - public NamespaceNameContext namespaceName() { - return getRuleContext(NamespaceNameContext.class,0); - } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public TerminalNode Declare() { return getToken(TypeScriptParser.Declare, 0); } - public StatementListContext statementList() { - return getRuleContext(StatementListContext.class,0); - } - public NamespaceDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_namespaceDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNamespaceDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNamespaceDeclaration(this); - } - } - - public final NamespaceDeclarationContext namespaceDeclaration() throws RecognitionException { - NamespaceDeclarationContext _localctx = new NamespaceDeclarationContext(_ctx, getState()); - enterRule(_localctx, 100, RULE_namespaceDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(751); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Declare) { - { - setState(750); - match(Declare); - } - } - - setState(753); - match(Namespace); - setState(754); - namespaceName(); - setState(755); - match(OpenBrace); - setState(757); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,76,_ctx) ) { - case 1: - { - setState(756); - statementList(); - } - break; - } - setState(759); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class NamespaceNameContext extends ParserRuleContext { - public List identifier() { - return getRuleContexts(IdentifierContext.class); - } - public IdentifierContext identifier(int i) { - return getRuleContext(IdentifierContext.class,i); - } - public List Dot() { return getTokens(TypeScriptParser.Dot); } - public TerminalNode Dot(int i) { - return getToken(TypeScriptParser.Dot, i); - } - public NamespaceNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_namespaceName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterNamespaceName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitNamespaceName(this); - } - } - - public final NamespaceNameContext namespaceName() throws RecognitionException { - NamespaceNameContext _localctx = new NamespaceNameContext(_ctx, getState()); - enterRule(_localctx, 102, RULE_namespaceName); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(761); - identifier(); - setState(770); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,78,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(763); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(762); - match(Dot); - } - } - setState(765); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==Dot ); - setState(767); - identifier(); - } - } - } - setState(772); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,78,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportAliasDeclarationContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public NamespaceNameContext namespaceName() { - return getRuleContext(NamespaceNameContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public ImportAliasDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importAliasDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportAliasDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportAliasDeclaration(this); - } - } - - public final ImportAliasDeclarationContext importAliasDeclaration() throws RecognitionException { - ImportAliasDeclarationContext _localctx = new ImportAliasDeclarationContext(_ctx, getState()); - enterRule(_localctx, 104, RULE_importAliasDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(773); - identifier(); - setState(774); - match(Assign); - setState(775); - namespaceName(); - setState(776); - match(SemiColon); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DecoratorListContext extends ParserRuleContext { - public List decorator() { - return getRuleContexts(DecoratorContext.class); - } - public DecoratorContext decorator(int i) { - return getRuleContext(DecoratorContext.class,i); - } - public DecoratorListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_decoratorList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDecoratorList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDecoratorList(this); - } - } - - public final DecoratorListContext decoratorList() throws RecognitionException { - DecoratorListContext _localctx = new DecoratorListContext(_ctx, getState()); - enterRule(_localctx, 106, RULE_decoratorList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(779); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(778); - decorator(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(781); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,79,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DecoratorContext extends ParserRuleContext { - public TerminalNode At() { return getToken(TypeScriptParser.At, 0); } - public DecoratorMemberExpressionContext decoratorMemberExpression() { - return getRuleContext(DecoratorMemberExpressionContext.class,0); - } - public DecoratorCallExpressionContext decoratorCallExpression() { - return getRuleContext(DecoratorCallExpressionContext.class,0); - } - public DecoratorContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_decorator; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDecorator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDecorator(this); - } - } - - public final DecoratorContext decorator() throws RecognitionException { - DecoratorContext _localctx = new DecoratorContext(_ctx, getState()); - enterRule(_localctx, 108, RULE_decorator); - try { - enterOuterAlt(_localctx, 1); - { - setState(783); - match(At); - setState(786); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,80,_ctx) ) { - case 1: - { - setState(784); - decoratorMemberExpression(0); - } - break; - case 2: - { - setState(785); - decoratorCallExpression(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DecoratorMemberExpressionContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public DecoratorMemberExpressionContext decoratorMemberExpression() { - return getRuleContext(DecoratorMemberExpressionContext.class,0); - } - public TerminalNode Dot() { return getToken(TypeScriptParser.Dot, 0); } - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public DecoratorMemberExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_decoratorMemberExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDecoratorMemberExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDecoratorMemberExpression(this); - } - } - - public final DecoratorMemberExpressionContext decoratorMemberExpression() throws RecognitionException { - return decoratorMemberExpression(0); - } - - private DecoratorMemberExpressionContext decoratorMemberExpression(int _p) throws RecognitionException { - ParserRuleContext _parentctx = _ctx; - int _parentState = getState(); - DecoratorMemberExpressionContext _localctx = new DecoratorMemberExpressionContext(_ctx, _parentState); - DecoratorMemberExpressionContext _prevctx = _localctx; - int _startState = 110; - enterRecursionRule(_localctx, 110, RULE_decoratorMemberExpression, _p); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(794); - _errHandler.sync(this); - switch (_input.LA(1)) { - case As: - case From: - case Async: - case Yield: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Abstract: - case Identifier: - { - setState(789); - identifier(); - } - break; - case OpenParen: - { - setState(790); - match(OpenParen); - setState(791); - singleExpression(0); - setState(792); - match(CloseParen); - } - break; - default: - throw new NoViableAltException(this); - } - _ctx.stop = _input.LT(-1); - setState(801); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,82,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - { - _localctx = new DecoratorMemberExpressionContext(_parentctx, _parentState); - pushNewRecursionContext(_localctx, _startState, RULE_decoratorMemberExpression); - setState(796); - if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)"); - setState(797); - match(Dot); - setState(798); - identifierName(); - } - } - } - setState(803); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,82,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class DecoratorCallExpressionContext extends ParserRuleContext { - public DecoratorMemberExpressionContext decoratorMemberExpression() { - return getRuleContext(DecoratorMemberExpressionContext.class,0); - } - public ArgumentsContext arguments() { - return getRuleContext(ArgumentsContext.class,0); - } - public DecoratorCallExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_decoratorCallExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterDecoratorCallExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitDecoratorCallExpression(this); - } - } - - public final DecoratorCallExpressionContext decoratorCallExpression() throws RecognitionException { - DecoratorCallExpressionContext _localctx = new DecoratorCallExpressionContext(_ctx, getState()); - enterRule(_localctx, 112, RULE_decoratorCallExpression); - try { - enterOuterAlt(_localctx, 1); - { - setState(804); - decoratorMemberExpression(0); - setState(805); - arguments(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ProgramContext extends ParserRuleContext { - public TerminalNode EOF() { return getToken(TypeScriptParser.EOF, 0); } - public SourceElementsContext sourceElements() { - return getRuleContext(SourceElementsContext.class,0); - } - public ProgramContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_program; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterProgram(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitProgram(this); - } - } - - public final ProgramContext program() throws RecognitionException { - ProgramContext _localctx = new ProgramContext(_ctx, getState()); - enterRule(_localctx, 114, RULE_program); - try { - enterOuterAlt(_localctx, 1); - { - setState(808); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,83,_ctx) ) { - case 1: - { - setState(807); - sourceElements(); - } - break; - } - setState(810); - match(EOF); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class SourceElementContext extends ParserRuleContext { - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } - public SourceElementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_sourceElement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterSourceElement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitSourceElement(this); - } - } - - public final SourceElementContext sourceElement() throws RecognitionException { - SourceElementContext _localctx = new SourceElementContext(_ctx, getState()); - enterRule(_localctx, 116, RULE_sourceElement); - try { - enterOuterAlt(_localctx, 1); - { - setState(813); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,84,_ctx) ) { - case 1: - { - setState(812); - match(Export); - } - break; - } - setState(815); - statement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class StatementContext extends ParserRuleContext { - public BlockContext block() { - return getRuleContext(BlockContext.class,0); - } - public VariableStatementContext variableStatement() { - return getRuleContext(VariableStatementContext.class,0); - } - public ImportStatementContext importStatement() { - return getRuleContext(ImportStatementContext.class,0); - } - public ExportStatementContext exportStatement() { - return getRuleContext(ExportStatementContext.class,0); - } - public EmptyStatement_Context emptyStatement_() { - return getRuleContext(EmptyStatement_Context.class,0); - } - public AbstractDeclarationContext abstractDeclaration() { - return getRuleContext(AbstractDeclarationContext.class,0); - } - public ClassDeclarationContext classDeclaration() { - return getRuleContext(ClassDeclarationContext.class,0); - } - public FunctionDeclarationContext functionDeclaration() { - return getRuleContext(FunctionDeclarationContext.class,0); - } - public ExpressionStatementContext expressionStatement() { - return getRuleContext(ExpressionStatementContext.class,0); - } - public InterfaceDeclarationContext interfaceDeclaration() { - return getRuleContext(InterfaceDeclarationContext.class,0); - } - public NamespaceDeclarationContext namespaceDeclaration() { - return getRuleContext(NamespaceDeclarationContext.class,0); - } - public IfStatementContext ifStatement() { - return getRuleContext(IfStatementContext.class,0); - } - public IterationStatementContext iterationStatement() { - return getRuleContext(IterationStatementContext.class,0); - } - public ContinueStatementContext continueStatement() { - return getRuleContext(ContinueStatementContext.class,0); - } - public BreakStatementContext breakStatement() { - return getRuleContext(BreakStatementContext.class,0); - } - public ReturnStatementContext returnStatement() { - return getRuleContext(ReturnStatementContext.class,0); - } - public YieldStatementContext yieldStatement() { - return getRuleContext(YieldStatementContext.class,0); - } - public WithStatementContext withStatement() { - return getRuleContext(WithStatementContext.class,0); - } - public LabelledStatementContext labelledStatement() { - return getRuleContext(LabelledStatementContext.class,0); - } - public SwitchStatementContext switchStatement() { - return getRuleContext(SwitchStatementContext.class,0); - } - public ThrowStatementContext throwStatement() { - return getRuleContext(ThrowStatementContext.class,0); - } - public TryStatementContext tryStatement() { - return getRuleContext(TryStatementContext.class,0); - } - public DebuggerStatementContext debuggerStatement() { - return getRuleContext(DebuggerStatementContext.class,0); - } - public ArrowFunctionDeclarationContext arrowFunctionDeclaration() { - return getRuleContext(ArrowFunctionDeclarationContext.class,0); - } - public GeneratorFunctionDeclarationContext generatorFunctionDeclaration() { - return getRuleContext(GeneratorFunctionDeclarationContext.class,0); - } - public TypeAliasDeclarationContext typeAliasDeclaration() { - return getRuleContext(TypeAliasDeclarationContext.class,0); - } - public EnumDeclarationContext enumDeclaration() { - return getRuleContext(EnumDeclarationContext.class,0); - } - public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public StatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_statement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitStatement(this); - } - } - - public final StatementContext statement() throws RecognitionException { - StatementContext _localctx = new StatementContext(_ctx, getState()); - enterRule(_localctx, 118, RULE_statement); - try { - setState(846); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,85,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(817); - block(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(818); - variableStatement(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(819); - importStatement(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(820); - exportStatement(); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(821); - emptyStatement_(); - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(822); - abstractDeclaration(); - } - break; - case 7: - enterOuterAlt(_localctx, 7); - { - setState(823); - classDeclaration(); - } - break; - case 8: - enterOuterAlt(_localctx, 8); - { - setState(824); - functionDeclaration(); - } - break; - case 9: - enterOuterAlt(_localctx, 9); - { - setState(825); - expressionStatement(); - } - break; - case 10: - enterOuterAlt(_localctx, 10); - { - setState(826); - interfaceDeclaration(); - } - break; - case 11: - enterOuterAlt(_localctx, 11); - { - setState(827); - namespaceDeclaration(); - } - break; - case 12: - enterOuterAlt(_localctx, 12); - { - setState(828); - ifStatement(); - } - break; - case 13: - enterOuterAlt(_localctx, 13); - { - setState(829); - iterationStatement(); - } - break; - case 14: - enterOuterAlt(_localctx, 14); - { - setState(830); - continueStatement(); - } - break; - case 15: - enterOuterAlt(_localctx, 15); - { - setState(831); - breakStatement(); - } - break; - case 16: - enterOuterAlt(_localctx, 16); - { - setState(832); - returnStatement(); - } - break; - case 17: - enterOuterAlt(_localctx, 17); - { - setState(833); - yieldStatement(); - } - break; - case 18: - enterOuterAlt(_localctx, 18); - { - setState(834); - withStatement(); - } - break; - case 19: - enterOuterAlt(_localctx, 19); - { - setState(835); - labelledStatement(); - } - break; - case 20: - enterOuterAlt(_localctx, 20); - { - setState(836); - switchStatement(); - } - break; - case 21: - enterOuterAlt(_localctx, 21); - { - setState(837); - throwStatement(); - } - break; - case 22: - enterOuterAlt(_localctx, 22); - { - setState(838); - tryStatement(); - } - break; - case 23: - enterOuterAlt(_localctx, 23); - { - setState(839); - debuggerStatement(); - } - break; - case 24: - enterOuterAlt(_localctx, 24); - { - setState(840); - arrowFunctionDeclaration(); - } - break; - case 25: - enterOuterAlt(_localctx, 25); - { - setState(841); - generatorFunctionDeclaration(); - } - break; - case 26: - enterOuterAlt(_localctx, 26); - { - setState(842); - typeAliasDeclaration(); - } - break; - case 27: - enterOuterAlt(_localctx, 27); - { - setState(843); - enumDeclaration(); - } - break; - case 28: - enterOuterAlt(_localctx, 28); - { - setState(844); - match(Export); - setState(845); - statement(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BlockContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public StatementListContext statementList() { - return getRuleContext(StatementListContext.class,0); - } - public BlockContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_block; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBlock(this); - } - } - - public final BlockContext block() throws RecognitionException { - BlockContext _localctx = new BlockContext(_ctx, getState()); - enterRule(_localctx, 120, RULE_block); - try { - enterOuterAlt(_localctx, 1); - { - setState(848); - match(OpenBrace); - setState(850); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,86,_ctx) ) { - case 1: - { - setState(849); - statementList(); - } - break; - } - setState(852); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class StatementListContext extends ParserRuleContext { - public List statement() { - return getRuleContexts(StatementContext.class); - } - public StatementContext statement(int i) { - return getRuleContext(StatementContext.class,i); - } - public StatementListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_statementList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterStatementList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitStatementList(this); - } - } - - public final StatementListContext statementList() throws RecognitionException { - StatementListContext _localctx = new StatementListContext(_ctx, getState()); - enterRule(_localctx, 122, RULE_statementList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(855); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(854); - statement(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(857); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,87,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AbstractDeclarationContext extends ParserRuleContext { - public TerminalNode Abstract() { return getToken(TypeScriptParser.Abstract, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public CallSignatureContext callSignature() { - return getRuleContext(CallSignatureContext.class,0); - } - public VariableStatementContext variableStatement() { - return getRuleContext(VariableStatementContext.class,0); - } - public AbstractDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_abstractDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAbstractDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAbstractDeclaration(this); - } - } - - public final AbstractDeclarationContext abstractDeclaration() throws RecognitionException { - AbstractDeclarationContext _localctx = new AbstractDeclarationContext(_ctx, getState()); - enterRule(_localctx, 124, RULE_abstractDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(859); - match(Abstract); - setState(864); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,88,_ctx) ) { - case 1: - { - setState(860); - identifier(); - setState(861); - callSignature(); - } - break; - case 2: - { - setState(863); - variableStatement(); - } - break; - } - setState(866); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportStatementContext extends ParserRuleContext { - public TerminalNode Import() { return getToken(TypeScriptParser.Import, 0); } - public ImportFromBlockContext importFromBlock() { - return getRuleContext(ImportFromBlockContext.class,0); - } - public ImportStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportStatement(this); - } - } - - public final ImportStatementContext importStatement() throws RecognitionException { - ImportStatementContext _localctx = new ImportStatementContext(_ctx, getState()); - enterRule(_localctx, 126, RULE_importStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(868); - match(Import); - setState(869); - importFromBlock(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportFromBlockContext extends ParserRuleContext { - public ImportFromContext importFrom() { - return getRuleContext(ImportFromContext.class,0); - } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public ImportNamespaceContext importNamespace() { - return getRuleContext(ImportNamespaceContext.class,0); - } - public ImportModuleItemsContext importModuleItems() { - return getRuleContext(ImportModuleItemsContext.class,0); - } - public ImportDefaultContext importDefault() { - return getRuleContext(ImportDefaultContext.class,0); - } - public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } - public ImportFromBlockContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importFromBlock; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportFromBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportFromBlock(this); - } - } - - public final ImportFromBlockContext importFromBlock() throws RecognitionException { - ImportFromBlockContext _localctx = new ImportFromBlockContext(_ctx, getState()); - enterRule(_localctx, 128, RULE_importFromBlock); - try { - setState(883); - _errHandler.sync(this); - switch (_input.LA(1)) { - case OpenBrace: - case Multiply: - case NullLiteral: - case BooleanLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(872); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,89,_ctx) ) { - case 1: - { - setState(871); - importDefault(); - } - break; - } - setState(876); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Multiply: - case NullLiteral: - case BooleanLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - { - setState(874); - importNamespace(); - } - break; - case OpenBrace: - { - setState(875); - importModuleItems(); - } - break; - default: - throw new NoViableAltException(this); - } - setState(878); - importFrom(); - setState(879); - eos(); - } - break; - case StringLiteral: - enterOuterAlt(_localctx, 2); - { - setState(881); - match(StringLiteral); - setState(882); - eos(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportModuleItemsContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public List importAliasName() { - return getRuleContexts(ImportAliasNameContext.class); - } - public ImportAliasNameContext importAliasName(int i) { - return getRuleContext(ImportAliasNameContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public ImportModuleItemsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importModuleItems; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportModuleItems(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportModuleItems(this); - } - } - - public final ImportModuleItemsContext importModuleItems() throws RecognitionException { - ImportModuleItemsContext _localctx = new ImportModuleItemsContext(_ctx, getState()); - enterRule(_localctx, 130, RULE_importModuleItems); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(885); - match(OpenBrace); - setState(891); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,92,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(886); - importAliasName(); - setState(887); - match(Comma); - } - } - } - setState(893); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,92,_ctx); - } - setState(898); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 59)) & ~0x3f) == 0 && ((1L << (_la - 59)) & -8796093024253L) != 0) || ((((_la - 123)) & ~0x3f) == 0 && ((1L << (_la - 123)) & 104447L) != 0)) { - { - setState(894); - importAliasName(); - setState(896); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(895); - match(Comma); - } - } - - } - } - - setState(900); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportAliasNameContext extends ParserRuleContext { - public ModuleExportNameContext moduleExportName() { - return getRuleContext(ModuleExportNameContext.class,0); - } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public ImportedBindingContext importedBinding() { - return getRuleContext(ImportedBindingContext.class,0); - } - public ImportAliasNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importAliasName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportAliasName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportAliasName(this); - } - } - - public final ImportAliasNameContext importAliasName() throws RecognitionException { - ImportAliasNameContext _localctx = new ImportAliasNameContext(_ctx, getState()); - enterRule(_localctx, 132, RULE_importAliasName); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(902); - moduleExportName(); - setState(905); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==As) { - { - setState(903); - match(As); - setState(904); - importedBinding(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ModuleExportNameContext extends ParserRuleContext { - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } - public ModuleExportNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_moduleExportName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterModuleExportName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitModuleExportName(this); - } - } - - public final ModuleExportNameContext moduleExportName() throws RecognitionException { - ModuleExportNameContext _localctx = new ModuleExportNameContext(_ctx, getState()); - enterRule(_localctx, 134, RULE_moduleExportName); - try { - setState(909); - _errHandler.sync(this); - switch (_input.LA(1)) { - case NullLiteral: - case BooleanLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(907); - identifierName(); - } - break; - case StringLiteral: - enterOuterAlt(_localctx, 2); - { - setState(908); - match(StringLiteral); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportedBindingContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(TypeScriptParser.Identifier, 0); } - public TerminalNode Yield() { return getToken(TypeScriptParser.Yield, 0); } - public TerminalNode Await() { return getToken(TypeScriptParser.Await, 0); } - public ImportedBindingContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importedBinding; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportedBinding(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportedBinding(this); - } - } - - public final ImportedBindingContext importedBinding() throws RecognitionException { - ImportedBindingContext _localctx = new ImportedBindingContext(_ctx, getState()); - enterRule(_localctx, 136, RULE_importedBinding); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(911); - _la = _input.LA(1); - if ( !(((((_la - 100)) & ~0x3f) == 0 && ((1L << (_la - 100)) & 274877906947L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportDefaultContext extends ParserRuleContext { - public AliasNameContext aliasName() { - return getRuleContext(AliasNameContext.class,0); - } - public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } - public ImportDefaultContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importDefault; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportDefault(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportDefault(this); - } - } - - public final ImportDefaultContext importDefault() throws RecognitionException { - ImportDefaultContext _localctx = new ImportDefaultContext(_ctx, getState()); - enterRule(_localctx, 138, RULE_importDefault); - try { - enterOuterAlt(_localctx, 1); - { - setState(913); - aliasName(); - setState(914); - match(Comma); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ImportNamespaceContext extends ParserRuleContext { - public TerminalNode Multiply() { return getToken(TypeScriptParser.Multiply, 0); } - public List identifierName() { - return getRuleContexts(IdentifierNameContext.class); - } - public IdentifierNameContext identifierName(int i) { - return getRuleContext(IdentifierNameContext.class,i); - } - public TerminalNode As() { return getToken(TypeScriptParser.As, 0); } - public ImportNamespaceContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importNamespace; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterImportNamespace(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitImportNamespace(this); - } - } - - - - - } \ No newline at end of file -- Gitee From f622e3489300cd7d1f5fac9393a02e6f212f17da Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:50:43 +0800 Subject: [PATCH 43/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1950 ----------------- 1 file changed, 1950 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index 5b5f0109..78f9475c 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -2147,1956 +2147,6 @@ public class TypeScriptParser extends TypeScriptParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class FunctionTypeContext extends ParserRuleContext { - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public ParameterListContext parameterList() { - return getRuleContext(ParameterListContext.class,0); - } - public FunctionTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_functionType; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterFunctionType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitFunctionType(this); - } - } - - public final FunctionTypeContext functionType() throws RecognitionException { - FunctionTypeContext _localctx = new FunctionTypeContext(_ctx, getState()); - enterRule(_localctx, 46, RULE_functionType); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(507); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(506); - typeParameters(); - } - } - - setState(509); - match(OpenParen); - setState(511); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1729382256910401808L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(510); - parameterList(); - } - } - - setState(513); - match(CloseParen); - setState(514); - match(ARROW); - setState(515); - type_(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConstructorTypeContext extends ParserRuleContext { - public TerminalNode New() { return getToken(TypeScriptParser.New, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public ParameterListContext parameterList() { - return getRuleContext(ParameterListContext.class,0); - } - public ConstructorTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_constructorType; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterConstructorType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitConstructorType(this); - } - } - - public final ConstructorTypeContext constructorType() throws RecognitionException { - ConstructorTypeContext _localctx = new ConstructorTypeContext(_ctx, getState()); - enterRule(_localctx, 48, RULE_constructorType); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(517); - match(New); - setState(519); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(518); - typeParameters(); - } - } - - setState(521); - match(OpenParen); - setState(523); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1729382256910401808L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(522); - parameterList(); - } - } - - setState(525); - match(CloseParen); - setState(526); - match(ARROW); - setState(527); - type_(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeQueryContext extends ParserRuleContext { - public TerminalNode Typeof() { return getToken(TypeScriptParser.Typeof, 0); } - public TypeQueryExpressionContext typeQueryExpression() { - return getRuleContext(TypeQueryExpressionContext.class,0); - } - public TypeQueryContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeQuery; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeQuery(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeQuery(this); - } - } - - public final TypeQueryContext typeQuery() throws RecognitionException { - TypeQueryContext _localctx = new TypeQueryContext(_ctx, getState()); - enterRule(_localctx, 50, RULE_typeQuery); - try { - enterOuterAlt(_localctx, 1); - { - setState(529); - match(Typeof); - setState(530); - typeQueryExpression(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeQueryExpressionContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public List identifierName() { - return getRuleContexts(IdentifierNameContext.class); - } - public IdentifierNameContext identifierName(int i) { - return getRuleContext(IdentifierNameContext.class,i); - } - public List Dot() { return getTokens(TypeScriptParser.Dot); } - public TerminalNode Dot(int i) { - return getToken(TypeScriptParser.Dot, i); - } - public TypeQueryExpressionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeQueryExpression; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeQueryExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeQueryExpression(this); - } - } - - public final TypeQueryExpressionContext typeQueryExpression() throws RecognitionException { - TypeQueryExpressionContext _localctx = new TypeQueryExpressionContext(_ctx, getState()); - enterRule(_localctx, 52, RULE_typeQueryExpression); - try { - int _alt; - setState(542); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,31,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(532); - identifier(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(536); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(533); - identifierName(); - setState(534); - match(Dot); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(538); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,30,_ctx); - } while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ); - setState(540); - identifierName(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PropertySignaturContext extends ParserRuleContext { - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public TerminalNode ReadOnly() { return getToken(TypeScriptParser.ReadOnly, 0); } - public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public PropertySignaturContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_propertySignatur; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPropertySignatur(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPropertySignatur(this); - } - } - - public final PropertySignaturContext propertySignatur() throws RecognitionException { - PropertySignaturContext _localctx = new PropertySignaturContext(_ctx, getState()); - enterRule(_localctx, 54, RULE_propertySignatur); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(545); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,32,_ctx) ) { - case 1: - { - setState(544); - match(ReadOnly); - } - break; - } - setState(547); - propertyName(); - setState(549); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==QuestionMark) { - { - setState(548); - match(QuestionMark); - } - } - - setState(552); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(551); - typeAnnotation(); - } - } - - setState(556); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==ARROW) { - { - setState(554); - match(ARROW); - setState(555); - type_(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeAnnotationContext extends ParserRuleContext { - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public TypeAnnotationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeAnnotation; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeAnnotation(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeAnnotation(this); - } - } - - public final TypeAnnotationContext typeAnnotation() throws RecognitionException { - TypeAnnotationContext _localctx = new TypeAnnotationContext(_ctx, getState()); - enterRule(_localctx, 56, RULE_typeAnnotation); - try { - enterOuterAlt(_localctx, 1); - { - setState(558); - match(Colon); - setState(559); - type_(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class CallSignatureContext extends ParserRuleContext { - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public ParameterListContext parameterList() { - return getRuleContext(ParameterListContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public CallSignatureContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_callSignature; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterCallSignature(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitCallSignature(this); - } - } - - public final CallSignatureContext callSignature() throws RecognitionException { - CallSignatureContext _localctx = new CallSignatureContext(_ctx, getState()); - enterRule(_localctx, 58, RULE_callSignature); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(562); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(561); - typeParameters(); - } - } - - setState(564); - match(OpenParen); - setState(566); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1729382256910401808L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(565); - parameterList(); - } - } - - setState(568); - match(CloseParen); - setState(570); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,38,_ctx) ) { - case 1: - { - setState(569); - typeAnnotation(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ParameterListContext extends ParserRuleContext { - public RestParameterContext restParameter() { - return getRuleContext(RestParameterContext.class,0); - } - public List parameter() { - return getRuleContexts(ParameterContext.class); - } - public ParameterContext parameter(int i) { - return getRuleContext(ParameterContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public ParameterListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_parameterList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterParameterList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitParameterList(this); - } - } - - public final ParameterListContext parameterList() throws RecognitionException { - ParameterListContext _localctx = new ParameterListContext(_ctx, getState()); - enterRule(_localctx, 60, RULE_parameterList); - int _la; - try { - int _alt; - setState(588); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Ellipsis: - enterOuterAlt(_localctx, 1); - { - setState(572); - restParameter(); - } - break; - case OpenBracket: - case OpenBrace: - case NullLiteral: - case BooleanLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case At: - case Identifier: - enterOuterAlt(_localctx, 2); - { - setState(573); - parameter(); - setState(578); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,39,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(574); - match(Comma); - setState(575); - parameter(); - } - } - } - setState(580); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,39,_ctx); - } - setState(583); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,40,_ctx) ) { - case 1: - { - setState(581); - match(Comma); - setState(582); - restParameter(); - } - break; - } - setState(586); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(585); - match(Comma); - } - } - - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class RequiredParameterListContext extends ParserRuleContext { - public List requiredParameter() { - return getRuleContexts(RequiredParameterContext.class); - } - public RequiredParameterContext requiredParameter(int i) { - return getRuleContext(RequiredParameterContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public RequiredParameterListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_requiredParameterList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRequiredParameterList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRequiredParameterList(this); - } - } - - public final RequiredParameterListContext requiredParameterList() throws RecognitionException { - RequiredParameterListContext _localctx = new RequiredParameterListContext(_ctx, getState()); - enterRule(_localctx, 62, RULE_requiredParameterList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(590); - requiredParameter(); - setState(595); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(591); - match(Comma); - setState(592); - requiredParameter(); - } - } - setState(597); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ParameterContext extends ParserRuleContext { - public RequiredParameterContext requiredParameter() { - return getRuleContext(RequiredParameterContext.class,0); - } - public OptionalParameterContext optionalParameter() { - return getRuleContext(OptionalParameterContext.class,0); - } - public ParameterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_parameter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterParameter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitParameter(this); - } - } - - public final ParameterContext parameter() throws RecognitionException { - ParameterContext _localctx = new ParameterContext(_ctx, getState()); - enterRule(_localctx, 64, RULE_parameter); - try { - setState(600); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,44,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(598); - requiredParameter(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(599); - optionalParameter(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class OptionalParameterContext extends ParserRuleContext { - public IdentifierOrPatternContext identifierOrPattern() { - return getRuleContext(IdentifierOrPatternContext.class,0); - } - public DecoratorListContext decoratorList() { - return getRuleContext(DecoratorListContext.class,0); - } - public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } - public InitializerContext initializer() { - return getRuleContext(InitializerContext.class,0); - } - public AccessibilityModifierContext accessibilityModifier() { - return getRuleContext(AccessibilityModifierContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public OptionalParameterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_optionalParameter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterOptionalParameter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitOptionalParameter(this); - } - } - - public final OptionalParameterContext optionalParameter() throws RecognitionException { - OptionalParameterContext _localctx = new OptionalParameterContext(_ctx, getState()); - enterRule(_localctx, 66, RULE_optionalParameter); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(603); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==At) { - { - setState(602); - decoratorList(); - } - } - - { - setState(606); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,46,_ctx) ) { - case 1: - { - setState(605); - accessibilityModifier(); - } - break; - } - setState(608); - identifierOrPattern(); - setState(617); - _errHandler.sync(this); - switch (_input.LA(1)) { - case QuestionMark: - { - setState(609); - match(QuestionMark); - setState(611); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(610); - typeAnnotation(); - } - } - - } - break; - case Assign: - case Colon: - { - setState(614); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(613); - typeAnnotation(); - } - } - - setState(616); - initializer(); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class RestParameterContext extends ParserRuleContext { - public TerminalNode Ellipsis() { return getToken(TypeScriptParser.Ellipsis, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public RestParameterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_restParameter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRestParameter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRestParameter(this); - } - } - - public final RestParameterContext restParameter() throws RecognitionException { - RestParameterContext _localctx = new RestParameterContext(_ctx, getState()); - enterRule(_localctx, 68, RULE_restParameter); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(619); - match(Ellipsis); - setState(620); - singleExpression(0); - setState(622); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(621); - typeAnnotation(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class RequiredParameterContext extends ParserRuleContext { - public IdentifierOrPatternContext identifierOrPattern() { - return getRuleContext(IdentifierOrPatternContext.class,0); - } - public DecoratorListContext decoratorList() { - return getRuleContext(DecoratorListContext.class,0); - } - public AccessibilityModifierContext accessibilityModifier() { - return getRuleContext(AccessibilityModifierContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public RequiredParameterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_requiredParameter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRequiredParameter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRequiredParameter(this); - } - } - - public final RequiredParameterContext requiredParameter() throws RecognitionException { - RequiredParameterContext _localctx = new RequiredParameterContext(_ctx, getState()); - enterRule(_localctx, 70, RULE_requiredParameter); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(625); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==At) { - { - setState(624); - decoratorList(); - } - } - - setState(628); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,52,_ctx) ) { - case 1: - { - setState(627); - accessibilityModifier(); - } - break; - } - setState(630); - identifierOrPattern(); - setState(632); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(631); - typeAnnotation(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class AccessibilityModifierContext extends ParserRuleContext { - public TerminalNode Public() { return getToken(TypeScriptParser.Public, 0); } - public TerminalNode Private() { return getToken(TypeScriptParser.Private, 0); } - public TerminalNode Protected() { return getToken(TypeScriptParser.Protected, 0); } - public AccessibilityModifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_accessibilityModifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterAccessibilityModifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitAccessibilityModifier(this); - } - } - - public final AccessibilityModifierContext accessibilityModifier() throws RecognitionException { - AccessibilityModifierContext _localctx = new AccessibilityModifierContext(_ctx, getState()); - enterRule(_localctx, 72, RULE_accessibilityModifier); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(634); - _la = _input.LA(1); - if ( !(((((_la - 112)) & ~0x3f) == 0 && ((1L << (_la - 112)) & 19L) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IdentifierOrPatternContext extends ParserRuleContext { - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public BindingPatternContext bindingPattern() { - return getRuleContext(BindingPatternContext.class,0); - } - public IdentifierOrPatternContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_identifierOrPattern; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIdentifierOrPattern(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIdentifierOrPattern(this); - } - } - - public final IdentifierOrPatternContext identifierOrPattern() throws RecognitionException { - IdentifierOrPatternContext _localctx = new IdentifierOrPatternContext(_ctx, getState()); - enterRule(_localctx, 74, RULE_identifierOrPattern); - try { - setState(638); - _errHandler.sync(this); - switch (_input.LA(1)) { - case NullLiteral: - case BooleanLiteral: - case Break: - case Do: - case Instanceof: - case Typeof: - case Case: - case Else: - case New: - case Var: - case Catch: - case Finally: - case Return: - case Void: - case Continue: - case For: - case Switch: - case While: - case Debugger: - case Function_: - case This: - case With: - case Default: - case If: - case Throw: - case Delete: - case In: - case Try: - case As: - case From: - case ReadOnly: - case Async: - case Await: - case Yield: - case Class: - case Enum: - case Extends: - case Super: - case Const: - case Export: - case Import: - case Implements: - case Let: - case Private: - case Public: - case Interface: - case Package: - case Protected: - case Static: - case Any: - case Number: - case Never: - case Boolean: - case String: - case Unique: - case Symbol: - case Undefined: - case Object: - case Of: - case KeyOf: - case TypeAlias: - case Constructor: - case Namespace: - case Require: - case Module: - case Abstract: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(636); - identifierName(); - } - break; - case OpenBracket: - case OpenBrace: - enterOuterAlt(_localctx, 2); - { - setState(637); - bindingPattern(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConstructSignatureContext extends ParserRuleContext { - public TerminalNode New() { return getToken(TypeScriptParser.New, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public ParameterListContext parameterList() { - return getRuleContext(ParameterListContext.class,0); - } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public ConstructSignatureContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_constructSignature; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterConstructSignature(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitConstructSignature(this); - } - } - - public final ConstructSignatureContext constructSignature() throws RecognitionException { - ConstructSignatureContext _localctx = new ConstructSignatureContext(_ctx, getState()); - enterRule(_localctx, 76, RULE_constructSignature); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(640); - match(New); - setState(642); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(641); - typeParameters(); - } - } - - setState(644); - match(OpenParen); - setState(646); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 1729382256910401808L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(645); - parameterList(); - } - } - - setState(648); - match(CloseParen); - setState(650); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Colon) { - { - setState(649); - typeAnnotation(); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class IndexSignatureContext extends ParserRuleContext { - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode Colon() { return getToken(TypeScriptParser.Colon, 0); } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public TypeAnnotationContext typeAnnotation() { - return getRuleContext(TypeAnnotationContext.class,0); - } - public TerminalNode Number() { return getToken(TypeScriptParser.Number, 0); } - public TerminalNode String() { return getToken(TypeScriptParser.String, 0); } - public IndexSignatureContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_indexSignature; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIndexSignature(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIndexSignature(this); - } - } - - public final IndexSignatureContext indexSignature() throws RecognitionException { - IndexSignatureContext _localctx = new IndexSignatureContext(_ctx, getState()); - enterRule(_localctx, 78, RULE_indexSignature); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(652); - match(OpenBracket); - setState(653); - identifier(); - setState(654); - match(Colon); - setState(655); - _la = _input.LA(1); - if ( !(_la==Number || _la==String) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(656); - match(CloseBracket); - setState(657); - typeAnnotation(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class MethodSignatureContext extends ParserRuleContext { - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public CallSignatureContext callSignature() { - return getRuleContext(CallSignatureContext.class,0); - } - public TerminalNode QuestionMark() { return getToken(TypeScriptParser.QuestionMark, 0); } - public MethodSignatureContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_methodSignature; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterMethodSignature(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitMethodSignature(this); - } - } - - public final MethodSignatureContext methodSignature() throws RecognitionException { - MethodSignatureContext _localctx = new MethodSignatureContext(_ctx, getState()); - enterRule(_localctx, 80, RULE_methodSignature); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(659); - propertyName(); - setState(661); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==QuestionMark) { - { - setState(660); - match(QuestionMark); - } - } - - setState(663); - callSignature(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeAliasDeclarationContext extends ParserRuleContext { - public TerminalNode TypeAlias() { return getToken(TypeScriptParser.TypeAlias, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public TypeAliasDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeAliasDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeAliasDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeAliasDeclaration(this); - } - } - - public final TypeAliasDeclarationContext typeAliasDeclaration() throws RecognitionException { - TypeAliasDeclarationContext _localctx = new TypeAliasDeclarationContext(_ctx, getState()); - enterRule(_localctx, 82, RULE_typeAliasDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(666); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Export) { - { - setState(665); - match(Export); - } - } - - setState(668); - match(TypeAlias); - setState(669); - identifier(); - setState(671); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(670); - typeParameters(); - } - } - - setState(673); - match(Assign); - setState(674); - type_(); - setState(675); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConstructorDeclarationContext extends ParserRuleContext { - public TerminalNode Constructor() { return getToken(TypeScriptParser.Constructor, 0); } - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public AccessibilityModifierContext accessibilityModifier() { - return getRuleContext(AccessibilityModifierContext.class,0); - } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public ConstructorDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_constructorDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterConstructorDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitConstructorDeclaration(this); - } - } - - public final ConstructorDeclarationContext constructorDeclaration() throws RecognitionException { - ConstructorDeclarationContext _localctx = new ConstructorDeclarationContext(_ctx, getState()); - enterRule(_localctx, 84, RULE_constructorDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(678); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 112)) & ~0x3f) == 0 && ((1L << (_la - 112)) & 19L) != 0)) { - { - setState(677); - accessibilityModifier(); - } - } - - setState(680); - match(Constructor); - setState(681); - match(OpenParen); - setState(683); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 131344L) != 0) || ((((_la - 70)) & ~0x3f) == 0 && ((1L << (_la - 70)) & -4294967297L) != 0) || ((((_la - 135)) & ~0x3f) == 0 && ((1L << (_la - 135)) & 13L) != 0)) { - { - setState(682); - formalParameterList(); - } - } - - setState(685); - match(CloseParen); - setState(691); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,63,_ctx) ) { - case 1: - { - { - setState(686); - match(OpenBrace); - setState(687); - functionBody(); - setState(688); - match(CloseBrace); - } - } - break; - case 2: - { - setState(690); - match(SemiColon); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InterfaceDeclarationContext extends ParserRuleContext { - public TerminalNode Interface() { return getToken(TypeScriptParser.Interface, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ObjectTypeContext objectType() { - return getRuleContext(ObjectTypeContext.class,0); - } - public TerminalNode Export() { return getToken(TypeScriptParser.Export, 0); } - public TerminalNode Declare() { return getToken(TypeScriptParser.Declare, 0); } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public InterfaceExtendsClauseContext interfaceExtendsClause() { - return getRuleContext(InterfaceExtendsClauseContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public InterfaceDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_interfaceDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInterfaceDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInterfaceDeclaration(this); - } - } - - public final InterfaceDeclarationContext interfaceDeclaration() throws RecognitionException { - InterfaceDeclarationContext _localctx = new InterfaceDeclarationContext(_ctx, getState()); - enterRule(_localctx, 86, RULE_interfaceDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(694); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Export) { - { - setState(693); - match(Export); - } - } - - setState(697); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Declare) { - { - setState(696); - match(Declare); - } - } - - setState(699); - match(Interface); - setState(700); - identifier(); - setState(702); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(701); - typeParameters(); - } - } - - setState(705); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Extends) { - { - setState(704); - interfaceExtendsClause(); - } - } - - setState(707); - objectType(); - setState(709); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,68,_ctx) ) { - case 1: - { - setState(708); - match(SemiColon); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class InterfaceExtendsClauseContext extends ParserRuleContext { - public TerminalNode Extends() { return getToken(TypeScriptParser.Extends, 0); } - public ClassOrInterfaceTypeListContext classOrInterfaceTypeList() { - return getRuleContext(ClassOrInterfaceTypeListContext.class,0); - } - public InterfaceExtendsClauseContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_interfaceExtendsClause; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInterfaceExtendsClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInterfaceExtendsClause(this); - } - } - - public final InterfaceExtendsClauseContext interfaceExtendsClause() throws RecognitionException { - InterfaceExtendsClauseContext _localctx = new InterfaceExtendsClauseContext(_ctx, getState()); - enterRule(_localctx, 88, RULE_interfaceExtendsClause); - try { - enterOuterAlt(_localctx, 1); - { - setState(711); - match(Extends); - setState(712); - classOrInterfaceTypeList(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ClassOrInterfaceTypeListContext extends ParserRuleContext { - public List typeReference() { - return getRuleContexts(TypeReferenceContext.class); - } - public TypeReferenceContext typeReference(int i) { - return getRuleContext(TypeReferenceContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public ClassOrInterfaceTypeListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_classOrInterfaceTypeList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterClassOrInterfaceTypeList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitClassOrInterfaceTypeList(this); - } - } - - public final ClassOrInterfaceTypeListContext classOrInterfaceTypeList() throws RecognitionException { - ClassOrInterfaceTypeListContext _localctx = new ClassOrInterfaceTypeListContext(_ctx, getState()); - enterRule(_localctx, 90, RULE_classOrInterfaceTypeList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(714); - typeReference(); - setState(719); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(715); - match(Comma); - setState(716); - typeReference(); - } - } - setState(721); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumDeclarationContext extends ParserRuleContext { - public TerminalNode Enum() { return getToken(TypeScriptParser.Enum, 0); } - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public TerminalNode Const() { return getToken(TypeScriptParser.Const, 0); } - public EnumBodyContext enumBody() { - return getRuleContext(EnumBodyContext.class,0); - } - public EnumDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEnumDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEnumDeclaration(this); - } - } - - public final EnumDeclarationContext enumDeclaration() throws RecognitionException { - EnumDeclarationContext _localctx = new EnumDeclarationContext(_ctx, getState()); - enterRule(_localctx, 92, RULE_enumDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(723); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Const) { - { - setState(722); - match(Const); - } - } - - setState(725); - match(Enum); - setState(726); - identifier(); - setState(727); - match(OpenBrace); - setState(729); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460752303423472L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -274877907005L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 3263L) != 0)) { - { - setState(728); - enumBody(); - } - } - - setState(731); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class EnumBodyContext extends ParserRuleContext { - public EnumMemberListContext enumMemberList() { - return getRuleContext(EnumMemberListContext.class,0); - } - public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } - public EnumBodyContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_enumBody; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterEnumBody(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitEnumBody(this); - } - } - - public final EnumBodyContext enumBody() throws RecognitionException { - EnumBodyContext _localctx = new EnumBodyContext(_ctx, getState()); - enterRule(_localctx, 94, RULE_enumBody); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(733); - enumMemberList(); - setState(735); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(734); - match(Comma); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } } \ No newline at end of file -- Gitee From 3c431797dd6574c5d1fc7259adfe592ac0244bf0 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:50:56 +0800 Subject: [PATCH 44/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 792 ------------------ 1 file changed, 792 deletions(-) diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java index 78f9475c..785094e5 100644 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java @@ -1354,798 +1354,6 @@ public class TypeScriptParser extends TypeScriptParserBase { return _localctx; } - @SuppressWarnings("CheckReturnValue") - public static class PredefinedTypeContext extends ParserRuleContext { - public TerminalNode Any() { return getToken(TypeScriptParser.Any, 0); } - public TerminalNode NullLiteral() { return getToken(TypeScriptParser.NullLiteral, 0); } - public TerminalNode Number() { return getToken(TypeScriptParser.Number, 0); } - public TerminalNode DecimalLiteral() { return getToken(TypeScriptParser.DecimalLiteral, 0); } - public TerminalNode Boolean() { return getToken(TypeScriptParser.Boolean, 0); } - public TerminalNode BooleanLiteral() { return getToken(TypeScriptParser.BooleanLiteral, 0); } - public TerminalNode String() { return getToken(TypeScriptParser.String, 0); } - public TerminalNode StringLiteral() { return getToken(TypeScriptParser.StringLiteral, 0); } - public TerminalNode Symbol() { return getToken(TypeScriptParser.Symbol, 0); } - public TerminalNode Unique() { return getToken(TypeScriptParser.Unique, 0); } - public TerminalNode Never() { return getToken(TypeScriptParser.Never, 0); } - public TerminalNode Undefined() { return getToken(TypeScriptParser.Undefined, 0); } - public TerminalNode Object() { return getToken(TypeScriptParser.Object, 0); } - public TerminalNode Void() { return getToken(TypeScriptParser.Void, 0); } - public PredefinedTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_predefinedType; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPredefinedType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPredefinedType(this); - } - } - - public final PredefinedTypeContext predefinedType() throws RecognitionException { - PredefinedTypeContext _localctx = new PredefinedTypeContext(_ctx, getState()); - enterRule(_localctx, 24, RULE_predefinedType); - int _la; - try { - setState(440); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Any: - enterOuterAlt(_localctx, 1); - { - setState(424); - match(Any); - } - break; - case NullLiteral: - enterOuterAlt(_localctx, 2); - { - setState(425); - match(NullLiteral); - } - break; - case Number: - enterOuterAlt(_localctx, 3); - { - setState(426); - match(Number); - } - break; - case DecimalLiteral: - enterOuterAlt(_localctx, 4); - { - setState(427); - match(DecimalLiteral); - } - break; - case Boolean: - enterOuterAlt(_localctx, 5); - { - setState(428); - match(Boolean); - } - break; - case BooleanLiteral: - enterOuterAlt(_localctx, 6); - { - setState(429); - match(BooleanLiteral); - } - break; - case String: - enterOuterAlt(_localctx, 7); - { - setState(430); - match(String); - } - break; - case StringLiteral: - enterOuterAlt(_localctx, 8); - { - setState(431); - match(StringLiteral); - } - break; - case Unique: - case Symbol: - enterOuterAlt(_localctx, 9); - { - setState(433); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Unique) { - { - setState(432); - match(Unique); - } - } - - setState(435); - match(Symbol); - } - break; - case Never: - enterOuterAlt(_localctx, 10); - { - setState(436); - match(Never); - } - break; - case Undefined: - enterOuterAlt(_localctx, 11); - { - setState(437); - match(Undefined); - } - break; - case Object: - enterOuterAlt(_localctx, 12); - { - setState(438); - match(Object); - } - break; - case Void: - enterOuterAlt(_localctx, 13); - { - setState(439); - match(Void); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeReferenceContext extends ParserRuleContext { - public TypeNameContext typeName() { - return getRuleContext(TypeNameContext.class,0); - } - public TypeGenericContext typeGeneric() { - return getRuleContext(TypeGenericContext.class,0); - } - public TypeReferenceContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeReference; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeReference(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeReference(this); - } - } - - public final TypeReferenceContext typeReference() throws RecognitionException { - TypeReferenceContext _localctx = new TypeReferenceContext(_ctx, getState()); - enterRule(_localctx, 26, RULE_typeReference); - try { - enterOuterAlt(_localctx, 1); - { - setState(442); - typeName(); - setState(444); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,16,_ctx) ) { - case 1: - { - setState(443); - typeGeneric(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeGenericContext extends ParserRuleContext { - public TerminalNode LessThan() { return getToken(TypeScriptParser.LessThan, 0); } - public TypeArgumentListContext typeArgumentList() { - return getRuleContext(TypeArgumentListContext.class,0); - } - public TerminalNode MoreThan() { return getToken(TypeScriptParser.MoreThan, 0); } - public TypeGenericContext typeGeneric() { - return getRuleContext(TypeGenericContext.class,0); - } - public TypeGenericContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeGeneric; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeGeneric(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeGeneric(this); - } - } - - public final TypeGenericContext typeGeneric() throws RecognitionException { - TypeGenericContext _localctx = new TypeGenericContext(_ctx, getState()); - enterRule(_localctx, 28, RULE_typeGeneric); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(446); - match(LessThan); - setState(447); - typeArgumentList(); - setState(449); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan) { - { - setState(448); - typeGeneric(); - } - } - - setState(451); - match(MoreThan); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeNameContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public NamespaceNameContext namespaceName() { - return getRuleContext(NamespaceNameContext.class,0); - } - public TypeNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeName(this); - } - } - - public final TypeNameContext typeName() throws RecognitionException { - TypeNameContext _localctx = new TypeNameContext(_ctx, getState()); - enterRule(_localctx, 30, RULE_typeName); - try { - setState(455); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,18,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(453); - identifier(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(454); - namespaceName(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ObjectTypeContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(TypeScriptParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(TypeScriptParser.CloseBrace, 0); } - public TypeBodyContext typeBody() { - return getRuleContext(TypeBodyContext.class,0); - } - public ObjectTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_objectType; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterObjectType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitObjectType(this); - } - } - - public final ObjectTypeContext objectType() throws RecognitionException { - ObjectTypeContext _localctx = new ObjectTypeContext(_ctx, getState()); - enterRule(_localctx, 32, RULE_objectType); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(457); - match(OpenBrace); - setState(459); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & -576460748008456112L) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & -274877907005L) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & 3263L) != 0)) { - { - setState(458); - typeBody(); - } - } - - setState(461); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeBodyContext extends ParserRuleContext { - public TypeMemberListContext typeMemberList() { - return getRuleContext(TypeMemberListContext.class,0); - } - public TerminalNode SemiColon() { return getToken(TypeScriptParser.SemiColon, 0); } - public TerminalNode Comma() { return getToken(TypeScriptParser.Comma, 0); } - public TypeBodyContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeBody; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeBody(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeBody(this); - } - } - - public final TypeBodyContext typeBody() throws RecognitionException { - TypeBodyContext _localctx = new TypeBodyContext(_ctx, getState()); - enterRule(_localctx, 34, RULE_typeBody); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(463); - typeMemberList(); - setState(465); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==SemiColon || _la==Comma) { - { - setState(464); - _la = _input.LA(1); - if ( !(_la==SemiColon || _la==Comma) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeMemberListContext extends ParserRuleContext { - public List typeMember() { - return getRuleContexts(TypeMemberContext.class); - } - public TypeMemberContext typeMember(int i) { - return getRuleContext(TypeMemberContext.class,i); - } - public List SemiColon() { return getTokens(TypeScriptParser.SemiColon); } - public TerminalNode SemiColon(int i) { - return getToken(TypeScriptParser.SemiColon, i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public TypeMemberListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeMemberList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeMemberList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeMemberList(this); - } - } - - public final TypeMemberListContext typeMemberList() throws RecognitionException { - TypeMemberListContext _localctx = new TypeMemberListContext(_ctx, getState()); - enterRule(_localctx, 36, RULE_typeMemberList); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(467); - typeMember(); - setState(472); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,21,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(468); - _la = _input.LA(1); - if ( !(_la==SemiColon || _la==Comma) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(469); - typeMember(); - } - } - } - setState(474); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,21,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeMemberContext extends ParserRuleContext { - public PropertySignaturContext propertySignatur() { - return getRuleContext(PropertySignaturContext.class,0); - } - public CallSignatureContext callSignature() { - return getRuleContext(CallSignatureContext.class,0); - } - public ConstructSignatureContext constructSignature() { - return getRuleContext(ConstructSignatureContext.class,0); - } - public IndexSignatureContext indexSignature() { - return getRuleContext(IndexSignatureContext.class,0); - } - public MethodSignatureContext methodSignature() { - return getRuleContext(MethodSignatureContext.class,0); - } - public TerminalNode ARROW() { return getToken(TypeScriptParser.ARROW, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public TypeMemberContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeMember; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeMember(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeMember(this); - } - } - - public final TypeMemberContext typeMember() throws RecognitionException { - TypeMemberContext _localctx = new TypeMemberContext(_ctx, getState()); - enterRule(_localctx, 38, RULE_typeMember); - int _la; - try { - setState(484); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,23,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(475); - propertySignatur(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(476); - callSignature(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(477); - constructSignature(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(478); - indexSignature(); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(479); - methodSignature(); - setState(482); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==ARROW) { - { - setState(480); - match(ARROW); - setState(481); - type_(); - } - } - - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ArrayTypeContext extends ParserRuleContext { - public PrimaryTypeContext primaryType() { - return getRuleContext(PrimaryTypeContext.class,0); - } - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public ArrayTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_arrayType; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayType(this); - } - } - - public final ArrayTypeContext arrayType() throws RecognitionException { - ArrayTypeContext _localctx = new ArrayTypeContext(_ctx, getState()); - enterRule(_localctx, 40, RULE_arrayType); - try { - enterOuterAlt(_localctx, 1); - { - setState(486); - primaryType(0); - setState(487); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(488); - match(OpenBracket); - setState(489); - match(CloseBracket); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TupleTypeContext extends ParserRuleContext { - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public TupleElementTypesContext tupleElementTypes() { - return getRuleContext(TupleElementTypesContext.class,0); - } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public TupleTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_tupleType; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTupleType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTupleType(this); - } - } - - public final TupleTypeContext tupleType() throws RecognitionException { - TupleTypeContext _localctx = new TupleTypeContext(_ctx, getState()); - enterRule(_localctx, 42, RULE_tupleType); - try { - enterOuterAlt(_localctx, 1); - { - setState(491); - match(OpenBracket); - setState(492); - tupleElementTypes(); - setState(493); - match(CloseBracket); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TupleElementTypesContext extends ParserRuleContext { - public List type_() { - return getRuleContexts(Type_Context.class); - } - public Type_Context type_(int i) { - return getRuleContext(Type_Context.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public TupleElementTypesContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_tupleElementTypes; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTupleElementTypes(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTupleElementTypes(this); - } - } - - public final TupleElementTypesContext tupleElementTypes() throws RecognitionException { - TupleElementTypesContext _localctx = new TupleElementTypesContext(_ctx, getState()); - enterRule(_localctx, 44, RULE_tupleElementTypes); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(495); - type_(); - setState(500); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,24,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(496); - match(Comma); - setState(497); - type_(); - } - } - } - setState(502); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,24,_ctx); - } - setState(504); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(503); - match(Comma); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } -- Gitee From 7357fdd7ecf451d78a0279a25efa17de0a654be1 Mon Sep 17 00:00:00 2001 From: wangshi Date: Mon, 24 Mar 2025 09:51:06 +0800 Subject: [PATCH 45/45] update parse Signed-off-by: wangshi --- .../src/main/java/antlr/TypeScriptParser.java | 1360 ----------------- 1 file changed, 1360 deletions(-) delete mode 100644 src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java diff --git a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java b/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java deleted file mode 100644 index 785094e5..00000000 --- a/src/intellij_plugin/ohosgen/src/main/java/antlr/TypeScriptParser.java +++ /dev/null @@ -1,1360 +0,0 @@ -/* - * Copyright (c) 2025 Shenzhen Kaihong Digital. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package antlr; - -// Generated from TypeScriptParser.g4 by ANTLR 4.13.2 -import antlr.TypeScriptParserBase; -import org.antlr.v4.runtime.atn.*; -import org.antlr.v4.runtime.dfa.DFA; -import org.antlr.v4.runtime.*; -import org.antlr.v4.runtime.misc.*; -import org.antlr.v4.runtime.tree.*; -import java.util.List; -import java.util.Iterator; -import java.util.ArrayList; - -@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast", "CheckReturnValue", "this-escape"}) -public class TypeScriptParser extends TypeScriptParserBase { - static { RuntimeMetaData.checkVersion("4.13.2", RuntimeMetaData.VERSION); } - - protected static final DFA[] _decisionToDFA; - protected static final PredictionContextCache _sharedContextCache = - new PredictionContextCache(); - public static final int - MultiLineComment=1, SingleLineComment=2, RegularExpressionLiteral=3, OpenBracket=4, - CloseBracket=5, OpenParen=6, CloseParen=7, OpenBrace=8, TemplateCloseBrace=9, - CloseBrace=10, SemiColon=11, Comma=12, Assign=13, QuestionMark=14, QuestionMarkDot=15, - Colon=16, Ellipsis=17, Dot=18, PlusPlus=19, MinusMinus=20, Plus=21, Minus=22, - BitNot=23, Not=24, Multiply=25, Divide=26, Modulus=27, Power=28, NullCoalesce=29, - Hashtag=30, LeftShiftArithmetic=31, LessThan=32, MoreThan=33, LessThanEquals=34, - GreaterThanEquals=35, Equals_=36, NotEquals=37, IdentityEquals=38, IdentityNotEquals=39, - BitAnd=40, BitXOr=41, BitOr=42, And=43, Or=44, MultiplyAssign=45, DivideAssign=46, - ModulusAssign=47, PlusAssign=48, MinusAssign=49, LeftShiftArithmeticAssign=50, - RightShiftArithmeticAssign=51, RightShiftLogicalAssign=52, BitAndAssign=53, - BitXorAssign=54, BitOrAssign=55, PowerAssign=56, NullishCoalescingAssign=57, - ARROW=58, NullLiteral=59, BooleanLiteral=60, DecimalLiteral=61, HexIntegerLiteral=62, - OctalIntegerLiteral=63, OctalIntegerLiteral2=64, BinaryIntegerLiteral=65, - BigHexIntegerLiteral=66, BigOctalIntegerLiteral=67, BigBinaryIntegerLiteral=68, - BigDecimalIntegerLiteral=69, Break=70, Do=71, Instanceof=72, Typeof=73, - Case=74, Else=75, New=76, Var=77, Catch=78, Finally=79, Return=80, Void=81, - Continue=82, For=83, Switch=84, While=85, Debugger=86, Function_=87, This=88, - With=89, Default=90, If=91, Throw=92, Delete=93, In=94, Try=95, As=96, - From=97, ReadOnly=98, Async=99, Await=100, Yield=101, YieldStar=102, Class=103, - Enum=104, Extends=105, Super=106, Const=107, Export=108, Import=109, Implements=110, - Let=111, Private=112, Public=113, Interface=114, Package=115, Protected=116, - Static=117, Any=118, Number=119, Never=120, Boolean=121, String=122, Unique=123, - Symbol=124, Undefined=125, Object=126, Of=127, KeyOf=128, TypeAlias=129, - Constructor=130, Namespace=131, Require=132, Module=133, Declare=134, - Abstract=135, Is=136, At=137, Identifier=138, StringLiteral=139, BackTick=140, - WhiteSpaces=141, LineTerminator=142, HtmlComment=143, CDataComment=144, - UnexpectedCharacter=145, TemplateStringEscapeAtom=146, TemplateStringStartExpression=147, - TemplateStringAtom=148; - public static final int - RULE_initializer = 0, RULE_bindingPattern = 1, RULE_typeParameters = 2, - RULE_typeParameterList = 3, RULE_typeParameter = 4, RULE_constraint = 5, - RULE_typeArguments = 6, RULE_typeArgumentList = 7, RULE_typeArgument = 8, - RULE_type_ = 9, RULE_unionOrIntersectionOrPrimaryType = 10, RULE_primaryType = 11, - RULE_predefinedType = 12, RULE_typeReference = 13, RULE_typeGeneric = 14, - RULE_typeName = 15, RULE_objectType = 16, RULE_typeBody = 17, RULE_typeMemberList = 18, - RULE_typeMember = 19, RULE_arrayType = 20, RULE_tupleType = 21, RULE_tupleElementTypes = 22, - RULE_functionType = 23, RULE_constructorType = 24, RULE_typeQuery = 25, - RULE_typeQueryExpression = 26, RULE_propertySignatur = 27, RULE_typeAnnotation = 28, - RULE_callSignature = 29, RULE_parameterList = 30, RULE_requiredParameterList = 31, - RULE_parameter = 32, RULE_optionalParameter = 33, RULE_restParameter = 34, - RULE_requiredParameter = 35, RULE_accessibilityModifier = 36, RULE_identifierOrPattern = 37, - RULE_constructSignature = 38, RULE_indexSignature = 39, RULE_methodSignature = 40, - RULE_typeAliasDeclaration = 41, RULE_constructorDeclaration = 42, RULE_interfaceDeclaration = 43, - RULE_interfaceExtendsClause = 44, RULE_classOrInterfaceTypeList = 45, - RULE_enumDeclaration = 46, RULE_enumBody = 47, RULE_enumMemberList = 48, - RULE_enumMember = 49, RULE_namespaceDeclaration = 50, RULE_namespaceName = 51, - RULE_importAliasDeclaration = 52, RULE_decoratorList = 53, RULE_decorator = 54, - RULE_decoratorMemberExpression = 55, RULE_decoratorCallExpression = 56, - RULE_program = 57, RULE_sourceElement = 58, RULE_statement = 59, RULE_block = 60, - RULE_statementList = 61, RULE_abstractDeclaration = 62, RULE_importStatement = 63, - RULE_importFromBlock = 64, RULE_importModuleItems = 65, RULE_importAliasName = 66, - RULE_moduleExportName = 67, RULE_importedBinding = 68, RULE_importDefault = 69, - RULE_importNamespace = 70, RULE_importFrom = 71, RULE_aliasName = 72, - RULE_exportStatement = 73, RULE_exportFromBlock = 74, RULE_exportModuleItems = 75, - RULE_exportAliasName = 76, RULE_declaration = 77, RULE_variableStatement = 78, - RULE_variableDeclarationList = 79, RULE_variableDeclaration = 80, RULE_emptyStatement_ = 81, - RULE_expressionStatement = 82, RULE_ifStatement = 83, RULE_iterationStatement = 84, - RULE_varModifier = 85, RULE_continueStatement = 86, RULE_breakStatement = 87, - RULE_returnStatement = 88, RULE_yieldStatement = 89, RULE_withStatement = 90, - RULE_switchStatement = 91, RULE_caseBlock = 92, RULE_caseClauses = 93, - RULE_caseClause = 94, RULE_defaultClause = 95, RULE_labelledStatement = 96, - RULE_throwStatement = 97, RULE_tryStatement = 98, RULE_catchProduction = 99, - RULE_finallyProduction = 100, RULE_debuggerStatement = 101, RULE_functionDeclaration = 102, - RULE_classDeclaration = 103, RULE_classHeritage = 104, RULE_classTail = 105, - RULE_classExtendsClause = 106, RULE_implementsClause = 107, RULE_classElement = 108, - RULE_propertyMemberDeclaration = 109, RULE_propertyMemberBase = 110, RULE_indexMemberDeclaration = 111, - RULE_generatorMethod = 112, RULE_generatorFunctionDeclaration = 113, RULE_generatorBlock = 114, - RULE_generatorDefinition = 115, RULE_iteratorBlock = 116, RULE_iteratorDefinition = 117, - RULE_classElementName = 118, RULE_privateIdentifier = 119, RULE_formalParameterList = 120, - RULE_formalParameterArg = 121, RULE_lastFormalParameterArg = 122, RULE_functionBody = 123, - RULE_sourceElements = 124, RULE_arrayLiteral = 125, RULE_elementList = 126, - RULE_arrayElement = 127, RULE_objectLiteral = 128, RULE_propertyAssignment = 129, - RULE_getAccessor = 130, RULE_setAccessor = 131, RULE_propertyName = 132, - RULE_arguments = 133, RULE_argumentList = 134, RULE_argument = 135, RULE_expressionSequence = 136, - RULE_singleExpression = 137, RULE_asExpression = 138, RULE_assignable = 139, - RULE_anonymousFunction = 140, RULE_arrowFunctionDeclaration = 141, RULE_arrowFunctionParameters = 142, - RULE_arrowFunctionBody = 143, RULE_assignmentOperator = 144, RULE_literal = 145, - RULE_templateStringLiteral = 146, RULE_templateStringAtom = 147, RULE_numericLiteral = 148, - RULE_bigintLiteral = 149, RULE_getter = 150, RULE_setter = 151, RULE_identifierName = 152, - RULE_identifier = 153, RULE_identifierOrKeyWord = 154, RULE_reservedWord = 155, - RULE_keyword = 156, RULE_eos = 157; - private static String[] makeRuleNames() { - return new String[] { - "initializer", "bindingPattern", "typeParameters", "typeParameterList", - "typeParameter", "constraint", "typeArguments", "typeArgumentList", "typeArgument", - "type_", "unionOrIntersectionOrPrimaryType", "primaryType", "predefinedType", - "typeReference", "typeGeneric", "typeName", "objectType", "typeBody", - "typeMemberList", "typeMember", "arrayType", "tupleType", "tupleElementTypes", - "functionType", "constructorType", "typeQuery", "typeQueryExpression", - "propertySignatur", "typeAnnotation", "callSignature", "parameterList", - "requiredParameterList", "parameter", "optionalParameter", "restParameter", - "requiredParameter", "accessibilityModifier", "identifierOrPattern", - "constructSignature", "indexSignature", "methodSignature", "typeAliasDeclaration", - "constructorDeclaration", "interfaceDeclaration", "interfaceExtendsClause", - "classOrInterfaceTypeList", "enumDeclaration", "enumBody", "enumMemberList", - "enumMember", "namespaceDeclaration", "namespaceName", "importAliasDeclaration", - "decoratorList", "decorator", "decoratorMemberExpression", "decoratorCallExpression", - "program", "sourceElement", "statement", "block", "statementList", "abstractDeclaration", - "importStatement", "importFromBlock", "importModuleItems", "importAliasName", - "moduleExportName", "importedBinding", "importDefault", "importNamespace", - "importFrom", "aliasName", "exportStatement", "exportFromBlock", "exportModuleItems", - "exportAliasName", "declaration", "variableStatement", "variableDeclarationList", - "variableDeclaration", "emptyStatement_", "expressionStatement", "ifStatement", - "iterationStatement", "varModifier", "continueStatement", "breakStatement", - "returnStatement", "yieldStatement", "withStatement", "switchStatement", - "caseBlock", "caseClauses", "caseClause", "defaultClause", "labelledStatement", - "throwStatement", "tryStatement", "catchProduction", "finallyProduction", - "debuggerStatement", "functionDeclaration", "classDeclaration", "classHeritage", - "classTail", "classExtendsClause", "implementsClause", "classElement", - "propertyMemberDeclaration", "propertyMemberBase", "indexMemberDeclaration", - "generatorMethod", "generatorFunctionDeclaration", "generatorBlock", - "generatorDefinition", "iteratorBlock", "iteratorDefinition", "classElementName", - "privateIdentifier", "formalParameterList", "formalParameterArg", "lastFormalParameterArg", - "functionBody", "sourceElements", "arrayLiteral", "elementList", "arrayElement", - "objectLiteral", "propertyAssignment", "getAccessor", "setAccessor", - "propertyName", "arguments", "argumentList", "argument", "expressionSequence", - "singleExpression", "asExpression", "assignable", "anonymousFunction", - "arrowFunctionDeclaration", "arrowFunctionParameters", "arrowFunctionBody", - "assignmentOperator", "literal", "templateStringLiteral", "templateStringAtom", - "numericLiteral", "bigintLiteral", "getter", "setter", "identifierName", - "identifier", "identifierOrKeyWord", "reservedWord", "keyword", "eos" - }; - } - public static final String[] ruleNames = makeRuleNames(); - - private static String[] makeLiteralNames() { - return new String[] { - null, null, null, null, "'['", "']'", "'('", "')'", "'{'", null, "'}'", - "';'", "','", "'='", "'?'", "'?.'", "':'", "'...'", "'.'", "'++'", "'--'", - "'+'", "'-'", "'~'", "'!'", "'*'", "'/'", "'%'", "'**'", "'??'", "'#'", - "'<<'", "'<'", "'>'", "'<='", "'>='", "'=='", "'!='", "'==='", "'!=='", - "'&'", "'^'", "'|'", "'&&'", "'||'", "'*='", "'/='", "'%='", "'+='", - "'-='", "'<<='", "'>>='", "'>>>='", "'&='", "'^='", "'|='", "'**='", - "'??='", "'=>'", "'null'", null, null, null, null, null, null, null, - null, null, null, "'break'", "'do'", "'instanceof'", "'typeof'", "'case'", - "'else'", "'new'", "'var'", "'catch'", "'finally'", "'return'", "'void'", - "'continue'", "'for'", "'switch'", "'while'", "'debugger'", "'function'", - "'this'", "'with'", "'default'", "'if'", "'throw'", "'delete'", "'in'", - "'try'", "'as'", "'from'", "'readonly'", "'async'", "'await'", "'yield'", - "'yield*'", "'class'", "'enum'", "'extends'", "'super'", "'const'", "'export'", - "'import'", "'implements'", "'let'", "'private'", "'public'", "'interface'", - "'package'", "'protected'", "'static'", "'any'", "'number'", "'never'", - "'boolean'", "'string'", "'unique'", "'symbol'", "'undefined'", "'object'", - "'of'", "'keyof'", "'type'", "'constructor'", "'namespace'", "'require'", - "'module'", "'declare'", "'abstract'", "'is'", "'@'" - }; - } - private static final String[] _LITERAL_NAMES = makeLiteralNames(); - private static String[] makeSymbolicNames() { - return new String[] { - null, "MultiLineComment", "SingleLineComment", "RegularExpressionLiteral", - "OpenBracket", "CloseBracket", "OpenParen", "CloseParen", "OpenBrace", - "TemplateCloseBrace", "CloseBrace", "SemiColon", "Comma", "Assign", "QuestionMark", - "QuestionMarkDot", "Colon", "Ellipsis", "Dot", "PlusPlus", "MinusMinus", - "Plus", "Minus", "BitNot", "Not", "Multiply", "Divide", "Modulus", "Power", - "NullCoalesce", "Hashtag", "LeftShiftArithmetic", "LessThan", "MoreThan", - "LessThanEquals", "GreaterThanEquals", "Equals_", "NotEquals", "IdentityEquals", - "IdentityNotEquals", "BitAnd", "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", - "DivideAssign", "ModulusAssign", "PlusAssign", "MinusAssign", "LeftShiftArithmeticAssign", - "RightShiftArithmeticAssign", "RightShiftLogicalAssign", "BitAndAssign", - "BitXorAssign", "BitOrAssign", "PowerAssign", "NullishCoalescingAssign", - "ARROW", "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", - "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", - "BigHexIntegerLiteral", "BigOctalIntegerLiteral", "BigBinaryIntegerLiteral", - "BigDecimalIntegerLiteral", "Break", "Do", "Instanceof", "Typeof", "Case", - "Else", "New", "Var", "Catch", "Finally", "Return", "Void", "Continue", - "For", "Switch", "While", "Debugger", "Function_", "This", "With", "Default", - "If", "Throw", "Delete", "In", "Try", "As", "From", "ReadOnly", "Async", - "Await", "Yield", "YieldStar", "Class", "Enum", "Extends", "Super", "Const", - "Export", "Import", "Implements", "Let", "Private", "Public", "Interface", - "Package", "Protected", "Static", "Any", "Number", "Never", "Boolean", - "String", "Unique", "Symbol", "Undefined", "Object", "Of", "KeyOf", "TypeAlias", - "Constructor", "Namespace", "Require", "Module", "Declare", "Abstract", - "Is", "At", "Identifier", "StringLiteral", "BackTick", "WhiteSpaces", - "LineTerminator", "HtmlComment", "CDataComment", "UnexpectedCharacter", - "TemplateStringEscapeAtom", "TemplateStringStartExpression", "TemplateStringAtom" - }; - } - private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames(); - public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); - - /** - * @deprecated Use {@link #VOCABULARY} instead. - */ - @Deprecated - public static final String[] tokenNames; - static { - tokenNames = new String[_SYMBOLIC_NAMES.length]; - for (int i = 0; i < tokenNames.length; i++) { - tokenNames[i] = VOCABULARY.getLiteralName(i); - if (tokenNames[i] == null) { - tokenNames[i] = VOCABULARY.getSymbolicName(i); - } - - if (tokenNames[i] == null) { - tokenNames[i] = ""; - } - } - } - - @Override - @Deprecated - public String[] getTokenNames() { - return tokenNames; - } - - @Override - - public Vocabulary getVocabulary() { - return VOCABULARY; - } - - @Override - public String getGrammarFileName() { return "TypeScriptParser.g4"; } - - @Override - public String[] getRuleNames() { return ruleNames; } - - @Override - public String getSerializedATN() { return _serializedATN; } - - @Override - public ATN getATN() { return _ATN; } - - public TypeScriptParser(TokenStream input) { - super(input); - _interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); - } - - @SuppressWarnings("CheckReturnValue") - public static class InitializerContext extends ParserRuleContext { - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public InitializerContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_initializer; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterInitializer(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitInitializer(this); - } - } - - public final InitializerContext initializer() throws RecognitionException { - InitializerContext _localctx = new InitializerContext(_ctx, getState()); - enterRule(_localctx, 0, RULE_initializer); - try { - enterOuterAlt(_localctx, 1); - { - setState(316); - match(Assign); - setState(317); - singleExpression(0); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class BindingPatternContext extends ParserRuleContext { - public ArrayLiteralContext arrayLiteral() { - return getRuleContext(ArrayLiteralContext.class,0); - } - public ObjectLiteralContext objectLiteral() { - return getRuleContext(ObjectLiteralContext.class,0); - } - public BindingPatternContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_bindingPattern; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterBindingPattern(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitBindingPattern(this); - } - } - - public final BindingPatternContext bindingPattern() throws RecognitionException { - BindingPatternContext _localctx = new BindingPatternContext(_ctx, getState()); - enterRule(_localctx, 2, RULE_bindingPattern); - try { - enterOuterAlt(_localctx, 1); - { - setState(321); - _errHandler.sync(this); - switch (_input.LA(1)) { - case OpenBracket: - { - setState(319); - arrayLiteral(); - } - break; - case OpenBrace: - { - setState(320); - objectLiteral(); - } - break; - default: - throw new NoViableAltException(this); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeParametersContext extends ParserRuleContext { - public TerminalNode LessThan() { return getToken(TypeScriptParser.LessThan, 0); } - public TerminalNode MoreThan() { return getToken(TypeScriptParser.MoreThan, 0); } - public TypeParameterListContext typeParameterList() { - return getRuleContext(TypeParameterListContext.class,0); - } - public TypeParametersContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeParameters; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeParameters(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeParameters(this); - } - } - - public final TypeParametersContext typeParameters() throws RecognitionException { - TypeParametersContext _localctx = new TypeParametersContext(_ctx, getState()); - enterRule(_localctx, 4, RULE_typeParameters); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(323); - match(LessThan); - setState(325); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==LessThan || ((((_la - 96)) & ~0x3f) == 0 && ((1L << (_la - 96)) & 5016517607467L) != 0)) { - { - setState(324); - typeParameterList(); - } - } - - setState(327); - match(MoreThan); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeParameterListContext extends ParserRuleContext { - public List typeParameter() { - return getRuleContexts(TypeParameterContext.class); - } - public TypeParameterContext typeParameter(int i) { - return getRuleContext(TypeParameterContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public TypeParameterListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeParameterList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeParameterList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeParameterList(this); - } - } - - public final TypeParameterListContext typeParameterList() throws RecognitionException { - TypeParameterListContext _localctx = new TypeParameterListContext(_ctx, getState()); - enterRule(_localctx, 6, RULE_typeParameterList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(329); - typeParameter(); - setState(334); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(330); - match(Comma); - setState(331); - typeParameter(); - } - } - setState(336); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeParameterContext extends ParserRuleContext { - public IdentifierContext identifier() { - return getRuleContext(IdentifierContext.class,0); - } - public ConstraintContext constraint() { - return getRuleContext(ConstraintContext.class,0); - } - public TerminalNode Assign() { return getToken(TypeScriptParser.Assign, 0); } - public TypeArgumentContext typeArgument() { - return getRuleContext(TypeArgumentContext.class,0); - } - public TypeParametersContext typeParameters() { - return getRuleContext(TypeParametersContext.class,0); - } - public TypeParameterContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeParameter; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeParameter(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeParameter(this); - } - } - - public final TypeParameterContext typeParameter() throws RecognitionException { - TypeParameterContext _localctx = new TypeParameterContext(_ctx, getState()); - enterRule(_localctx, 8, RULE_typeParameter); - int _la; - try { - setState(346); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,4,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(337); - identifier(); - setState(339); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Extends) { - { - setState(338); - constraint(); - } - } - - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(341); - identifier(); - setState(342); - match(Assign); - setState(343); - typeArgument(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(345); - typeParameters(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class ConstraintContext extends ParserRuleContext { - public TerminalNode Extends() { return getToken(TypeScriptParser.Extends, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public ConstraintContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_constraint; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterConstraint(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitConstraint(this); - } - } - - public final ConstraintContext constraint() throws RecognitionException { - ConstraintContext _localctx = new ConstraintContext(_ctx, getState()); - enterRule(_localctx, 10, RULE_constraint); - try { - enterOuterAlt(_localctx, 1); - { - setState(348); - match(Extends); - setState(349); - type_(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeArgumentsContext extends ParserRuleContext { - public TerminalNode LessThan() { return getToken(TypeScriptParser.LessThan, 0); } - public TerminalNode MoreThan() { return getToken(TypeScriptParser.MoreThan, 0); } - public TypeArgumentListContext typeArgumentList() { - return getRuleContext(TypeArgumentListContext.class,0); - } - public TypeArgumentsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeArguments; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeArguments(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeArguments(this); - } - } - - public final TypeArgumentsContext typeArguments() throws RecognitionException { - TypeArgumentsContext _localctx = new TypeArgumentsContext(_ctx, getState()); - enterRule(_localctx, 12, RULE_typeArguments); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(351); - match(LessThan); - setState(353); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 4035230767977070928L) != 0) || ((((_la - 73)) & ~0x3f) == 0 && ((1L << (_la - 73)) & 5188111586719465737L) != 0) || _la==Identifier || _la==StringLiteral) { - { - setState(352); - typeArgumentList(); - } - } - - setState(355); - match(MoreThan); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeArgumentListContext extends ParserRuleContext { - public List typeArgument() { - return getRuleContexts(TypeArgumentContext.class); - } - public TypeArgumentContext typeArgument(int i) { - return getRuleContext(TypeArgumentContext.class,i); - } - public List Comma() { return getTokens(TypeScriptParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(TypeScriptParser.Comma, i); - } - public TypeArgumentListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeArgumentList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeArgumentList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeArgumentList(this); - } - } - - public final TypeArgumentListContext typeArgumentList() throws RecognitionException { - TypeArgumentListContext _localctx = new TypeArgumentListContext(_ctx, getState()); - enterRule(_localctx, 14, RULE_typeArgumentList); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(357); - typeArgument(); - setState(362); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(358); - match(Comma); - setState(359); - typeArgument(); - } - } - setState(364); - _errHandler.sync(this); - _la = _input.LA(1); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class TypeArgumentContext extends ParserRuleContext { - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public TypeArgumentContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_typeArgument; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTypeArgument(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTypeArgument(this); - } - } - - public final TypeArgumentContext typeArgument() throws RecognitionException { - TypeArgumentContext _localctx = new TypeArgumentContext(_ctx, getState()); - enterRule(_localctx, 16, RULE_typeArgument); - try { - enterOuterAlt(_localctx, 1); - { - setState(365); - type_(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class Type_Context extends ParserRuleContext { - public UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType() { - return getRuleContext(UnionOrIntersectionOrPrimaryTypeContext.class,0); - } - public TerminalNode BitOr() { return getToken(TypeScriptParser.BitOr, 0); } - public TerminalNode BitAnd() { return getToken(TypeScriptParser.BitAnd, 0); } - public FunctionTypeContext functionType() { - return getRuleContext(FunctionTypeContext.class,0); - } - public ConstructorTypeContext constructorType() { - return getRuleContext(ConstructorTypeContext.class,0); - } - public TypeGenericContext typeGeneric() { - return getRuleContext(TypeGenericContext.class,0); - } - public Type_Context(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_type_; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterType_(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitType_(this); - } - } - - public final Type_Context type_() throws RecognitionException { - Type_Context _localctx = new Type_Context(_ctx, getState()); - enterRule(_localctx, 18, RULE_type_); - int _la; - try { - setState(374); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,8,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(368); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==BitAnd || _la==BitOr) { - { - setState(367); - _la = _input.LA(1); - if ( !(_la==BitAnd || _la==BitOr) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - } - } - - setState(370); - unionOrIntersectionOrPrimaryType(0); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(371); - functionType(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(372); - constructorType(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(373); - typeGeneric(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class UnionOrIntersectionOrPrimaryTypeContext extends ParserRuleContext { - public UnionOrIntersectionOrPrimaryTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_unionOrIntersectionOrPrimaryType; } - - public UnionOrIntersectionOrPrimaryTypeContext() { } - public void copyFrom(UnionOrIntersectionOrPrimaryTypeContext ctx) { - super.copyFrom(ctx); - } - } - @SuppressWarnings("CheckReturnValue") - public static class IntersectionContext extends UnionOrIntersectionOrPrimaryTypeContext { - public List unionOrIntersectionOrPrimaryType() { - return getRuleContexts(UnionOrIntersectionOrPrimaryTypeContext.class); - } - public UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType(int i) { - return getRuleContext(UnionOrIntersectionOrPrimaryTypeContext.class,i); - } - public TerminalNode BitAnd() { return getToken(TypeScriptParser.BitAnd, 0); } - public IntersectionContext(UnionOrIntersectionOrPrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterIntersection(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitIntersection(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PrimaryContext extends UnionOrIntersectionOrPrimaryTypeContext { - public PrimaryTypeContext primaryType() { - return getRuleContext(PrimaryTypeContext.class,0); - } - public PrimaryContext(UnionOrIntersectionOrPrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPrimary(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPrimary(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class UnionContext extends UnionOrIntersectionOrPrimaryTypeContext { - public List unionOrIntersectionOrPrimaryType() { - return getRuleContexts(UnionOrIntersectionOrPrimaryTypeContext.class); - } - public UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType(int i) { - return getRuleContext(UnionOrIntersectionOrPrimaryTypeContext.class,i); - } - public TerminalNode BitOr() { return getToken(TypeScriptParser.BitOr, 0); } - public UnionContext(UnionOrIntersectionOrPrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterUnion(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitUnion(this); - } - } - - public final UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType() throws RecognitionException { - return unionOrIntersectionOrPrimaryType(0); - } - - private UnionOrIntersectionOrPrimaryTypeContext unionOrIntersectionOrPrimaryType(int _p) throws RecognitionException { - ParserRuleContext _parentctx = _ctx; - int _parentState = getState(); - UnionOrIntersectionOrPrimaryTypeContext _localctx = new UnionOrIntersectionOrPrimaryTypeContext(_ctx, _parentState); - UnionOrIntersectionOrPrimaryTypeContext _prevctx = _localctx; - int _startState = 20; - enterRecursionRule(_localctx, 20, RULE_unionOrIntersectionOrPrimaryType, _p); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - { - _localctx = new PrimaryContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - - setState(377); - primaryType(0); - } - _ctx.stop = _input.LT(-1); - setState(387); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,10,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - setState(385); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,9,_ctx) ) { - case 1: - { - _localctx = new UnionContext(new UnionOrIntersectionOrPrimaryTypeContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_unionOrIntersectionOrPrimaryType); - setState(379); - if (!(precpred(_ctx, 3))) throw new FailedPredicateException(this, "precpred(_ctx, 3)"); - setState(380); - match(BitOr); - setState(381); - unionOrIntersectionOrPrimaryType(4); - } - break; - case 2: - { - _localctx = new IntersectionContext(new UnionOrIntersectionOrPrimaryTypeContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_unionOrIntersectionOrPrimaryType); - setState(382); - if (!(precpred(_ctx, 2))) throw new FailedPredicateException(this, "precpred(_ctx, 2)"); - setState(383); - match(BitAnd); - setState(384); - unionOrIntersectionOrPrimaryType(3); - } - break; - } - } - } - setState(389); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,10,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } - - @SuppressWarnings("CheckReturnValue") - public static class PrimaryTypeContext extends ParserRuleContext { - public PrimaryTypeContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_primaryType; } - - public PrimaryTypeContext() { } - public void copyFrom(PrimaryTypeContext ctx) { - super.copyFrom(ctx); - } - } - @SuppressWarnings("CheckReturnValue") - public static class RedefinitionOfTypeContext extends PrimaryTypeContext { - public TypeReferenceContext typeReference() { - return getRuleContext(TypeReferenceContext.class,0); - } - public TerminalNode Is() { return getToken(TypeScriptParser.Is, 0); } - public PrimaryTypeContext primaryType() { - return getRuleContext(PrimaryTypeContext.class,0); - } - public RedefinitionOfTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterRedefinitionOfType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitRedefinitionOfType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class PredefinedPrimTypeContext extends PrimaryTypeContext { - public PredefinedTypeContext predefinedType() { - return getRuleContext(PredefinedTypeContext.class,0); - } - public PredefinedPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterPredefinedPrimType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitPredefinedPrimType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ArrayPrimTypeContext extends PrimaryTypeContext { - public List primaryType() { - return getRuleContexts(PrimaryTypeContext.class); - } - public PrimaryTypeContext primaryType(int i) { - return getRuleContext(PrimaryTypeContext.class,i); - } - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public ArrayPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterArrayPrimType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitArrayPrimType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ParenthesizedPrimTypeContext extends PrimaryTypeContext { - public TerminalNode OpenParen() { return getToken(TypeScriptParser.OpenParen, 0); } - public Type_Context type_() { - return getRuleContext(Type_Context.class,0); - } - public TerminalNode CloseParen() { return getToken(TypeScriptParser.CloseParen, 0); } - public ParenthesizedPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterParenthesizedPrimType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitParenthesizedPrimType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ThisPrimTypeContext extends PrimaryTypeContext { - public TerminalNode This() { return getToken(TypeScriptParser.This, 0); } - public ThisPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterThisPrimType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitThisPrimType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class TuplePrimTypeContext extends PrimaryTypeContext { - public TerminalNode OpenBracket() { return getToken(TypeScriptParser.OpenBracket, 0); } - public TupleElementTypesContext tupleElementTypes() { - return getRuleContext(TupleElementTypesContext.class,0); - } - public TerminalNode CloseBracket() { return getToken(TypeScriptParser.CloseBracket, 0); } - public TuplePrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterTuplePrimType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitTuplePrimType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class KeyOfTypeContext extends PrimaryTypeContext { - public TerminalNode KeyOf() { return getToken(TypeScriptParser.KeyOf, 0); } - public PrimaryTypeContext primaryType() { - return getRuleContext(PrimaryTypeContext.class,0); - } - public KeyOfTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterKeyOfType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitKeyOfType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ObjectPrimTypeContext extends PrimaryTypeContext { - public ObjectTypeContext objectType() { - return getRuleContext(ObjectTypeContext.class,0); - } - public ObjectPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterObjectPrimType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitObjectPrimType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class ReferencePrimTypeContext extends PrimaryTypeContext { - public TypeReferenceContext typeReference() { - return getRuleContext(TypeReferenceContext.class,0); - } - public ReferencePrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterReferencePrimType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitReferencePrimType(this); - } - } - @SuppressWarnings("CheckReturnValue") - public static class QueryPrimTypeContext extends PrimaryTypeContext { - public TypeQueryContext typeQuery() { - return getRuleContext(TypeQueryContext.class,0); - } - public QueryPrimTypeContext(PrimaryTypeContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).enterQueryPrimType(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof TypeScriptParserListener ) ((TypeScriptParserListener)listener).exitQueryPrimType(this); - } - } - - public final PrimaryTypeContext primaryType() throws RecognitionException { - return primaryType(0); - } - - private PrimaryTypeContext primaryType(int _p) throws RecognitionException { - ParserRuleContext _parentctx = _ctx; - int _parentState = getState(); - PrimaryTypeContext _localctx = new PrimaryTypeContext(_ctx, _parentState); - PrimaryTypeContext _prevctx = _localctx; - int _startState = 22; - enterRecursionRule(_localctx, 22, RULE_primaryType, _p); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(410); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,11,_ctx) ) { - case 1: - { - _localctx = new ParenthesizedPrimTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - - setState(391); - match(OpenParen); - setState(392); - type_(); - setState(393); - match(CloseParen); - } - break; - case 2: - { - _localctx = new PredefinedPrimTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(395); - predefinedType(); - } - break; - case 3: - { - _localctx = new ReferencePrimTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(396); - typeReference(); - } - break; - case 4: - { - _localctx = new ObjectPrimTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(397); - objectType(); - } - break; - case 5: - { - _localctx = new TuplePrimTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(398); - match(OpenBracket); - setState(399); - tupleElementTypes(); - setState(400); - match(CloseBracket); - } - break; - case 6: - { - _localctx = new QueryPrimTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(402); - typeQuery(); - } - break; - case 7: - { - _localctx = new ThisPrimTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(403); - match(This); - } - break; - case 8: - { - _localctx = new RedefinitionOfTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(404); - typeReference(); - setState(405); - match(Is); - setState(406); - primaryType(2); - } - break; - case 9: - { - _localctx = new KeyOfTypeContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(408); - match(KeyOf); - setState(409); - primaryType(1); - } - break; - } - _ctx.stop = _input.LT(-1); - setState(421); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,13,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - { - _localctx = new ArrayPrimTypeContext(new PrimaryTypeContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_primaryType); - setState(412); - if (!(precpred(_ctx, 6))) throw new FailedPredicateException(this, "precpred(_ctx, 6)"); - setState(413); - if (!(this.notLineTerminator())) throw new FailedPredicateException(this, "this.notLineTerminator()"); - setState(414); - match(OpenBracket); - setState(416); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & 4035225266123964752L) != 0) || ((((_la - 73)) & ~0x3f) == 0 && ((1L << (_la - 73)) & 5188111586719465729L) != 0) || _la==Identifier || _la==StringLiteral) { - { - setState(415); - primaryType(0); - } - } - - setState(418); - match(CloseBracket); - } - } - } - setState(423); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,13,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } - - - - -} \ No newline at end of file -- Gitee