From 0ae9339900c13d3c4e277ac2e7e8bb596a255e6b Mon Sep 17 00:00:00 2001 From: wangxuxin Date: Sun, 25 Jun 2023 16:36:02 +0800 Subject: [PATCH] feat: yjs keyword sharable --- .../org/bdware/sc/parser/JavaScriptLexer.java | 1578 +- .../gen/org/bdware/sc/parser/YJSParser.java | 17141 +++++++++------- .../sc/parser/YJSParserBaseListener.java | 3787 ++-- .../sc/parser/YJSParserBaseVisitor.java | 2335 ++- .../bdware/sc/parser/YJSParserListener.java | 2975 +-- .../bdware/sc/parser/YJSParserVisitor.java | 1726 +- 6 files changed, 17071 insertions(+), 12471 deletions(-) diff --git a/src/main/gen/org/bdware/sc/parser/JavaScriptLexer.java b/src/main/gen/org/bdware/sc/parser/JavaScriptLexer.java index 9d01491..e475a06 100644 --- a/src/main/gen/org/bdware/sc/parser/JavaScriptLexer.java +++ b/src/main/gen/org/bdware/sc/parser/JavaScriptLexer.java @@ -1,9 +1,7 @@ // Generated from JavaScriptLexer.g4 by ANTLR 4.9.2 package org.bdware.sc.parser; -import org.antlr.v4.runtime.Lexer; + import org.antlr.v4.runtime.CharStream; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.TokenStream; import org.antlr.v4.runtime.*; import org.antlr.v4.runtime.atn.*; import org.antlr.v4.runtime.dfa.DFA; @@ -11,798 +9,820 @@ import org.antlr.v4.runtime.misc.*; @SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"}) public class JavaScriptLexer extends JavaScriptBaseLexer { - static { RuntimeMetaData.checkVersion("4.9.2", RuntimeMetaData.VERSION); } + static { + RuntimeMetaData.checkVersion("4.9.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, CloseBrace=9, - SemiColon=10, Comma=11, Assign=12, QuestionMark=13, Colon=14, Ellipsis=15, - Dot=16, PlusPlus=17, MinusMinus=18, Plus=19, Minus=20, BitNot=21, Not=22, - Multiply=23, Divide=24, Modulus=25, RightShiftArithmetic=26, LeftShiftArithmetic=27, - RightShiftLogical=28, LessThan=29, MoreThan=30, LessThanEquals=31, GreaterThanEquals=32, - Equals_=33, NotEquals=34, IdentityEquals=35, IdentityNotEquals=36, BitAnd=37, - BitXOr=38, BitOr=39, And=40, Or=41, MultiplyAssign=42, DivideAssign=43, - ModulusAssign=44, PlusAssign=45, MinusAssign=46, LeftShiftArithmeticAssign=47, - RightShiftArithmeticAssign=48, RightShiftLogicalAssign=49, BitAndAssign=50, - BitXorAssign=51, BitOrAssign=52, ARROW=53, NullLiteral=54, BooleanLiteral=55, - DecimalLiteral=56, HexIntegerLiteral=57, OctalIntegerLiteral=58, OctalIntegerLiteral2=59, - BinaryIntegerLiteral=60, Break=61, Do=62, Instanceof=63, Typeof=64, Case=65, - Else=66, New=67, Var=68, Catch=69, Finally=70, Return=71, Void=72, Continue=73, - For=74, Switch=75, While=76, Debugger=77, Function=78, This=79, With=80, - Default=81, If=82, Throw=83, Delete=84, In=85, Try=86, Event=87, AtToken=88, - Sharable=89, AtLeastOnce=90, AtMostOnce=91, OnlyOnce=92, Global=93, Local=94, - View=95, Class=96, Enum=97, Extends=98, Super=99, Const=100, Export=101, - Import=102, Contract=103, Module=104, Oracle=105, DoipModule=106, Implements=107, - Let=108, Private=109, Public=110, Interface=111, Package=112, Protected=113, - Static=114, Yield=115, Identifier=116, StringLiteral=117, TemplateStringLiteral=118, - WhiteSpaces=119, LineTerminator=120, HtmlComment=121, CDataComment=122, - UnexpectedCharacter=123; - public static final int - ERROR=2; - public static String[] channelNames = { - "DEFAULT_TOKEN_CHANNEL", "HIDDEN", "ERROR" - }; + 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, CloseBrace = 9, SemiColon = 10, Comma = 11, Assign = 12, + QuestionMark = 13, Colon = 14, Ellipsis = 15, Dot = 16, PlusPlus = 17, MinusMinus = 18, + Plus = 19, Minus = 20, BitNot = 21, Not = 22, Multiply = 23, Divide = 24, Modulus = 25, + RightShiftArithmetic = 26, LeftShiftArithmetic = 27, RightShiftLogical = 28, + LessThan = 29, MoreThan = 30, LessThanEquals = 31, GreaterThanEquals = 32, Equals_ = 33, + NotEquals = 34, IdentityEquals = 35, IdentityNotEquals = 36, BitAnd = 37, BitXOr = 38, + BitOr = 39, And = 40, Or = 41, MultiplyAssign = 42, DivideAssign = 43, + ModulusAssign = 44, PlusAssign = 45, MinusAssign = 46, LeftShiftArithmeticAssign = 47, + RightShiftArithmeticAssign = 48, RightShiftLogicalAssign = 49, BitAndAssign = 50, + BitXorAssign = 51, BitOrAssign = 52, ARROW = 53, NullLiteral = 54, BooleanLiteral = 55, + DecimalLiteral = 56, HexIntegerLiteral = 57, OctalIntegerLiteral = 58, + OctalIntegerLiteral2 = 59, BinaryIntegerLiteral = 60, Break = 61, Do = 62, + Instanceof = 63, Typeof = 64, Case = 65, Else = 66, New = 67, Var = 68, Catch = 69, + Finally = 70, Return = 71, Void = 72, Continue = 73, For = 74, Switch = 75, While = 76, + Debugger = 77, Function = 78, This = 79, With = 80, Default = 81, If = 82, Throw = 83, + Delete = 84, In = 85, Try = 86, Event = 87, AtToken = 88, Sharable = 89, + AtLeastOnce = 90, AtMostOnce = 91, OnlyOnce = 92, Global = 93, Local = 94, View = 95, + Class = 96, Enum = 97, Extends = 98, Super = 99, Const = 100, Export = 101, + Import = 102, Contract = 103, Module = 104, Oracle = 105, DoipModule = 106, + Implements = 107, Let = 108, Private = 109, Public = 110, Interface = 111, + Package = 112, Protected = 113, Static = 114, Yield = 115, Identifier = 116, + StringLiteral = 117, TemplateStringLiteral = 118, WhiteSpaces = 119, + LineTerminator = 120, HtmlComment = 121, CDataComment = 122, UnexpectedCharacter = 123; + public static final int ERROR = 2; + public static String[] channelNames = {"DEFAULT_TOKEN_CHANNEL", "HIDDEN", "ERROR"}; - public static String[] modeNames = { - "DEFAULT_MODE" - }; + public static String[] modeNames = {"DEFAULT_MODE"}; - private static String[] makeRuleNames() { - return new String[] { - "MultiLineComment", "SingleLineComment", "RegularExpressionLiteral", - "OpenBracket", "CloseBracket", "OpenParen", "CloseParen", "OpenBrace", - "CloseBrace", "SemiColon", "Comma", "Assign", "QuestionMark", "Colon", - "Ellipsis", "Dot", "PlusPlus", "MinusMinus", "Plus", "Minus", "BitNot", - "Not", "Multiply", "Divide", "Modulus", "RightShiftArithmetic", "LeftShiftArithmetic", - "RightShiftLogical", "LessThan", "MoreThan", "LessThanEquals", "GreaterThanEquals", - "Equals_", "NotEquals", "IdentityEquals", "IdentityNotEquals", "BitAnd", - "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", "DivideAssign", "ModulusAssign", - "PlusAssign", "MinusAssign", "LeftShiftArithmeticAssign", "RightShiftArithmeticAssign", - "RightShiftLogicalAssign", "BitAndAssign", "BitXorAssign", "BitOrAssign", - "ARROW", "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", - "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", - "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", "Event", "AtToken", "Sharable", "AtLeastOnce", "AtMostOnce", - "OnlyOnce", "Global", "Local", "View", "Class", "Enum", "Extends", "Super", - "Const", "Export", "Import", "Contract", "Module", "Oracle", "DoipModule", - "Implements", "Let", "Private", "Public", "Interface", "Package", "Protected", - "Static", "Yield", "Identifier", "StringLiteral", "TemplateStringLiteral", - "WhiteSpaces", "LineTerminator", "HtmlComment", "CDataComment", "UnexpectedCharacter", - "DoubleStringCharacter", "SingleStringCharacter", "EscapeSequence", "CharacterEscapeSequence", - "HexEscapeSequence", "UnicodeEscapeSequence", "ExtendedUnicodeEscapeSequence", - "SingleEscapeCharacter", "NonEscapeCharacter", "EscapeCharacter", "LineContinuation", - "HexDigit", "DecimalIntegerLiteral", "ExponentPart", "IdentifierPart", - "IdentifierStart", "UnicodeLetter", "UnicodeCombiningMark", "UnicodeDigit", - "UnicodeConnectorPunctuation", "RegularExpressionChar", "RegularExpressionClassChar", - "RegularExpressionBackslashSequence" - }; - } - public static final String[] ruleNames = makeRuleNames(); + private static String[] makeRuleNames() { + return new String[] {"MultiLineComment", "SingleLineComment", "RegularExpressionLiteral", + "OpenBracket", "CloseBracket", "OpenParen", "CloseParen", "OpenBrace", "CloseBrace", + "SemiColon", "Comma", "Assign", "QuestionMark", "Colon", "Ellipsis", "Dot", + "PlusPlus", "MinusMinus", "Plus", "Minus", "BitNot", "Not", "Multiply", "Divide", + "Modulus", "RightShiftArithmetic", "LeftShiftArithmetic", "RightShiftLogical", + "LessThan", "MoreThan", "LessThanEquals", "GreaterThanEquals", "Equals_", + "NotEquals", "IdentityEquals", "IdentityNotEquals", "BitAnd", "BitXOr", "BitOr", + "And", "Or", "MultiplyAssign", "DivideAssign", "ModulusAssign", "PlusAssign", + "MinusAssign", "LeftShiftArithmeticAssign", "RightShiftArithmeticAssign", + "RightShiftLogicalAssign", "BitAndAssign", "BitXorAssign", "BitOrAssign", "ARROW", + "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", + "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", "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", "Event", "AtToken", + "Sharable", "AtLeastOnce", "AtMostOnce", "OnlyOnce", "Global", "Local", "View", + "Class", "Enum", "Extends", "Super", "Const", "Export", "Import", "Contract", + "Module", "Oracle", "DoipModule", "Implements", "Let", "Private", "Public", + "Interface", "Package", "Protected", "Static", "Yield", "Identifier", + "StringLiteral", "TemplateStringLiteral", "WhiteSpaces", "LineTerminator", + "HtmlComment", "CDataComment", "UnexpectedCharacter", "DoubleStringCharacter", + "SingleStringCharacter", "EscapeSequence", "CharacterEscapeSequence", + "HexEscapeSequence", "UnicodeEscapeSequence", "ExtendedUnicodeEscapeSequence", + "SingleEscapeCharacter", "NonEscapeCharacter", "EscapeCharacter", + "LineContinuation", "HexDigit", "DecimalIntegerLiteral", "ExponentPart", + "IdentifierPart", "IdentifierStart", "UnicodeLetter", "UnicodeCombiningMark", + "UnicodeDigit", "UnicodeConnectorPunctuation", "RegularExpressionChar", + "RegularExpressionClassChar", "RegularExpressionBackslashSequence"}; + } - private static String[] makeLiteralNames() { - return new String[] { - 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'", "'event'", "'@'", "'sharable'", "'AT_LEAST_ONCE'", "'AT_MOST_ONCE'", - "'ONLY_ONCE'", "'global'", "'local'", "'view'", "'class'", "'enum'", - "'extends'", "'super'", "'const'", "'export'", "'import'", "'contract'", - "'module'", "'oracle'", "'doipmodule'", "'implements'", "'let'", "'private'", - "'public'", "'interface'", "'package'", "'protected'", "'static'", "'yield'" - }; - } - private static final String[] _LITERAL_NAMES = makeLiteralNames(); - private static String[] makeSymbolicNames() { - return new String[] { - null, "MultiLineComment", "SingleLineComment", "RegularExpressionLiteral", - "OpenBracket", "CloseBracket", "OpenParen", "CloseParen", "OpenBrace", - "CloseBrace", "SemiColon", "Comma", "Assign", "QuestionMark", "Colon", - "Ellipsis", "Dot", "PlusPlus", "MinusMinus", "Plus", "Minus", "BitNot", - "Not", "Multiply", "Divide", "Modulus", "RightShiftArithmetic", "LeftShiftArithmetic", - "RightShiftLogical", "LessThan", "MoreThan", "LessThanEquals", "GreaterThanEquals", - "Equals_", "NotEquals", "IdentityEquals", "IdentityNotEquals", "BitAnd", - "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", "DivideAssign", "ModulusAssign", - "PlusAssign", "MinusAssign", "LeftShiftArithmeticAssign", "RightShiftArithmeticAssign", - "RightShiftLogicalAssign", "BitAndAssign", "BitXorAssign", "BitOrAssign", - "ARROW", "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", - "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", - "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", "Event", "AtToken", "Sharable", "AtLeastOnce", "AtMostOnce", - "OnlyOnce", "Global", "Local", "View", "Class", "Enum", "Extends", "Super", - "Const", "Export", "Import", "Contract", "Module", "Oracle", "DoipModule", - "Implements", "Let", "Private", "Public", "Interface", "Package", "Protected", - "Static", "Yield", "Identifier", "StringLiteral", "TemplateStringLiteral", - "WhiteSpaces", "LineTerminator", "HtmlComment", "CDataComment", "UnexpectedCharacter" - }; - } - private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames(); - public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); + public static final String[] ruleNames = makeRuleNames(); - /** - * @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); - } + private static String[] makeLiteralNames() { + return new String[] {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'", "'event'", "'@'", "'sharable'", "'AT_LEAST_ONCE'", + "'AT_MOST_ONCE'", "'ONLY_ONCE'", "'global'", "'local'", "'view'", "'class'", + "'enum'", "'extends'", "'super'", "'const'", "'export'", "'import'", "'contract'", + "'module'", "'oracle'", "'doipmodule'", "'implements'", "'let'", "'private'", + "'public'", "'interface'", "'package'", "'protected'", "'static'", "'yield'"}; + } - if (tokenNames[i] == null) { - tokenNames[i] = ""; - } - } - } + private static final String[] _LITERAL_NAMES = makeLiteralNames(); - @Override - @Deprecated - public String[] getTokenNames() { - return tokenNames; - } + private static String[] makeSymbolicNames() { + return new String[] {null, "MultiLineComment", "SingleLineComment", + "RegularExpressionLiteral", "OpenBracket", "CloseBracket", "OpenParen", + "CloseParen", "OpenBrace", "CloseBrace", "SemiColon", "Comma", "Assign", + "QuestionMark", "Colon", "Ellipsis", "Dot", "PlusPlus", "MinusMinus", "Plus", + "Minus", "BitNot", "Not", "Multiply", "Divide", "Modulus", "RightShiftArithmetic", + "LeftShiftArithmetic", "RightShiftLogical", "LessThan", "MoreThan", + "LessThanEquals", "GreaterThanEquals", "Equals_", "NotEquals", "IdentityEquals", + "IdentityNotEquals", "BitAnd", "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", + "DivideAssign", "ModulusAssign", "PlusAssign", "MinusAssign", + "LeftShiftArithmeticAssign", "RightShiftArithmeticAssign", + "RightShiftLogicalAssign", "BitAndAssign", "BitXorAssign", "BitOrAssign", "ARROW", + "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", + "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", "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", "Event", "AtToken", + "Sharable", "AtLeastOnce", "AtMostOnce", "OnlyOnce", "Global", "Local", "View", + "Class", "Enum", "Extends", "Super", "Const", "Export", "Import", "Contract", + "Module", "Oracle", "DoipModule", "Implements", "Let", "Private", "Public", + "Interface", "Package", "Protected", "Static", "Yield", "Identifier", + "StringLiteral", "TemplateStringLiteral", "WhiteSpaces", "LineTerminator", + "HtmlComment", "CDataComment", "UnexpectedCharacter"}; + } - @Override + private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames(); + public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); - public Vocabulary getVocabulary() { - return VOCABULARY; - } + /** + * @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 JavaScriptLexer(CharStream input) { - super(input); - _interp = new LexerATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); - } + public JavaScriptLexer(CharStream input) { + super(input); + _interp = new LexerATNSimulator(this, _ATN, _decisionToDFA, _sharedContextCache); + } - @Override - public String getGrammarFileName() { return "JavaScriptLexer.g4"; } + @Override + public String getGrammarFileName() { + return "JavaScriptLexer.g4"; + } - @Override - public String[] getRuleNames() { return ruleNames; } + @Override + public String[] getRuleNames() { + return ruleNames; + } - @Override - public String getSerializedATN() { return _serializedATN; } + @Override + public String getSerializedATN() { + return _serializedATN; + } - @Override - public String[] getChannelNames() { return channelNames; } + @Override + public String[] getChannelNames() { + return channelNames; + } - @Override - public String[] getModeNames() { return modeNames; } + @Override + public String[] getModeNames() { + return modeNames; + } - @Override - public ATN getATN() { return _ATN; } + @Override + public ATN getATN() { + return _ATN; + } - @Override - public void action(RuleContext _localctx, int ruleIndex, int actionIndex) { - switch (ruleIndex) { - case 7: - OpenBrace_action((RuleContext)_localctx, actionIndex); - break; - case 8: - CloseBrace_action((RuleContext)_localctx, actionIndex); - break; - case 116: - StringLiteral_action((RuleContext)_localctx, actionIndex); - break; - } - } - private void OpenBrace_action(RuleContext _localctx, int actionIndex) { - switch (actionIndex) { - case 0: - ProcessOpenBrace(); - break; - } - } - private void CloseBrace_action(RuleContext _localctx, int actionIndex) { - switch (actionIndex) { - case 1: - ProcessCloseBrace(); - break; - } - } - private void StringLiteral_action(RuleContext _localctx, int actionIndex) { - switch (actionIndex) { - case 2: - ProcessStringLiteral(); - break; - } - } - @Override - public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) { - switch (ruleIndex) { - case 2: - return RegularExpressionLiteral_sempred((RuleContext)_localctx, predIndex); - case 57: - return OctalIntegerLiteral_sempred((RuleContext)_localctx, predIndex); - case 106: - return Implements_sempred((RuleContext)_localctx, predIndex); - case 107: - return Let_sempred((RuleContext)_localctx, predIndex); - case 108: - return Private_sempred((RuleContext)_localctx, predIndex); - case 109: - return Public_sempred((RuleContext)_localctx, predIndex); - case 110: - return Interface_sempred((RuleContext)_localctx, predIndex); - case 111: - return Package_sempred((RuleContext)_localctx, predIndex); - case 112: - return Protected_sempred((RuleContext)_localctx, predIndex); - case 113: - return Static_sempred((RuleContext)_localctx, predIndex); - case 114: - return Yield_sempred((RuleContext)_localctx, predIndex); - } - return true; - } - private boolean RegularExpressionLiteral_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 0: - return IsRegexPossible(); - } - return true; - } - private boolean OctalIntegerLiteral_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 1: - return !IsStrictMode(); - } - return true; - } - private boolean Implements_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 2: - return IsStrictMode(); - } - return true; - } - private boolean Let_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 3: - return IsStrictMode(); - } - return true; - } - private boolean Private_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 4: - return IsStrictMode(); - } - return true; - } - private boolean Public_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 5: - return IsStrictMode(); - } - return true; - } - private boolean Interface_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 6: - return IsStrictMode(); - } - return true; - } - private boolean Package_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 7: - return IsStrictMode(); - } - return true; - } - private boolean Protected_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 8: - return IsStrictMode(); - } - return true; - } - private boolean Static_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 9: - return IsStrictMode(); - } - return true; - } - private boolean Yield_sempred(RuleContext _localctx, int predIndex) { - switch (predIndex) { - case 10: - return IsStrictMode(); - } - return true; - } + @Override + public void action(RuleContext _localctx, int ruleIndex, int actionIndex) { + switch (ruleIndex) { + case 7: + OpenBrace_action((RuleContext) _localctx, actionIndex); + break; + case 8: + CloseBrace_action((RuleContext) _localctx, actionIndex); + break; + case 116: + StringLiteral_action((RuleContext) _localctx, actionIndex); + break; + } + } - public static final String _serializedATN = - "\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2}\u047b\b\1\4\2\t"+ - "\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13"+ - "\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22"+ - "\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31"+ - "\4\32\t\32\4\33\t\33\4\34\t\34\4\35\t\35\4\36\t\36\4\37\t\37\4 \t \4!"+ - "\t!\4\"\t\"\4#\t#\4$\t$\4%\t%\4&\t&\4\'\t\'\4(\t(\4)\t)\4*\t*\4+\t+\4"+ - ",\t,\4-\t-\4.\t.\4/\t/\4\60\t\60\4\61\t\61\4\62\t\62\4\63\t\63\4\64\t"+ - "\64\4\65\t\65\4\66\t\66\4\67\t\67\48\t8\49\t9\4:\t:\4;\t;\4<\t<\4=\t="+ - "\4>\t>\4?\t?\4@\t@\4A\tA\4B\tB\4C\tC\4D\tD\4E\tE\4F\tF\4G\tG\4H\tH\4I"+ - "\tI\4J\tJ\4K\tK\4L\tL\4M\tM\4N\tN\4O\tO\4P\tP\4Q\tQ\4R\tR\4S\tS\4T\tT"+ - "\4U\tU\4V\tV\4W\tW\4X\tX\4Y\tY\4Z\tZ\4[\t[\4\\\t\\\4]\t]\4^\t^\4_\t_\4"+ - "`\t`\4a\ta\4b\tb\4c\tc\4d\td\4e\te\4f\tf\4g\tg\4h\th\4i\ti\4j\tj\4k\t"+ - "k\4l\tl\4m\tm\4n\tn\4o\to\4p\tp\4q\tq\4r\tr\4s\ts\4t\tt\4u\tu\4v\tv\4"+ - "w\tw\4x\tx\4y\ty\4z\tz\4{\t{\4|\t|\4}\t}\4~\t~\4\177\t\177\4\u0080\t\u0080"+ - "\4\u0081\t\u0081\4\u0082\t\u0082\4\u0083\t\u0083\4\u0084\t\u0084\4\u0085"+ - "\t\u0085\4\u0086\t\u0086\4\u0087\t\u0087\4\u0088\t\u0088\4\u0089\t\u0089"+ - "\4\u008a\t\u008a\4\u008b\t\u008b\4\u008c\t\u008c\4\u008d\t\u008d\4\u008e"+ - "\t\u008e\4\u008f\t\u008f\4\u0090\t\u0090\4\u0091\t\u0091\4\u0092\t\u0092"+ - "\4\u0093\t\u0093\3\2\3\2\3\2\3\2\7\2\u012c\n\2\f\2\16\2\u012f\13\2\3\2"+ - "\3\2\3\2\3\2\3\2\3\3\3\3\3\3\3\3\7\3\u013a\n\3\f\3\16\3\u013d\13\3\3\3"+ - "\3\3\3\4\3\4\6\4\u0143\n\4\r\4\16\4\u0144\3\4\3\4\3\4\7\4\u014a\n\4\f"+ - "\4\16\4\u014d\13\4\3\5\3\5\3\6\3\6\3\7\3\7\3\b\3\b\3\t\3\t\3\t\3\n\3\n"+ - "\3\n\3\13\3\13\3\f\3\f\3\r\3\r\3\16\3\16\3\17\3\17\3\20\3\20\3\20\3\20"+ - "\3\21\3\21\3\22\3\22\3\22\3\23\3\23\3\23\3\24\3\24\3\25\3\25\3\26\3\26"+ - "\3\27\3\27\3\30\3\30\3\31\3\31\3\32\3\32\3\33\3\33\3\33\3\34\3\34\3\34"+ - "\3\35\3\35\3\35\3\35\3\36\3\36\3\37\3\37\3 \3 \3 \3!\3!\3!\3\"\3\"\3\""+ - "\3#\3#\3#\3$\3$\3$\3$\3%\3%\3%\3%\3&\3&\3\'\3\'\3(\3(\3)\3)\3)\3*\3*\3"+ - "*\3+\3+\3+\3,\3,\3,\3-\3-\3-\3.\3.\3.\3/\3/\3/\3\60\3\60\3\60\3\60\3\61"+ - "\3\61\3\61\3\61\3\62\3\62\3\62\3\62\3\62\3\63\3\63\3\63\3\64\3\64\3\64"+ - "\3\65\3\65\3\65\3\66\3\66\3\66\3\67\3\67\3\67\3\67\3\67\38\38\38\38\3"+ - "8\38\38\38\38\58\u01e5\n8\39\39\39\79\u01ea\n9\f9\169\u01ed\139\39\59"+ - "\u01f0\n9\39\39\69\u01f4\n9\r9\169\u01f5\39\59\u01f9\n9\39\39\59\u01fd"+ - "\n9\59\u01ff\n9\3:\3:\3:\6:\u0204\n:\r:\16:\u0205\3;\3;\6;\u020a\n;\r"+ - ";\16;\u020b\3;\3;\3<\3<\3<\6<\u0213\n<\r<\16<\u0214\3=\3=\3=\6=\u021a"+ - "\n=\r=\16=\u021b\3>\3>\3>\3>\3>\3>\3?\3?\3?\3@\3@\3@\3@\3@\3@\3@\3@\3"+ - "@\3@\3@\3A\3A\3A\3A\3A\3A\3A\3B\3B\3B\3B\3B\3C\3C\3C\3C\3C\3D\3D\3D\3"+ - "D\3E\3E\3E\3E\3F\3F\3F\3F\3F\3F\3G\3G\3G\3G\3G\3G\3G\3G\3H\3H\3H\3H\3"+ - "H\3H\3H\3I\3I\3I\3I\3I\3J\3J\3J\3J\3J\3J\3J\3J\3J\3K\3K\3K\3K\3L\3L\3"+ - "L\3L\3L\3L\3L\3M\3M\3M\3M\3M\3M\3N\3N\3N\3N\3N\3N\3N\3N\3N\3O\3O\3O\3"+ - "O\3O\3O\3O\3O\3O\3P\3P\3P\3P\3P\3Q\3Q\3Q\3Q\3Q\3R\3R\3R\3R\3R\3R\3R\3"+ - "R\3S\3S\3S\3T\3T\3T\3T\3T\3T\3U\3U\3U\3U\3U\3U\3U\3V\3V\3V\3W\3W\3W\3"+ - "W\3X\3X\3X\3X\3X\3X\3Y\3Y\3Z\3Z\3Z\3Z\3Z\3Z\3Z\3Z\3Z\3[\3[\3[\3[\3[\3"+ - "[\3[\3[\3[\3[\3[\3[\3[\3[\3\\\3\\\3\\\3\\\3\\\3\\\3\\\3\\\3\\\3\\\3\\"+ - "\3\\\3\\\3]\3]\3]\3]\3]\3]\3]\3]\3]\3]\3^\3^\3^\3^\3^\3^\3^\3_\3_\3_\3"+ - "_\3_\3_\3`\3`\3`\3`\3`\3a\3a\3a\3a\3a\3a\3b\3b\3b\3b\3b\3c\3c\3c\3c\3"+ - "c\3c\3c\3c\3d\3d\3d\3d\3d\3d\3e\3e\3e\3e\3e\3e\3f\3f\3f\3f\3f\3f\3f\3"+ - "g\3g\3g\3g\3g\3g\3g\3h\3h\3h\3h\3h\3h\3h\3h\3h\3i\3i\3i\3i\3i\3i\3i\3"+ - "j\3j\3j\3j\3j\3j\3j\3k\3k\3k\3k\3k\3k\3k\3k\3k\3k\3k\3l\3l\3l\3l\3l\3"+ - "l\3l\3l\3l\3l\3l\3l\3l\3m\3m\3m\3m\3m\3m\3n\3n\3n\3n\3n\3n\3n\3n\3n\3"+ - "n\3o\3o\3o\3o\3o\3o\3o\3o\3o\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3q\3"+ - "q\3q\3q\3q\3q\3q\3q\3q\3q\3r\3r\3r\3r\3r\3r\3r\3r\3r\3r\3r\3r\3s\3s\3"+ - "s\3s\3s\3s\3s\3s\3s\3t\3t\3t\3t\3t\3t\3t\3t\3u\3u\7u\u03ac\nu\fu\16u\u03af"+ - "\13u\3v\3v\7v\u03b3\nv\fv\16v\u03b6\13v\3v\3v\3v\7v\u03bb\nv\fv\16v\u03be"+ - "\13v\3v\5v\u03c1\nv\3v\3v\3w\3w\3w\3w\7w\u03c9\nw\fw\16w\u03cc\13w\3w"+ - "\3w\3x\6x\u03d1\nx\rx\16x\u03d2\3x\3x\3y\3y\3y\3y\3z\3z\3z\3z\3z\3z\7"+ - "z\u03e1\nz\fz\16z\u03e4\13z\3z\3z\3z\3z\3z\3z\3{\3{\3{\3{\3{\3{\3{\3{"+ - "\3{\3{\3{\7{\u03f7\n{\f{\16{\u03fa\13{\3{\3{\3{\3{\3{\3{\3|\3|\3|\3|\3"+ - "}\3}\3}\3}\5}\u040a\n}\3~\3~\3~\3~\5~\u0410\n~\3\177\3\177\3\177\3\177"+ - "\3\177\5\177\u0417\n\177\3\u0080\3\u0080\5\u0080\u041b\n\u0080\3\u0081"+ - "\3\u0081\3\u0081\3\u0081\3\u0082\3\u0082\3\u0082\3\u0082\3\u0082\3\u0082"+ - "\3\u0083\3\u0083\3\u0083\6\u0083\u042a\n\u0083\r\u0083\16\u0083\u042b"+ - "\3\u0083\3\u0083\3\u0084\3\u0084\3\u0085\3\u0085\3\u0086\3\u0086\5\u0086"+ - "\u0436\n\u0086\3\u0087\3\u0087\3\u0087\3\u0088\3\u0088\3\u0089\3\u0089"+ - "\3\u0089\7\u0089\u0440\n\u0089\f\u0089\16\u0089\u0443\13\u0089\5\u0089"+ - "\u0445\n\u0089\3\u008a\3\u008a\5\u008a\u0449\n\u008a\3\u008a\6\u008a\u044c"+ - "\n\u008a\r\u008a\16\u008a\u044d\3\u008b\3\u008b\3\u008b\3\u008b\3\u008b"+ - "\5\u008b\u0455\n\u008b\3\u008c\3\u008c\3\u008c\3\u008c\5\u008c\u045b\n"+ - "\u008c\3\u008d\5\u008d\u045e\n\u008d\3\u008e\5\u008e\u0461\n\u008e\3\u008f"+ - "\5\u008f\u0464\n\u008f\3\u0090\5\u0090\u0467\n\u0090\3\u0091\3\u0091\3"+ - "\u0091\3\u0091\7\u0091\u046d\n\u0091\f\u0091\16\u0091\u0470\13\u0091\3"+ - "\u0091\5\u0091\u0473\n\u0091\3\u0092\3\u0092\5\u0092\u0477\n\u0092\3\u0093"+ - "\3\u0093\3\u0093\5\u012d\u03e2\u03f8\2\u0094\3\3\5\4\7\5\t\6\13\7\r\b"+ - "\17\t\21\n\23\13\25\f\27\r\31\16\33\17\35\20\37\21!\22#\23%\24\'\25)\26"+ - "+\27-\30/\31\61\32\63\33\65\34\67\359\36;\37= ?!A\"C#E$G%I&K\'M(O)Q*S"+ - "+U,W-Y.[/]\60_\61a\62c\63e\64g\65i\66k\67m8o9q:s;u{?}@\177A\u0081"+ - "B\u0083C\u0085D\u0087E\u0089F\u008bG\u008dH\u008fI\u0091J\u0093K\u0095"+ - "L\u0097M\u0099N\u009bO\u009dP\u009fQ\u00a1R\u00a3S\u00a5T\u00a7U\u00a9"+ - "V\u00abW\u00adX\u00afY\u00b1Z\u00b3[\u00b5\\\u00b7]\u00b9^\u00bb_\u00bd"+ - "`\u00bfa\u00c1b\u00c3c\u00c5d\u00c7e\u00c9f\u00cbg\u00cdh\u00cfi\u00d1"+ - "j\u00d3k\u00d5l\u00d7m\u00d9n\u00dbo\u00ddp\u00dfq\u00e1r\u00e3s\u00e5"+ - "t\u00e7u\u00e9v\u00ebw\u00edx\u00efy\u00f1z\u00f3{\u00f5|\u00f7}\u00f9"+ - "\2\u00fb\2\u00fd\2\u00ff\2\u0101\2\u0103\2\u0105\2\u0107\2\u0109\2\u010b"+ - "\2\u010d\2\u010f\2\u0111\2\u0113\2\u0115\2\u0117\2\u0119\2\u011b\2\u011d"+ - "\2\u011f\2\u0121\2\u0123\2\u0125\2\3\2\33\5\2\f\f\17\17\u202a\u202b\3"+ - "\2\62;\4\2ZZzz\3\2\629\4\2QQqq\4\2DDdd\3\2\62\63\3\2bb\6\2\13\13\r\16"+ - "\"\"\u00a2\u00a2\6\2\f\f\17\17$$^^\6\2\f\f\17\17))^^\13\2$$))^^ddhhpp"+ - "ttvvxx\16\2\f\f\17\17$$))\62;^^ddhhppttvxzz\5\2\62;wwzz\5\2\62;CHch\3"+ - "\2\63;\4\2GGgg\4\2--//\4\2&&aa\u0104\2C\\c|\u00ac\u00ac\u00b7\u00b7\u00bc"+ - "\u00bc\u00c2\u00d8\u00da\u00f8\u00fa\u0221\u0224\u0235\u0252\u02af\u02b2"+ - "\u02ba\u02bd\u02c3\u02d2\u02d3\u02e2\u02e6\u02f0\u02f0\u037c\u037c\u0388"+ - "\u0388\u038a\u038c\u038e\u038e\u0390\u03a3\u03a5\u03d0\u03d2\u03d9\u03dc"+ - "\u03f5\u0402\u0483\u048e\u04c6\u04c9\u04ca\u04cd\u04ce\u04d2\u04f7\u04fa"+ - "\u04fb\u0533\u0558\u055b\u055b\u0563\u0589\u05d2\u05ec\u05f2\u05f4\u0623"+ - "\u063c\u0642\u064c\u0673\u06d5\u06d7\u06d7\u06e7\u06e8\u06fc\u06fe\u0712"+ - "\u0712\u0714\u072e\u0782\u07a7\u0907\u093b\u093f\u093f\u0952\u0952\u095a"+ - "\u0963\u0987\u098e\u0991\u0992\u0995\u09aa\u09ac\u09b2\u09b4\u09b4\u09b8"+ - "\u09bb\u09de\u09df\u09e1\u09e3\u09f2\u09f3\u0a07\u0a0c\u0a11\u0a12\u0a15"+ - "\u0a2a\u0a2c\u0a32\u0a34\u0a35\u0a37\u0a38\u0a3a\u0a3b\u0a5b\u0a5e\u0a60"+ - "\u0a60\u0a74\u0a76\u0a87\u0a8d\u0a8f\u0a8f\u0a91\u0a93\u0a95\u0aaa\u0aac"+ - "\u0ab2\u0ab4\u0ab5\u0ab7\u0abb\u0abf\u0abf\u0ad2\u0ad2\u0ae2\u0ae2\u0b07"+ - "\u0b0e\u0b11\u0b12\u0b15\u0b2a\u0b2c\u0b32\u0b34\u0b35\u0b38\u0b3b\u0b3f"+ - "\u0b3f\u0b5e\u0b5f\u0b61\u0b63\u0b87\u0b8c\u0b90\u0b92\u0b94\u0b97\u0b9b"+ - "\u0b9c\u0b9e\u0b9e\u0ba0\u0ba1\u0ba5\u0ba6\u0baa\u0bac\u0bb0\u0bb7\u0bb9"+ - "\u0bbb\u0c07\u0c0e\u0c10\u0c12\u0c14\u0c2a\u0c2c\u0c35\u0c37\u0c3b\u0c62"+ - "\u0c63\u0c87\u0c8e\u0c90\u0c92\u0c94\u0caa\u0cac\u0cb5\u0cb7\u0cbb\u0ce0"+ - "\u0ce0\u0ce2\u0ce3\u0d07\u0d0e\u0d10\u0d12\u0d14\u0d2a\u0d2c\u0d3b\u0d62"+ - "\u0d63\u0d87\u0d98\u0d9c\u0db3\u0db5\u0dbd\u0dbf\u0dbf\u0dc2\u0dc8\u0e03"+ - "\u0e32\u0e34\u0e35\u0e42\u0e48\u0e83\u0e84\u0e86\u0e86\u0e89\u0e8a\u0e8c"+ - "\u0e8c\u0e8f\u0e8f\u0e96\u0e99\u0e9b\u0ea1\u0ea3\u0ea5\u0ea7\u0ea7\u0ea9"+ - "\u0ea9\u0eac\u0ead\u0eaf\u0eb2\u0eb4\u0eb5\u0ebf\u0ec6\u0ec8\u0ec8\u0ede"+ - "\u0edf\u0f02\u0f02\u0f42\u0f6c\u0f8a\u0f8d\u1002\u1023\u1025\u1029\u102b"+ - "\u102c\u1052\u1057\u10a2\u10c7\u10d2\u10f8\u1102\u115b\u1161\u11a4\u11aa"+ - "\u11fb\u1202\u1208\u120a\u1248\u124a\u124a\u124c\u124f\u1252\u1258\u125a"+ - "\u125a\u125c\u125f\u1262\u1288\u128a\u128a\u128c\u128f\u1292\u12b0\u12b2"+ - "\u12b2\u12b4\u12b7\u12ba\u12c0\u12c2\u12c2\u12c4\u12c7\u12ca\u12d0\u12d2"+ - "\u12d8\u12da\u12f0\u12f2\u1310\u1312\u1312\u1314\u1317\u131a\u1320\u1322"+ - "\u1348\u134a\u135c\u13a2\u13f6\u1403\u1678\u1683\u169c\u16a2\u16ec\u1782"+ - "\u17b5\u1822\u1879\u1882\u18aa\u1e02\u1e9d\u1ea2\u1efb\u1f02\u1f17\u1f1a"+ - "\u1f1f\u1f22\u1f47\u1f4a\u1f4f\u1f52\u1f59\u1f5b\u1f5b\u1f5d\u1f5d\u1f5f"+ - "\u1f5f\u1f61\u1f7f\u1f82\u1fb6\u1fb8\u1fbe\u1fc0\u1fc0\u1fc4\u1fc6\u1fc8"+ - "\u1fce\u1fd2\u1fd5\u1fd8\u1fdd\u1fe2\u1fee\u1ff4\u1ff6\u1ff8\u1ffe\u2081"+ - "\u2081\u2104\u2104\u2109\u2109\u210c\u2115\u2117\u2117\u211b\u211f\u2126"+ - "\u2126\u2128\u2128\u212a\u212a\u212c\u212f\u2131\u2133\u2135\u213b\u2162"+ - "\u2185\u3007\u3009\u3023\u302b\u3033\u3037\u303a\u303c\u3043\u3096\u309f"+ - "\u30a0\u30a3\u30fc\u30fe\u3100\u3107\u312e\u3133\u3190\u31a2\u31b9\u3402"+ - "\u3402\u4db7\u4db7\u4e02\u4e02\u9fa7\u9fa7\ua002\ua48e\uac02\uac02\ud7a5"+ - "\ud7a5\uf902\ufa2f\ufb02\ufb08\ufb15\ufb19\ufb1f\ufb1f\ufb21\ufb2a\ufb2c"+ - "\ufb38\ufb3a\ufb3e\ufb40\ufb40\ufb42\ufb43\ufb45\ufb46\ufb48\ufbb3\ufbd5"+ - "\ufd3f\ufd52\ufd91\ufd94\ufdc9\ufdf2\ufdfd\ufe72\ufe74\ufe76\ufe76\ufe78"+ - "\ufefe\uff23\uff3c\uff43\uff5c\uff68\uffc0\uffc4\uffc9\uffcc\uffd1\uffd4"+ - "\uffd9\uffdc\uffdef\2\u0302\u0350\u0362\u0364\u0485\u0488\u0593\u05a3"+ - "\u05a5\u05bb\u05bd\u05bf\u05c1\u05c1\u05c3\u05c4\u05c6\u05c6\u064d\u0657"+ - "\u0672\u0672\u06d8\u06de\u06e1\u06e6\u06e9\u06ea\u06ec\u06ef\u0713\u0713"+ - "\u0732\u074c\u07a8\u07b2\u0903\u0905\u093e\u093e\u0940\u094f\u0953\u0956"+ - "\u0964\u0965\u0983\u0985\u09be\u09c6\u09c9\u09ca\u09cd\u09cf\u09d9\u09d9"+ - "\u09e4\u09e5\u0a04\u0a04\u0a3e\u0a3e\u0a40\u0a44\u0a49\u0a4a\u0a4d\u0a4f"+ - "\u0a72\u0a73\u0a83\u0a85\u0abe\u0abe\u0ac0\u0ac7\u0ac9\u0acb\u0acd\u0acf"+ - "\u0b03\u0b05\u0b3e\u0b3e\u0b40\u0b45\u0b49\u0b4a\u0b4d\u0b4f\u0b58\u0b59"+ - "\u0b84\u0b85\u0bc0\u0bc4\u0bc8\u0bca\u0bcc\u0bcf\u0bd9\u0bd9\u0c03\u0c05"+ - "\u0c40\u0c46\u0c48\u0c4a\u0c4c\u0c4f\u0c57\u0c58\u0c84\u0c85\u0cc0\u0cc6"+ - "\u0cc8\u0cca\u0ccc\u0ccf\u0cd7\u0cd8\u0d04\u0d05\u0d40\u0d45\u0d48\u0d4a"+ - "\u0d4c\u0d4f\u0d59\u0d59\u0d84\u0d85\u0dcc\u0dcc\u0dd1\u0dd6\u0dd8\u0dd8"+ - "\u0dda\u0de1\u0df4\u0df5\u0e33\u0e33\u0e36\u0e3c\u0e49\u0e50\u0eb3\u0eb3"+ - "\u0eb6\u0ebb\u0ebd\u0ebe\u0eca\u0ecf\u0f1a\u0f1b\u0f37\u0f37\u0f39\u0f39"+ - "\u0f3b\u0f3b\u0f40\u0f41\u0f73\u0f86\u0f88\u0f89\u0f92\u0f99\u0f9b\u0fbe"+ - "\u0fc8\u0fc8\u102e\u1034\u1038\u103b\u1058\u105b\u17b6\u17d5\u18ab\u18ab"+ - "\u20d2\u20de\u20e3\u20e3\u302c\u3031\u309b\u309c\ufb20\ufb20\ufe22\ufe25"+ - "\26\2\62;\u0662\u066b\u06f2\u06fb\u0968\u0971\u09e8\u09f1\u0a68\u0a71"+ - "\u0ae8\u0af1\u0b68\u0b71\u0be9\u0bf1\u0c68\u0c71\u0ce8\u0cf1\u0d68\u0d71"+ - "\u0e52\u0e5b\u0ed2\u0edb\u0f22\u0f2b\u1042\u104b\u136b\u1373\u17e2\u17eb"+ - "\u1812\u181b\uff12\uff1b\t\2aa\u2041\u2042\u30fd\u30fd\ufe35\ufe36\ufe4f"+ - "\ufe51\uff41\uff41\uff67\uff67\7\2\f\f\17\17\61\61]^\u202a\u202b\6\2\f"+ - "\f\17\17^_\u202a\u202b\2\u0495\2\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t"+ - "\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2"+ - "\2\2\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2\2\2"+ - "\37\3\2\2\2\2!\3\2\2\2\2#\3\2\2\2\2%\3\2\2\2\2\'\3\2\2\2\2)\3\2\2\2\2"+ - "+\3\2\2\2\2-\3\2\2\2\2/\3\2\2\2\2\61\3\2\2\2\2\63\3\2\2\2\2\65\3\2\2\2"+ - "\2\67\3\2\2\2\29\3\2\2\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2\2\2"+ - "C\3\2\2\2\2E\3\2\2\2\2G\3\2\2\2\2I\3\2\2\2\2K\3\2\2\2\2M\3\2\2\2\2O\3"+ - "\2\2\2\2Q\3\2\2\2\2S\3\2\2\2\2U\3\2\2\2\2W\3\2\2\2\2Y\3\2\2\2\2[\3\2\2"+ - "\2\2]\3\2\2\2\2_\3\2\2\2\2a\3\2\2\2\2c\3\2\2\2\2e\3\2\2\2\2g\3\2\2\2\2"+ - "i\3\2\2\2\2k\3\2\2\2\2m\3\2\2\2\2o\3\2\2\2\2q\3\2\2\2\2s\3\2\2\2\2u\3"+ - "\2\2\2\2w\3\2\2\2\2y\3\2\2\2\2{\3\2\2\2\2}\3\2\2\2\2\177\3\2\2\2\2\u0081"+ - "\3\2\2\2\2\u0083\3\2\2\2\2\u0085\3\2\2\2\2\u0087\3\2\2\2\2\u0089\3\2\2"+ - "\2\2\u008b\3\2\2\2\2\u008d\3\2\2\2\2\u008f\3\2\2\2\2\u0091\3\2\2\2\2\u0093"+ - "\3\2\2\2\2\u0095\3\2\2\2\2\u0097\3\2\2\2\2\u0099\3\2\2\2\2\u009b\3\2\2"+ - "\2\2\u009d\3\2\2\2\2\u009f\3\2\2\2\2\u00a1\3\2\2\2\2\u00a3\3\2\2\2\2\u00a5"+ - "\3\2\2\2\2\u00a7\3\2\2\2\2\u00a9\3\2\2\2\2\u00ab\3\2\2\2\2\u00ad\3\2\2"+ - "\2\2\u00af\3\2\2\2\2\u00b1\3\2\2\2\2\u00b3\3\2\2\2\2\u00b5\3\2\2\2\2\u00b7"+ - "\3\2\2\2\2\u00b9\3\2\2\2\2\u00bb\3\2\2\2\2\u00bd\3\2\2\2\2\u00bf\3\2\2"+ - "\2\2\u00c1\3\2\2\2\2\u00c3\3\2\2\2\2\u00c5\3\2\2\2\2\u00c7\3\2\2\2\2\u00c9"+ - "\3\2\2\2\2\u00cb\3\2\2\2\2\u00cd\3\2\2\2\2\u00cf\3\2\2\2\2\u00d1\3\2\2"+ - "\2\2\u00d3\3\2\2\2\2\u00d5\3\2\2\2\2\u00d7\3\2\2\2\2\u00d9\3\2\2\2\2\u00db"+ - "\3\2\2\2\2\u00dd\3\2\2\2\2\u00df\3\2\2\2\2\u00e1\3\2\2\2\2\u00e3\3\2\2"+ - "\2\2\u00e5\3\2\2\2\2\u00e7\3\2\2\2\2\u00e9\3\2\2\2\2\u00eb\3\2\2\2\2\u00ed"+ - "\3\2\2\2\2\u00ef\3\2\2\2\2\u00f1\3\2\2\2\2\u00f3\3\2\2\2\2\u00f5\3\2\2"+ - "\2\2\u00f7\3\2\2\2\3\u0127\3\2\2\2\5\u0135\3\2\2\2\7\u0140\3\2\2\2\t\u014e"+ - "\3\2\2\2\13\u0150\3\2\2\2\r\u0152\3\2\2\2\17\u0154\3\2\2\2\21\u0156\3"+ - "\2\2\2\23\u0159\3\2\2\2\25\u015c\3\2\2\2\27\u015e\3\2\2\2\31\u0160\3\2"+ - "\2\2\33\u0162\3\2\2\2\35\u0164\3\2\2\2\37\u0166\3\2\2\2!\u016a\3\2\2\2"+ - "#\u016c\3\2\2\2%\u016f\3\2\2\2\'\u0172\3\2\2\2)\u0174\3\2\2\2+\u0176\3"+ - "\2\2\2-\u0178\3\2\2\2/\u017a\3\2\2\2\61\u017c\3\2\2\2\63\u017e\3\2\2\2"+ - "\65\u0180\3\2\2\2\67\u0183\3\2\2\29\u0186\3\2\2\2;\u018a\3\2\2\2=\u018c"+ - "\3\2\2\2?\u018e\3\2\2\2A\u0191\3\2\2\2C\u0194\3\2\2\2E\u0197\3\2\2\2G"+ - "\u019a\3\2\2\2I\u019e\3\2\2\2K\u01a2\3\2\2\2M\u01a4\3\2\2\2O\u01a6\3\2"+ - "\2\2Q\u01a8\3\2\2\2S\u01ab\3\2\2\2U\u01ae\3\2\2\2W\u01b1\3\2\2\2Y\u01b4"+ - "\3\2\2\2[\u01b7\3\2\2\2]\u01ba\3\2\2\2_\u01bd\3\2\2\2a\u01c1\3\2\2\2c"+ - "\u01c5\3\2\2\2e\u01ca\3\2\2\2g\u01cd\3\2\2\2i\u01d0\3\2\2\2k\u01d3\3\2"+ - "\2\2m\u01d6\3\2\2\2o\u01e4\3\2\2\2q\u01fe\3\2\2\2s\u0200\3\2\2\2u\u0207"+ - "\3\2\2\2w\u020f\3\2\2\2y\u0216\3\2\2\2{\u021d\3\2\2\2}\u0223\3\2\2\2\177"+ - "\u0226\3\2\2\2\u0081\u0231\3\2\2\2\u0083\u0238\3\2\2\2\u0085\u023d\3\2"+ - "\2\2\u0087\u0242\3\2\2\2\u0089\u0246\3\2\2\2\u008b\u024a\3\2\2\2\u008d"+ - "\u0250\3\2\2\2\u008f\u0258\3\2\2\2\u0091\u025f\3\2\2\2\u0093\u0264\3\2"+ - "\2\2\u0095\u026d\3\2\2\2\u0097\u0271\3\2\2\2\u0099\u0278\3\2\2\2\u009b"+ - "\u027e\3\2\2\2\u009d\u0287\3\2\2\2\u009f\u0290\3\2\2\2\u00a1\u0295\3\2"+ - "\2\2\u00a3\u029a\3\2\2\2\u00a5\u02a2\3\2\2\2\u00a7\u02a5\3\2\2\2\u00a9"+ - "\u02ab\3\2\2\2\u00ab\u02b2\3\2\2\2\u00ad\u02b5\3\2\2\2\u00af\u02b9\3\2"+ - "\2\2\u00b1\u02bf\3\2\2\2\u00b3\u02c1\3\2\2\2\u00b5\u02ca\3\2\2\2\u00b7"+ - "\u02d8\3\2\2\2\u00b9\u02e5\3\2\2\2\u00bb\u02ef\3\2\2\2\u00bd\u02f6\3\2"+ - "\2\2\u00bf\u02fc\3\2\2\2\u00c1\u0301\3\2\2\2\u00c3\u0307\3\2\2\2\u00c5"+ - "\u030c\3\2\2\2\u00c7\u0314\3\2\2\2\u00c9\u031a\3\2\2\2\u00cb\u0320\3\2"+ - "\2\2\u00cd\u0327\3\2\2\2\u00cf\u032e\3\2\2\2\u00d1\u0337\3\2\2\2\u00d3"+ - "\u033e\3\2\2\2\u00d5\u0345\3\2\2\2\u00d7\u0350\3\2\2\2\u00d9\u035d\3\2"+ - "\2\2\u00db\u0363\3\2\2\2\u00dd\u036d\3\2\2\2\u00df\u0376\3\2\2\2\u00e1"+ - "\u0382\3\2\2\2\u00e3\u038c\3\2\2\2\u00e5\u0398\3\2\2\2\u00e7\u03a1\3\2"+ - "\2\2\u00e9\u03a9\3\2\2\2\u00eb\u03c0\3\2\2\2\u00ed\u03c4\3\2\2\2\u00ef"+ - "\u03d0\3\2\2\2\u00f1\u03d6\3\2\2\2\u00f3\u03da\3\2\2\2\u00f5\u03eb\3\2"+ - "\2\2\u00f7\u0401\3\2\2\2\u00f9\u0409\3\2\2\2\u00fb\u040f\3\2\2\2\u00fd"+ - "\u0416\3\2\2\2\u00ff\u041a\3\2\2\2\u0101\u041c\3\2\2\2\u0103\u0420\3\2"+ - "\2\2\u0105\u0426\3\2\2\2\u0107\u042f\3\2\2\2\u0109\u0431\3\2\2\2\u010b"+ - "\u0435\3\2\2\2\u010d\u0437\3\2\2\2\u010f\u043a\3\2\2\2\u0111\u0444\3\2"+ - "\2\2\u0113\u0446\3\2\2\2\u0115\u0454\3\2\2\2\u0117\u045a\3\2\2\2\u0119"+ - "\u045d\3\2\2\2\u011b\u0460\3\2\2\2\u011d\u0463\3\2\2\2\u011f\u0466\3\2"+ - "\2\2\u0121\u0472\3\2\2\2\u0123\u0476\3\2\2\2\u0125\u0478\3\2\2\2\u0127"+ - "\u0128\7\61\2\2\u0128\u0129\7,\2\2\u0129\u012d\3\2\2\2\u012a\u012c\13"+ - "\2\2\2\u012b\u012a\3\2\2\2\u012c\u012f\3\2\2\2\u012d\u012e\3\2\2\2\u012d"+ - "\u012b\3\2\2\2\u012e\u0130\3\2\2\2\u012f\u012d\3\2\2\2\u0130\u0131\7,"+ - "\2\2\u0131\u0132\7\61\2\2\u0132\u0133\3\2\2\2\u0133\u0134\b\2\2\2\u0134"+ - "\4\3\2\2\2\u0135\u0136\7\61\2\2\u0136\u0137\7\61\2\2\u0137\u013b\3\2\2"+ - "\2\u0138\u013a\n\2\2\2\u0139\u0138\3\2\2\2\u013a\u013d\3\2\2\2\u013b\u0139"+ - "\3\2\2\2\u013b\u013c\3\2\2\2\u013c\u013e\3\2\2\2\u013d\u013b\3\2\2\2\u013e"+ - "\u013f\b\3\2\2\u013f\6\3\2\2\2\u0140\u0142\7\61\2\2\u0141\u0143\5\u0121"+ - "\u0091\2\u0142\u0141\3\2\2\2\u0143\u0144\3\2\2\2\u0144\u0142\3\2\2\2\u0144"+ - "\u0145\3\2\2\2\u0145\u0146\3\2\2\2\u0146\u0147\6\4\2\2\u0147\u014b\7\61"+ - "\2\2\u0148\u014a\5\u0115\u008b\2\u0149\u0148\3\2\2\2\u014a\u014d\3\2\2"+ - "\2\u014b\u0149\3\2\2\2\u014b\u014c\3\2\2\2\u014c\b\3\2\2\2\u014d\u014b"+ - "\3\2\2\2\u014e\u014f\7]\2\2\u014f\n\3\2\2\2\u0150\u0151\7_\2\2\u0151\f"+ - "\3\2\2\2\u0152\u0153\7*\2\2\u0153\16\3\2\2\2\u0154\u0155\7+\2\2\u0155"+ - "\20\3\2\2\2\u0156\u0157\7}\2\2\u0157\u0158\b\t\3\2\u0158\22\3\2\2\2\u0159"+ - "\u015a\7\177\2\2\u015a\u015b\b\n\4\2\u015b\24\3\2\2\2\u015c\u015d\7=\2"+ - "\2\u015d\26\3\2\2\2\u015e\u015f\7.\2\2\u015f\30\3\2\2\2\u0160\u0161\7"+ - "?\2\2\u0161\32\3\2\2\2\u0162\u0163\7A\2\2\u0163\34\3\2\2\2\u0164\u0165"+ - "\7<\2\2\u0165\36\3\2\2\2\u0166\u0167\7\60\2\2\u0167\u0168\7\60\2\2\u0168"+ - "\u0169\7\60\2\2\u0169 \3\2\2\2\u016a\u016b\7\60\2\2\u016b\"\3\2\2\2\u016c"+ - "\u016d\7-\2\2\u016d\u016e\7-\2\2\u016e$\3\2\2\2\u016f\u0170\7/\2\2\u0170"+ - "\u0171\7/\2\2\u0171&\3\2\2\2\u0172\u0173\7-\2\2\u0173(\3\2\2\2\u0174\u0175"+ - "\7/\2\2\u0175*\3\2\2\2\u0176\u0177\7\u0080\2\2\u0177,\3\2\2\2\u0178\u0179"+ - "\7#\2\2\u0179.\3\2\2\2\u017a\u017b\7,\2\2\u017b\60\3\2\2\2\u017c\u017d"+ - "\7\61\2\2\u017d\62\3\2\2\2\u017e\u017f\7\'\2\2\u017f\64\3\2\2\2\u0180"+ - "\u0181\7@\2\2\u0181\u0182\7@\2\2\u0182\66\3\2\2\2\u0183\u0184\7>\2\2\u0184"+ - "\u0185\7>\2\2\u01858\3\2\2\2\u0186\u0187\7@\2\2\u0187\u0188\7@\2\2\u0188"+ - "\u0189\7@\2\2\u0189:\3\2\2\2\u018a\u018b\7>\2\2\u018b<\3\2\2\2\u018c\u018d"+ - "\7@\2\2\u018d>\3\2\2\2\u018e\u018f\7>\2\2\u018f\u0190\7?\2\2\u0190@\3"+ - "\2\2\2\u0191\u0192\7@\2\2\u0192\u0193\7?\2\2\u0193B\3\2\2\2\u0194\u0195"+ - "\7?\2\2\u0195\u0196\7?\2\2\u0196D\3\2\2\2\u0197\u0198\7#\2\2\u0198\u0199"+ - "\7?\2\2\u0199F\3\2\2\2\u019a\u019b\7?\2\2\u019b\u019c\7?\2\2\u019c\u019d"+ - "\7?\2\2\u019dH\3\2\2\2\u019e\u019f\7#\2\2\u019f\u01a0\7?\2\2\u01a0\u01a1"+ - "\7?\2\2\u01a1J\3\2\2\2\u01a2\u01a3\7(\2\2\u01a3L\3\2\2\2\u01a4\u01a5\7"+ - "`\2\2\u01a5N\3\2\2\2\u01a6\u01a7\7~\2\2\u01a7P\3\2\2\2\u01a8\u01a9\7("+ - "\2\2\u01a9\u01aa\7(\2\2\u01aaR\3\2\2\2\u01ab\u01ac\7~\2\2\u01ac\u01ad"+ - "\7~\2\2\u01adT\3\2\2\2\u01ae\u01af\7,\2\2\u01af\u01b0\7?\2\2\u01b0V\3"+ - "\2\2\2\u01b1\u01b2\7\61\2\2\u01b2\u01b3\7?\2\2\u01b3X\3\2\2\2\u01b4\u01b5"+ - "\7\'\2\2\u01b5\u01b6\7?\2\2\u01b6Z\3\2\2\2\u01b7\u01b8\7-\2\2\u01b8\u01b9"+ - "\7?\2\2\u01b9\\\3\2\2\2\u01ba\u01bb\7/\2\2\u01bb\u01bc\7?\2\2\u01bc^\3"+ - "\2\2\2\u01bd\u01be\7>\2\2\u01be\u01bf\7>\2\2\u01bf\u01c0\7?\2\2\u01c0"+ - "`\3\2\2\2\u01c1\u01c2\7@\2\2\u01c2\u01c3\7@\2\2\u01c3\u01c4\7?\2\2\u01c4"+ - "b\3\2\2\2\u01c5\u01c6\7@\2\2\u01c6\u01c7\7@\2\2\u01c7\u01c8\7@\2\2\u01c8"+ - "\u01c9\7?\2\2\u01c9d\3\2\2\2\u01ca\u01cb\7(\2\2\u01cb\u01cc\7?\2\2\u01cc"+ - "f\3\2\2\2\u01cd\u01ce\7`\2\2\u01ce\u01cf\7?\2\2\u01cfh\3\2\2\2\u01d0\u01d1"+ - "\7~\2\2\u01d1\u01d2\7?\2\2\u01d2j\3\2\2\2\u01d3\u01d4\7?\2\2\u01d4\u01d5"+ - "\7@\2\2\u01d5l\3\2\2\2\u01d6\u01d7\7p\2\2\u01d7\u01d8\7w\2\2\u01d8\u01d9"+ - "\7n\2\2\u01d9\u01da\7n\2\2\u01dan\3\2\2\2\u01db\u01dc\7v\2\2\u01dc\u01dd"+ - "\7t\2\2\u01dd\u01de\7w\2\2\u01de\u01e5\7g\2\2\u01df\u01e0\7h\2\2\u01e0"+ - "\u01e1\7c\2\2\u01e1\u01e2\7n\2\2\u01e2\u01e3\7u\2\2\u01e3\u01e5\7g\2\2"+ - "\u01e4\u01db\3\2\2\2\u01e4\u01df\3\2\2\2\u01e5p\3\2\2\2\u01e6\u01e7\5"+ - "\u0111\u0089\2\u01e7\u01eb\7\60\2\2\u01e8\u01ea\t\3\2\2\u01e9\u01e8\3"+ - "\2\2\2\u01ea\u01ed\3\2\2\2\u01eb\u01e9\3\2\2\2\u01eb\u01ec\3\2\2\2\u01ec"+ - "\u01ef\3\2\2\2\u01ed\u01eb\3\2\2\2\u01ee\u01f0\5\u0113\u008a\2\u01ef\u01ee"+ - "\3\2\2\2\u01ef\u01f0\3\2\2\2\u01f0\u01ff\3\2\2\2\u01f1\u01f3\7\60\2\2"+ - "\u01f2\u01f4\t\3\2\2\u01f3\u01f2\3\2\2\2\u01f4\u01f5\3\2\2\2\u01f5\u01f3"+ - "\3\2\2\2\u01f5\u01f6\3\2\2\2\u01f6\u01f8\3\2\2\2\u01f7\u01f9\5\u0113\u008a"+ - "\2\u01f8\u01f7\3\2\2\2\u01f8\u01f9\3\2\2\2\u01f9\u01ff\3\2\2\2\u01fa\u01fc"+ - "\5\u0111\u0089\2\u01fb\u01fd\5\u0113\u008a\2\u01fc\u01fb\3\2\2\2\u01fc"+ - "\u01fd\3\2\2\2\u01fd\u01ff\3\2\2\2\u01fe\u01e6\3\2\2\2\u01fe\u01f1\3\2"+ - "\2\2\u01fe\u01fa\3\2\2\2\u01ffr\3\2\2\2\u0200\u0201\7\62\2\2\u0201\u0203"+ - "\t\4\2\2\u0202\u0204\5\u010f\u0088\2\u0203\u0202\3\2\2\2\u0204\u0205\3"+ - "\2\2\2\u0205\u0203\3\2\2\2\u0205\u0206\3\2\2\2\u0206t\3\2\2\2\u0207\u0209"+ - "\7\62\2\2\u0208\u020a\t\5\2\2\u0209\u0208\3\2\2\2\u020a\u020b\3\2\2\2"+ - "\u020b\u0209\3\2\2\2\u020b\u020c\3\2\2\2\u020c\u020d\3\2\2\2\u020d\u020e"+ - "\6;\3\2\u020ev\3\2\2\2\u020f\u0210\7\62\2\2\u0210\u0212\t\6\2\2\u0211"+ - "\u0213\t\5\2\2\u0212\u0211\3\2\2\2\u0213\u0214\3\2\2\2\u0214\u0212\3\2"+ - "\2\2\u0214\u0215\3\2\2\2\u0215x\3\2\2\2\u0216\u0217\7\62\2\2\u0217\u0219"+ - "\t\7\2\2\u0218\u021a\t\b\2\2\u0219\u0218\3\2\2\2\u021a\u021b\3\2\2\2\u021b"+ - "\u0219\3\2\2\2\u021b\u021c\3\2\2\2\u021cz\3\2\2\2\u021d\u021e\7d\2\2\u021e"+ - "\u021f\7t\2\2\u021f\u0220\7g\2\2\u0220\u0221\7c\2\2\u0221\u0222\7m\2\2"+ - "\u0222|\3\2\2\2\u0223\u0224\7f\2\2\u0224\u0225\7q\2\2\u0225~\3\2\2\2\u0226"+ - "\u0227\7k\2\2\u0227\u0228\7p\2\2\u0228\u0229\7u\2\2\u0229\u022a\7v\2\2"+ - "\u022a\u022b\7c\2\2\u022b\u022c\7p\2\2\u022c\u022d\7e\2\2\u022d\u022e"+ - "\7g\2\2\u022e\u022f\7q\2\2\u022f\u0230\7h\2\2\u0230\u0080\3\2\2\2\u0231"+ - "\u0232\7v\2\2\u0232\u0233\7{\2\2\u0233\u0234\7r\2\2\u0234\u0235\7g\2\2"+ - "\u0235\u0236\7q\2\2\u0236\u0237\7h\2\2\u0237\u0082\3\2\2\2\u0238\u0239"+ - "\7e\2\2\u0239\u023a\7c\2\2\u023a\u023b\7u\2\2\u023b\u023c\7g\2\2\u023c"+ - "\u0084\3\2\2\2\u023d\u023e\7g\2\2\u023e\u023f\7n\2\2\u023f\u0240\7u\2"+ - "\2\u0240\u0241\7g\2\2\u0241\u0086\3\2\2\2\u0242\u0243\7p\2\2\u0243\u0244"+ - "\7g\2\2\u0244\u0245\7y\2\2\u0245\u0088\3\2\2\2\u0246\u0247\7x\2\2\u0247"+ - "\u0248\7c\2\2\u0248\u0249\7t\2\2\u0249\u008a\3\2\2\2\u024a\u024b\7e\2"+ - "\2\u024b\u024c\7c\2\2\u024c\u024d\7v\2\2\u024d\u024e\7e\2\2\u024e\u024f"+ - "\7j\2\2\u024f\u008c\3\2\2\2\u0250\u0251\7h\2\2\u0251\u0252\7k\2\2\u0252"+ - "\u0253\7p\2\2\u0253\u0254\7c\2\2\u0254\u0255\7n\2\2\u0255\u0256\7n\2\2"+ - "\u0256\u0257\7{\2\2\u0257\u008e\3\2\2\2\u0258\u0259\7t\2\2\u0259\u025a"+ - "\7g\2\2\u025a\u025b\7v\2\2\u025b\u025c\7w\2\2\u025c\u025d\7t\2\2\u025d"+ - "\u025e\7p\2\2\u025e\u0090\3\2\2\2\u025f\u0260\7x\2\2\u0260\u0261\7q\2"+ - "\2\u0261\u0262\7k\2\2\u0262\u0263\7f\2\2\u0263\u0092\3\2\2\2\u0264\u0265"+ - "\7e\2\2\u0265\u0266\7q\2\2\u0266\u0267\7p\2\2\u0267\u0268\7v\2\2\u0268"+ - "\u0269\7k\2\2\u0269\u026a\7p\2\2\u026a\u026b\7w\2\2\u026b\u026c\7g\2\2"+ - "\u026c\u0094\3\2\2\2\u026d\u026e\7h\2\2\u026e\u026f\7q\2\2\u026f\u0270"+ - "\7t\2\2\u0270\u0096\3\2\2\2\u0271\u0272\7u\2\2\u0272\u0273\7y\2\2\u0273"+ - "\u0274\7k\2\2\u0274\u0275\7v\2\2\u0275\u0276\7e\2\2\u0276\u0277\7j\2\2"+ - "\u0277\u0098\3\2\2\2\u0278\u0279\7y\2\2\u0279\u027a\7j\2\2\u027a\u027b"+ - "\7k\2\2\u027b\u027c\7n\2\2\u027c\u027d\7g\2\2\u027d\u009a\3\2\2\2\u027e"+ - "\u027f\7f\2\2\u027f\u0280\7g\2\2\u0280\u0281\7d\2\2\u0281\u0282\7w\2\2"+ - "\u0282\u0283\7i\2\2\u0283\u0284\7i\2\2\u0284\u0285\7g\2\2\u0285\u0286"+ - "\7t\2\2\u0286\u009c\3\2\2\2\u0287\u0288\7h\2\2\u0288\u0289\7w\2\2\u0289"+ - "\u028a\7p\2\2\u028a\u028b\7e\2\2\u028b\u028c\7v\2\2\u028c\u028d\7k\2\2"+ - "\u028d\u028e\7q\2\2\u028e\u028f\7p\2\2\u028f\u009e\3\2\2\2\u0290\u0291"+ - "\7v\2\2\u0291\u0292\7j\2\2\u0292\u0293\7k\2\2\u0293\u0294\7u\2\2\u0294"+ - "\u00a0\3\2\2\2\u0295\u0296\7y\2\2\u0296\u0297\7k\2\2\u0297\u0298\7v\2"+ - "\2\u0298\u0299\7j\2\2\u0299\u00a2\3\2\2\2\u029a\u029b\7f\2\2\u029b\u029c"+ - "\7g\2\2\u029c\u029d\7h\2\2\u029d\u029e\7c\2\2\u029e\u029f\7w\2\2\u029f"+ - "\u02a0\7n\2\2\u02a0\u02a1\7v\2\2\u02a1\u00a4\3\2\2\2\u02a2\u02a3\7k\2"+ - "\2\u02a3\u02a4\7h\2\2\u02a4\u00a6\3\2\2\2\u02a5\u02a6\7v\2\2\u02a6\u02a7"+ - "\7j\2\2\u02a7\u02a8\7t\2\2\u02a8\u02a9\7q\2\2\u02a9\u02aa\7y\2\2\u02aa"+ - "\u00a8\3\2\2\2\u02ab\u02ac\7f\2\2\u02ac\u02ad\7g\2\2\u02ad\u02ae\7n\2"+ - "\2\u02ae\u02af\7g\2\2\u02af\u02b0\7v\2\2\u02b0\u02b1\7g\2\2\u02b1\u00aa"+ - "\3\2\2\2\u02b2\u02b3\7k\2\2\u02b3\u02b4\7p\2\2\u02b4\u00ac\3\2\2\2\u02b5"+ - "\u02b6\7v\2\2\u02b6\u02b7\7t\2\2\u02b7\u02b8\7{\2\2\u02b8\u00ae\3\2\2"+ - "\2\u02b9\u02ba\7g\2\2\u02ba\u02bb\7x\2\2\u02bb\u02bc\7g\2\2\u02bc\u02bd"+ - "\7p\2\2\u02bd\u02be\7v\2\2\u02be\u00b0\3\2\2\2\u02bf\u02c0\7B\2\2\u02c0"+ - "\u00b2\3\2\2\2\u02c1\u02c2\7u\2\2\u02c2\u02c3\7j\2\2\u02c3\u02c4\7c\2"+ - "\2\u02c4\u02c5\7t\2\2\u02c5\u02c6\7c\2\2\u02c6\u02c7\7d\2\2\u02c7\u02c8"+ - "\7n\2\2\u02c8\u02c9\7g\2\2\u02c9\u00b4\3\2\2\2\u02ca\u02cb\7C\2\2\u02cb"+ - "\u02cc\7V\2\2\u02cc\u02cd\7a\2\2\u02cd\u02ce\7N\2\2\u02ce\u02cf\7G\2\2"+ - "\u02cf\u02d0\7C\2\2\u02d0\u02d1\7U\2\2\u02d1\u02d2\7V\2\2\u02d2\u02d3"+ - "\7a\2\2\u02d3\u02d4\7Q\2\2\u02d4\u02d5\7P\2\2\u02d5\u02d6\7E\2\2\u02d6"+ - "\u02d7\7G\2\2\u02d7\u00b6\3\2\2\2\u02d8\u02d9\7C\2\2\u02d9\u02da\7V\2"+ - "\2\u02da\u02db\7a\2\2\u02db\u02dc\7O\2\2\u02dc\u02dd\7Q\2\2\u02dd\u02de"+ - "\7U\2\2\u02de\u02df\7V\2\2\u02df\u02e0\7a\2\2\u02e0\u02e1\7Q\2\2\u02e1"+ - "\u02e2\7P\2\2\u02e2\u02e3\7E\2\2\u02e3\u02e4\7G\2\2\u02e4\u00b8\3\2\2"+ - "\2\u02e5\u02e6\7Q\2\2\u02e6\u02e7\7P\2\2\u02e7\u02e8\7N\2\2\u02e8\u02e9"+ - "\7[\2\2\u02e9\u02ea\7a\2\2\u02ea\u02eb\7Q\2\2\u02eb\u02ec\7P\2\2\u02ec"+ - "\u02ed\7E\2\2\u02ed\u02ee\7G\2\2\u02ee\u00ba\3\2\2\2\u02ef\u02f0\7i\2"+ - "\2\u02f0\u02f1\7n\2\2\u02f1\u02f2\7q\2\2\u02f2\u02f3\7d\2\2\u02f3\u02f4"+ - "\7c\2\2\u02f4\u02f5\7n\2\2\u02f5\u00bc\3\2\2\2\u02f6\u02f7\7n\2\2\u02f7"+ - "\u02f8\7q\2\2\u02f8\u02f9\7e\2\2\u02f9\u02fa\7c\2\2\u02fa\u02fb\7n\2\2"+ - "\u02fb\u00be\3\2\2\2\u02fc\u02fd\7x\2\2\u02fd\u02fe\7k\2\2\u02fe\u02ff"+ - "\7g\2\2\u02ff\u0300\7y\2\2\u0300\u00c0\3\2\2\2\u0301\u0302\7e\2\2\u0302"+ - "\u0303\7n\2\2\u0303\u0304\7c\2\2\u0304\u0305\7u\2\2\u0305\u0306\7u\2\2"+ - "\u0306\u00c2\3\2\2\2\u0307\u0308\7g\2\2\u0308\u0309\7p\2\2\u0309\u030a"+ - "\7w\2\2\u030a\u030b\7o\2\2\u030b\u00c4\3\2\2\2\u030c\u030d\7g\2\2\u030d"+ - "\u030e\7z\2\2\u030e\u030f\7v\2\2\u030f\u0310\7g\2\2\u0310\u0311\7p\2\2"+ - "\u0311\u0312\7f\2\2\u0312\u0313\7u\2\2\u0313\u00c6\3\2\2\2\u0314\u0315"+ - "\7u\2\2\u0315\u0316\7w\2\2\u0316\u0317\7r\2\2\u0317\u0318\7g\2\2\u0318"+ - "\u0319\7t\2\2\u0319\u00c8\3\2\2\2\u031a\u031b\7e\2\2\u031b\u031c\7q\2"+ - "\2\u031c\u031d\7p\2\2\u031d\u031e\7u\2\2\u031e\u031f\7v\2\2\u031f\u00ca"+ - "\3\2\2\2\u0320\u0321\7g\2\2\u0321\u0322\7z\2\2\u0322\u0323\7r\2\2\u0323"+ - "\u0324\7q\2\2\u0324\u0325\7t\2\2\u0325\u0326\7v\2\2\u0326\u00cc\3\2\2"+ - "\2\u0327\u0328\7k\2\2\u0328\u0329\7o\2\2\u0329\u032a\7r\2\2\u032a\u032b"+ - "\7q\2\2\u032b\u032c\7t\2\2\u032c\u032d\7v\2\2\u032d\u00ce\3\2\2\2\u032e"+ - "\u032f\7e\2\2\u032f\u0330\7q\2\2\u0330\u0331\7p\2\2\u0331\u0332\7v\2\2"+ - "\u0332\u0333\7t\2\2\u0333\u0334\7c\2\2\u0334\u0335\7e\2\2\u0335\u0336"+ - "\7v\2\2\u0336\u00d0\3\2\2\2\u0337\u0338\7o\2\2\u0338\u0339\7q\2\2\u0339"+ - "\u033a\7f\2\2\u033a\u033b\7w\2\2\u033b\u033c\7n\2\2\u033c\u033d\7g\2\2"+ - "\u033d\u00d2\3\2\2\2\u033e\u033f\7q\2\2\u033f\u0340\7t\2\2\u0340\u0341"+ - "\7c\2\2\u0341\u0342\7e\2\2\u0342\u0343\7n\2\2\u0343\u0344\7g\2\2\u0344"+ - "\u00d4\3\2\2\2\u0345\u0346\7f\2\2\u0346\u0347\7q\2\2\u0347\u0348\7k\2"+ - "\2\u0348\u0349\7r\2\2\u0349\u034a\7o\2\2\u034a\u034b\7q\2\2\u034b\u034c"+ - "\7f\2\2\u034c\u034d\7w\2\2\u034d\u034e\7n\2\2\u034e\u034f\7g\2\2\u034f"+ - "\u00d6\3\2\2\2\u0350\u0351\7k\2\2\u0351\u0352\7o\2\2\u0352\u0353\7r\2"+ - "\2\u0353\u0354\7n\2\2\u0354\u0355\7g\2\2\u0355\u0356\7o\2\2\u0356\u0357"+ - "\7g\2\2\u0357\u0358\7p\2\2\u0358\u0359\7v\2\2\u0359\u035a\7u\2\2\u035a"+ - "\u035b\3\2\2\2\u035b\u035c\6l\4\2\u035c\u00d8\3\2\2\2\u035d\u035e\7n\2"+ - "\2\u035e\u035f\7g\2\2\u035f\u0360\7v\2\2\u0360\u0361\3\2\2\2\u0361\u0362"+ - "\6m\5\2\u0362\u00da\3\2\2\2\u0363\u0364\7r\2\2\u0364\u0365\7t\2\2\u0365"+ - "\u0366\7k\2\2\u0366\u0367\7x\2\2\u0367\u0368\7c\2\2\u0368\u0369\7v\2\2"+ - "\u0369\u036a\7g\2\2\u036a\u036b\3\2\2\2\u036b\u036c\6n\6\2\u036c\u00dc"+ - "\3\2\2\2\u036d\u036e\7r\2\2\u036e\u036f\7w\2\2\u036f\u0370\7d\2\2\u0370"+ - "\u0371\7n\2\2\u0371\u0372\7k\2\2\u0372\u0373\7e\2\2\u0373\u0374\3\2\2"+ - "\2\u0374\u0375\6o\7\2\u0375\u00de\3\2\2\2\u0376\u0377\7k\2\2\u0377\u0378"+ - "\7p\2\2\u0378\u0379\7v\2\2\u0379\u037a\7g\2\2\u037a\u037b\7t\2\2\u037b"+ - "\u037c\7h\2\2\u037c\u037d\7c\2\2\u037d\u037e\7e\2\2\u037e\u037f\7g\2\2"+ - "\u037f\u0380\3\2\2\2\u0380\u0381\6p\b\2\u0381\u00e0\3\2\2\2\u0382\u0383"+ - "\7r\2\2\u0383\u0384\7c\2\2\u0384\u0385\7e\2\2\u0385\u0386\7m\2\2\u0386"+ - "\u0387\7c\2\2\u0387\u0388\7i\2\2\u0388\u0389\7g\2\2\u0389\u038a\3\2\2"+ - "\2\u038a\u038b\6q\t\2\u038b\u00e2\3\2\2\2\u038c\u038d\7r\2\2\u038d\u038e"+ - "\7t\2\2\u038e\u038f\7q\2\2\u038f\u0390\7v\2\2\u0390\u0391\7g\2\2\u0391"+ - "\u0392\7e\2\2\u0392\u0393\7v\2\2\u0393\u0394\7g\2\2\u0394\u0395\7f\2\2"+ - "\u0395\u0396\3\2\2\2\u0396\u0397\6r\n\2\u0397\u00e4\3\2\2\2\u0398\u0399"+ - "\7u\2\2\u0399\u039a\7v\2\2\u039a\u039b\7c\2\2\u039b\u039c\7v\2\2\u039c"+ - "\u039d\7k\2\2\u039d\u039e\7e\2\2\u039e\u039f\3\2\2\2\u039f\u03a0\6s\13"+ - "\2\u03a0\u00e6\3\2\2\2\u03a1\u03a2\7{\2\2\u03a2\u03a3\7k\2\2\u03a3\u03a4"+ - "\7g\2\2\u03a4\u03a5\7n\2\2\u03a5\u03a6\7f\2\2\u03a6\u03a7\3\2\2\2\u03a7"+ - "\u03a8\6t\f\2\u03a8\u00e8\3\2\2\2\u03a9\u03ad\5\u0117\u008c\2\u03aa\u03ac"+ - "\5\u0115\u008b\2\u03ab\u03aa\3\2\2\2\u03ac\u03af\3\2\2\2\u03ad\u03ab\3"+ - "\2\2\2\u03ad\u03ae\3\2\2\2\u03ae\u00ea\3\2\2\2\u03af\u03ad\3\2\2\2\u03b0"+ - "\u03b4\7$\2\2\u03b1\u03b3\5\u00f9}\2\u03b2\u03b1\3\2\2\2\u03b3\u03b6\3"+ - "\2\2\2\u03b4\u03b2\3\2\2\2\u03b4\u03b5\3\2\2\2\u03b5\u03b7\3\2\2\2\u03b6"+ - "\u03b4\3\2\2\2\u03b7\u03c1\7$\2\2\u03b8\u03bc\7)\2\2\u03b9\u03bb\5\u00fb"+ - "~\2\u03ba\u03b9\3\2\2\2\u03bb\u03be\3\2\2\2\u03bc\u03ba\3\2\2\2\u03bc"+ - "\u03bd\3\2\2\2\u03bd\u03bf\3\2\2\2\u03be\u03bc\3\2\2\2\u03bf\u03c1\7)"+ - "\2\2\u03c0\u03b0\3\2\2\2\u03c0\u03b8\3\2\2\2\u03c1\u03c2\3\2\2\2\u03c2"+ - "\u03c3\bv\5\2\u03c3\u00ec\3\2\2\2\u03c4\u03ca\7b\2\2\u03c5\u03c6\7^\2"+ - "\2\u03c6\u03c9\7b\2\2\u03c7\u03c9\n\t\2\2\u03c8\u03c5\3\2\2\2\u03c8\u03c7"+ - "\3\2\2\2\u03c9\u03cc\3\2\2\2\u03ca\u03c8\3\2\2\2\u03ca\u03cb\3\2\2\2\u03cb"+ - "\u03cd\3\2\2\2\u03cc\u03ca\3\2\2\2\u03cd\u03ce\7b\2\2\u03ce\u00ee\3\2"+ - "\2\2\u03cf\u03d1\t\n\2\2\u03d0\u03cf\3\2\2\2\u03d1\u03d2\3\2\2\2\u03d2"+ - "\u03d0\3\2\2\2\u03d2\u03d3\3\2\2\2\u03d3\u03d4\3\2\2\2\u03d4\u03d5\bx"+ - "\2\2\u03d5\u00f0\3\2\2\2\u03d6\u03d7\t\2\2\2\u03d7\u03d8\3\2\2\2\u03d8"+ - "\u03d9\by\2\2\u03d9\u00f2\3\2\2\2\u03da\u03db\7>\2\2\u03db\u03dc\7#\2"+ - "\2\u03dc\u03dd\7/\2\2\u03dd\u03de\7/\2\2\u03de\u03e2\3\2\2\2\u03df\u03e1"+ - "\13\2\2\2\u03e0\u03df\3\2\2\2\u03e1\u03e4\3\2\2\2\u03e2\u03e3\3\2\2\2"+ - "\u03e2\u03e0\3\2\2\2\u03e3\u03e5\3\2\2\2\u03e4\u03e2\3\2\2\2\u03e5\u03e6"+ - "\7/\2\2\u03e6\u03e7\7/\2\2\u03e7\u03e8\7@\2\2\u03e8\u03e9\3\2\2\2\u03e9"+ - "\u03ea\bz\2\2\u03ea\u00f4\3\2\2\2\u03eb\u03ec\7>\2\2\u03ec\u03ed\7#\2"+ - "\2\u03ed\u03ee\7]\2\2\u03ee\u03ef\7E\2\2\u03ef\u03f0\7F\2\2\u03f0\u03f1"+ - "\7C\2\2\u03f1\u03f2\7V\2\2\u03f2\u03f3\7C\2\2\u03f3\u03f4\7]\2\2\u03f4"+ - "\u03f8\3\2\2\2\u03f5\u03f7\13\2\2\2\u03f6\u03f5\3\2\2\2\u03f7\u03fa\3"+ - "\2\2\2\u03f8\u03f9\3\2\2\2\u03f8\u03f6\3\2\2\2\u03f9\u03fb\3\2\2\2\u03fa"+ - "\u03f8\3\2\2\2\u03fb\u03fc\7_\2\2\u03fc\u03fd\7_\2\2\u03fd\u03fe\7@\2"+ - "\2\u03fe\u03ff\3\2\2\2\u03ff\u0400\b{\2\2\u0400\u00f6\3\2\2\2\u0401\u0402"+ - "\13\2\2\2\u0402\u0403\3\2\2\2\u0403\u0404\b|\6\2\u0404\u00f8\3\2\2\2\u0405"+ - "\u040a\n\13\2\2\u0406\u0407\7^\2\2\u0407\u040a\5\u00fd\177\2\u0408\u040a"+ - "\5\u010d\u0087\2\u0409\u0405\3\2\2\2\u0409\u0406\3\2\2\2\u0409\u0408\3"+ - "\2\2\2\u040a\u00fa\3\2\2\2\u040b\u0410\n\f\2\2\u040c\u040d\7^\2\2\u040d"+ - "\u0410\5\u00fd\177\2\u040e\u0410\5\u010d\u0087\2\u040f\u040b\3\2\2\2\u040f"+ - "\u040c\3\2\2\2\u040f\u040e\3\2\2\2\u0410\u00fc\3\2\2\2\u0411\u0417\5\u00ff"+ - "\u0080\2\u0412\u0417\7\62\2\2\u0413\u0417\5\u0101\u0081\2\u0414\u0417"+ - "\5\u0103\u0082\2\u0415\u0417\5\u0105\u0083\2\u0416\u0411\3\2\2\2\u0416"+ - "\u0412\3\2\2\2\u0416\u0413\3\2\2\2\u0416\u0414\3\2\2\2\u0416\u0415\3\2"+ - "\2\2\u0417\u00fe\3\2\2\2\u0418\u041b\5\u0107\u0084\2\u0419\u041b\5\u0109"+ - "\u0085\2\u041a\u0418\3\2\2\2\u041a\u0419\3\2\2\2\u041b\u0100\3\2\2\2\u041c"+ - "\u041d\7z\2\2\u041d\u041e\5\u010f\u0088\2\u041e\u041f\5\u010f\u0088\2"+ - "\u041f\u0102\3\2\2\2\u0420\u0421\7w\2\2\u0421\u0422\5\u010f\u0088\2\u0422"+ - "\u0423\5\u010f\u0088\2\u0423\u0424\5\u010f\u0088\2\u0424\u0425\5\u010f"+ - "\u0088\2\u0425\u0104\3\2\2\2\u0426\u0427\7w\2\2\u0427\u0429\7}\2\2\u0428"+ - "\u042a\5\u010f\u0088\2\u0429\u0428\3\2\2\2\u042a\u042b\3\2\2\2\u042b\u0429"+ - "\3\2\2\2\u042b\u042c\3\2\2\2\u042c\u042d\3\2\2\2\u042d\u042e\7\177\2\2"+ - "\u042e\u0106\3\2\2\2\u042f\u0430\t\r\2\2\u0430\u0108\3\2\2\2\u0431\u0432"+ - "\n\16\2\2\u0432\u010a\3\2\2\2\u0433\u0436\5\u0107\u0084\2\u0434\u0436"+ - "\t\17\2\2\u0435\u0433\3\2\2\2\u0435\u0434\3\2\2\2\u0436\u010c\3\2\2\2"+ - "\u0437\u0438\7^\2\2\u0438\u0439\t\2\2\2\u0439\u010e\3\2\2\2\u043a\u043b"+ - "\t\20\2\2\u043b\u0110\3\2\2\2\u043c\u0445\7\62\2\2\u043d\u0441\t\21\2"+ - "\2\u043e\u0440\t\3\2\2\u043f\u043e\3\2\2\2\u0440\u0443\3\2\2\2\u0441\u043f"+ - "\3\2\2\2\u0441\u0442\3\2\2\2\u0442\u0445\3\2\2\2\u0443\u0441\3\2\2\2\u0444"+ - "\u043c\3\2\2\2\u0444\u043d\3\2\2\2\u0445\u0112\3\2\2\2\u0446\u0448\t\22"+ - "\2\2\u0447\u0449\t\23\2\2\u0448\u0447\3\2\2\2\u0448\u0449\3\2\2\2\u0449"+ - "\u044b\3\2\2\2\u044a\u044c\t\3\2\2\u044b\u044a\3\2\2\2\u044c\u044d\3\2"+ - "\2\2\u044d\u044b\3\2\2\2\u044d\u044e\3\2\2\2\u044e\u0114\3\2\2\2\u044f"+ - "\u0455\5\u0117\u008c\2\u0450\u0455\5\u011b\u008e\2\u0451\u0455\5\u011d"+ - "\u008f\2\u0452\u0455\5\u011f\u0090\2\u0453\u0455\4\u200e\u200f\2\u0454"+ - "\u044f\3\2\2\2\u0454\u0450\3\2\2\2\u0454\u0451\3\2\2\2\u0454\u0452\3\2"+ - "\2\2\u0454\u0453\3\2\2\2\u0455\u0116\3\2\2\2\u0456\u045b\5\u0119\u008d"+ - "\2\u0457\u045b\t\24\2\2\u0458\u0459\7^\2\2\u0459\u045b\5\u0103\u0082\2"+ - "\u045a\u0456\3\2\2\2\u045a\u0457\3\2\2\2\u045a\u0458\3\2\2\2\u045b\u0118"+ - "\3\2\2\2\u045c\u045e\t\25\2\2\u045d\u045c\3\2\2\2\u045e\u011a\3\2\2\2"+ - "\u045f\u0461\t\26\2\2\u0460\u045f\3\2\2\2\u0461\u011c\3\2\2\2\u0462\u0464"+ - "\t\27\2\2\u0463\u0462\3\2\2\2\u0464\u011e\3\2\2\2\u0465\u0467\t\30\2\2"+ - "\u0466\u0465\3\2\2\2\u0467\u0120\3\2\2\2\u0468\u0473\n\31\2\2\u0469\u0473"+ - "\5\u0125\u0093\2\u046a\u046e\7]\2\2\u046b\u046d\5\u0123\u0092\2\u046c"+ - "\u046b\3\2\2\2\u046d\u0470\3\2\2\2\u046e\u046c\3\2\2\2\u046e\u046f\3\2"+ - "\2\2\u046f\u0471\3\2\2\2\u0470\u046e\3\2\2\2\u0471\u0473\7_\2\2\u0472"+ - "\u0468\3\2\2\2\u0472\u0469\3\2\2\2\u0472\u046a\3\2\2\2\u0473\u0122\3\2"+ - "\2\2\u0474\u0477\n\32\2\2\u0475\u0477\5\u0125\u0093\2\u0476\u0474\3\2"+ - "\2\2\u0476\u0475\3\2\2\2\u0477\u0124\3\2\2\2\u0478\u0479\7^\2\2\u0479"+ - "\u047a\n\2\2\2\u047a\u0126\3\2\2\2.\2\u012d\u013b\u0144\u014b\u01e4\u01eb"+ - "\u01ef\u01f5\u01f8\u01fc\u01fe\u0205\u020b\u0214\u021b\u03ad\u03b4\u03bc"+ - "\u03c0\u03c8\u03ca\u03d2\u03e2\u03f8\u0409\u040f\u0416\u041a\u042b\u0435"+ - "\u0441\u0444\u0448\u044d\u0454\u045a\u045d\u0460\u0463\u0466\u046e\u0472"+ - "\u0476\7\2\3\2\3\t\2\3\n\3\3v\4\2\4\2"; - 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 + private void OpenBrace_action(RuleContext _localctx, int actionIndex) { + switch (actionIndex) { + case 0: + ProcessOpenBrace(); + break; + } + } + + private void CloseBrace_action(RuleContext _localctx, int actionIndex) { + switch (actionIndex) { + case 1: + ProcessCloseBrace(); + break; + } + } + + private void StringLiteral_action(RuleContext _localctx, int actionIndex) { + switch (actionIndex) { + case 2: + ProcessStringLiteral(); + break; + } + } + + @Override + public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) { + switch (ruleIndex) { + case 2: + return RegularExpressionLiteral_sempred((RuleContext) _localctx, predIndex); + case 57: + return OctalIntegerLiteral_sempred((RuleContext) _localctx, predIndex); + case 106: + return Implements_sempred((RuleContext) _localctx, predIndex); + case 107: + return Let_sempred((RuleContext) _localctx, predIndex); + case 108: + return Private_sempred((RuleContext) _localctx, predIndex); + case 109: + return Public_sempred((RuleContext) _localctx, predIndex); + case 110: + return Interface_sempred((RuleContext) _localctx, predIndex); + case 111: + return Package_sempred((RuleContext) _localctx, predIndex); + case 112: + return Protected_sempred((RuleContext) _localctx, predIndex); + case 113: + return Static_sempred((RuleContext) _localctx, predIndex); + case 114: + return Yield_sempred((RuleContext) _localctx, predIndex); + } + return true; + } + + private boolean RegularExpressionLiteral_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 0: + return IsRegexPossible(); + } + return true; + } + + private boolean OctalIntegerLiteral_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 1: + return !IsStrictMode(); + } + return true; + } + + private boolean Implements_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 2: + return IsStrictMode(); + } + return true; + } + + private boolean Let_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 3: + return IsStrictMode(); + } + return true; + } + + private boolean Private_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 4: + return IsStrictMode(); + } + return true; + } + + private boolean Public_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 5: + return IsStrictMode(); + } + return true; + } + + private boolean Interface_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 6: + return IsStrictMode(); + } + return true; + } + + private boolean Package_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 7: + return IsStrictMode(); + } + return true; + } + + private boolean Protected_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 8: + return IsStrictMode(); + } + return true; + } + + private boolean Static_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 9: + return IsStrictMode(); + } + return true; + } + + private boolean Yield_sempred(RuleContext _localctx, int predIndex) { + switch (predIndex) { + case 10: + return IsStrictMode(); + } + return true; + } + + public static final String _serializedATN = + "\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2}\u047b\b\1\4\2\t" + + "\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13" + + "\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22" + + "\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31" + + "\4\32\t\32\4\33\t\33\4\34\t\34\4\35\t\35\4\36\t\36\4\37\t\37\4 \t \4!" + + "\t!\4\"\t\"\4#\t#\4$\t$\4%\t%\4&\t&\4\'\t\'\4(\t(\4)\t)\4*\t*\4+\t+\4" + + ",\t,\4-\t-\4.\t.\4/\t/\4\60\t\60\4\61\t\61\4\62\t\62\4\63\t\63\4\64\t" + + "\64\4\65\t\65\4\66\t\66\4\67\t\67\48\t8\49\t9\4:\t:\4;\t;\4<\t<\4=\t=" + + "\4>\t>\4?\t?\4@\t@\4A\tA\4B\tB\4C\tC\4D\tD\4E\tE\4F\tF\4G\tG\4H\tH\4I" + + "\tI\4J\tJ\4K\tK\4L\tL\4M\tM\4N\tN\4O\tO\4P\tP\4Q\tQ\4R\tR\4S\tS\4T\tT" + + "\4U\tU\4V\tV\4W\tW\4X\tX\4Y\tY\4Z\tZ\4[\t[\4\\\t\\\4]\t]\4^\t^\4_\t_\4" + + "`\t`\4a\ta\4b\tb\4c\tc\4d\td\4e\te\4f\tf\4g\tg\4h\th\4i\ti\4j\tj\4k\t" + + "k\4l\tl\4m\tm\4n\tn\4o\to\4p\tp\4q\tq\4r\tr\4s\ts\4t\tt\4u\tu\4v\tv\4" + + "w\tw\4x\tx\4y\ty\4z\tz\4{\t{\4|\t|\4}\t}\4~\t~\4\177\t\177\4\u0080\t\u0080" + + "\4\u0081\t\u0081\4\u0082\t\u0082\4\u0083\t\u0083\4\u0084\t\u0084\4\u0085" + + "\t\u0085\4\u0086\t\u0086\4\u0087\t\u0087\4\u0088\t\u0088\4\u0089\t\u0089" + + "\4\u008a\t\u008a\4\u008b\t\u008b\4\u008c\t\u008c\4\u008d\t\u008d\4\u008e" + + "\t\u008e\4\u008f\t\u008f\4\u0090\t\u0090\4\u0091\t\u0091\4\u0092\t\u0092" + + "\4\u0093\t\u0093\3\2\3\2\3\2\3\2\7\2\u012c\n\2\f\2\16\2\u012f\13\2\3\2" + + "\3\2\3\2\3\2\3\2\3\3\3\3\3\3\3\3\7\3\u013a\n\3\f\3\16\3\u013d\13\3\3\3" + + "\3\3\3\4\3\4\6\4\u0143\n\4\r\4\16\4\u0144\3\4\3\4\3\4\7\4\u014a\n\4\f" + + "\4\16\4\u014d\13\4\3\5\3\5\3\6\3\6\3\7\3\7\3\b\3\b\3\t\3\t\3\t\3\n\3\n" + + "\3\n\3\13\3\13\3\f\3\f\3\r\3\r\3\16\3\16\3\17\3\17\3\20\3\20\3\20\3\20" + + "\3\21\3\21\3\22\3\22\3\22\3\23\3\23\3\23\3\24\3\24\3\25\3\25\3\26\3\26" + + "\3\27\3\27\3\30\3\30\3\31\3\31\3\32\3\32\3\33\3\33\3\33\3\34\3\34\3\34" + + "\3\35\3\35\3\35\3\35\3\36\3\36\3\37\3\37\3 \3 \3 \3!\3!\3!\3\"\3\"\3\"" + + "\3#\3#\3#\3$\3$\3$\3$\3%\3%\3%\3%\3&\3&\3\'\3\'\3(\3(\3)\3)\3)\3*\3*\3" + + "*\3+\3+\3+\3,\3,\3,\3-\3-\3-\3.\3.\3.\3/\3/\3/\3\60\3\60\3\60\3\60\3\61" + + "\3\61\3\61\3\61\3\62\3\62\3\62\3\62\3\62\3\63\3\63\3\63\3\64\3\64\3\64" + + "\3\65\3\65\3\65\3\66\3\66\3\66\3\67\3\67\3\67\3\67\3\67\38\38\38\38\3" + + "8\38\38\38\38\58\u01e5\n8\39\39\39\79\u01ea\n9\f9\169\u01ed\139\39\59" + + "\u01f0\n9\39\39\69\u01f4\n9\r9\169\u01f5\39\59\u01f9\n9\39\39\59\u01fd" + + "\n9\59\u01ff\n9\3:\3:\3:\6:\u0204\n:\r:\16:\u0205\3;\3;\6;\u020a\n;\r" + + ";\16;\u020b\3;\3;\3<\3<\3<\6<\u0213\n<\r<\16<\u0214\3=\3=\3=\6=\u021a" + + "\n=\r=\16=\u021b\3>\3>\3>\3>\3>\3>\3?\3?\3?\3@\3@\3@\3@\3@\3@\3@\3@\3" + + "@\3@\3@\3A\3A\3A\3A\3A\3A\3A\3B\3B\3B\3B\3B\3C\3C\3C\3C\3C\3D\3D\3D\3" + + "D\3E\3E\3E\3E\3F\3F\3F\3F\3F\3F\3G\3G\3G\3G\3G\3G\3G\3G\3H\3H\3H\3H\3" + + "H\3H\3H\3I\3I\3I\3I\3I\3J\3J\3J\3J\3J\3J\3J\3J\3J\3K\3K\3K\3K\3L\3L\3" + + "L\3L\3L\3L\3L\3M\3M\3M\3M\3M\3M\3N\3N\3N\3N\3N\3N\3N\3N\3N\3O\3O\3O\3" + + "O\3O\3O\3O\3O\3O\3P\3P\3P\3P\3P\3Q\3Q\3Q\3Q\3Q\3R\3R\3R\3R\3R\3R\3R\3" + + "R\3S\3S\3S\3T\3T\3T\3T\3T\3T\3U\3U\3U\3U\3U\3U\3U\3V\3V\3V\3W\3W\3W\3" + + "W\3X\3X\3X\3X\3X\3X\3Y\3Y\3Z\3Z\3Z\3Z\3Z\3Z\3Z\3Z\3Z\3[\3[\3[\3[\3[\3" + + "[\3[\3[\3[\3[\3[\3[\3[\3[\3\\\3\\\3\\\3\\\3\\\3\\\3\\\3\\\3\\\3\\\3\\" + + "\3\\\3\\\3]\3]\3]\3]\3]\3]\3]\3]\3]\3]\3^\3^\3^\3^\3^\3^\3^\3_\3_\3_\3" + + "_\3_\3_\3`\3`\3`\3`\3`\3a\3a\3a\3a\3a\3a\3b\3b\3b\3b\3b\3c\3c\3c\3c\3" + + "c\3c\3c\3c\3d\3d\3d\3d\3d\3d\3e\3e\3e\3e\3e\3e\3f\3f\3f\3f\3f\3f\3f\3" + + "g\3g\3g\3g\3g\3g\3g\3h\3h\3h\3h\3h\3h\3h\3h\3h\3i\3i\3i\3i\3i\3i\3i\3" + + "j\3j\3j\3j\3j\3j\3j\3k\3k\3k\3k\3k\3k\3k\3k\3k\3k\3k\3l\3l\3l\3l\3l\3" + + "l\3l\3l\3l\3l\3l\3l\3l\3m\3m\3m\3m\3m\3m\3n\3n\3n\3n\3n\3n\3n\3n\3n\3" + + "n\3o\3o\3o\3o\3o\3o\3o\3o\3o\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3q\3" + + "q\3q\3q\3q\3q\3q\3q\3q\3q\3r\3r\3r\3r\3r\3r\3r\3r\3r\3r\3r\3r\3s\3s\3" + + "s\3s\3s\3s\3s\3s\3s\3t\3t\3t\3t\3t\3t\3t\3t\3u\3u\7u\u03ac\nu\fu\16u\u03af" + + "\13u\3v\3v\7v\u03b3\nv\fv\16v\u03b6\13v\3v\3v\3v\7v\u03bb\nv\fv\16v\u03be" + + "\13v\3v\5v\u03c1\nv\3v\3v\3w\3w\3w\3w\7w\u03c9\nw\fw\16w\u03cc\13w\3w" + + "\3w\3x\6x\u03d1\nx\rx\16x\u03d2\3x\3x\3y\3y\3y\3y\3z\3z\3z\3z\3z\3z\7" + + "z\u03e1\nz\fz\16z\u03e4\13z\3z\3z\3z\3z\3z\3z\3{\3{\3{\3{\3{\3{\3{\3{" + + "\3{\3{\3{\7{\u03f7\n{\f{\16{\u03fa\13{\3{\3{\3{\3{\3{\3{\3|\3|\3|\3|\3" + + "}\3}\3}\3}\5}\u040a\n}\3~\3~\3~\3~\5~\u0410\n~\3\177\3\177\3\177\3\177" + + "\3\177\5\177\u0417\n\177\3\u0080\3\u0080\5\u0080\u041b\n\u0080\3\u0081" + + "\3\u0081\3\u0081\3\u0081\3\u0082\3\u0082\3\u0082\3\u0082\3\u0082\3\u0082" + + "\3\u0083\3\u0083\3\u0083\6\u0083\u042a\n\u0083\r\u0083\16\u0083\u042b" + + "\3\u0083\3\u0083\3\u0084\3\u0084\3\u0085\3\u0085\3\u0086\3\u0086\5\u0086" + + "\u0436\n\u0086\3\u0087\3\u0087\3\u0087\3\u0088\3\u0088\3\u0089\3\u0089" + + "\3\u0089\7\u0089\u0440\n\u0089\f\u0089\16\u0089\u0443\13\u0089\5\u0089" + + "\u0445\n\u0089\3\u008a\3\u008a\5\u008a\u0449\n\u008a\3\u008a\6\u008a\u044c" + + "\n\u008a\r\u008a\16\u008a\u044d\3\u008b\3\u008b\3\u008b\3\u008b\3\u008b" + + "\5\u008b\u0455\n\u008b\3\u008c\3\u008c\3\u008c\3\u008c\5\u008c\u045b\n" + + "\u008c\3\u008d\5\u008d\u045e\n\u008d\3\u008e\5\u008e\u0461\n\u008e\3\u008f" + + "\5\u008f\u0464\n\u008f\3\u0090\5\u0090\u0467\n\u0090\3\u0091\3\u0091\3" + + "\u0091\3\u0091\7\u0091\u046d\n\u0091\f\u0091\16\u0091\u0470\13\u0091\3" + + "\u0091\5\u0091\u0473\n\u0091\3\u0092\3\u0092\5\u0092\u0477\n\u0092\3\u0093" + + "\3\u0093\3\u0093\5\u012d\u03e2\u03f8\2\u0094\3\3\5\4\7\5\t\6\13\7\r\b" + + "\17\t\21\n\23\13\25\f\27\r\31\16\33\17\35\20\37\21!\22#\23%\24\'\25)\26" + + "+\27-\30/\31\61\32\63\33\65\34\67\359\36;\37= ?!A\"C#E$G%I&K\'M(O)Q*S" + + "+U,W-Y.[/]\60_\61a\62c\63e\64g\65i\66k\67m8o9q:s;u{?}@\177A\u0081" + + "B\u0083C\u0085D\u0087E\u0089F\u008bG\u008dH\u008fI\u0091J\u0093K\u0095" + + "L\u0097M\u0099N\u009bO\u009dP\u009fQ\u00a1R\u00a3S\u00a5T\u00a7U\u00a9" + + "V\u00abW\u00adX\u00afY\u00b1Z\u00b3[\u00b5\\\u00b7]\u00b9^\u00bb_\u00bd" + + "`\u00bfa\u00c1b\u00c3c\u00c5d\u00c7e\u00c9f\u00cbg\u00cdh\u00cfi\u00d1" + + "j\u00d3k\u00d5l\u00d7m\u00d9n\u00dbo\u00ddp\u00dfq\u00e1r\u00e3s\u00e5" + + "t\u00e7u\u00e9v\u00ebw\u00edx\u00efy\u00f1z\u00f3{\u00f5|\u00f7}\u00f9" + + "\2\u00fb\2\u00fd\2\u00ff\2\u0101\2\u0103\2\u0105\2\u0107\2\u0109\2\u010b" + + "\2\u010d\2\u010f\2\u0111\2\u0113\2\u0115\2\u0117\2\u0119\2\u011b\2\u011d" + + "\2\u011f\2\u0121\2\u0123\2\u0125\2\3\2\33\5\2\f\f\17\17\u202a\u202b\3" + + "\2\62;\4\2ZZzz\3\2\629\4\2QQqq\4\2DDdd\3\2\62\63\3\2bb\6\2\13\13\r\16" + + "\"\"\u00a2\u00a2\6\2\f\f\17\17$$^^\6\2\f\f\17\17))^^\13\2$$))^^ddhhpp" + + "ttvvxx\16\2\f\f\17\17$$))\62;^^ddhhppttvxzz\5\2\62;wwzz\5\2\62;CHch\3" + + "\2\63;\4\2GGgg\4\2--//\4\2&&aa\u0104\2C\\c|\u00ac\u00ac\u00b7\u00b7\u00bc" + + "\u00bc\u00c2\u00d8\u00da\u00f8\u00fa\u0221\u0224\u0235\u0252\u02af\u02b2" + + "\u02ba\u02bd\u02c3\u02d2\u02d3\u02e2\u02e6\u02f0\u02f0\u037c\u037c\u0388" + + "\u0388\u038a\u038c\u038e\u038e\u0390\u03a3\u03a5\u03d0\u03d2\u03d9\u03dc" + + "\u03f5\u0402\u0483\u048e\u04c6\u04c9\u04ca\u04cd\u04ce\u04d2\u04f7\u04fa" + + "\u04fb\u0533\u0558\u055b\u055b\u0563\u0589\u05d2\u05ec\u05f2\u05f4\u0623" + + "\u063c\u0642\u064c\u0673\u06d5\u06d7\u06d7\u06e7\u06e8\u06fc\u06fe\u0712" + + "\u0712\u0714\u072e\u0782\u07a7\u0907\u093b\u093f\u093f\u0952\u0952\u095a" + + "\u0963\u0987\u098e\u0991\u0992\u0995\u09aa\u09ac\u09b2\u09b4\u09b4\u09b8" + + "\u09bb\u09de\u09df\u09e1\u09e3\u09f2\u09f3\u0a07\u0a0c\u0a11\u0a12\u0a15" + + "\u0a2a\u0a2c\u0a32\u0a34\u0a35\u0a37\u0a38\u0a3a\u0a3b\u0a5b\u0a5e\u0a60" + + "\u0a60\u0a74\u0a76\u0a87\u0a8d\u0a8f\u0a8f\u0a91\u0a93\u0a95\u0aaa\u0aac" + + "\u0ab2\u0ab4\u0ab5\u0ab7\u0abb\u0abf\u0abf\u0ad2\u0ad2\u0ae2\u0ae2\u0b07" + + "\u0b0e\u0b11\u0b12\u0b15\u0b2a\u0b2c\u0b32\u0b34\u0b35\u0b38\u0b3b\u0b3f" + + "\u0b3f\u0b5e\u0b5f\u0b61\u0b63\u0b87\u0b8c\u0b90\u0b92\u0b94\u0b97\u0b9b" + + "\u0b9c\u0b9e\u0b9e\u0ba0\u0ba1\u0ba5\u0ba6\u0baa\u0bac\u0bb0\u0bb7\u0bb9" + + "\u0bbb\u0c07\u0c0e\u0c10\u0c12\u0c14\u0c2a\u0c2c\u0c35\u0c37\u0c3b\u0c62" + + "\u0c63\u0c87\u0c8e\u0c90\u0c92\u0c94\u0caa\u0cac\u0cb5\u0cb7\u0cbb\u0ce0" + + "\u0ce0\u0ce2\u0ce3\u0d07\u0d0e\u0d10\u0d12\u0d14\u0d2a\u0d2c\u0d3b\u0d62" + + "\u0d63\u0d87\u0d98\u0d9c\u0db3\u0db5\u0dbd\u0dbf\u0dbf\u0dc2\u0dc8\u0e03" + + "\u0e32\u0e34\u0e35\u0e42\u0e48\u0e83\u0e84\u0e86\u0e86\u0e89\u0e8a\u0e8c" + + "\u0e8c\u0e8f\u0e8f\u0e96\u0e99\u0e9b\u0ea1\u0ea3\u0ea5\u0ea7\u0ea7\u0ea9" + + "\u0ea9\u0eac\u0ead\u0eaf\u0eb2\u0eb4\u0eb5\u0ebf\u0ec6\u0ec8\u0ec8\u0ede" + + "\u0edf\u0f02\u0f02\u0f42\u0f6c\u0f8a\u0f8d\u1002\u1023\u1025\u1029\u102b" + + "\u102c\u1052\u1057\u10a2\u10c7\u10d2\u10f8\u1102\u115b\u1161\u11a4\u11aa" + + "\u11fb\u1202\u1208\u120a\u1248\u124a\u124a\u124c\u124f\u1252\u1258\u125a" + + "\u125a\u125c\u125f\u1262\u1288\u128a\u128a\u128c\u128f\u1292\u12b0\u12b2" + + "\u12b2\u12b4\u12b7\u12ba\u12c0\u12c2\u12c2\u12c4\u12c7\u12ca\u12d0\u12d2" + + "\u12d8\u12da\u12f0\u12f2\u1310\u1312\u1312\u1314\u1317\u131a\u1320\u1322" + + "\u1348\u134a\u135c\u13a2\u13f6\u1403\u1678\u1683\u169c\u16a2\u16ec\u1782" + + "\u17b5\u1822\u1879\u1882\u18aa\u1e02\u1e9d\u1ea2\u1efb\u1f02\u1f17\u1f1a" + + "\u1f1f\u1f22\u1f47\u1f4a\u1f4f\u1f52\u1f59\u1f5b\u1f5b\u1f5d\u1f5d\u1f5f" + + "\u1f5f\u1f61\u1f7f\u1f82\u1fb6\u1fb8\u1fbe\u1fc0\u1fc0\u1fc4\u1fc6\u1fc8" + + "\u1fce\u1fd2\u1fd5\u1fd8\u1fdd\u1fe2\u1fee\u1ff4\u1ff6\u1ff8\u1ffe\u2081" + + "\u2081\u2104\u2104\u2109\u2109\u210c\u2115\u2117\u2117\u211b\u211f\u2126" + + "\u2126\u2128\u2128\u212a\u212a\u212c\u212f\u2131\u2133\u2135\u213b\u2162" + + "\u2185\u3007\u3009\u3023\u302b\u3033\u3037\u303a\u303c\u3043\u3096\u309f" + + "\u30a0\u30a3\u30fc\u30fe\u3100\u3107\u312e\u3133\u3190\u31a2\u31b9\u3402" + + "\u3402\u4db7\u4db7\u4e02\u4e02\u9fa7\u9fa7\ua002\ua48e\uac02\uac02\ud7a5" + + "\ud7a5\uf902\ufa2f\ufb02\ufb08\ufb15\ufb19\ufb1f\ufb1f\ufb21\ufb2a\ufb2c" + + "\ufb38\ufb3a\ufb3e\ufb40\ufb40\ufb42\ufb43\ufb45\ufb46\ufb48\ufbb3\ufbd5" + + "\ufd3f\ufd52\ufd91\ufd94\ufdc9\ufdf2\ufdfd\ufe72\ufe74\ufe76\ufe76\ufe78" + + "\ufefe\uff23\uff3c\uff43\uff5c\uff68\uffc0\uffc4\uffc9\uffcc\uffd1\uffd4" + + "\uffd9\uffdc\uffdef\2\u0302\u0350\u0362\u0364\u0485\u0488\u0593\u05a3" + + "\u05a5\u05bb\u05bd\u05bf\u05c1\u05c1\u05c3\u05c4\u05c6\u05c6\u064d\u0657" + + "\u0672\u0672\u06d8\u06de\u06e1\u06e6\u06e9\u06ea\u06ec\u06ef\u0713\u0713" + + "\u0732\u074c\u07a8\u07b2\u0903\u0905\u093e\u093e\u0940\u094f\u0953\u0956" + + "\u0964\u0965\u0983\u0985\u09be\u09c6\u09c9\u09ca\u09cd\u09cf\u09d9\u09d9" + + "\u09e4\u09e5\u0a04\u0a04\u0a3e\u0a3e\u0a40\u0a44\u0a49\u0a4a\u0a4d\u0a4f" + + "\u0a72\u0a73\u0a83\u0a85\u0abe\u0abe\u0ac0\u0ac7\u0ac9\u0acb\u0acd\u0acf" + + "\u0b03\u0b05\u0b3e\u0b3e\u0b40\u0b45\u0b49\u0b4a\u0b4d\u0b4f\u0b58\u0b59" + + "\u0b84\u0b85\u0bc0\u0bc4\u0bc8\u0bca\u0bcc\u0bcf\u0bd9\u0bd9\u0c03\u0c05" + + "\u0c40\u0c46\u0c48\u0c4a\u0c4c\u0c4f\u0c57\u0c58\u0c84\u0c85\u0cc0\u0cc6" + + "\u0cc8\u0cca\u0ccc\u0ccf\u0cd7\u0cd8\u0d04\u0d05\u0d40\u0d45\u0d48\u0d4a" + + "\u0d4c\u0d4f\u0d59\u0d59\u0d84\u0d85\u0dcc\u0dcc\u0dd1\u0dd6\u0dd8\u0dd8" + + "\u0dda\u0de1\u0df4\u0df5\u0e33\u0e33\u0e36\u0e3c\u0e49\u0e50\u0eb3\u0eb3" + + "\u0eb6\u0ebb\u0ebd\u0ebe\u0eca\u0ecf\u0f1a\u0f1b\u0f37\u0f37\u0f39\u0f39" + + "\u0f3b\u0f3b\u0f40\u0f41\u0f73\u0f86\u0f88\u0f89\u0f92\u0f99\u0f9b\u0fbe" + + "\u0fc8\u0fc8\u102e\u1034\u1038\u103b\u1058\u105b\u17b6\u17d5\u18ab\u18ab" + + "\u20d2\u20de\u20e3\u20e3\u302c\u3031\u309b\u309c\ufb20\ufb20\ufe22\ufe25" + + "\26\2\62;\u0662\u066b\u06f2\u06fb\u0968\u0971\u09e8\u09f1\u0a68\u0a71" + + "\u0ae8\u0af1\u0b68\u0b71\u0be9\u0bf1\u0c68\u0c71\u0ce8\u0cf1\u0d68\u0d71" + + "\u0e52\u0e5b\u0ed2\u0edb\u0f22\u0f2b\u1042\u104b\u136b\u1373\u17e2\u17eb" + + "\u1812\u181b\uff12\uff1b\t\2aa\u2041\u2042\u30fd\u30fd\ufe35\ufe36\ufe4f" + + "\ufe51\uff41\uff41\uff67\uff67\7\2\f\f\17\17\61\61]^\u202a\u202b\6\2\f" + + "\f\17\17^_\u202a\u202b\2\u0495\2\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t" + + "\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2" + + "\2\2\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2\2\2" + + "\37\3\2\2\2\2!\3\2\2\2\2#\3\2\2\2\2%\3\2\2\2\2\'\3\2\2\2\2)\3\2\2\2\2" + + "+\3\2\2\2\2-\3\2\2\2\2/\3\2\2\2\2\61\3\2\2\2\2\63\3\2\2\2\2\65\3\2\2\2" + + "\2\67\3\2\2\2\29\3\2\2\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2\2\2" + + "C\3\2\2\2\2E\3\2\2\2\2G\3\2\2\2\2I\3\2\2\2\2K\3\2\2\2\2M\3\2\2\2\2O\3" + + "\2\2\2\2Q\3\2\2\2\2S\3\2\2\2\2U\3\2\2\2\2W\3\2\2\2\2Y\3\2\2\2\2[\3\2\2" + + "\2\2]\3\2\2\2\2_\3\2\2\2\2a\3\2\2\2\2c\3\2\2\2\2e\3\2\2\2\2g\3\2\2\2\2" + + "i\3\2\2\2\2k\3\2\2\2\2m\3\2\2\2\2o\3\2\2\2\2q\3\2\2\2\2s\3\2\2\2\2u\3" + + "\2\2\2\2w\3\2\2\2\2y\3\2\2\2\2{\3\2\2\2\2}\3\2\2\2\2\177\3\2\2\2\2\u0081" + + "\3\2\2\2\2\u0083\3\2\2\2\2\u0085\3\2\2\2\2\u0087\3\2\2\2\2\u0089\3\2\2" + + "\2\2\u008b\3\2\2\2\2\u008d\3\2\2\2\2\u008f\3\2\2\2\2\u0091\3\2\2\2\2\u0093" + + "\3\2\2\2\2\u0095\3\2\2\2\2\u0097\3\2\2\2\2\u0099\3\2\2\2\2\u009b\3\2\2" + + "\2\2\u009d\3\2\2\2\2\u009f\3\2\2\2\2\u00a1\3\2\2\2\2\u00a3\3\2\2\2\2\u00a5" + + "\3\2\2\2\2\u00a7\3\2\2\2\2\u00a9\3\2\2\2\2\u00ab\3\2\2\2\2\u00ad\3\2\2" + + "\2\2\u00af\3\2\2\2\2\u00b1\3\2\2\2\2\u00b3\3\2\2\2\2\u00b5\3\2\2\2\2\u00b7" + + "\3\2\2\2\2\u00b9\3\2\2\2\2\u00bb\3\2\2\2\2\u00bd\3\2\2\2\2\u00bf\3\2\2" + + "\2\2\u00c1\3\2\2\2\2\u00c3\3\2\2\2\2\u00c5\3\2\2\2\2\u00c7\3\2\2\2\2\u00c9" + + "\3\2\2\2\2\u00cb\3\2\2\2\2\u00cd\3\2\2\2\2\u00cf\3\2\2\2\2\u00d1\3\2\2" + + "\2\2\u00d3\3\2\2\2\2\u00d5\3\2\2\2\2\u00d7\3\2\2\2\2\u00d9\3\2\2\2\2\u00db" + + "\3\2\2\2\2\u00dd\3\2\2\2\2\u00df\3\2\2\2\2\u00e1\3\2\2\2\2\u00e3\3\2\2" + + "\2\2\u00e5\3\2\2\2\2\u00e7\3\2\2\2\2\u00e9\3\2\2\2\2\u00eb\3\2\2\2\2\u00ed" + + "\3\2\2\2\2\u00ef\3\2\2\2\2\u00f1\3\2\2\2\2\u00f3\3\2\2\2\2\u00f5\3\2\2" + + "\2\2\u00f7\3\2\2\2\3\u0127\3\2\2\2\5\u0135\3\2\2\2\7\u0140\3\2\2\2\t\u014e" + + "\3\2\2\2\13\u0150\3\2\2\2\r\u0152\3\2\2\2\17\u0154\3\2\2\2\21\u0156\3" + + "\2\2\2\23\u0159\3\2\2\2\25\u015c\3\2\2\2\27\u015e\3\2\2\2\31\u0160\3\2" + + "\2\2\33\u0162\3\2\2\2\35\u0164\3\2\2\2\37\u0166\3\2\2\2!\u016a\3\2\2\2" + + "#\u016c\3\2\2\2%\u016f\3\2\2\2\'\u0172\3\2\2\2)\u0174\3\2\2\2+\u0176\3" + + "\2\2\2-\u0178\3\2\2\2/\u017a\3\2\2\2\61\u017c\3\2\2\2\63\u017e\3\2\2\2" + + "\65\u0180\3\2\2\2\67\u0183\3\2\2\29\u0186\3\2\2\2;\u018a\3\2\2\2=\u018c" + + "\3\2\2\2?\u018e\3\2\2\2A\u0191\3\2\2\2C\u0194\3\2\2\2E\u0197\3\2\2\2G" + + "\u019a\3\2\2\2I\u019e\3\2\2\2K\u01a2\3\2\2\2M\u01a4\3\2\2\2O\u01a6\3\2" + + "\2\2Q\u01a8\3\2\2\2S\u01ab\3\2\2\2U\u01ae\3\2\2\2W\u01b1\3\2\2\2Y\u01b4" + + "\3\2\2\2[\u01b7\3\2\2\2]\u01ba\3\2\2\2_\u01bd\3\2\2\2a\u01c1\3\2\2\2c" + + "\u01c5\3\2\2\2e\u01ca\3\2\2\2g\u01cd\3\2\2\2i\u01d0\3\2\2\2k\u01d3\3\2" + + "\2\2m\u01d6\3\2\2\2o\u01e4\3\2\2\2q\u01fe\3\2\2\2s\u0200\3\2\2\2u\u0207" + + "\3\2\2\2w\u020f\3\2\2\2y\u0216\3\2\2\2{\u021d\3\2\2\2}\u0223\3\2\2\2\177" + + "\u0226\3\2\2\2\u0081\u0231\3\2\2\2\u0083\u0238\3\2\2\2\u0085\u023d\3\2" + + "\2\2\u0087\u0242\3\2\2\2\u0089\u0246\3\2\2\2\u008b\u024a\3\2\2\2\u008d" + + "\u0250\3\2\2\2\u008f\u0258\3\2\2\2\u0091\u025f\3\2\2\2\u0093\u0264\3\2" + + "\2\2\u0095\u026d\3\2\2\2\u0097\u0271\3\2\2\2\u0099\u0278\3\2\2\2\u009b" + + "\u027e\3\2\2\2\u009d\u0287\3\2\2\2\u009f\u0290\3\2\2\2\u00a1\u0295\3\2" + + "\2\2\u00a3\u029a\3\2\2\2\u00a5\u02a2\3\2\2\2\u00a7\u02a5\3\2\2\2\u00a9" + + "\u02ab\3\2\2\2\u00ab\u02b2\3\2\2\2\u00ad\u02b5\3\2\2\2\u00af\u02b9\3\2" + + "\2\2\u00b1\u02bf\3\2\2\2\u00b3\u02c1\3\2\2\2\u00b5\u02ca\3\2\2\2\u00b7" + + "\u02d8\3\2\2\2\u00b9\u02e5\3\2\2\2\u00bb\u02ef\3\2\2\2\u00bd\u02f6\3\2" + + "\2\2\u00bf\u02fc\3\2\2\2\u00c1\u0301\3\2\2\2\u00c3\u0307\3\2\2\2\u00c5" + + "\u030c\3\2\2\2\u00c7\u0314\3\2\2\2\u00c9\u031a\3\2\2\2\u00cb\u0320\3\2" + + "\2\2\u00cd\u0327\3\2\2\2\u00cf\u032e\3\2\2\2\u00d1\u0337\3\2\2\2\u00d3" + + "\u033e\3\2\2\2\u00d5\u0345\3\2\2\2\u00d7\u0350\3\2\2\2\u00d9\u035d\3\2" + + "\2\2\u00db\u0363\3\2\2\2\u00dd\u036d\3\2\2\2\u00df\u0376\3\2\2\2\u00e1" + + "\u0382\3\2\2\2\u00e3\u038c\3\2\2\2\u00e5\u0398\3\2\2\2\u00e7\u03a1\3\2" + + "\2\2\u00e9\u03a9\3\2\2\2\u00eb\u03c0\3\2\2\2\u00ed\u03c4\3\2\2\2\u00ef" + + "\u03d0\3\2\2\2\u00f1\u03d6\3\2\2\2\u00f3\u03da\3\2\2\2\u00f5\u03eb\3\2" + + "\2\2\u00f7\u0401\3\2\2\2\u00f9\u0409\3\2\2\2\u00fb\u040f\3\2\2\2\u00fd" + + "\u0416\3\2\2\2\u00ff\u041a\3\2\2\2\u0101\u041c\3\2\2\2\u0103\u0420\3\2" + + "\2\2\u0105\u0426\3\2\2\2\u0107\u042f\3\2\2\2\u0109\u0431\3\2\2\2\u010b" + + "\u0435\3\2\2\2\u010d\u0437\3\2\2\2\u010f\u043a\3\2\2\2\u0111\u0444\3\2" + + "\2\2\u0113\u0446\3\2\2\2\u0115\u0454\3\2\2\2\u0117\u045a\3\2\2\2\u0119" + + "\u045d\3\2\2\2\u011b\u0460\3\2\2\2\u011d\u0463\3\2\2\2\u011f\u0466\3\2" + + "\2\2\u0121\u0472\3\2\2\2\u0123\u0476\3\2\2\2\u0125\u0478\3\2\2\2\u0127" + + "\u0128\7\61\2\2\u0128\u0129\7,\2\2\u0129\u012d\3\2\2\2\u012a\u012c\13" + + "\2\2\2\u012b\u012a\3\2\2\2\u012c\u012f\3\2\2\2\u012d\u012e\3\2\2\2\u012d" + + "\u012b\3\2\2\2\u012e\u0130\3\2\2\2\u012f\u012d\3\2\2\2\u0130\u0131\7," + + "\2\2\u0131\u0132\7\61\2\2\u0132\u0133\3\2\2\2\u0133\u0134\b\2\2\2\u0134" + + "\4\3\2\2\2\u0135\u0136\7\61\2\2\u0136\u0137\7\61\2\2\u0137\u013b\3\2\2" + + "\2\u0138\u013a\n\2\2\2\u0139\u0138\3\2\2\2\u013a\u013d\3\2\2\2\u013b\u0139" + + "\3\2\2\2\u013b\u013c\3\2\2\2\u013c\u013e\3\2\2\2\u013d\u013b\3\2\2\2\u013e" + + "\u013f\b\3\2\2\u013f\6\3\2\2\2\u0140\u0142\7\61\2\2\u0141\u0143\5\u0121" + + "\u0091\2\u0142\u0141\3\2\2\2\u0143\u0144\3\2\2\2\u0144\u0142\3\2\2\2\u0144" + + "\u0145\3\2\2\2\u0145\u0146\3\2\2\2\u0146\u0147\6\4\2\2\u0147\u014b\7\61" + + "\2\2\u0148\u014a\5\u0115\u008b\2\u0149\u0148\3\2\2\2\u014a\u014d\3\2\2" + + "\2\u014b\u0149\3\2\2\2\u014b\u014c\3\2\2\2\u014c\b\3\2\2\2\u014d\u014b" + + "\3\2\2\2\u014e\u014f\7]\2\2\u014f\n\3\2\2\2\u0150\u0151\7_\2\2\u0151\f" + + "\3\2\2\2\u0152\u0153\7*\2\2\u0153\16\3\2\2\2\u0154\u0155\7+\2\2\u0155" + + "\20\3\2\2\2\u0156\u0157\7}\2\2\u0157\u0158\b\t\3\2\u0158\22\3\2\2\2\u0159" + + "\u015a\7\177\2\2\u015a\u015b\b\n\4\2\u015b\24\3\2\2\2\u015c\u015d\7=\2" + + "\2\u015d\26\3\2\2\2\u015e\u015f\7.\2\2\u015f\30\3\2\2\2\u0160\u0161\7" + + "?\2\2\u0161\32\3\2\2\2\u0162\u0163\7A\2\2\u0163\34\3\2\2\2\u0164\u0165" + + "\7<\2\2\u0165\36\3\2\2\2\u0166\u0167\7\60\2\2\u0167\u0168\7\60\2\2\u0168" + + "\u0169\7\60\2\2\u0169 \3\2\2\2\u016a\u016b\7\60\2\2\u016b\"\3\2\2\2\u016c" + + "\u016d\7-\2\2\u016d\u016e\7-\2\2\u016e$\3\2\2\2\u016f\u0170\7/\2\2\u0170" + + "\u0171\7/\2\2\u0171&\3\2\2\2\u0172\u0173\7-\2\2\u0173(\3\2\2\2\u0174\u0175" + + "\7/\2\2\u0175*\3\2\2\2\u0176\u0177\7\u0080\2\2\u0177,\3\2\2\2\u0178\u0179" + + "\7#\2\2\u0179.\3\2\2\2\u017a\u017b\7,\2\2\u017b\60\3\2\2\2\u017c\u017d" + + "\7\61\2\2\u017d\62\3\2\2\2\u017e\u017f\7\'\2\2\u017f\64\3\2\2\2\u0180" + + "\u0181\7@\2\2\u0181\u0182\7@\2\2\u0182\66\3\2\2\2\u0183\u0184\7>\2\2\u0184" + + "\u0185\7>\2\2\u01858\3\2\2\2\u0186\u0187\7@\2\2\u0187\u0188\7@\2\2\u0188" + + "\u0189\7@\2\2\u0189:\3\2\2\2\u018a\u018b\7>\2\2\u018b<\3\2\2\2\u018c\u018d" + + "\7@\2\2\u018d>\3\2\2\2\u018e\u018f\7>\2\2\u018f\u0190\7?\2\2\u0190@\3" + + "\2\2\2\u0191\u0192\7@\2\2\u0192\u0193\7?\2\2\u0193B\3\2\2\2\u0194\u0195" + + "\7?\2\2\u0195\u0196\7?\2\2\u0196D\3\2\2\2\u0197\u0198\7#\2\2\u0198\u0199" + + "\7?\2\2\u0199F\3\2\2\2\u019a\u019b\7?\2\2\u019b\u019c\7?\2\2\u019c\u019d" + + "\7?\2\2\u019dH\3\2\2\2\u019e\u019f\7#\2\2\u019f\u01a0\7?\2\2\u01a0\u01a1" + + "\7?\2\2\u01a1J\3\2\2\2\u01a2\u01a3\7(\2\2\u01a3L\3\2\2\2\u01a4\u01a5\7" + + "`\2\2\u01a5N\3\2\2\2\u01a6\u01a7\7~\2\2\u01a7P\3\2\2\2\u01a8\u01a9\7(" + + "\2\2\u01a9\u01aa\7(\2\2\u01aaR\3\2\2\2\u01ab\u01ac\7~\2\2\u01ac\u01ad" + + "\7~\2\2\u01adT\3\2\2\2\u01ae\u01af\7,\2\2\u01af\u01b0\7?\2\2\u01b0V\3" + + "\2\2\2\u01b1\u01b2\7\61\2\2\u01b2\u01b3\7?\2\2\u01b3X\3\2\2\2\u01b4\u01b5" + + "\7\'\2\2\u01b5\u01b6\7?\2\2\u01b6Z\3\2\2\2\u01b7\u01b8\7-\2\2\u01b8\u01b9" + + "\7?\2\2\u01b9\\\3\2\2\2\u01ba\u01bb\7/\2\2\u01bb\u01bc\7?\2\2\u01bc^\3" + + "\2\2\2\u01bd\u01be\7>\2\2\u01be\u01bf\7>\2\2\u01bf\u01c0\7?\2\2\u01c0" + + "`\3\2\2\2\u01c1\u01c2\7@\2\2\u01c2\u01c3\7@\2\2\u01c3\u01c4\7?\2\2\u01c4" + + "b\3\2\2\2\u01c5\u01c6\7@\2\2\u01c6\u01c7\7@\2\2\u01c7\u01c8\7@\2\2\u01c8" + + "\u01c9\7?\2\2\u01c9d\3\2\2\2\u01ca\u01cb\7(\2\2\u01cb\u01cc\7?\2\2\u01cc" + + "f\3\2\2\2\u01cd\u01ce\7`\2\2\u01ce\u01cf\7?\2\2\u01cfh\3\2\2\2\u01d0\u01d1" + + "\7~\2\2\u01d1\u01d2\7?\2\2\u01d2j\3\2\2\2\u01d3\u01d4\7?\2\2\u01d4\u01d5" + + "\7@\2\2\u01d5l\3\2\2\2\u01d6\u01d7\7p\2\2\u01d7\u01d8\7w\2\2\u01d8\u01d9" + + "\7n\2\2\u01d9\u01da\7n\2\2\u01dan\3\2\2\2\u01db\u01dc\7v\2\2\u01dc\u01dd" + + "\7t\2\2\u01dd\u01de\7w\2\2\u01de\u01e5\7g\2\2\u01df\u01e0\7h\2\2\u01e0" + + "\u01e1\7c\2\2\u01e1\u01e2\7n\2\2\u01e2\u01e3\7u\2\2\u01e3\u01e5\7g\2\2" + + "\u01e4\u01db\3\2\2\2\u01e4\u01df\3\2\2\2\u01e5p\3\2\2\2\u01e6\u01e7\5" + + "\u0111\u0089\2\u01e7\u01eb\7\60\2\2\u01e8\u01ea\t\3\2\2\u01e9\u01e8\3" + + "\2\2\2\u01ea\u01ed\3\2\2\2\u01eb\u01e9\3\2\2\2\u01eb\u01ec\3\2\2\2\u01ec" + + "\u01ef\3\2\2\2\u01ed\u01eb\3\2\2\2\u01ee\u01f0\5\u0113\u008a\2\u01ef\u01ee" + + "\3\2\2\2\u01ef\u01f0\3\2\2\2\u01f0\u01ff\3\2\2\2\u01f1\u01f3\7\60\2\2" + + "\u01f2\u01f4\t\3\2\2\u01f3\u01f2\3\2\2\2\u01f4\u01f5\3\2\2\2\u01f5\u01f3" + + "\3\2\2\2\u01f5\u01f6\3\2\2\2\u01f6\u01f8\3\2\2\2\u01f7\u01f9\5\u0113\u008a" + + "\2\u01f8\u01f7\3\2\2\2\u01f8\u01f9\3\2\2\2\u01f9\u01ff\3\2\2\2\u01fa\u01fc" + + "\5\u0111\u0089\2\u01fb\u01fd\5\u0113\u008a\2\u01fc\u01fb\3\2\2\2\u01fc" + + "\u01fd\3\2\2\2\u01fd\u01ff\3\2\2\2\u01fe\u01e6\3\2\2\2\u01fe\u01f1\3\2" + + "\2\2\u01fe\u01fa\3\2\2\2\u01ffr\3\2\2\2\u0200\u0201\7\62\2\2\u0201\u0203" + + "\t\4\2\2\u0202\u0204\5\u010f\u0088\2\u0203\u0202\3\2\2\2\u0204\u0205\3" + + "\2\2\2\u0205\u0203\3\2\2\2\u0205\u0206\3\2\2\2\u0206t\3\2\2\2\u0207\u0209" + + "\7\62\2\2\u0208\u020a\t\5\2\2\u0209\u0208\3\2\2\2\u020a\u020b\3\2\2\2" + + "\u020b\u0209\3\2\2\2\u020b\u020c\3\2\2\2\u020c\u020d\3\2\2\2\u020d\u020e" + + "\6;\3\2\u020ev\3\2\2\2\u020f\u0210\7\62\2\2\u0210\u0212\t\6\2\2\u0211" + + "\u0213\t\5\2\2\u0212\u0211\3\2\2\2\u0213\u0214\3\2\2\2\u0214\u0212\3\2" + + "\2\2\u0214\u0215\3\2\2\2\u0215x\3\2\2\2\u0216\u0217\7\62\2\2\u0217\u0219" + + "\t\7\2\2\u0218\u021a\t\b\2\2\u0219\u0218\3\2\2\2\u021a\u021b\3\2\2\2\u021b" + + "\u0219\3\2\2\2\u021b\u021c\3\2\2\2\u021cz\3\2\2\2\u021d\u021e\7d\2\2\u021e" + + "\u021f\7t\2\2\u021f\u0220\7g\2\2\u0220\u0221\7c\2\2\u0221\u0222\7m\2\2" + + "\u0222|\3\2\2\2\u0223\u0224\7f\2\2\u0224\u0225\7q\2\2\u0225~\3\2\2\2\u0226" + + "\u0227\7k\2\2\u0227\u0228\7p\2\2\u0228\u0229\7u\2\2\u0229\u022a\7v\2\2" + + "\u022a\u022b\7c\2\2\u022b\u022c\7p\2\2\u022c\u022d\7e\2\2\u022d\u022e" + + "\7g\2\2\u022e\u022f\7q\2\2\u022f\u0230\7h\2\2\u0230\u0080\3\2\2\2\u0231" + + "\u0232\7v\2\2\u0232\u0233\7{\2\2\u0233\u0234\7r\2\2\u0234\u0235\7g\2\2" + + "\u0235\u0236\7q\2\2\u0236\u0237\7h\2\2\u0237\u0082\3\2\2\2\u0238\u0239" + + "\7e\2\2\u0239\u023a\7c\2\2\u023a\u023b\7u\2\2\u023b\u023c\7g\2\2\u023c" + + "\u0084\3\2\2\2\u023d\u023e\7g\2\2\u023e\u023f\7n\2\2\u023f\u0240\7u\2" + + "\2\u0240\u0241\7g\2\2\u0241\u0086\3\2\2\2\u0242\u0243\7p\2\2\u0243\u0244" + + "\7g\2\2\u0244\u0245\7y\2\2\u0245\u0088\3\2\2\2\u0246\u0247\7x\2\2\u0247" + + "\u0248\7c\2\2\u0248\u0249\7t\2\2\u0249\u008a\3\2\2\2\u024a\u024b\7e\2" + + "\2\u024b\u024c\7c\2\2\u024c\u024d\7v\2\2\u024d\u024e\7e\2\2\u024e\u024f" + + "\7j\2\2\u024f\u008c\3\2\2\2\u0250\u0251\7h\2\2\u0251\u0252\7k\2\2\u0252" + + "\u0253\7p\2\2\u0253\u0254\7c\2\2\u0254\u0255\7n\2\2\u0255\u0256\7n\2\2" + + "\u0256\u0257\7{\2\2\u0257\u008e\3\2\2\2\u0258\u0259\7t\2\2\u0259\u025a" + + "\7g\2\2\u025a\u025b\7v\2\2\u025b\u025c\7w\2\2\u025c\u025d\7t\2\2\u025d" + + "\u025e\7p\2\2\u025e\u0090\3\2\2\2\u025f\u0260\7x\2\2\u0260\u0261\7q\2" + + "\2\u0261\u0262\7k\2\2\u0262\u0263\7f\2\2\u0263\u0092\3\2\2\2\u0264\u0265" + + "\7e\2\2\u0265\u0266\7q\2\2\u0266\u0267\7p\2\2\u0267\u0268\7v\2\2\u0268" + + "\u0269\7k\2\2\u0269\u026a\7p\2\2\u026a\u026b\7w\2\2\u026b\u026c\7g\2\2" + + "\u026c\u0094\3\2\2\2\u026d\u026e\7h\2\2\u026e\u026f\7q\2\2\u026f\u0270" + + "\7t\2\2\u0270\u0096\3\2\2\2\u0271\u0272\7u\2\2\u0272\u0273\7y\2\2\u0273" + + "\u0274\7k\2\2\u0274\u0275\7v\2\2\u0275\u0276\7e\2\2\u0276\u0277\7j\2\2" + + "\u0277\u0098\3\2\2\2\u0278\u0279\7y\2\2\u0279\u027a\7j\2\2\u027a\u027b" + + "\7k\2\2\u027b\u027c\7n\2\2\u027c\u027d\7g\2\2\u027d\u009a\3\2\2\2\u027e" + + "\u027f\7f\2\2\u027f\u0280\7g\2\2\u0280\u0281\7d\2\2\u0281\u0282\7w\2\2" + + "\u0282\u0283\7i\2\2\u0283\u0284\7i\2\2\u0284\u0285\7g\2\2\u0285\u0286" + + "\7t\2\2\u0286\u009c\3\2\2\2\u0287\u0288\7h\2\2\u0288\u0289\7w\2\2\u0289" + + "\u028a\7p\2\2\u028a\u028b\7e\2\2\u028b\u028c\7v\2\2\u028c\u028d\7k\2\2" + + "\u028d\u028e\7q\2\2\u028e\u028f\7p\2\2\u028f\u009e\3\2\2\2\u0290\u0291" + + "\7v\2\2\u0291\u0292\7j\2\2\u0292\u0293\7k\2\2\u0293\u0294\7u\2\2\u0294" + + "\u00a0\3\2\2\2\u0295\u0296\7y\2\2\u0296\u0297\7k\2\2\u0297\u0298\7v\2" + + "\2\u0298\u0299\7j\2\2\u0299\u00a2\3\2\2\2\u029a\u029b\7f\2\2\u029b\u029c" + + "\7g\2\2\u029c\u029d\7h\2\2\u029d\u029e\7c\2\2\u029e\u029f\7w\2\2\u029f" + + "\u02a0\7n\2\2\u02a0\u02a1\7v\2\2\u02a1\u00a4\3\2\2\2\u02a2\u02a3\7k\2" + + "\2\u02a3\u02a4\7h\2\2\u02a4\u00a6\3\2\2\2\u02a5\u02a6\7v\2\2\u02a6\u02a7" + + "\7j\2\2\u02a7\u02a8\7t\2\2\u02a8\u02a9\7q\2\2\u02a9\u02aa\7y\2\2\u02aa" + + "\u00a8\3\2\2\2\u02ab\u02ac\7f\2\2\u02ac\u02ad\7g\2\2\u02ad\u02ae\7n\2" + + "\2\u02ae\u02af\7g\2\2\u02af\u02b0\7v\2\2\u02b0\u02b1\7g\2\2\u02b1\u00aa" + + "\3\2\2\2\u02b2\u02b3\7k\2\2\u02b3\u02b4\7p\2\2\u02b4\u00ac\3\2\2\2\u02b5" + + "\u02b6\7v\2\2\u02b6\u02b7\7t\2\2\u02b7\u02b8\7{\2\2\u02b8\u00ae\3\2\2" + + "\2\u02b9\u02ba\7g\2\2\u02ba\u02bb\7x\2\2\u02bb\u02bc\7g\2\2\u02bc\u02bd" + + "\7p\2\2\u02bd\u02be\7v\2\2\u02be\u00b0\3\2\2\2\u02bf\u02c0\7B\2\2\u02c0" + + "\u00b2\3\2\2\2\u02c1\u02c2\7u\2\2\u02c2\u02c3\7j\2\2\u02c3\u02c4\7c\2" + + "\2\u02c4\u02c5\7t\2\2\u02c5\u02c6\7c\2\2\u02c6\u02c7\7d\2\2\u02c7\u02c8" + + "\7n\2\2\u02c8\u02c9\7g\2\2\u02c9\u00b4\3\2\2\2\u02ca\u02cb\7C\2\2\u02cb" + + "\u02cc\7V\2\2\u02cc\u02cd\7a\2\2\u02cd\u02ce\7N\2\2\u02ce\u02cf\7G\2\2" + + "\u02cf\u02d0\7C\2\2\u02d0\u02d1\7U\2\2\u02d1\u02d2\7V\2\2\u02d2\u02d3" + + "\7a\2\2\u02d3\u02d4\7Q\2\2\u02d4\u02d5\7P\2\2\u02d5\u02d6\7E\2\2\u02d6" + + "\u02d7\7G\2\2\u02d7\u00b6\3\2\2\2\u02d8\u02d9\7C\2\2\u02d9\u02da\7V\2" + + "\2\u02da\u02db\7a\2\2\u02db\u02dc\7O\2\2\u02dc\u02dd\7Q\2\2\u02dd\u02de" + + "\7U\2\2\u02de\u02df\7V\2\2\u02df\u02e0\7a\2\2\u02e0\u02e1\7Q\2\2\u02e1" + + "\u02e2\7P\2\2\u02e2\u02e3\7E\2\2\u02e3\u02e4\7G\2\2\u02e4\u00b8\3\2\2" + + "\2\u02e5\u02e6\7Q\2\2\u02e6\u02e7\7P\2\2\u02e7\u02e8\7N\2\2\u02e8\u02e9" + + "\7[\2\2\u02e9\u02ea\7a\2\2\u02ea\u02eb\7Q\2\2\u02eb\u02ec\7P\2\2\u02ec" + + "\u02ed\7E\2\2\u02ed\u02ee\7G\2\2\u02ee\u00ba\3\2\2\2\u02ef\u02f0\7i\2" + + "\2\u02f0\u02f1\7n\2\2\u02f1\u02f2\7q\2\2\u02f2\u02f3\7d\2\2\u02f3\u02f4" + + "\7c\2\2\u02f4\u02f5\7n\2\2\u02f5\u00bc\3\2\2\2\u02f6\u02f7\7n\2\2\u02f7" + + "\u02f8\7q\2\2\u02f8\u02f9\7e\2\2\u02f9\u02fa\7c\2\2\u02fa\u02fb\7n\2\2" + + "\u02fb\u00be\3\2\2\2\u02fc\u02fd\7x\2\2\u02fd\u02fe\7k\2\2\u02fe\u02ff" + + "\7g\2\2\u02ff\u0300\7y\2\2\u0300\u00c0\3\2\2\2\u0301\u0302\7e\2\2\u0302" + + "\u0303\7n\2\2\u0303\u0304\7c\2\2\u0304\u0305\7u\2\2\u0305\u0306\7u\2\2" + + "\u0306\u00c2\3\2\2\2\u0307\u0308\7g\2\2\u0308\u0309\7p\2\2\u0309\u030a" + + "\7w\2\2\u030a\u030b\7o\2\2\u030b\u00c4\3\2\2\2\u030c\u030d\7g\2\2\u030d" + + "\u030e\7z\2\2\u030e\u030f\7v\2\2\u030f\u0310\7g\2\2\u0310\u0311\7p\2\2" + + "\u0311\u0312\7f\2\2\u0312\u0313\7u\2\2\u0313\u00c6\3\2\2\2\u0314\u0315" + + "\7u\2\2\u0315\u0316\7w\2\2\u0316\u0317\7r\2\2\u0317\u0318\7g\2\2\u0318" + + "\u0319\7t\2\2\u0319\u00c8\3\2\2\2\u031a\u031b\7e\2\2\u031b\u031c\7q\2" + + "\2\u031c\u031d\7p\2\2\u031d\u031e\7u\2\2\u031e\u031f\7v\2\2\u031f\u00ca" + + "\3\2\2\2\u0320\u0321\7g\2\2\u0321\u0322\7z\2\2\u0322\u0323\7r\2\2\u0323" + + "\u0324\7q\2\2\u0324\u0325\7t\2\2\u0325\u0326\7v\2\2\u0326\u00cc\3\2\2" + + "\2\u0327\u0328\7k\2\2\u0328\u0329\7o\2\2\u0329\u032a\7r\2\2\u032a\u032b" + + "\7q\2\2\u032b\u032c\7t\2\2\u032c\u032d\7v\2\2\u032d\u00ce\3\2\2\2\u032e" + + "\u032f\7e\2\2\u032f\u0330\7q\2\2\u0330\u0331\7p\2\2\u0331\u0332\7v\2\2" + + "\u0332\u0333\7t\2\2\u0333\u0334\7c\2\2\u0334\u0335\7e\2\2\u0335\u0336" + + "\7v\2\2\u0336\u00d0\3\2\2\2\u0337\u0338\7o\2\2\u0338\u0339\7q\2\2\u0339" + + "\u033a\7f\2\2\u033a\u033b\7w\2\2\u033b\u033c\7n\2\2\u033c\u033d\7g\2\2" + + "\u033d\u00d2\3\2\2\2\u033e\u033f\7q\2\2\u033f\u0340\7t\2\2\u0340\u0341" + + "\7c\2\2\u0341\u0342\7e\2\2\u0342\u0343\7n\2\2\u0343\u0344\7g\2\2\u0344" + + "\u00d4\3\2\2\2\u0345\u0346\7f\2\2\u0346\u0347\7q\2\2\u0347\u0348\7k\2" + + "\2\u0348\u0349\7r\2\2\u0349\u034a\7o\2\2\u034a\u034b\7q\2\2\u034b\u034c" + + "\7f\2\2\u034c\u034d\7w\2\2\u034d\u034e\7n\2\2\u034e\u034f\7g\2\2\u034f" + + "\u00d6\3\2\2\2\u0350\u0351\7k\2\2\u0351\u0352\7o\2\2\u0352\u0353\7r\2" + + "\2\u0353\u0354\7n\2\2\u0354\u0355\7g\2\2\u0355\u0356\7o\2\2\u0356\u0357" + + "\7g\2\2\u0357\u0358\7p\2\2\u0358\u0359\7v\2\2\u0359\u035a\7u\2\2\u035a" + + "\u035b\3\2\2\2\u035b\u035c\6l\4\2\u035c\u00d8\3\2\2\2\u035d\u035e\7n\2" + + "\2\u035e\u035f\7g\2\2\u035f\u0360\7v\2\2\u0360\u0361\3\2\2\2\u0361\u0362" + + "\6m\5\2\u0362\u00da\3\2\2\2\u0363\u0364\7r\2\2\u0364\u0365\7t\2\2\u0365" + + "\u0366\7k\2\2\u0366\u0367\7x\2\2\u0367\u0368\7c\2\2\u0368\u0369\7v\2\2" + + "\u0369\u036a\7g\2\2\u036a\u036b\3\2\2\2\u036b\u036c\6n\6\2\u036c\u00dc" + + "\3\2\2\2\u036d\u036e\7r\2\2\u036e\u036f\7w\2\2\u036f\u0370\7d\2\2\u0370" + + "\u0371\7n\2\2\u0371\u0372\7k\2\2\u0372\u0373\7e\2\2\u0373\u0374\3\2\2" + + "\2\u0374\u0375\6o\7\2\u0375\u00de\3\2\2\2\u0376\u0377\7k\2\2\u0377\u0378" + + "\7p\2\2\u0378\u0379\7v\2\2\u0379\u037a\7g\2\2\u037a\u037b\7t\2\2\u037b" + + "\u037c\7h\2\2\u037c\u037d\7c\2\2\u037d\u037e\7e\2\2\u037e\u037f\7g\2\2" + + "\u037f\u0380\3\2\2\2\u0380\u0381\6p\b\2\u0381\u00e0\3\2\2\2\u0382\u0383" + + "\7r\2\2\u0383\u0384\7c\2\2\u0384\u0385\7e\2\2\u0385\u0386\7m\2\2\u0386" + + "\u0387\7c\2\2\u0387\u0388\7i\2\2\u0388\u0389\7g\2\2\u0389\u038a\3\2\2" + + "\2\u038a\u038b\6q\t\2\u038b\u00e2\3\2\2\2\u038c\u038d\7r\2\2\u038d\u038e" + + "\7t\2\2\u038e\u038f\7q\2\2\u038f\u0390\7v\2\2\u0390\u0391\7g\2\2\u0391" + + "\u0392\7e\2\2\u0392\u0393\7v\2\2\u0393\u0394\7g\2\2\u0394\u0395\7f\2\2" + + "\u0395\u0396\3\2\2\2\u0396\u0397\6r\n\2\u0397\u00e4\3\2\2\2\u0398\u0399" + + "\7u\2\2\u0399\u039a\7v\2\2\u039a\u039b\7c\2\2\u039b\u039c\7v\2\2\u039c" + + "\u039d\7k\2\2\u039d\u039e\7e\2\2\u039e\u039f\3\2\2\2\u039f\u03a0\6s\13" + + "\2\u03a0\u00e6\3\2\2\2\u03a1\u03a2\7{\2\2\u03a2\u03a3\7k\2\2\u03a3\u03a4" + + "\7g\2\2\u03a4\u03a5\7n\2\2\u03a5\u03a6\7f\2\2\u03a6\u03a7\3\2\2\2\u03a7" + + "\u03a8\6t\f\2\u03a8\u00e8\3\2\2\2\u03a9\u03ad\5\u0117\u008c\2\u03aa\u03ac" + + "\5\u0115\u008b\2\u03ab\u03aa\3\2\2\2\u03ac\u03af\3\2\2\2\u03ad\u03ab\3" + + "\2\2\2\u03ad\u03ae\3\2\2\2\u03ae\u00ea\3\2\2\2\u03af\u03ad\3\2\2\2\u03b0" + + "\u03b4\7$\2\2\u03b1\u03b3\5\u00f9}\2\u03b2\u03b1\3\2\2\2\u03b3\u03b6\3" + + "\2\2\2\u03b4\u03b2\3\2\2\2\u03b4\u03b5\3\2\2\2\u03b5\u03b7\3\2\2\2\u03b6" + + "\u03b4\3\2\2\2\u03b7\u03c1\7$\2\2\u03b8\u03bc\7)\2\2\u03b9\u03bb\5\u00fb" + + "~\2\u03ba\u03b9\3\2\2\2\u03bb\u03be\3\2\2\2\u03bc\u03ba\3\2\2\2\u03bc" + + "\u03bd\3\2\2\2\u03bd\u03bf\3\2\2\2\u03be\u03bc\3\2\2\2\u03bf\u03c1\7)" + + "\2\2\u03c0\u03b0\3\2\2\2\u03c0\u03b8\3\2\2\2\u03c1\u03c2\3\2\2\2\u03c2" + + "\u03c3\bv\5\2\u03c3\u00ec\3\2\2\2\u03c4\u03ca\7b\2\2\u03c5\u03c6\7^\2" + + "\2\u03c6\u03c9\7b\2\2\u03c7\u03c9\n\t\2\2\u03c8\u03c5\3\2\2\2\u03c8\u03c7" + + "\3\2\2\2\u03c9\u03cc\3\2\2\2\u03ca\u03c8\3\2\2\2\u03ca\u03cb\3\2\2\2\u03cb" + + "\u03cd\3\2\2\2\u03cc\u03ca\3\2\2\2\u03cd\u03ce\7b\2\2\u03ce\u00ee\3\2" + + "\2\2\u03cf\u03d1\t\n\2\2\u03d0\u03cf\3\2\2\2\u03d1\u03d2\3\2\2\2\u03d2" + + "\u03d0\3\2\2\2\u03d2\u03d3\3\2\2\2\u03d3\u03d4\3\2\2\2\u03d4\u03d5\bx" + + "\2\2\u03d5\u00f0\3\2\2\2\u03d6\u03d7\t\2\2\2\u03d7\u03d8\3\2\2\2\u03d8" + + "\u03d9\by\2\2\u03d9\u00f2\3\2\2\2\u03da\u03db\7>\2\2\u03db\u03dc\7#\2" + + "\2\u03dc\u03dd\7/\2\2\u03dd\u03de\7/\2\2\u03de\u03e2\3\2\2\2\u03df\u03e1" + + "\13\2\2\2\u03e0\u03df\3\2\2\2\u03e1\u03e4\3\2\2\2\u03e2\u03e3\3\2\2\2" + + "\u03e2\u03e0\3\2\2\2\u03e3\u03e5\3\2\2\2\u03e4\u03e2\3\2\2\2\u03e5\u03e6" + + "\7/\2\2\u03e6\u03e7\7/\2\2\u03e7\u03e8\7@\2\2\u03e8\u03e9\3\2\2\2\u03e9" + + "\u03ea\bz\2\2\u03ea\u00f4\3\2\2\2\u03eb\u03ec\7>\2\2\u03ec\u03ed\7#\2" + + "\2\u03ed\u03ee\7]\2\2\u03ee\u03ef\7E\2\2\u03ef\u03f0\7F\2\2\u03f0\u03f1" + + "\7C\2\2\u03f1\u03f2\7V\2\2\u03f2\u03f3\7C\2\2\u03f3\u03f4\7]\2\2\u03f4" + + "\u03f8\3\2\2\2\u03f5\u03f7\13\2\2\2\u03f6\u03f5\3\2\2\2\u03f7\u03fa\3" + + "\2\2\2\u03f8\u03f9\3\2\2\2\u03f8\u03f6\3\2\2\2\u03f9\u03fb\3\2\2\2\u03fa" + + "\u03f8\3\2\2\2\u03fb\u03fc\7_\2\2\u03fc\u03fd\7_\2\2\u03fd\u03fe\7@\2" + + "\2\u03fe\u03ff\3\2\2\2\u03ff\u0400\b{\2\2\u0400\u00f6\3\2\2\2\u0401\u0402" + + "\13\2\2\2\u0402\u0403\3\2\2\2\u0403\u0404\b|\6\2\u0404\u00f8\3\2\2\2\u0405" + + "\u040a\n\13\2\2\u0406\u0407\7^\2\2\u0407\u040a\5\u00fd\177\2\u0408\u040a" + + "\5\u010d\u0087\2\u0409\u0405\3\2\2\2\u0409\u0406\3\2\2\2\u0409\u0408\3" + + "\2\2\2\u040a\u00fa\3\2\2\2\u040b\u0410\n\f\2\2\u040c\u040d\7^\2\2\u040d" + + "\u0410\5\u00fd\177\2\u040e\u0410\5\u010d\u0087\2\u040f\u040b\3\2\2\2\u040f" + + "\u040c\3\2\2\2\u040f\u040e\3\2\2\2\u0410\u00fc\3\2\2\2\u0411\u0417\5\u00ff" + + "\u0080\2\u0412\u0417\7\62\2\2\u0413\u0417\5\u0101\u0081\2\u0414\u0417" + + "\5\u0103\u0082\2\u0415\u0417\5\u0105\u0083\2\u0416\u0411\3\2\2\2\u0416" + + "\u0412\3\2\2\2\u0416\u0413\3\2\2\2\u0416\u0414\3\2\2\2\u0416\u0415\3\2" + + "\2\2\u0417\u00fe\3\2\2\2\u0418\u041b\5\u0107\u0084\2\u0419\u041b\5\u0109" + + "\u0085\2\u041a\u0418\3\2\2\2\u041a\u0419\3\2\2\2\u041b\u0100\3\2\2\2\u041c" + + "\u041d\7z\2\2\u041d\u041e\5\u010f\u0088\2\u041e\u041f\5\u010f\u0088\2" + + "\u041f\u0102\3\2\2\2\u0420\u0421\7w\2\2\u0421\u0422\5\u010f\u0088\2\u0422" + + "\u0423\5\u010f\u0088\2\u0423\u0424\5\u010f\u0088\2\u0424\u0425\5\u010f" + + "\u0088\2\u0425\u0104\3\2\2\2\u0426\u0427\7w\2\2\u0427\u0429\7}\2\2\u0428" + + "\u042a\5\u010f\u0088\2\u0429\u0428\3\2\2\2\u042a\u042b\3\2\2\2\u042b\u0429" + + "\3\2\2\2\u042b\u042c\3\2\2\2\u042c\u042d\3\2\2\2\u042d\u042e\7\177\2\2" + + "\u042e\u0106\3\2\2\2\u042f\u0430\t\r\2\2\u0430\u0108\3\2\2\2\u0431\u0432" + + "\n\16\2\2\u0432\u010a\3\2\2\2\u0433\u0436\5\u0107\u0084\2\u0434\u0436" + + "\t\17\2\2\u0435\u0433\3\2\2\2\u0435\u0434\3\2\2\2\u0436\u010c\3\2\2\2" + + "\u0437\u0438\7^\2\2\u0438\u0439\t\2\2\2\u0439\u010e\3\2\2\2\u043a\u043b" + + "\t\20\2\2\u043b\u0110\3\2\2\2\u043c\u0445\7\62\2\2\u043d\u0441\t\21\2" + + "\2\u043e\u0440\t\3\2\2\u043f\u043e\3\2\2\2\u0440\u0443\3\2\2\2\u0441\u043f" + + "\3\2\2\2\u0441\u0442\3\2\2\2\u0442\u0445\3\2\2\2\u0443\u0441\3\2\2\2\u0444" + + "\u043c\3\2\2\2\u0444\u043d\3\2\2\2\u0445\u0112\3\2\2\2\u0446\u0448\t\22" + + "\2\2\u0447\u0449\t\23\2\2\u0448\u0447\3\2\2\2\u0448\u0449\3\2\2\2\u0449" + + "\u044b\3\2\2\2\u044a\u044c\t\3\2\2\u044b\u044a\3\2\2\2\u044c\u044d\3\2" + + "\2\2\u044d\u044b\3\2\2\2\u044d\u044e\3\2\2\2\u044e\u0114\3\2\2\2\u044f" + + "\u0455\5\u0117\u008c\2\u0450\u0455\5\u011b\u008e\2\u0451\u0455\5\u011d" + + "\u008f\2\u0452\u0455\5\u011f\u0090\2\u0453\u0455\4\u200e\u200f\2\u0454" + + "\u044f\3\2\2\2\u0454\u0450\3\2\2\2\u0454\u0451\3\2\2\2\u0454\u0452\3\2" + + "\2\2\u0454\u0453\3\2\2\2\u0455\u0116\3\2\2\2\u0456\u045b\5\u0119\u008d" + + "\2\u0457\u045b\t\24\2\2\u0458\u0459\7^\2\2\u0459\u045b\5\u0103\u0082\2" + + "\u045a\u0456\3\2\2\2\u045a\u0457\3\2\2\2\u045a\u0458\3\2\2\2\u045b\u0118" + + "\3\2\2\2\u045c\u045e\t\25\2\2\u045d\u045c\3\2\2\2\u045e\u011a\3\2\2\2" + + "\u045f\u0461\t\26\2\2\u0460\u045f\3\2\2\2\u0461\u011c\3\2\2\2\u0462\u0464" + + "\t\27\2\2\u0463\u0462\3\2\2\2\u0464\u011e\3\2\2\2\u0465\u0467\t\30\2\2" + + "\u0466\u0465\3\2\2\2\u0467\u0120\3\2\2\2\u0468\u0473\n\31\2\2\u0469\u0473" + + "\5\u0125\u0093\2\u046a\u046e\7]\2\2\u046b\u046d\5\u0123\u0092\2\u046c" + + "\u046b\3\2\2\2\u046d\u0470\3\2\2\2\u046e\u046c\3\2\2\2\u046e\u046f\3\2" + + "\2\2\u046f\u0471\3\2\2\2\u0470\u046e\3\2\2\2\u0471\u0473\7_\2\2\u0472" + + "\u0468\3\2\2\2\u0472\u0469\3\2\2\2\u0472\u046a\3\2\2\2\u0473\u0122\3\2" + + "\2\2\u0474\u0477\n\32\2\2\u0475\u0477\5\u0125\u0093\2\u0476\u0474\3\2" + + "\2\2\u0476\u0475\3\2\2\2\u0477\u0124\3\2\2\2\u0478\u0479\7^\2\2\u0479" + + "\u047a\n\2\2\2\u047a\u0126\3\2\2\2.\2\u012d\u013b\u0144\u014b\u01e4\u01eb" + + "\u01ef\u01f5\u01f8\u01fc\u01fe\u0205\u020b\u0214\u021b\u03ad\u03b4\u03bc" + + "\u03c0\u03c8\u03ca\u03d2\u03e2\u03f8\u0409\u040f\u0416\u041a\u042b\u0435" + + "\u0441\u0444\u0448\u044d\u0454\u045a\u045d\u0460\u0463\u0466\u046e\u0472" + + "\u0476\7\2\3\2\3\t\2\3\n\3\3v\4\2\4\2"; + 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); + } + } +} diff --git a/src/main/gen/org/bdware/sc/parser/YJSParser.java b/src/main/gen/org/bdware/sc/parser/YJSParser.java index f769e58..f5e0652 100644 --- a/src/main/gen/org/bdware/sc/parser/YJSParser.java +++ b/src/main/gen/org/bdware/sc/parser/YJSParser.java @@ -1,7462 +1,9701 @@ // Generated from YJSParser.g4 by ANTLR 4.9.2 package org.bdware.sc.parser; + 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"}) public class YJSParser extends JavaScriptBaseParser { - static { RuntimeMetaData.checkVersion("4.9.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, CloseBrace=9, - SemiColon=10, Comma=11, Assign=12, QuestionMark=13, Colon=14, Ellipsis=15, - Dot=16, PlusPlus=17, MinusMinus=18, Plus=19, Minus=20, BitNot=21, Not=22, - Multiply=23, Divide=24, Modulus=25, RightShiftArithmetic=26, LeftShiftArithmetic=27, - RightShiftLogical=28, LessThan=29, MoreThan=30, LessThanEquals=31, GreaterThanEquals=32, - Equals_=33, NotEquals=34, IdentityEquals=35, IdentityNotEquals=36, BitAnd=37, - BitXOr=38, BitOr=39, And=40, Or=41, MultiplyAssign=42, DivideAssign=43, - ModulusAssign=44, PlusAssign=45, MinusAssign=46, LeftShiftArithmeticAssign=47, - RightShiftArithmeticAssign=48, RightShiftLogicalAssign=49, BitAndAssign=50, - BitXorAssign=51, BitOrAssign=52, ARROW=53, NullLiteral=54, BooleanLiteral=55, - DecimalLiteral=56, HexIntegerLiteral=57, OctalIntegerLiteral=58, OctalIntegerLiteral2=59, - BinaryIntegerLiteral=60, Break=61, Do=62, Instanceof=63, Typeof=64, Case=65, - Else=66, New=67, Var=68, Catch=69, Finally=70, Return=71, Void=72, Continue=73, - For=74, Switch=75, While=76, Debugger=77, Function=78, This=79, With=80, - Default=81, If=82, Throw=83, Delete=84, In=85, Try=86, Event=87, AtToken=88, - Sharable=89, AtLeastOnce=90, AtMostOnce=91, OnlyOnce=92, Global=93, Local=94, - View=95, Class=96, Enum=97, Extends=98, Super=99, Const=100, Export=101, - Import=102, Contract=103, Module=104, Oracle=105, DoipModule=106, Implements=107, - Let=108, Private=109, Public=110, Interface=111, Package=112, Protected=113, - Static=114, Yield=115, Identifier=116, StringLiteral=117, TemplateStringLiteral=118, - WhiteSpaces=119, LineTerminator=120, HtmlComment=121, CDataComment=122, - UnexpectedCharacter=123; - public static final int - RULE_program = 0, RULE_contractDeclar = 1, RULE_annotations = 2, RULE_annotation = 3, - RULE_annotationArgs = 4, RULE_annotationLiteral = 5, RULE_clzOrFunctionDeclaration = 6, - RULE_interfaceDeclaration = 7, RULE_eventDeclaration = 8, RULE_eventGlobalOrLocal = 9, - RULE_eventSemantics = 10, RULE_sourceElement = 11, RULE_importStmts = 12, - RULE_importStmt = 13, RULE_exportStmt = 14, RULE_versionName = 15, RULE_statement = 16, - RULE_block = 17, RULE_statementList = 18, RULE_sharableDeclaration = 19, - RULE_sharableStatement = 20, RULE_sharableModifier = 21, RULE_variableStatement = 22, - RULE_variableDeclarationList = 23, RULE_variableDeclaration = 24, RULE_emptyStatement = 25, - RULE_expressionStatement = 26, RULE_ifStatement = 27, RULE_iterationStatement = 28, - RULE_varModifier = 29, RULE_continueStatement = 30, RULE_breakStatement = 31, - RULE_returnStatement = 32, RULE_withStatement = 33, RULE_switchStatement = 34, - RULE_caseBlock = 35, RULE_caseClauses = 36, RULE_caseClause = 37, RULE_defaultClause = 38, - RULE_throwStatement = 39, RULE_tryStatement = 40, RULE_catchProduction = 41, - RULE_finallyProduction = 42, RULE_debuggerStatement = 43, RULE_functionDeclaration = 44, - RULE_classDeclaration = 45, RULE_classTail = 46, RULE_classElement = 47, - RULE_methodDefinition = 48, RULE_formalParameterList = 49, RULE_formalParameterArg = 50, - RULE_lastFormalParameterArg = 51, RULE_functionBody = 52, RULE_sourceElements = 53, - RULE_arrayLiteral = 54, RULE_elementList = 55, RULE_lastElement = 56, - RULE_objectLiteral = 57, RULE_propertyAssignment = 58, RULE_propertyName = 59, - RULE_arguments = 60, RULE_lastArgument = 61, RULE_expressionSequence = 62, - RULE_singleExpression = 63, RULE_arrowFunctionParameters = 64, RULE_arrowFunctionBody = 65, - RULE_assignmentOperator = 66, RULE_literal = 67, RULE_numericLiteral = 68, - RULE_identifierName = 69, RULE_reservedWord = 70, RULE_keyword = 71, RULE_eos = 72; - private static String[] makeRuleNames() { - return new String[] { - "program", "contractDeclar", "annotations", "annotation", "annotationArgs", - "annotationLiteral", "clzOrFunctionDeclaration", "interfaceDeclaration", - "eventDeclaration", "eventGlobalOrLocal", "eventSemantics", "sourceElement", - "importStmts", "importStmt", "exportStmt", "versionName", "statement", - "block", "statementList", "sharableDeclaration", "sharableStatement", - "sharableModifier", "variableStatement", "variableDeclarationList", "variableDeclaration", - "emptyStatement", "expressionStatement", "ifStatement", "iterationStatement", - "varModifier", "continueStatement", "breakStatement", "returnStatement", - "withStatement", "switchStatement", "caseBlock", "caseClauses", "caseClause", - "defaultClause", "throwStatement", "tryStatement", "catchProduction", - "finallyProduction", "debuggerStatement", "functionDeclaration", "classDeclaration", - "classTail", "classElement", "methodDefinition", "formalParameterList", - "formalParameterArg", "lastFormalParameterArg", "functionBody", "sourceElements", - "arrayLiteral", "elementList", "lastElement", "objectLiteral", "propertyAssignment", - "propertyName", "arguments", "lastArgument", "expressionSequence", "singleExpression", - "arrowFunctionParameters", "arrowFunctionBody", "assignmentOperator", - "literal", "numericLiteral", "identifierName", "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, "'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'", "'event'", "'@'", "'sharable'", "'AT_LEAST_ONCE'", "'AT_MOST_ONCE'", - "'ONLY_ONCE'", "'global'", "'local'", "'view'", "'class'", "'enum'", - "'extends'", "'super'", "'const'", "'export'", "'import'", "'contract'", - "'module'", "'oracle'", "'doipmodule'", "'implements'", "'let'", "'private'", - "'public'", "'interface'", "'package'", "'protected'", "'static'", "'yield'" - }; - } - private static final String[] _LITERAL_NAMES = makeLiteralNames(); - private static String[] makeSymbolicNames() { - return new String[] { - null, "MultiLineComment", "SingleLineComment", "RegularExpressionLiteral", - "OpenBracket", "CloseBracket", "OpenParen", "CloseParen", "OpenBrace", - "CloseBrace", "SemiColon", "Comma", "Assign", "QuestionMark", "Colon", - "Ellipsis", "Dot", "PlusPlus", "MinusMinus", "Plus", "Minus", "BitNot", - "Not", "Multiply", "Divide", "Modulus", "RightShiftArithmetic", "LeftShiftArithmetic", - "RightShiftLogical", "LessThan", "MoreThan", "LessThanEquals", "GreaterThanEquals", - "Equals_", "NotEquals", "IdentityEquals", "IdentityNotEquals", "BitAnd", - "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", "DivideAssign", "ModulusAssign", - "PlusAssign", "MinusAssign", "LeftShiftArithmeticAssign", "RightShiftArithmeticAssign", - "RightShiftLogicalAssign", "BitAndAssign", "BitXorAssign", "BitOrAssign", - "ARROW", "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", - "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", - "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", "Event", "AtToken", "Sharable", "AtLeastOnce", "AtMostOnce", - "OnlyOnce", "Global", "Local", "View", "Class", "Enum", "Extends", "Super", - "Const", "Export", "Import", "Contract", "Module", "Oracle", "DoipModule", - "Implements", "Let", "Private", "Public", "Interface", "Package", "Protected", - "Static", "Yield", "Identifier", "StringLiteral", "TemplateStringLiteral", - "WhiteSpaces", "LineTerminator", "HtmlComment", "CDataComment", "UnexpectedCharacter" - }; - } - 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 "YJSParser.g4"; } - - @Override - public String[] getRuleNames() { return ruleNames; } - - @Override - public String getSerializedATN() { return _serializedATN; } - - @Override - public ATN getATN() { return _ATN; } - - public YJSParser(TokenStream input) { - super(input); - _interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); - } - - public static class ProgramContext extends ParserRuleContext { - public ContractDeclarContext contractDeclar() { - return getRuleContext(ContractDeclarContext.class,0); - } - public ImportStmtsContext importStmts() { - return getRuleContext(ImportStmtsContext.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 YJSParserListener ) ((YJSParserListener)listener).enterProgram(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitProgram(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitProgram(this); - else return visitor.visitChildren(this); - } - } - - public final ProgramContext program() throws RecognitionException { - ProgramContext _localctx = new ProgramContext(_ctx, getState()); - enterRule(_localctx, 0, RULE_program); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(147); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Import) { - { - setState(146); - importStmts(); - } - } - - setState(149); - contractDeclar(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ContractDeclarContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode OpenBrace() { return getToken(YJSParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(YJSParser.CloseBrace, 0); } - public TerminalNode Contract() { return getToken(YJSParser.Contract, 0); } - public TerminalNode Module() { return getToken(YJSParser.Module, 0); } - public TerminalNode Oracle() { return getToken(YJSParser.Oracle, 0); } - public TerminalNode DoipModule() { return getToken(YJSParser.DoipModule, 0); } - public AnnotationsContext annotations() { - return getRuleContext(AnnotationsContext.class,0); - } - public List clzOrFunctionDeclaration() { - return getRuleContexts(ClzOrFunctionDeclarationContext.class); - } - public ClzOrFunctionDeclarationContext clzOrFunctionDeclaration(int i) { - return getRuleContext(ClzOrFunctionDeclarationContext.class,i); - } - public ContractDeclarContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_contractDeclar; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterContractDeclar(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitContractDeclar(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitContractDeclar(this); - else return visitor.visitChildren(this); - } - } - - public final ContractDeclarContext contractDeclar() throws RecognitionException { - ContractDeclarContext _localctx = new ContractDeclarContext(_ctx, getState()); - enterRule(_localctx, 2, RULE_contractDeclar); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(152); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==AtToken) { - { - setState(151); - annotations(); - } - } - - setState(154); - _la = _input.LA(1); - if ( !(((((_la - 103)) & ~0x3f) == 0 && ((1L << (_la - 103)) & ((1L << (Contract - 103)) | (1L << (Module - 103)) | (1L << (Oracle - 103)) | (1L << (DoipModule - 103)))) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(155); - match(Identifier); - setState(156); - match(OpenBrace); - setState(158); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(157); - clzOrFunctionDeclaration(); - } - } - setState(160); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( ((((_la - 78)) & ~0x3f) == 0 && ((1L << (_la - 78)) & ((1L << (Function - 78)) | (1L << (Event - 78)) | (1L << (AtToken - 78)) | (1L << (Sharable - 78)) | (1L << (Class - 78)) | (1L << (Export - 78)) | (1L << (Interface - 78)))) != 0) ); - setState(162); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class AnnotationsContext extends ParserRuleContext { - public List annotation() { - return getRuleContexts(AnnotationContext.class); - } - public AnnotationContext annotation(int i) { - return getRuleContext(AnnotationContext.class,i); - } - public AnnotationsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_annotations; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterAnnotations(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitAnnotations(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitAnnotations(this); - else return visitor.visitChildren(this); - } - } - - public final AnnotationsContext annotations() throws RecognitionException { - AnnotationsContext _localctx = new AnnotationsContext(_ctx, getState()); - enterRule(_localctx, 4, RULE_annotations); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(165); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(164); - annotation(); - } - } - setState(167); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==AtToken ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class AnnotationContext extends ParserRuleContext { - public TerminalNode AtToken() { return getToken(YJSParser.AtToken, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public AnnotationArgsContext annotationArgs() { - return getRuleContext(AnnotationArgsContext.class,0); - } - public AnnotationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_annotation; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterAnnotation(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitAnnotation(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitAnnotation(this); - else return visitor.visitChildren(this); - } - } - - public final AnnotationContext annotation() throws RecognitionException { - AnnotationContext _localctx = new AnnotationContext(_ctx, getState()); - enterRule(_localctx, 6, RULE_annotation); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(169); - match(AtToken); - setState(170); - match(Identifier); - setState(171); - match(OpenParen); - setState(173); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OpenBrace) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) || _la==StringLiteral) { - { - setState(172); - annotationArgs(); - } - } - - setState(175); - match(CloseParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class AnnotationArgsContext extends ParserRuleContext { - public List annotationLiteral() { - return getRuleContexts(AnnotationLiteralContext.class); - } - public AnnotationLiteralContext annotationLiteral(int i) { - return getRuleContext(AnnotationLiteralContext.class,i); - } - public List Comma() { return getTokens(YJSParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(YJSParser.Comma, i); - } - public AnnotationArgsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_annotationArgs; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterAnnotationArgs(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitAnnotationArgs(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitAnnotationArgs(this); - else return visitor.visitChildren(this); - } - } - - public final AnnotationArgsContext annotationArgs() throws RecognitionException { - AnnotationArgsContext _localctx = new AnnotationArgsContext(_ctx, getState()); - enterRule(_localctx, 8, RULE_annotationArgs); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(177); - annotationLiteral(); - setState(182); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(178); - match(Comma); - setState(179); - annotationLiteral(); - } - } - setState(184); - _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; - } - - public static class AnnotationLiteralContext extends ParserRuleContext { - public NumericLiteralContext numericLiteral() { - return getRuleContext(NumericLiteralContext.class,0); - } - public TerminalNode StringLiteral() { return getToken(YJSParser.StringLiteral, 0); } - public ObjectLiteralContext objectLiteral() { - return getRuleContext(ObjectLiteralContext.class,0); - } - public AnnotationLiteralContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_annotationLiteral; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterAnnotationLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitAnnotationLiteral(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitAnnotationLiteral(this); - else return visitor.visitChildren(this); - } - } - - public final AnnotationLiteralContext annotationLiteral() throws RecognitionException { - AnnotationLiteralContext _localctx = new AnnotationLiteralContext(_ctx, getState()); - enterRule(_localctx, 10, RULE_annotationLiteral); - try { - setState(188); - _errHandler.sync(this); - switch (_input.LA(1)) { - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - enterOuterAlt(_localctx, 1); - { - setState(185); - numericLiteral(); - } - break; - case StringLiteral: - enterOuterAlt(_localctx, 2); - { - setState(186); - match(StringLiteral); - } - break; - case OpenBrace: - enterOuterAlt(_localctx, 3); - { - setState(187); - 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; - } - - public static class ClzOrFunctionDeclarationContext extends ParserRuleContext { - public ClassDeclarationContext classDeclaration() { - return getRuleContext(ClassDeclarationContext.class,0); - } - public FunctionDeclarationContext functionDeclaration() { - return getRuleContext(FunctionDeclarationContext.class,0); - } - public InterfaceDeclarationContext interfaceDeclaration() { - return getRuleContext(InterfaceDeclarationContext.class,0); - } - public EventDeclarationContext eventDeclaration() { - return getRuleContext(EventDeclarationContext.class,0); - } - public SharableDeclarationContext sharableDeclaration() { - return getRuleContext(SharableDeclarationContext.class,0); - } - public ClzOrFunctionDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_clzOrFunctionDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterClzOrFunctionDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitClzOrFunctionDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitClzOrFunctionDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final ClzOrFunctionDeclarationContext clzOrFunctionDeclaration() throws RecognitionException { - ClzOrFunctionDeclarationContext _localctx = new ClzOrFunctionDeclarationContext(_ctx, getState()); - enterRule(_localctx, 12, RULE_clzOrFunctionDeclaration); - try { - setState(195); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,7,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(190); - classDeclaration(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(191); - functionDeclaration(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(192); - interfaceDeclaration(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(193); - eventDeclaration(); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(194); - sharableDeclaration(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class InterfaceDeclarationContext extends ParserRuleContext { - public TerminalNode Interface() { return getToken(YJSParser.Interface, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public AnnotationsContext annotations() { - return getRuleContext(AnnotationsContext.class,0); - } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,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 YJSParserListener ) ((YJSParserListener)listener).enterInterfaceDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitInterfaceDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitInterfaceDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final InterfaceDeclarationContext interfaceDeclaration() throws RecognitionException { - InterfaceDeclarationContext _localctx = new InterfaceDeclarationContext(_ctx, getState()); - enterRule(_localctx, 14, RULE_interfaceDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(198); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==AtToken) { - { - setState(197); - annotations(); - } - } - - setState(200); - match(Interface); - setState(201); - match(Identifier); - setState(202); - match(OpenParen); - setState(204); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OpenBracket) | (1L << OpenBrace) | (1L << Ellipsis))) != 0) || _la==Identifier) { - { - setState(203); - formalParameterList(); - } - } - - setState(206); - match(CloseParen); - setState(207); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class EventDeclarationContext extends ParserRuleContext { - public TerminalNode Event() { return getToken(YJSParser.Event, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode SemiColon() { return getToken(YJSParser.SemiColon, 0); } - public EventGlobalOrLocalContext eventGlobalOrLocal() { - return getRuleContext(EventGlobalOrLocalContext.class,0); - } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public EventSemanticsContext eventSemantics() { - return getRuleContext(EventSemanticsContext.class,0); - } - public EventDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_eventDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterEventDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitEventDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitEventDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final EventDeclarationContext eventDeclaration() throws RecognitionException { - EventDeclarationContext _localctx = new EventDeclarationContext(_ctx, getState()); - enterRule(_localctx, 16, RULE_eventDeclaration); - int _la; - try { - setState(226); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,13,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(209); - match(Event); - setState(211); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Global || _la==Local) { - { - setState(210); - eventGlobalOrLocal(); - } - } - - setState(213); - match(Identifier); - setState(214); - match(SemiColon); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(215); - match(Event); - setState(217); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Global || _la==Local) { - { - setState(216); - eventGlobalOrLocal(); - } - } - - setState(219); - match(Identifier); - setState(220); - match(OpenParen); - setState(222); - _errHandler.sync(this); - _la = _input.LA(1); - if (((((_la - 90)) & ~0x3f) == 0 && ((1L << (_la - 90)) & ((1L << (AtLeastOnce - 90)) | (1L << (AtMostOnce - 90)) | (1L << (OnlyOnce - 90)))) != 0)) { - { - setState(221); - eventSemantics(); - } - } - - setState(224); - match(CloseParen); - setState(225); - match(SemiColon); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class EventGlobalOrLocalContext extends ParserRuleContext { - public TerminalNode Global() { return getToken(YJSParser.Global, 0); } - public TerminalNode Local() { return getToken(YJSParser.Local, 0); } - public EventGlobalOrLocalContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_eventGlobalOrLocal; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterEventGlobalOrLocal(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitEventGlobalOrLocal(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitEventGlobalOrLocal(this); - else return visitor.visitChildren(this); - } - } - - public final EventGlobalOrLocalContext eventGlobalOrLocal() throws RecognitionException { - EventGlobalOrLocalContext _localctx = new EventGlobalOrLocalContext(_ctx, getState()); - enterRule(_localctx, 18, RULE_eventGlobalOrLocal); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(228); - _la = _input.LA(1); - if ( !(_la==Global || _la==Local) ) { - _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 static class EventSemanticsContext extends ParserRuleContext { - public TerminalNode AtLeastOnce() { return getToken(YJSParser.AtLeastOnce, 0); } - public TerminalNode AtMostOnce() { return getToken(YJSParser.AtMostOnce, 0); } - public TerminalNode OnlyOnce() { return getToken(YJSParser.OnlyOnce, 0); } - public EventSemanticsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_eventSemantics; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterEventSemantics(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitEventSemantics(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitEventSemantics(this); - else return visitor.visitChildren(this); - } - } - - public final EventSemanticsContext eventSemantics() throws RecognitionException { - EventSemanticsContext _localctx = new EventSemanticsContext(_ctx, getState()); - enterRule(_localctx, 20, RULE_eventSemantics); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(230); - _la = _input.LA(1); - if ( !(((((_la - 90)) & ~0x3f) == 0 && ((1L << (_la - 90)) & ((1L << (AtLeastOnce - 90)) | (1L << (AtMostOnce - 90)) | (1L << (OnlyOnce - 90)))) != 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 static class SourceElementContext extends ParserRuleContext { - public StatementContext statement() { - return getRuleContext(StatementContext.class,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 YJSParserListener ) ((YJSParserListener)listener).enterSourceElement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitSourceElement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitSourceElement(this); - else return visitor.visitChildren(this); - } - } - - public final SourceElementContext sourceElement() throws RecognitionException { - SourceElementContext _localctx = new SourceElementContext(_ctx, getState()); - enterRule(_localctx, 22, RULE_sourceElement); - try { - enterOuterAlt(_localctx, 1); - { - setState(232); - statement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ImportStmtsContext extends ParserRuleContext { - public List importStmt() { - return getRuleContexts(ImportStmtContext.class); - } - public ImportStmtContext importStmt(int i) { - return getRuleContext(ImportStmtContext.class,i); - } - public ImportStmtsContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importStmts; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterImportStmts(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitImportStmts(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitImportStmts(this); - else return visitor.visitChildren(this); - } - } - - public final ImportStmtsContext importStmts() throws RecognitionException { - ImportStmtsContext _localctx = new ImportStmtsContext(_ctx, getState()); - enterRule(_localctx, 24, RULE_importStmts); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(235); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(234); - importStmt(); - } - } - setState(237); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==Import ); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ImportStmtContext extends ParserRuleContext { - public TerminalNode Import() { return getToken(YJSParser.Import, 0); } - public TerminalNode StringLiteral() { return getToken(YJSParser.StringLiteral, 0); } - public TerminalNode SemiColon() { return getToken(YJSParser.SemiColon, 0); } - public ImportStmtContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_importStmt; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterImportStmt(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitImportStmt(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitImportStmt(this); - else return visitor.visitChildren(this); - } - } - - public final ImportStmtContext importStmt() throws RecognitionException { - ImportStmtContext _localctx = new ImportStmtContext(_ctx, getState()); - enterRule(_localctx, 26, RULE_importStmt); - try { - enterOuterAlt(_localctx, 1); - { - setState(239); - match(Import); - setState(240); - match(StringLiteral); - setState(241); - match(SemiColon); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ExportStmtContext extends ParserRuleContext { - public TerminalNode Export() { return getToken(YJSParser.Export, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public VersionNameContext versionName() { - return getRuleContext(VersionNameContext.class,0); - } - public TerminalNode SemiColon() { return getToken(YJSParser.SemiColon, 0); } - public ExportStmtContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_exportStmt; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterExportStmt(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitExportStmt(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitExportStmt(this); - else return visitor.visitChildren(this); - } - } - - public final ExportStmtContext exportStmt() throws RecognitionException { - ExportStmtContext _localctx = new ExportStmtContext(_ctx, getState()); - enterRule(_localctx, 28, RULE_exportStmt); - try { - enterOuterAlt(_localctx, 1); - { - setState(243); - match(Export); - setState(244); - match(Identifier); - setState(245); - versionName(); - setState(246); - match(SemiColon); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class VersionNameContext extends ParserRuleContext { - public List DecimalLiteral() { return getTokens(YJSParser.DecimalLiteral); } - public TerminalNode DecimalLiteral(int i) { - return getToken(YJSParser.DecimalLiteral, i); - } - public List Dot() { return getTokens(YJSParser.Dot); } - public TerminalNode Dot(int i) { - return getToken(YJSParser.Dot, i); - } - public VersionNameContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_versionName; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterVersionName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitVersionName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitVersionName(this); - else return visitor.visitChildren(this); - } - } - - public final VersionNameContext versionName() throws RecognitionException { - VersionNameContext _localctx = new VersionNameContext(_ctx, getState()); - enterRule(_localctx, 30, RULE_versionName); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(248); - match(DecimalLiteral); - setState(253); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Dot) { - { - { - setState(249); - match(Dot); - setState(250); - match(DecimalLiteral); - } - } - setState(255); - _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; - } - - public static class StatementContext extends ParserRuleContext { - public BlockContext block() { - return getRuleContext(BlockContext.class,0); - } - public VariableStatementContext variableStatement() { - return getRuleContext(VariableStatementContext.class,0); - } - public EmptyStatementContext emptyStatement() { - return getRuleContext(EmptyStatementContext.class,0); - } - public ExpressionStatementContext expressionStatement() { - return getRuleContext(ExpressionStatementContext.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 SwitchStatementContext switchStatement() { - return getRuleContext(SwitchStatementContext.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 YJSParserListener ) ((YJSParserListener)listener).enterStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitStatement(this); - else return visitor.visitChildren(this); - } - } - - public final StatementContext statement() throws RecognitionException { - StatementContext _localctx = new StatementContext(_ctx, getState()); - enterRule(_localctx, 32, RULE_statement); - try { - setState(266); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,16,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(256); - block(); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(257); - variableStatement(); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(258); - emptyStatement(); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(259); - expressionStatement(); - } - break; - case 5: - enterOuterAlt(_localctx, 5); - { - setState(260); - ifStatement(); - } - break; - case 6: - enterOuterAlt(_localctx, 6); - { - setState(261); - iterationStatement(); - } - break; - case 7: - enterOuterAlt(_localctx, 7); - { - setState(262); - continueStatement(); - } - break; - case 8: - enterOuterAlt(_localctx, 8); - { - setState(263); - breakStatement(); - } - break; - case 9: - enterOuterAlt(_localctx, 9); - { - setState(264); - returnStatement(); - } - break; - case 10: - enterOuterAlt(_localctx, 10); - { - setState(265); - switchStatement(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class BlockContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(YJSParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitBlock(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitBlock(this); - else return visitor.visitChildren(this); - } - } - - public final BlockContext block() throws RecognitionException { - BlockContext _localctx = new BlockContext(_ctx, getState()); - enterRule(_localctx, 34, RULE_block); - try { - enterOuterAlt(_localctx, 1); - { - setState(268); - match(OpenBrace); - setState(270); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,17,_ctx) ) { - case 1: - { - setState(269); - statementList(); - } - break; - } - setState(272); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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 YJSParserListener ) ((YJSParserListener)listener).enterStatementList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitStatementList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitStatementList(this); - else return visitor.visitChildren(this); - } - } - - public final StatementListContext statementList() throws RecognitionException { - StatementListContext _localctx = new StatementListContext(_ctx, getState()); - enterRule(_localctx, 36, RULE_statementList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(275); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(274); - statement(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(277); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,18,_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; - } - - public static class SharableDeclarationContext extends ParserRuleContext { - public SharableStatementContext sharableStatement() { - return getRuleContext(SharableStatementContext.class,0); - } - public SharableDeclarationContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_sharableDeclaration; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterSharableDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitSharableDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitSharableDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final SharableDeclarationContext sharableDeclaration() throws RecognitionException { - SharableDeclarationContext _localctx = new SharableDeclarationContext(_ctx, getState()); - enterRule(_localctx, 38, RULE_sharableDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(279); - sharableStatement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class SharableStatementContext extends ParserRuleContext { - public SharableModifierContext sharableModifier() { - return getRuleContext(SharableModifierContext.class,0); - } - public VariableDeclarationListContext variableDeclarationList() { - return getRuleContext(VariableDeclarationListContext.class,0); - } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public SharableStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_sharableStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterSharableStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitSharableStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitSharableStatement(this); - else return visitor.visitChildren(this); - } - } - - public final SharableStatementContext sharableStatement() throws RecognitionException { - SharableStatementContext _localctx = new SharableStatementContext(_ctx, getState()); - enterRule(_localctx, 40, RULE_sharableStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(281); - sharableModifier(); - setState(282); - variableDeclarationList(); - setState(283); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class SharableModifierContext extends ParserRuleContext { - public TerminalNode Sharable() { return getToken(YJSParser.Sharable, 0); } - public SharableModifierContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_sharableModifier; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterSharableModifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitSharableModifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitSharableModifier(this); - else return visitor.visitChildren(this); - } - } - - public final SharableModifierContext sharableModifier() throws RecognitionException { - SharableModifierContext _localctx = new SharableModifierContext(_ctx, getState()); - enterRule(_localctx, 42, RULE_sharableModifier); - try { - enterOuterAlt(_localctx, 1); - { - setState(285); - match(Sharable); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class VariableStatementContext extends ParserRuleContext { - public VarModifierContext varModifier() { - return getRuleContext(VarModifierContext.class,0); - } - public VariableDeclarationListContext variableDeclarationList() { - return getRuleContext(VariableDeclarationListContext.class,0); - } - public EosContext eos() { - return getRuleContext(EosContext.class,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 YJSParserListener ) ((YJSParserListener)listener).enterVariableStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitVariableStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitVariableStatement(this); - else return visitor.visitChildren(this); - } - } - - public final VariableStatementContext variableStatement() throws RecognitionException { - VariableStatementContext _localctx = new VariableStatementContext(_ctx, getState()); - enterRule(_localctx, 44, RULE_variableStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(287); - varModifier(); - setState(288); - variableDeclarationList(); - setState(289); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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(YJSParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterVariableDeclarationList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitVariableDeclarationList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitVariableDeclarationList(this); - else return visitor.visitChildren(this); - } - } - - public final VariableDeclarationListContext variableDeclarationList() throws RecognitionException { - VariableDeclarationListContext _localctx = new VariableDeclarationListContext(_ctx, getState()); - enterRule(_localctx, 46, RULE_variableDeclarationList); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(291); - variableDeclaration(); - setState(296); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,19,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(292); - match(Comma); - setState(293); - variableDeclaration(); - } - } - } - setState(298); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,19,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class VariableDeclarationContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode Assign() { return getToken(YJSParser.Assign, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.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 YJSParserListener ) ((YJSParserListener)listener).enterVariableDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitVariableDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitVariableDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final VariableDeclarationContext variableDeclaration() throws RecognitionException { - VariableDeclarationContext _localctx = new VariableDeclarationContext(_ctx, getState()); - enterRule(_localctx, 48, RULE_variableDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - { - setState(299); - match(Identifier); - } - setState(302); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,20,_ctx) ) { - case 1: - { - setState(300); - match(Assign); - setState(301); - singleExpression(0); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class EmptyStatementContext extends ParserRuleContext { - public TerminalNode SemiColon() { return getToken(YJSParser.SemiColon, 0); } - public EmptyStatementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_emptyStatement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterEmptyStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitEmptyStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitEmptyStatement(this); - else return visitor.visitChildren(this); - } - } - - public final EmptyStatementContext emptyStatement() throws RecognitionException { - EmptyStatementContext _localctx = new EmptyStatementContext(_ctx, getState()); - enterRule(_localctx, 50, RULE_emptyStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(304); - match(SemiColon); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ExpressionStatementContext extends ParserRuleContext { - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public EosContext eos() { - return getRuleContext(EosContext.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 YJSParserListener ) ((YJSParserListener)listener).enterExpressionStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitExpressionStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitExpressionStatement(this); - else return visitor.visitChildren(this); - } - } - - public final ExpressionStatementContext expressionStatement() throws RecognitionException { - ExpressionStatementContext _localctx = new ExpressionStatementContext(_ctx, getState()); - enterRule(_localctx, 52, RULE_expressionStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(306); - if (!(notOpenBraceAndNotFunction())) throw new FailedPredicateException(this, "notOpenBraceAndNotFunction()"); - setState(307); - expressionSequence(); - setState(308); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class IfStatementContext extends ParserRuleContext { - public TerminalNode If() { return getToken(YJSParser.If, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public List statement() { - return getRuleContexts(StatementContext.class); - } - public StatementContext statement(int i) { - return getRuleContext(StatementContext.class,i); - } - public TerminalNode Else() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterIfStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitIfStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitIfStatement(this); - else return visitor.visitChildren(this); - } - } - - public final IfStatementContext ifStatement() throws RecognitionException { - IfStatementContext _localctx = new IfStatementContext(_ctx, getState()); - enterRule(_localctx, 54, RULE_ifStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(310); - match(If); - setState(311); - match(OpenParen); - setState(312); - expressionSequence(); - setState(313); - match(CloseParen); - setState(314); - statement(); - setState(317); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,21,_ctx) ) { - case 1: - { - setState(315); - match(Else); - setState(316); - statement(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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); - } - } - public static class DoStatementContext extends IterationStatementContext { - public TerminalNode Do() { return getToken(YJSParser.Do, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode While() { return getToken(YJSParser.While, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterDoStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitDoStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitDoStatement(this); - else return visitor.visitChildren(this); - } - } - public static class ForVarStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(YJSParser.For, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public VarModifierContext varModifier() { - return getRuleContext(VarModifierContext.class,0); - } - public VariableDeclarationListContext variableDeclarationList() { - return getRuleContext(VariableDeclarationListContext.class,0); - } - public List SemiColon() { return getTokens(YJSParser.SemiColon); } - public TerminalNode SemiColon(int i) { - return getToken(YJSParser.SemiColon, i); - } - public TerminalNode CloseParen() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterForVarStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitForVarStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitForVarStatement(this); - else return visitor.visitChildren(this); - } - } - public static class ForVarInStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(YJSParser.For, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public VarModifierContext varModifier() { - return getRuleContext(VarModifierContext.class,0); - } - public VariableDeclarationContext variableDeclaration() { - return getRuleContext(VariableDeclarationContext.class,0); - } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode In() { return getToken(YJSParser.In, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public ForVarInStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterForVarInStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitForVarInStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitForVarInStatement(this); - else return visitor.visitChildren(this); - } - } - public static class WhileStatementContext extends IterationStatementContext { - public TerminalNode While() { return getToken(YJSParser.While, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterWhileStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitWhileStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitWhileStatement(this); - else return visitor.visitChildren(this); - } - } - public static class ForStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(YJSParser.For, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public List SemiColon() { return getTokens(YJSParser.SemiColon); } - public TerminalNode SemiColon(int i) { - return getToken(YJSParser.SemiColon, i); - } - public TerminalNode CloseParen() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterForStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitForStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitForStatement(this); - else return visitor.visitChildren(this); - } - } - public static class ForInStatementContext extends IterationStatementContext { - public TerminalNode For() { return getToken(YJSParser.For, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public StatementContext statement() { - return getRuleContext(StatementContext.class,0); - } - public TerminalNode In() { return getToken(YJSParser.In, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public ForInStatementContext(IterationStatementContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterForInStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitForInStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitForInStatement(this); - else return visitor.visitChildren(this); - } - } - - public final IterationStatementContext iterationStatement() throws RecognitionException { - IterationStatementContext _localctx = new IterationStatementContext(_ctx, getState()); - enterRule(_localctx, 56, RULE_iterationStatement); - int _la; - try { - setState(388); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,29,_ctx) ) { - case 1: - _localctx = new DoStatementContext(_localctx); - enterOuterAlt(_localctx, 1); - { - setState(319); - match(Do); - setState(320); - statement(); - setState(321); - match(While); - setState(322); - match(OpenParen); - setState(323); - expressionSequence(); - setState(324); - match(CloseParen); - setState(325); - eos(); - } - break; - case 2: - _localctx = new WhileStatementContext(_localctx); - enterOuterAlt(_localctx, 2); - { - setState(327); - match(While); - setState(328); - match(OpenParen); - setState(329); - expressionSequence(); - setState(330); - match(CloseParen); - setState(331); - statement(); - } - break; - case 3: - _localctx = new ForStatementContext(_localctx); - enterOuterAlt(_localctx, 3); - { - setState(333); - match(For); - setState(334); - match(OpenParen); - setState(336); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) | (1L << BooleanLiteral) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) | (1L << (New - 64)) | (1L << (This - 64)) | (1L << (Super - 64)) | (1L << (Identifier - 64)) | (1L << (StringLiteral - 64)) | (1L << (TemplateStringLiteral - 64)))) != 0)) { - { - setState(335); - expressionSequence(); - } - } - - setState(338); - match(SemiColon); - setState(340); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) | (1L << BooleanLiteral) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) | (1L << (New - 64)) | (1L << (This - 64)) | (1L << (Super - 64)) | (1L << (Identifier - 64)) | (1L << (StringLiteral - 64)) | (1L << (TemplateStringLiteral - 64)))) != 0)) { - { - setState(339); - expressionSequence(); - } - } - - setState(342); - match(SemiColon); - setState(344); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) | (1L << BooleanLiteral) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) | (1L << (New - 64)) | (1L << (This - 64)) | (1L << (Super - 64)) | (1L << (Identifier - 64)) | (1L << (StringLiteral - 64)) | (1L << (TemplateStringLiteral - 64)))) != 0)) { - { - setState(343); - expressionSequence(); - } - } - - setState(346); - match(CloseParen); - setState(347); - statement(); - } - break; - case 4: - _localctx = new ForVarStatementContext(_localctx); - enterOuterAlt(_localctx, 4); - { - setState(348); - match(For); - setState(349); - match(OpenParen); - setState(350); - varModifier(); - setState(351); - variableDeclarationList(); - setState(352); - match(SemiColon); - setState(354); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) | (1L << BooleanLiteral) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) | (1L << (New - 64)) | (1L << (This - 64)) | (1L << (Super - 64)) | (1L << (Identifier - 64)) | (1L << (StringLiteral - 64)) | (1L << (TemplateStringLiteral - 64)))) != 0)) { - { - setState(353); - expressionSequence(); - } - } - - setState(356); - match(SemiColon); - setState(358); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) | (1L << BooleanLiteral) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) | (1L << (New - 64)) | (1L << (This - 64)) | (1L << (Super - 64)) | (1L << (Identifier - 64)) | (1L << (StringLiteral - 64)) | (1L << (TemplateStringLiteral - 64)))) != 0)) { - { - setState(357); - expressionSequence(); - } - } - - setState(360); - match(CloseParen); - setState(361); - statement(); - } - break; - case 5: - _localctx = new ForInStatementContext(_localctx); - enterOuterAlt(_localctx, 5); - { - setState(363); - match(For); - setState(364); - match(OpenParen); - setState(365); - singleExpression(0); - setState(369); - _errHandler.sync(this); - switch (_input.LA(1)) { - case In: - { - setState(366); - match(In); - } - break; - case Identifier: - { - setState(367); - match(Identifier); - setState(368); - if (!(p("of"))) throw new FailedPredicateException(this, "p(\"of\")"); - } - break; - default: - throw new NoViableAltException(this); - } - setState(371); - expressionSequence(); - setState(372); - match(CloseParen); - setState(373); - statement(); - } - break; - case 6: - _localctx = new ForVarInStatementContext(_localctx); - enterOuterAlt(_localctx, 6); - { - setState(375); - match(For); - setState(376); - match(OpenParen); - setState(377); - varModifier(); - setState(378); - variableDeclaration(); - setState(382); - _errHandler.sync(this); - switch (_input.LA(1)) { - case In: - { - setState(379); - match(In); - } - break; - case Identifier: - { - setState(380); - match(Identifier); - setState(381); - if (!(p("of"))) throw new FailedPredicateException(this, "p(\"of\")"); - } - break; - default: - throw new NoViableAltException(this); - } - setState(384); - expressionSequence(); - setState(385); - match(CloseParen); - setState(386); - statement(); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class VarModifierContext extends ParserRuleContext { - public TerminalNode Var() { return getToken(YJSParser.Var, 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 YJSParserListener ) ((YJSParserListener)listener).enterVarModifier(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitVarModifier(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitVarModifier(this); - else return visitor.visitChildren(this); - } - } - - public final VarModifierContext varModifier() throws RecognitionException { - VarModifierContext _localctx = new VarModifierContext(_ctx, getState()); - enterRule(_localctx, 58, RULE_varModifier); - try { - enterOuterAlt(_localctx, 1); - { - setState(390); - match(Var); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ContinueStatementContext extends ParserRuleContext { - public TerminalNode Continue() { return getToken(YJSParser.Continue, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 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 YJSParserListener ) ((YJSParserListener)listener).enterContinueStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitContinueStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitContinueStatement(this); - else return visitor.visitChildren(this); - } - } - - public final ContinueStatementContext continueStatement() throws RecognitionException { - ContinueStatementContext _localctx = new ContinueStatementContext(_ctx, getState()); - enterRule(_localctx, 60, RULE_continueStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(392); - match(Continue); - setState(395); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,30,_ctx) ) { - case 1: - { - setState(393); - if (!(notLineTerminator())) throw new FailedPredicateException(this, "notLineTerminator()"); - setState(394); - match(Identifier); - } - break; - } - setState(397); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class BreakStatementContext extends ParserRuleContext { - public TerminalNode Break() { return getToken(YJSParser.Break, 0); } - public EosContext eos() { - return getRuleContext(EosContext.class,0); - } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 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 YJSParserListener ) ((YJSParserListener)listener).enterBreakStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitBreakStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitBreakStatement(this); - else return visitor.visitChildren(this); - } - } - - public final BreakStatementContext breakStatement() throws RecognitionException { - BreakStatementContext _localctx = new BreakStatementContext(_ctx, getState()); - enterRule(_localctx, 62, RULE_breakStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(399); - match(Break); - setState(402); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,31,_ctx) ) { - case 1: - { - setState(400); - if (!(notLineTerminator())) throw new FailedPredicateException(this, "notLineTerminator()"); - setState(401); - match(Identifier); - } - break; - } - setState(404); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ReturnStatementContext extends ParserRuleContext { - public TerminalNode Return() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterReturnStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitReturnStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitReturnStatement(this); - else return visitor.visitChildren(this); - } - } - - public final ReturnStatementContext returnStatement() throws RecognitionException { - ReturnStatementContext _localctx = new ReturnStatementContext(_ctx, getState()); - enterRule(_localctx, 64, RULE_returnStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(406); - match(Return); - setState(409); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,32,_ctx) ) { - case 1: - { - setState(407); - if (!(notLineTerminator())) throw new FailedPredicateException(this, "notLineTerminator()"); - setState(408); - expressionSequence(); - } - break; - } - setState(411); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class WithStatementContext extends ParserRuleContext { - public TerminalNode With() { return getToken(YJSParser.With, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterWithStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitWithStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitWithStatement(this); - else return visitor.visitChildren(this); - } - } - - public final WithStatementContext withStatement() throws RecognitionException { - WithStatementContext _localctx = new WithStatementContext(_ctx, getState()); - enterRule(_localctx, 66, RULE_withStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(413); - match(With); - setState(414); - match(OpenParen); - setState(415); - expressionSequence(); - setState(416); - match(CloseParen); - setState(417); - statement(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class SwitchStatementContext extends ParserRuleContext { - public TerminalNode Switch() { return getToken(YJSParser.Switch, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterSwitchStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitSwitchStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitSwitchStatement(this); - else return visitor.visitChildren(this); - } - } - - public final SwitchStatementContext switchStatement() throws RecognitionException { - SwitchStatementContext _localctx = new SwitchStatementContext(_ctx, getState()); - enterRule(_localctx, 68, RULE_switchStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(419); - match(Switch); - setState(420); - match(OpenParen); - setState(421); - expressionSequence(); - setState(422); - match(CloseParen); - setState(423); - caseBlock(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class CaseBlockContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(YJSParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterCaseBlock(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitCaseBlock(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitCaseBlock(this); - else return visitor.visitChildren(this); - } - } - - public final CaseBlockContext caseBlock() throws RecognitionException { - CaseBlockContext _localctx = new CaseBlockContext(_ctx, getState()); - enterRule(_localctx, 70, RULE_caseBlock); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(425); - match(OpenBrace); - setState(427); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Case) { - { - setState(426); - caseClauses(); - } - } - - setState(433); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Default) { - { - setState(429); - defaultClause(); - setState(431); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Case) { - { - setState(430); - caseClauses(); - } - } - - } - } - - setState(435); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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 YJSParserListener ) ((YJSParserListener)listener).enterCaseClauses(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitCaseClauses(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitCaseClauses(this); - else return visitor.visitChildren(this); - } - } - - public final CaseClausesContext caseClauses() throws RecognitionException { - CaseClausesContext _localctx = new CaseClausesContext(_ctx, getState()); - enterRule(_localctx, 72, RULE_caseClauses); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(438); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(437); - caseClause(); - } - } - setState(440); - _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; - } - - public static class CaseClauseContext extends ParserRuleContext { - public TerminalNode Case() { return getToken(YJSParser.Case, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode Colon() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterCaseClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitCaseClause(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitCaseClause(this); - else return visitor.visitChildren(this); - } - } - - public final CaseClauseContext caseClause() throws RecognitionException { - CaseClauseContext _localctx = new CaseClauseContext(_ctx, getState()); - enterRule(_localctx, 74, RULE_caseClause); - try { - enterOuterAlt(_localctx, 1); - { - setState(442); - match(Case); - setState(443); - expressionSequence(); - setState(444); - match(Colon); - setState(446); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,37,_ctx) ) { - case 1: - { - setState(445); - statementList(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class DefaultClauseContext extends ParserRuleContext { - public TerminalNode Default() { return getToken(YJSParser.Default, 0); } - public TerminalNode Colon() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterDefaultClause(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitDefaultClause(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitDefaultClause(this); - else return visitor.visitChildren(this); - } - } - - public final DefaultClauseContext defaultClause() throws RecognitionException { - DefaultClauseContext _localctx = new DefaultClauseContext(_ctx, getState()); - enterRule(_localctx, 76, RULE_defaultClause); - try { - enterOuterAlt(_localctx, 1); - { - setState(448); - match(Default); - setState(449); - match(Colon); - setState(451); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,38,_ctx) ) { - case 1: - { - setState(450); - statementList(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ThrowStatementContext extends ParserRuleContext { - public TerminalNode Throw() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterThrowStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitThrowStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitThrowStatement(this); - else return visitor.visitChildren(this); - } - } - - public final ThrowStatementContext throwStatement() throws RecognitionException { - ThrowStatementContext _localctx = new ThrowStatementContext(_ctx, getState()); - enterRule(_localctx, 78, RULE_throwStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(453); - match(Throw); - setState(454); - if (!(notLineTerminator())) throw new FailedPredicateException(this, "notLineTerminator()"); - setState(455); - expressionSequence(); - setState(456); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class TryStatementContext extends ParserRuleContext { - public TerminalNode Try() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterTryStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitTryStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitTryStatement(this); - else return visitor.visitChildren(this); - } - } - - public final TryStatementContext tryStatement() throws RecognitionException { - TryStatementContext _localctx = new TryStatementContext(_ctx, getState()); - enterRule(_localctx, 80, RULE_tryStatement); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(458); - match(Try); - setState(459); - block(); - setState(465); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Catch: - { - setState(460); - catchProduction(); - setState(462); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Finally) { - { - setState(461); - finallyProduction(); - } - } - - } - break; - case Finally: - { - setState(464); - 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; - } - - public static class CatchProductionContext extends ParserRuleContext { - public TerminalNode Catch() { return getToken(YJSParser.Catch, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public BlockContext block() { - return getRuleContext(BlockContext.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 YJSParserListener ) ((YJSParserListener)listener).enterCatchProduction(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitCatchProduction(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitCatchProduction(this); - else return visitor.visitChildren(this); - } - } - - public final CatchProductionContext catchProduction() throws RecognitionException { - CatchProductionContext _localctx = new CatchProductionContext(_ctx, getState()); - enterRule(_localctx, 82, RULE_catchProduction); - try { - enterOuterAlt(_localctx, 1); - { - setState(467); - match(Catch); - setState(468); - match(OpenParen); - setState(469); - match(Identifier); - setState(470); - match(CloseParen); - setState(471); - block(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class FinallyProductionContext extends ParserRuleContext { - public TerminalNode Finally() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterFinallyProduction(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitFinallyProduction(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitFinallyProduction(this); - else return visitor.visitChildren(this); - } - } - - public final FinallyProductionContext finallyProduction() throws RecognitionException { - FinallyProductionContext _localctx = new FinallyProductionContext(_ctx, getState()); - enterRule(_localctx, 84, RULE_finallyProduction); - try { - enterOuterAlt(_localctx, 1); - { - setState(473); - match(Finally); - setState(474); - block(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class DebuggerStatementContext extends ParserRuleContext { - public TerminalNode Debugger() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterDebuggerStatement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitDebuggerStatement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitDebuggerStatement(this); - else return visitor.visitChildren(this); - } - } - - public final DebuggerStatementContext debuggerStatement() throws RecognitionException { - DebuggerStatementContext _localctx = new DebuggerStatementContext(_ctx, getState()); - enterRule(_localctx, 86, RULE_debuggerStatement); - try { - enterOuterAlt(_localctx, 1); - { - setState(476); - match(Debugger); - setState(477); - eos(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class FunctionDeclarationContext extends ParserRuleContext { - public TerminalNode Function() { return getToken(YJSParser.Function, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public TerminalNode OpenBrace() { return getToken(YJSParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(YJSParser.CloseBrace, 0); } - public AnnotationsContext annotations() { - return getRuleContext(AnnotationsContext.class,0); - } - public TerminalNode Export() { return getToken(YJSParser.Export, 0); } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public TerminalNode View() { return getToken(YJSParser.View, 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 YJSParserListener ) ((YJSParserListener)listener).enterFunctionDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitFunctionDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitFunctionDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final FunctionDeclarationContext functionDeclaration() throws RecognitionException { - FunctionDeclarationContext _localctx = new FunctionDeclarationContext(_ctx, getState()); - enterRule(_localctx, 88, RULE_functionDeclaration); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(480); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==AtToken) { - { - setState(479); - annotations(); - } - } - - setState(483); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Export) { - { - setState(482); - match(Export); - } - } - - setState(485); - match(Function); - setState(486); - match(Identifier); - setState(487); - match(OpenParen); - setState(489); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OpenBracket) | (1L << OpenBrace) | (1L << Ellipsis))) != 0) || _la==Identifier) { - { - setState(488); - formalParameterList(); - } - } - - setState(491); - match(CloseParen); - setState(493); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==View) { - { - setState(492); - match(View); - } - } - - setState(495); - match(OpenBrace); - setState(496); - functionBody(); - setState(497); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ClassDeclarationContext extends ParserRuleContext { - public TerminalNode Class() { return getToken(YJSParser.Class, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public ClassTailContext classTail() { - return getRuleContext(ClassTailContext.class,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 YJSParserListener ) ((YJSParserListener)listener).enterClassDeclaration(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitClassDeclaration(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitClassDeclaration(this); - else return visitor.visitChildren(this); - } - } - - public final ClassDeclarationContext classDeclaration() throws RecognitionException { - ClassDeclarationContext _localctx = new ClassDeclarationContext(_ctx, getState()); - enterRule(_localctx, 90, RULE_classDeclaration); - try { - enterOuterAlt(_localctx, 1); - { - setState(499); - match(Class); - setState(500); - match(Identifier); - setState(501); - classTail(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ClassTailContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(YJSParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(YJSParser.CloseBrace, 0); } - public TerminalNode Extends() { return getToken(YJSParser.Extends, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,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 YJSParserListener ) ((YJSParserListener)listener).enterClassTail(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitClassTail(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitClassTail(this); - else return visitor.visitChildren(this); - } - } - - public final ClassTailContext classTail() throws RecognitionException { - ClassTailContext _localctx = new ClassTailContext(_ctx, getState()); - enterRule(_localctx, 92, RULE_classTail); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(505); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Extends) { - { - setState(503); - match(Extends); - setState(504); - singleExpression(0); - } - } - - setState(507); - match(OpenBrace); - setState(511); - _errHandler.sync(this); - _la = _input.LA(1); - while (((((_la - 54)) & ~0x3f) == 0 && ((1L << (_la - 54)) & ((1L << (NullLiteral - 54)) | (1L << (BooleanLiteral - 54)) | (1L << (DecimalLiteral - 54)) | (1L << (HexIntegerLiteral - 54)) | (1L << (OctalIntegerLiteral - 54)) | (1L << (OctalIntegerLiteral2 - 54)) | (1L << (BinaryIntegerLiteral - 54)) | (1L << (Break - 54)) | (1L << (Do - 54)) | (1L << (Instanceof - 54)) | (1L << (Typeof - 54)) | (1L << (Case - 54)) | (1L << (Else - 54)) | (1L << (New - 54)) | (1L << (Var - 54)) | (1L << (Catch - 54)) | (1L << (Finally - 54)) | (1L << (Return - 54)) | (1L << (Void - 54)) | (1L << (Continue - 54)) | (1L << (For - 54)) | (1L << (Switch - 54)) | (1L << (While - 54)) | (1L << (Debugger - 54)) | (1L << (Function - 54)) | (1L << (This - 54)) | (1L << (With - 54)) | (1L << (Default - 54)) | (1L << (If - 54)) | (1L << (Throw - 54)) | (1L << (Delete - 54)) | (1L << (In - 54)) | (1L << (Try - 54)) | (1L << (Sharable - 54)) | (1L << (Class - 54)) | (1L << (Enum - 54)) | (1L << (Extends - 54)) | (1L << (Super - 54)) | (1L << (Const - 54)) | (1L << (Export - 54)) | (1L << (Import - 54)) | (1L << (Implements - 54)) | (1L << (Let - 54)) | (1L << (Private - 54)) | (1L << (Public - 54)) | (1L << (Interface - 54)) | (1L << (Package - 54)) | (1L << (Protected - 54)) | (1L << (Static - 54)) | (1L << (Yield - 54)) | (1L << (Identifier - 54)) | (1L << (StringLiteral - 54)))) != 0)) { - { - { - setState(508); - classElement(); - } - } - setState(513); - _errHandler.sync(this); - _la = _input.LA(1); - } - setState(514); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ClassElementContext extends ParserRuleContext { - public MethodDefinitionContext methodDefinition() { - return getRuleContext(MethodDefinitionContext.class,0); - } - public TerminalNode Static() { return getToken(YJSParser.Static, 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 YJSParserListener ) ((YJSParserListener)listener).enterClassElement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitClassElement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitClassElement(this); - else return visitor.visitChildren(this); - } - } - - public final ClassElementContext classElement() throws RecognitionException { - ClassElementContext _localctx = new ClassElementContext(_ctx, getState()); - enterRule(_localctx, 94, RULE_classElement); - try { - enterOuterAlt(_localctx, 1); - { - setState(517); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,47,_ctx) ) { - case 1: - { - setState(516); - match(Static); - } - break; - } - setState(519); - methodDefinition(); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class MethodDefinitionContext extends ParserRuleContext { - public PropertyNameContext propertyName() { - return getRuleContext(PropertyNameContext.class,0); - } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public TerminalNode OpenBrace() { return getToken(YJSParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(YJSParser.CloseBrace, 0); } - public FormalParameterListContext formalParameterList() { - return getRuleContext(FormalParameterListContext.class,0); - } - public MethodDefinitionContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_methodDefinition; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterMethodDefinition(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitMethodDefinition(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitMethodDefinition(this); - else return visitor.visitChildren(this); - } - } - - public final MethodDefinitionContext methodDefinition() throws RecognitionException { - MethodDefinitionContext _localctx = new MethodDefinitionContext(_ctx, getState()); - enterRule(_localctx, 96, RULE_methodDefinition); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(521); - propertyName(); - setState(522); - match(OpenParen); - setState(524); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OpenBracket) | (1L << OpenBrace) | (1L << Ellipsis))) != 0) || _la==Identifier) { - { - setState(523); - formalParameterList(); - } - } - - setState(526); - match(CloseParen); - setState(527); - match(OpenBrace); - setState(528); - functionBody(); - setState(529); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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(YJSParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(YJSParser.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 FormalParameterListContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_formalParameterList; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterFormalParameterList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitFormalParameterList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitFormalParameterList(this); - else return visitor.visitChildren(this); - } - } - - public final FormalParameterListContext formalParameterList() throws RecognitionException { - FormalParameterListContext _localctx = new FormalParameterListContext(_ctx, getState()); - enterRule(_localctx, 98, RULE_formalParameterList); - int _la; - try { - int _alt; - setState(546); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(531); - formalParameterArg(); - setState(536); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,49,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(532); - match(Comma); - setState(533); - formalParameterArg(); - } - } - } - setState(538); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,49,_ctx); - } - setState(541); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(539); - match(Comma); - setState(540); - lastFormalParameterArg(); - } - } - - } - break; - case Ellipsis: - enterOuterAlt(_localctx, 2); - { - setState(543); - lastFormalParameterArg(); - } - break; - case OpenBracket: - enterOuterAlt(_localctx, 3); - { - setState(544); - arrayLiteral(); - } - break; - case OpenBrace: - enterOuterAlt(_localctx, 4); - { - setState(545); - 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; - } - - public static class FormalParameterArgContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode Assign() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterFormalParameterArg(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitFormalParameterArg(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitFormalParameterArg(this); - else return visitor.visitChildren(this); - } - } - - public final FormalParameterArgContext formalParameterArg() throws RecognitionException { - FormalParameterArgContext _localctx = new FormalParameterArgContext(_ctx, getState()); - enterRule(_localctx, 100, RULE_formalParameterArg); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(548); - match(Identifier); - setState(551); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Assign) { - { - setState(549); - match(Assign); - setState(550); - singleExpression(0); - } - } - - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class LastFormalParameterArgContext extends ParserRuleContext { - public TerminalNode Ellipsis() { return getToken(YJSParser.Ellipsis, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 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 YJSParserListener ) ((YJSParserListener)listener).enterLastFormalParameterArg(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitLastFormalParameterArg(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitLastFormalParameterArg(this); - else return visitor.visitChildren(this); - } - } - - public final LastFormalParameterArgContext lastFormalParameterArg() throws RecognitionException { - LastFormalParameterArgContext _localctx = new LastFormalParameterArgContext(_ctx, getState()); - enterRule(_localctx, 102, RULE_lastFormalParameterArg); - try { - enterOuterAlt(_localctx, 1); - { - setState(553); - match(Ellipsis); - setState(554); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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 YJSParserListener ) ((YJSParserListener)listener).enterFunctionBody(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitFunctionBody(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitFunctionBody(this); - else return visitor.visitChildren(this); - } - } - - public final FunctionBodyContext functionBody() throws RecognitionException { - FunctionBodyContext _localctx = new FunctionBodyContext(_ctx, getState()); - enterRule(_localctx, 104, RULE_functionBody); - try { - enterOuterAlt(_localctx, 1); - { - setState(557); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,53,_ctx) ) { - case 1: - { - setState(556); - sourceElements(); - } - break; - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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 YJSParserListener ) ((YJSParserListener)listener).enterSourceElements(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitSourceElements(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitSourceElements(this); - else return visitor.visitChildren(this); - } - } - - public final SourceElementsContext sourceElements() throws RecognitionException { - SourceElementsContext _localctx = new SourceElementsContext(_ctx, getState()); - enterRule(_localctx, 106, RULE_sourceElements); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(560); - _errHandler.sync(this); - _alt = 1; - do { - switch (_alt) { - case 1: - { - { - setState(559); - sourceElement(); - } - } - break; - default: - throw new NoViableAltException(this); - } - setState(562); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,54,_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; - } - - public static class ArrayLiteralContext extends ParserRuleContext { - public TerminalNode OpenBracket() { return getToken(YJSParser.OpenBracket, 0); } - public TerminalNode CloseBracket() { return getToken(YJSParser.CloseBracket, 0); } - public List Comma() { return getTokens(YJSParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(YJSParser.Comma, i); - } - public ElementListContext elementList() { - return getRuleContext(ElementListContext.class,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 YJSParserListener ) ((YJSParserListener)listener).enterArrayLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitArrayLiteral(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitArrayLiteral(this); - else return visitor.visitChildren(this); - } - } - - public final ArrayLiteralContext arrayLiteral() throws RecognitionException { - ArrayLiteralContext _localctx = new ArrayLiteralContext(_ctx, getState()); - enterRule(_localctx, 108, RULE_arrayLiteral); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(564); - match(OpenBracket); - setState(568); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,55,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(565); - match(Comma); - } - } - } - setState(570); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,55,_ctx); - } - setState(572); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) | (1L << Ellipsis) | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) | (1L << BooleanLiteral) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) | (1L << (New - 64)) | (1L << (This - 64)) | (1L << (Super - 64)) | (1L << (Identifier - 64)) | (1L << (StringLiteral - 64)) | (1L << (TemplateStringLiteral - 64)))) != 0)) { - { - setState(571); - elementList(); - } - } - - setState(577); - _errHandler.sync(this); - _la = _input.LA(1); - while (_la==Comma) { - { - { - setState(574); - match(Comma); - } - } - setState(579); - _errHandler.sync(this); - _la = _input.LA(1); - } - setState(580); - match(CloseBracket); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ElementListContext extends ParserRuleContext { - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public LastElementContext lastElement() { - return getRuleContext(LastElementContext.class,0); - } - public List Comma() { return getTokens(YJSParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(YJSParser.Comma, 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 YJSParserListener ) ((YJSParserListener)listener).enterElementList(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitElementList(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitElementList(this); - else return visitor.visitChildren(this); - } - } - - public final ElementListContext elementList() throws RecognitionException { - ElementListContext _localctx = new ElementListContext(_ctx, getState()); - enterRule(_localctx, 110, RULE_elementList); - int _la; - try { - int _alt; - setState(603); - _errHandler.sync(this); - switch (_input.LA(1)) { - case RegularExpressionLiteral: - case OpenBracket: - case OpenParen: - case OpenBrace: - case PlusPlus: - case MinusMinus: - case Plus: - case Minus: - case BitNot: - case Not: - case NullLiteral: - case BooleanLiteral: - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - case Typeof: - case New: - case This: - case Super: - case Identifier: - case StringLiteral: - case TemplateStringLiteral: - enterOuterAlt(_localctx, 1); - { - setState(582); - singleExpression(0); - setState(591); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,59,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(584); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(583); - match(Comma); - } - } - setState(586); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==Comma ); - setState(588); - singleExpression(0); - } - } - } - setState(593); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,59,_ctx); - } - setState(600); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,61,_ctx) ) { - case 1: - { - setState(595); - _errHandler.sync(this); - _la = _input.LA(1); - do { - { - { - setState(594); - match(Comma); - } - } - setState(597); - _errHandler.sync(this); - _la = _input.LA(1); - } while ( _la==Comma ); - setState(599); - lastElement(); - } - break; - } - } - break; - case Ellipsis: - enterOuterAlt(_localctx, 2); - { - setState(602); - lastElement(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class LastElementContext extends ParserRuleContext { - public TerminalNode Ellipsis() { return getToken(YJSParser.Ellipsis, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public LastElementContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_lastElement; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterLastElement(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitLastElement(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitLastElement(this); - else return visitor.visitChildren(this); - } - } - - public final LastElementContext lastElement() throws RecognitionException { - LastElementContext _localctx = new LastElementContext(_ctx, getState()); - enterRule(_localctx, 112, RULE_lastElement); - try { - enterOuterAlt(_localctx, 1); - { - setState(605); - match(Ellipsis); - setState(606); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ObjectLiteralContext extends ParserRuleContext { - public TerminalNode OpenBrace() { return getToken(YJSParser.OpenBrace, 0); } - public TerminalNode CloseBrace() { return getToken(YJSParser.CloseBrace, 0); } - public List propertyAssignment() { - return getRuleContexts(PropertyAssignmentContext.class); - } - public PropertyAssignmentContext propertyAssignment(int i) { - return getRuleContext(PropertyAssignmentContext.class,i); - } - public List Comma() { return getTokens(YJSParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterObjectLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitObjectLiteral(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitObjectLiteral(this); - else return visitor.visitChildren(this); - } - } - - public final ObjectLiteralContext objectLiteral() throws RecognitionException { - ObjectLiteralContext _localctx = new ObjectLiteralContext(_ctx, getState()); - enterRule(_localctx, 114, RULE_objectLiteral); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(608); - match(OpenBrace); - setState(617); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OpenBracket) | (1L << NullLiteral) | (1L << BooleanLiteral) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral) | (1L << Break) | (1L << Do) | (1L << Instanceof))) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) | (1L << (Case - 64)) | (1L << (Else - 64)) | (1L << (New - 64)) | (1L << (Var - 64)) | (1L << (Catch - 64)) | (1L << (Finally - 64)) | (1L << (Return - 64)) | (1L << (Void - 64)) | (1L << (Continue - 64)) | (1L << (For - 64)) | (1L << (Switch - 64)) | (1L << (While - 64)) | (1L << (Debugger - 64)) | (1L << (Function - 64)) | (1L << (This - 64)) | (1L << (With - 64)) | (1L << (Default - 64)) | (1L << (If - 64)) | (1L << (Throw - 64)) | (1L << (Delete - 64)) | (1L << (In - 64)) | (1L << (Try - 64)) | (1L << (Sharable - 64)) | (1L << (Class - 64)) | (1L << (Enum - 64)) | (1L << (Extends - 64)) | (1L << (Super - 64)) | (1L << (Const - 64)) | (1L << (Export - 64)) | (1L << (Import - 64)) | (1L << (Implements - 64)) | (1L << (Let - 64)) | (1L << (Private - 64)) | (1L << (Public - 64)) | (1L << (Interface - 64)) | (1L << (Package - 64)) | (1L << (Protected - 64)) | (1L << (Static - 64)) | (1L << (Yield - 64)) | (1L << (Identifier - 64)) | (1L << (StringLiteral - 64)))) != 0)) { - { - setState(609); - propertyAssignment(); - setState(614); - _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(610); - match(Comma); - setState(611); - propertyAssignment(); - } - } - } - setState(616); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,63,_ctx); - } - } - } - - setState(620); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(619); - match(Comma); - } - } - - setState(622); - match(CloseBrace); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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); - } - } - 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(YJSParser.Colon, 0); } - public TerminalNode Assign() { return getToken(YJSParser.Assign, 0); } - public PropertyExpressionAssignmentContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterPropertyExpressionAssignment(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitPropertyExpressionAssignment(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitPropertyExpressionAssignment(this); - else return visitor.visitChildren(this); - } - } - public static class ComputedPropertyExpressionAssignmentContext extends PropertyAssignmentContext { - public TerminalNode OpenBracket() { return getToken(YJSParser.OpenBracket, 0); } - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public TerminalNode CloseBracket() { return getToken(YJSParser.CloseBracket, 0); } - public TerminalNode Colon() { return getToken(YJSParser.Colon, 0); } - public ComputedPropertyExpressionAssignmentContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterComputedPropertyExpressionAssignment(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitComputedPropertyExpressionAssignment(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitComputedPropertyExpressionAssignment(this); - else return visitor.visitChildren(this); - } - } - public static class PropertyShorthandContext extends PropertyAssignmentContext { - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public PropertyShorthandContext(PropertyAssignmentContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterPropertyShorthand(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitPropertyShorthand(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitPropertyShorthand(this); - else return visitor.visitChildren(this); - } - } - - public final PropertyAssignmentContext propertyAssignment() throws RecognitionException { - PropertyAssignmentContext _localctx = new PropertyAssignmentContext(_ctx, getState()); - enterRule(_localctx, 116, RULE_propertyAssignment); - int _la; - try { - setState(635); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,66,_ctx) ) { - case 1: - _localctx = new PropertyExpressionAssignmentContext(_localctx); - enterOuterAlt(_localctx, 1); - { - setState(624); - propertyName(); - setState(625); - _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(626); - singleExpression(0); - } - break; - case 2: - _localctx = new ComputedPropertyExpressionAssignmentContext(_localctx); - enterOuterAlt(_localctx, 2); - { - setState(628); - match(OpenBracket); - setState(629); - singleExpression(0); - setState(630); - match(CloseBracket); - setState(631); - match(Colon); - setState(632); - singleExpression(0); - } - break; - case 3: - _localctx = new PropertyShorthandContext(_localctx); - enterOuterAlt(_localctx, 3); - { - setState(634); - match(Identifier); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class PropertyNameContext extends ParserRuleContext { - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public TerminalNode StringLiteral() { return getToken(YJSParser.StringLiteral, 0); } - public NumericLiteralContext numericLiteral() { - return getRuleContext(NumericLiteralContext.class,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 YJSParserListener ) ((YJSParserListener)listener).enterPropertyName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitPropertyName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitPropertyName(this); - else return visitor.visitChildren(this); - } - } - - public final PropertyNameContext propertyName() throws RecognitionException { - PropertyNameContext _localctx = new PropertyNameContext(_ctx, getState()); - enterRule(_localctx, 118, RULE_propertyName); - try { - setState(640); - _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 Sharable: - 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 Yield: - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(637); - identifierName(); - } - break; - case StringLiteral: - enterOuterAlt(_localctx, 2); - { - setState(638); - match(StringLiteral); - } - break; - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - enterOuterAlt(_localctx, 3); - { - setState(639); - numericLiteral(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ArgumentsContext extends ParserRuleContext { - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public List singleExpression() { - return getRuleContexts(SingleExpressionContext.class); - } - public SingleExpressionContext singleExpression(int i) { - return getRuleContext(SingleExpressionContext.class,i); - } - public LastArgumentContext lastArgument() { - return getRuleContext(LastArgumentContext.class,0); - } - public List Comma() { return getTokens(YJSParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(YJSParser.Comma, i); - } - 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 YJSParserListener ) ((YJSParserListener)listener).enterArguments(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitArguments(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitArguments(this); - else return visitor.visitChildren(this); - } - } - - public final ArgumentsContext arguments() throws RecognitionException { - ArgumentsContext _localctx = new ArgumentsContext(_ctx, getState()); - enterRule(_localctx, 120, RULE_arguments); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(642); - match(OpenParen); - setState(656); - _errHandler.sync(this); - switch (_input.LA(1)) { - case RegularExpressionLiteral: - case OpenBracket: - case OpenParen: - case OpenBrace: - case PlusPlus: - case MinusMinus: - case Plus: - case Minus: - case BitNot: - case Not: - case NullLiteral: - case BooleanLiteral: - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - case Typeof: - case New: - case This: - case Super: - case Identifier: - case StringLiteral: - case TemplateStringLiteral: - { - setState(643); - singleExpression(0); - setState(648); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,68,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(644); - match(Comma); - setState(645); - singleExpression(0); - } - } - } - setState(650); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,68,_ctx); - } - setState(653); - _errHandler.sync(this); - _la = _input.LA(1); - if (_la==Comma) { - { - setState(651); - match(Comma); - setState(652); - lastArgument(); - } - } - - } - break; - case Ellipsis: - { - setState(655); - lastArgument(); - } - break; - case CloseParen: - break; - default: - break; - } - setState(658); - match(CloseParen); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class LastArgumentContext extends ParserRuleContext { - public TerminalNode Ellipsis() { return getToken(YJSParser.Ellipsis, 0); } - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public LastArgumentContext(ParserRuleContext parent, int invokingState) { - super(parent, invokingState); - } - @Override public int getRuleIndex() { return RULE_lastArgument; } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterLastArgument(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitLastArgument(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitLastArgument(this); - else return visitor.visitChildren(this); - } - } - - public final LastArgumentContext lastArgument() throws RecognitionException { - LastArgumentContext _localctx = new LastArgumentContext(_ctx, getState()); - enterRule(_localctx, 122, RULE_lastArgument); - try { - enterOuterAlt(_localctx, 1); - { - setState(660); - match(Ellipsis); - setState(661); - match(Identifier); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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(YJSParser.Comma); } - public TerminalNode Comma(int i) { - return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterExpressionSequence(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitExpressionSequence(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitExpressionSequence(this); - else return visitor.visitChildren(this); - } - } - - public final ExpressionSequenceContext expressionSequence() throws RecognitionException { - ExpressionSequenceContext _localctx = new ExpressionSequenceContext(_ctx, getState()); - enterRule(_localctx, 124, RULE_expressionSequence); - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(663); - singleExpression(0); - setState(668); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,71,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - { - { - setState(664); - match(Comma); - setState(665); - singleExpression(0); - } - } - } - setState(670); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,71,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - 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); - } - } - public static class TemplateStringExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode TemplateStringLiteral() { return getToken(YJSParser.TemplateStringLiteral, 0); } - public TemplateStringExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterTemplateStringExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitTemplateStringExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitTemplateStringExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.QuestionMark, 0); } - public TerminalNode Colon() { return getToken(YJSParser.Colon, 0); } - public TernaryExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterTernaryExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitTernaryExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitTernaryExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.And, 0); } - public LogicalAndExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterLogicalAndExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitLogicalAndExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitLogicalAndExpression(this); - else return visitor.visitChildren(this); - } - } - public static class PreIncrementExpressionContext extends SingleExpressionContext { - public TerminalNode PlusPlus() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterPreIncrementExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitPreIncrementExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitPreIncrementExpression(this); - else return visitor.visitChildren(this); - } - } - 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 YJSParserListener ) ((YJSParserListener)listener).enterObjectLiteralExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitObjectLiteralExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitObjectLiteralExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.In, 0); } - public InExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterInExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitInExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitInExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.Or, 0); } - public LogicalOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterLogicalOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitLogicalOrExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitLogicalOrExpression(this); - else return visitor.visitChildren(this); - } - } - public static class NotExpressionContext extends SingleExpressionContext { - public TerminalNode Not() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterNotExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitNotExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitNotExpression(this); - else return visitor.visitChildren(this); - } - } - public static class PreDecreaseExpressionContext extends SingleExpressionContext { - public TerminalNode MinusMinus() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterPreDecreaseExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitPreDecreaseExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitPreDecreaseExpression(this); - else return visitor.visitChildren(this); - } - } - 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 YJSParserListener ) ((YJSParserListener)listener).enterArgumentsExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitArgumentsExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitArgumentsExpression(this); - else return visitor.visitChildren(this); - } - } - public static class ThisExpressionContext extends SingleExpressionContext { - public TerminalNode This() { return getToken(YJSParser.This, 0); } - public ThisExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterThisExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitThisExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitThisExpression(this); - else return visitor.visitChildren(this); - } - } - public static class UnaryMinusExpressionContext extends SingleExpressionContext { - public TerminalNode Minus() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterUnaryMinusExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitUnaryMinusExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitUnaryMinusExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.Assign, 0); } - public AssignmentExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterAssignmentExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitAssignmentExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitAssignmentExpression(this); - else return visitor.visitChildren(this); - } - } - public static class PostDecreaseExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode MinusMinus() { return getToken(YJSParser.MinusMinus, 0); } - public PostDecreaseExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterPostDecreaseExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitPostDecreaseExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitPostDecreaseExpression(this); - else return visitor.visitChildren(this); - } - } - public static class TypeofExpressionContext extends SingleExpressionContext { - public TerminalNode Typeof() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterTypeofExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitTypeofExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitTypeofExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.Instanceof, 0); } - public InstanceofExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterInstanceofExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitInstanceofExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitInstanceofExpression(this); - else return visitor.visitChildren(this); - } - } - public static class UnaryPlusExpressionContext extends SingleExpressionContext { - public TerminalNode Plus() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterUnaryPlusExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitUnaryPlusExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitUnaryPlusExpression(this); - else return visitor.visitChildren(this); - } - } - public static class ArrowFunctionExpressionContext extends SingleExpressionContext { - public ArrowFunctionParametersContext arrowFunctionParameters() { - return getRuleContext(ArrowFunctionParametersContext.class,0); - } - public TerminalNode ARROW() { return getToken(YJSParser.ARROW, 0); } - public ArrowFunctionBodyContext arrowFunctionBody() { - return getRuleContext(ArrowFunctionBodyContext.class,0); - } - public ArrowFunctionExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterArrowFunctionExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitArrowFunctionExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitArrowFunctionExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.Equals_, 0); } - public TerminalNode NotEquals() { return getToken(YJSParser.NotEquals, 0); } - public TerminalNode IdentityEquals() { return getToken(YJSParser.IdentityEquals, 0); } - public TerminalNode IdentityNotEquals() { return getToken(YJSParser.IdentityNotEquals, 0); } - public EqualityExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterEqualityExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitEqualityExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitEqualityExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.BitXOr, 0); } - public BitXOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterBitXOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitBitXOrExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitBitXOrExpression(this); - else return visitor.visitChildren(this); - } - } - public static class SuperExpressionContext extends SingleExpressionContext { - public TerminalNode Super() { return getToken(YJSParser.Super, 0); } - public SuperExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterSuperExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitSuperExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitSuperExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.Multiply, 0); } - public TerminalNode Divide() { return getToken(YJSParser.Divide, 0); } - public TerminalNode Modulus() { return getToken(YJSParser.Modulus, 0); } - public MultiplicativeExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterMultiplicativeExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitMultiplicativeExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitMultiplicativeExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.LeftShiftArithmetic, 0); } - public TerminalNode RightShiftArithmetic() { return getToken(YJSParser.RightShiftArithmetic, 0); } - public TerminalNode RightShiftLogical() { return getToken(YJSParser.RightShiftLogical, 0); } - public BitShiftExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterBitShiftExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitBitShiftExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitBitShiftExpression(this); - else return visitor.visitChildren(this); - } - } - public static class ParenthesizedExpressionContext extends SingleExpressionContext { - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseParen() { return getToken(YJSParser.CloseParen, 0); } - public ParenthesizedExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterParenthesizedExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitParenthesizedExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitParenthesizedExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.Plus, 0); } - public TerminalNode Minus() { return getToken(YJSParser.Minus, 0); } - public AdditiveExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterAdditiveExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitAdditiveExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitAdditiveExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.LessThan, 0); } - public TerminalNode MoreThan() { return getToken(YJSParser.MoreThan, 0); } - public TerminalNode LessThanEquals() { return getToken(YJSParser.LessThanEquals, 0); } - public TerminalNode GreaterThanEquals() { return getToken(YJSParser.GreaterThanEquals, 0); } - public RelationalExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterRelationalExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitRelationalExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitRelationalExpression(this); - else return visitor.visitChildren(this); - } - } - public static class PostIncrementExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode PlusPlus() { return getToken(YJSParser.PlusPlus, 0); } - public PostIncrementExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterPostIncrementExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitPostIncrementExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitPostIncrementExpression(this); - else return visitor.visitChildren(this); - } - } - public static class BitNotExpressionContext extends SingleExpressionContext { - public TerminalNode BitNot() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterBitNotExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitBitNotExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitBitNotExpression(this); - else return visitor.visitChildren(this); - } - } - public static class NewExpressionContext extends SingleExpressionContext { - public TerminalNode New() { return getToken(YJSParser.New, 0); } - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public ArgumentsContext arguments() { - return getRuleContext(ArgumentsContext.class,0); - } - public NewExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterNewExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitNewExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitNewExpression(this); - else return visitor.visitChildren(this); - } - } - 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 YJSParserListener ) ((YJSParserListener)listener).enterLiteralExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitLiteralExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitLiteralExpression(this); - else return visitor.visitChildren(this); - } - } - 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 YJSParserListener ) ((YJSParserListener)listener).enterArrayLiteralExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitArrayLiteralExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitArrayLiteralExpression(this); - else return visitor.visitChildren(this); - } - } - public static class MemberDotExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode Dot() { return getToken(YJSParser.Dot, 0); } - public IdentifierNameContext identifierName() { - return getRuleContext(IdentifierNameContext.class,0); - } - public MemberDotExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterMemberDotExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitMemberDotExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitMemberDotExpression(this); - else return visitor.visitChildren(this); - } - } - public static class MemberIndexExpressionContext extends SingleExpressionContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode OpenBracket() { return getToken(YJSParser.OpenBracket, 0); } - public ExpressionSequenceContext expressionSequence() { - return getRuleContext(ExpressionSequenceContext.class,0); - } - public TerminalNode CloseBracket() { return getToken(YJSParser.CloseBracket, 0); } - public MemberIndexExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterMemberIndexExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitMemberIndexExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitMemberIndexExpression(this); - else return visitor.visitChildren(this); - } - } - public static class IdentifierExpressionContext extends SingleExpressionContext { - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public IdentifierExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterIdentifierExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitIdentifierExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitIdentifierExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.BitAnd, 0); } - public BitAndExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterBitAndExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitBitAndExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitBitAndExpression(this); - else return visitor.visitChildren(this); - } - } - 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(YJSParser.BitOr, 0); } - public BitOrExpressionContext(SingleExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).enterBitOrExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitBitOrExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitBitOrExpression(this); - else return visitor.visitChildren(this); - } - } - 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 YJSParserListener ) ((YJSParserListener)listener).enterAssignmentOperatorExpression(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitAssignmentOperatorExpression(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitAssignmentOperatorExpression(this); - else return visitor.visitChildren(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 = 126; - enterRecursionRule(_localctx, 126, RULE_singleExpression, _p); - int _la; - try { - int _alt; - enterOuterAlt(_localctx, 1); - { - setState(705); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,73,_ctx) ) { - case 1: - { - _localctx = new NewExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - - setState(672); - match(New); - setState(673); - singleExpression(0); - setState(675); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,72,_ctx) ) { - case 1: - { - setState(674); - arguments(); - } - break; - } - } - break; - case 2: - { - _localctx = new TypeofExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(677); - match(Typeof); - setState(678); - singleExpression(31); - } - break; - case 3: - { - _localctx = new PreIncrementExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(679); - match(PlusPlus); - setState(680); - singleExpression(30); - } - break; - case 4: - { - _localctx = new PreDecreaseExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(681); - match(MinusMinus); - setState(682); - singleExpression(29); - } - break; - case 5: - { - _localctx = new UnaryPlusExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(683); - match(Plus); - setState(684); - singleExpression(28); - } - break; - case 6: - { - _localctx = new UnaryMinusExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(685); - match(Minus); - setState(686); - singleExpression(27); - } - break; - case 7: - { - _localctx = new BitNotExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(687); - match(BitNot); - setState(688); - singleExpression(26); - } - break; - case 8: - { - _localctx = new NotExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(689); - match(Not); - setState(690); - singleExpression(25); - } - break; - case 9: - { - _localctx = new ThisExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(691); - match(This); - } - break; - case 10: - { - _localctx = new IdentifierExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(692); - match(Identifier); - } - break; - case 11: - { - _localctx = new SuperExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(693); - match(Super); - } - break; - case 12: - { - _localctx = new LiteralExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(694); - literal(); - } - break; - case 13: - { - _localctx = new ArrayLiteralExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(695); - arrayLiteral(); - } - break; - case 14: - { - _localctx = new ObjectLiteralExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(696); - objectLiteral(); - } - break; - case 15: - { - _localctx = new ParenthesizedExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(697); - match(OpenParen); - setState(698); - expressionSequence(); - setState(699); - match(CloseParen); - } - break; - case 16: - { - _localctx = new ArrowFunctionExpressionContext(_localctx); - _ctx = _localctx; - _prevctx = _localctx; - setState(701); - arrowFunctionParameters(); - setState(702); - match(ARROW); - setState(703); - arrowFunctionBody(); - } - break; - } - _ctx.stop = _input.LT(-1); - setState(776); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,75,_ctx); - while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) { - if ( _alt==1 ) { - if ( _parseListeners!=null ) triggerExitRuleEvent(); - _prevctx = _localctx; - { - setState(774); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,74,_ctx) ) { - case 1: - { - _localctx = new MultiplicativeExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(707); - if (!(precpred(_ctx, 24))) throw new FailedPredicateException(this, "precpred(_ctx, 24)"); - setState(708); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << Multiply) | (1L << Divide) | (1L << Modulus))) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(709); - singleExpression(25); - } - break; - case 2: - { - _localctx = new AdditiveExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(710); - if (!(precpred(_ctx, 23))) throw new FailedPredicateException(this, "precpred(_ctx, 23)"); - setState(711); - _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(712); - singleExpression(24); - } - break; - case 3: - { - _localctx = new BitShiftExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(713); - if (!(precpred(_ctx, 22))) throw new FailedPredicateException(this, "precpred(_ctx, 22)"); - setState(714); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RightShiftArithmetic) | (1L << LeftShiftArithmetic) | (1L << RightShiftLogical))) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(715); - singleExpression(23); - } - break; - case 4: - { - _localctx = new RelationalExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(716); - if (!(precpred(_ctx, 21))) throw new FailedPredicateException(this, "precpred(_ctx, 21)"); - setState(717); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << LessThan) | (1L << MoreThan) | (1L << LessThanEquals) | (1L << GreaterThanEquals))) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(718); - singleExpression(22); - } - break; - case 5: - { - _localctx = new InstanceofExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(719); - if (!(precpred(_ctx, 20))) throw new FailedPredicateException(this, "precpred(_ctx, 20)"); - setState(720); - match(Instanceof); - setState(721); - singleExpression(21); - } - break; - case 6: - { - _localctx = new InExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(722); - if (!(precpred(_ctx, 19))) throw new FailedPredicateException(this, "precpred(_ctx, 19)"); - setState(723); - match(In); - setState(724); - singleExpression(20); - } - break; - case 7: - { - _localctx = new EqualityExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(725); - if (!(precpred(_ctx, 18))) throw new FailedPredicateException(this, "precpred(_ctx, 18)"); - setState(726); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << Equals_) | (1L << NotEquals) | (1L << IdentityEquals) | (1L << IdentityNotEquals))) != 0)) ) { - _errHandler.recoverInline(this); - } - else { - if ( _input.LA(1)==Token.EOF ) matchedEOF = true; - _errHandler.reportMatch(this); - consume(); - } - setState(727); - singleExpression(19); - } - break; - case 8: - { - _localctx = new BitAndExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(728); - if (!(precpred(_ctx, 17))) throw new FailedPredicateException(this, "precpred(_ctx, 17)"); - setState(729); - match(BitAnd); - setState(730); - singleExpression(18); - } - break; - case 9: - { - _localctx = new BitXOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(731); - if (!(precpred(_ctx, 16))) throw new FailedPredicateException(this, "precpred(_ctx, 16)"); - setState(732); - match(BitXOr); - setState(733); - singleExpression(17); - } - break; - case 10: - { - _localctx = new BitOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(734); - if (!(precpred(_ctx, 15))) throw new FailedPredicateException(this, "precpred(_ctx, 15)"); - setState(735); - match(BitOr); - setState(736); - singleExpression(16); - } - break; - case 11: - { - _localctx = new LogicalAndExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(737); - if (!(precpred(_ctx, 14))) throw new FailedPredicateException(this, "precpred(_ctx, 14)"); - setState(738); - match(And); - setState(739); - singleExpression(15); - } - break; - case 12: - { - _localctx = new LogicalOrExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(740); - if (!(precpred(_ctx, 13))) throw new FailedPredicateException(this, "precpred(_ctx, 13)"); - setState(741); - match(Or); - setState(742); - singleExpression(14); - } - break; - case 13: - { - _localctx = new TernaryExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(743); - if (!(precpred(_ctx, 12))) throw new FailedPredicateException(this, "precpred(_ctx, 12)"); - setState(744); - match(QuestionMark); - setState(745); - singleExpression(0); - setState(746); - match(Colon); - setState(747); - singleExpression(13); - } - break; - case 14: - { - _localctx = new AssignmentExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(749); - if (!(precpred(_ctx, 11))) throw new FailedPredicateException(this, "precpred(_ctx, 11)"); - setState(750); - match(Assign); - setState(751); - singleExpression(12); - } - break; - case 15: - { - _localctx = new AssignmentOperatorExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(752); - if (!(precpred(_ctx, 10))) throw new FailedPredicateException(this, "precpred(_ctx, 10)"); - setState(753); - assignmentOperator(); - setState(754); - singleExpression(11); - } - break; - case 16: - { - _localctx = new MemberIndexExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(756); - if (!(precpred(_ctx, 37))) throw new FailedPredicateException(this, "precpred(_ctx, 37)"); - setState(757); - match(OpenBracket); - setState(758); - expressionSequence(); - setState(759); - match(CloseBracket); - } - break; - case 17: - { - _localctx = new MemberDotExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(761); - if (!(precpred(_ctx, 36))) throw new FailedPredicateException(this, "precpred(_ctx, 36)"); - setState(762); - match(Dot); - setState(763); - identifierName(); - } - break; - case 18: - { - _localctx = new ArgumentsExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(764); - if (!(precpred(_ctx, 35))) throw new FailedPredicateException(this, "precpred(_ctx, 35)"); - setState(765); - arguments(); - } - break; - case 19: - { - _localctx = new PostIncrementExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(766); - if (!(precpred(_ctx, 33))) throw new FailedPredicateException(this, "precpred(_ctx, 33)"); - setState(767); - if (!(notLineTerminator())) throw new FailedPredicateException(this, "notLineTerminator()"); - setState(768); - match(PlusPlus); - } - break; - case 20: - { - _localctx = new PostDecreaseExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(769); - if (!(precpred(_ctx, 32))) throw new FailedPredicateException(this, "precpred(_ctx, 32)"); - setState(770); - if (!(notLineTerminator())) throw new FailedPredicateException(this, "notLineTerminator()"); - setState(771); - match(MinusMinus); - } - break; - case 21: - { - _localctx = new TemplateStringExpressionContext(new SingleExpressionContext(_parentctx, _parentState)); - pushNewRecursionContext(_localctx, _startState, RULE_singleExpression); - setState(772); - if (!(precpred(_ctx, 9))) throw new FailedPredicateException(this, "precpred(_ctx, 9)"); - setState(773); - match(TemplateStringLiteral); - } - break; - } - } - } - setState(778); - _errHandler.sync(this); - _alt = getInterpreter().adaptivePredict(_input,75,_ctx); - } - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - unrollRecursionContexts(_parentctx); - } - return _localctx; - } - - public static class ArrowFunctionParametersContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 0); } - public TerminalNode OpenParen() { return getToken(YJSParser.OpenParen, 0); } - public TerminalNode CloseParen() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterArrowFunctionParameters(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitArrowFunctionParameters(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitArrowFunctionParameters(this); - else return visitor.visitChildren(this); - } - } - - public final ArrowFunctionParametersContext arrowFunctionParameters() throws RecognitionException { - ArrowFunctionParametersContext _localctx = new ArrowFunctionParametersContext(_ctx, getState()); - enterRule(_localctx, 128, RULE_arrowFunctionParameters); - int _la; - try { - setState(785); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(779); - match(Identifier); - } - break; - case OpenParen: - enterOuterAlt(_localctx, 2); - { - setState(780); - match(OpenParen); - setState(782); - _errHandler.sync(this); - _la = _input.LA(1); - if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OpenBracket) | (1L << OpenBrace) | (1L << Ellipsis))) != 0) || _la==Identifier) { - { - setState(781); - formalParameterList(); - } - } - - setState(784); - 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; - } - - public static class ArrowFunctionBodyContext extends ParserRuleContext { - public SingleExpressionContext singleExpression() { - return getRuleContext(SingleExpressionContext.class,0); - } - public TerminalNode OpenBrace() { return getToken(YJSParser.OpenBrace, 0); } - public FunctionBodyContext functionBody() { - return getRuleContext(FunctionBodyContext.class,0); - } - public TerminalNode CloseBrace() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterArrowFunctionBody(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitArrowFunctionBody(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitArrowFunctionBody(this); - else return visitor.visitChildren(this); - } - } - - public final ArrowFunctionBodyContext arrowFunctionBody() throws RecognitionException { - ArrowFunctionBodyContext _localctx = new ArrowFunctionBodyContext(_ctx, getState()); - enterRule(_localctx, 130, RULE_arrowFunctionBody); - try { - setState(792); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,78,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(787); - singleExpression(0); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(788); - match(OpenBrace); - setState(789); - functionBody(); - setState(790); - match(CloseBrace); - } - break; - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class AssignmentOperatorContext extends ParserRuleContext { - public TerminalNode MultiplyAssign() { return getToken(YJSParser.MultiplyAssign, 0); } - public TerminalNode DivideAssign() { return getToken(YJSParser.DivideAssign, 0); } - public TerminalNode ModulusAssign() { return getToken(YJSParser.ModulusAssign, 0); } - public TerminalNode PlusAssign() { return getToken(YJSParser.PlusAssign, 0); } - public TerminalNode MinusAssign() { return getToken(YJSParser.MinusAssign, 0); } - public TerminalNode LeftShiftArithmeticAssign() { return getToken(YJSParser.LeftShiftArithmeticAssign, 0); } - public TerminalNode RightShiftArithmeticAssign() { return getToken(YJSParser.RightShiftArithmeticAssign, 0); } - public TerminalNode RightShiftLogicalAssign() { return getToken(YJSParser.RightShiftLogicalAssign, 0); } - public TerminalNode BitAndAssign() { return getToken(YJSParser.BitAndAssign, 0); } - public TerminalNode BitXorAssign() { return getToken(YJSParser.BitXorAssign, 0); } - public TerminalNode BitOrAssign() { return getToken(YJSParser.BitOrAssign, 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 YJSParserListener ) ((YJSParserListener)listener).enterAssignmentOperator(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitAssignmentOperator(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitAssignmentOperator(this); - else return visitor.visitChildren(this); - } - } - - public final AssignmentOperatorContext assignmentOperator() throws RecognitionException { - AssignmentOperatorContext _localctx = new AssignmentOperatorContext(_ctx, getState()); - enterRule(_localctx, 132, RULE_assignmentOperator); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(794); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << MultiplyAssign) | (1L << DivideAssign) | (1L << ModulusAssign) | (1L << PlusAssign) | (1L << MinusAssign) | (1L << LeftShiftArithmeticAssign) | (1L << RightShiftArithmeticAssign) | (1L << RightShiftLogicalAssign) | (1L << BitAndAssign) | (1L << BitXorAssign) | (1L << BitOrAssign))) != 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 static class LiteralContext extends ParserRuleContext { - public TerminalNode NullLiteral() { return getToken(YJSParser.NullLiteral, 0); } - public TerminalNode BooleanLiteral() { return getToken(YJSParser.BooleanLiteral, 0); } - public TerminalNode StringLiteral() { return getToken(YJSParser.StringLiteral, 0); } - public TerminalNode TemplateStringLiteral() { return getToken(YJSParser.TemplateStringLiteral, 0); } - public TerminalNode RegularExpressionLiteral() { return getToken(YJSParser.RegularExpressionLiteral, 0); } - public NumericLiteralContext numericLiteral() { - return getRuleContext(NumericLiteralContext.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 YJSParserListener ) ((YJSParserListener)listener).enterLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitLiteral(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitLiteral(this); - else return visitor.visitChildren(this); - } - } - - public final LiteralContext literal() throws RecognitionException { - LiteralContext _localctx = new LiteralContext(_ctx, getState()); - enterRule(_localctx, 134, RULE_literal); - try { - setState(802); - _errHandler.sync(this); - switch (_input.LA(1)) { - case NullLiteral: - enterOuterAlt(_localctx, 1); - { - setState(796); - match(NullLiteral); - } - break; - case BooleanLiteral: - enterOuterAlt(_localctx, 2); - { - setState(797); - match(BooleanLiteral); - } - break; - case StringLiteral: - enterOuterAlt(_localctx, 3); - { - setState(798); - match(StringLiteral); - } - break; - case TemplateStringLiteral: - enterOuterAlt(_localctx, 4); - { - setState(799); - match(TemplateStringLiteral); - } - break; - case RegularExpressionLiteral: - enterOuterAlt(_localctx, 5); - { - setState(800); - match(RegularExpressionLiteral); - } - break; - case DecimalLiteral: - case HexIntegerLiteral: - case OctalIntegerLiteral: - case OctalIntegerLiteral2: - case BinaryIntegerLiteral: - enterOuterAlt(_localctx, 6); - { - setState(801); - numericLiteral(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class NumericLiteralContext extends ParserRuleContext { - public TerminalNode DecimalLiteral() { return getToken(YJSParser.DecimalLiteral, 0); } - public TerminalNode HexIntegerLiteral() { return getToken(YJSParser.HexIntegerLiteral, 0); } - public TerminalNode OctalIntegerLiteral() { return getToken(YJSParser.OctalIntegerLiteral, 0); } - public TerminalNode OctalIntegerLiteral2() { return getToken(YJSParser.OctalIntegerLiteral2, 0); } - public TerminalNode BinaryIntegerLiteral() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterNumericLiteral(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitNumericLiteral(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitNumericLiteral(this); - else return visitor.visitChildren(this); - } - } - - public final NumericLiteralContext numericLiteral() throws RecognitionException { - NumericLiteralContext _localctx = new NumericLiteralContext(_ctx, getState()); - enterRule(_localctx, 136, RULE_numericLiteral); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(804); - _la = _input.LA(1); - if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << DecimalLiteral) | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 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 static class IdentifierNameContext extends ParserRuleContext { - public TerminalNode Identifier() { return getToken(YJSParser.Identifier, 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 YJSParserListener ) ((YJSParserListener)listener).enterIdentifierName(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitIdentifierName(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitIdentifierName(this); - else return visitor.visitChildren(this); - } - } - - public final IdentifierNameContext identifierName() throws RecognitionException { - IdentifierNameContext _localctx = new IdentifierNameContext(_ctx, getState()); - enterRule(_localctx, 138, RULE_identifierName); - try { - setState(808); - _errHandler.sync(this); - switch (_input.LA(1)) { - case Identifier: - enterOuterAlt(_localctx, 1); - { - setState(806); - match(Identifier); - } - 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 Sharable: - 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 Yield: - enterOuterAlt(_localctx, 2); - { - setState(807); - reservedWord(); - } - break; - default: - throw new NoViableAltException(this); - } - } - catch (RecognitionException re) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally { - exitRule(); - } - return _localctx; - } - - public static class ReservedWordContext extends ParserRuleContext { - public KeywordContext keyword() { - return getRuleContext(KeywordContext.class,0); - } - public TerminalNode NullLiteral() { return getToken(YJSParser.NullLiteral, 0); } - public TerminalNode BooleanLiteral() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterReservedWord(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitReservedWord(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitReservedWord(this); - else return visitor.visitChildren(this); - } - } - - public final ReservedWordContext reservedWord() throws RecognitionException { - ReservedWordContext _localctx = new ReservedWordContext(_ctx, getState()); - enterRule(_localctx, 140, RULE_reservedWord); - try { - setState(813); - _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 Sharable: - 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 Yield: - enterOuterAlt(_localctx, 1); - { - setState(810); - keyword(); - } - break; - case NullLiteral: - enterOuterAlt(_localctx, 2); - { - setState(811); - match(NullLiteral); - } - break; - case BooleanLiteral: - enterOuterAlt(_localctx, 3); - { - setState(812); - 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; - } - - public static class KeywordContext extends ParserRuleContext { - public TerminalNode Break() { return getToken(YJSParser.Break, 0); } - public TerminalNode Do() { return getToken(YJSParser.Do, 0); } - public TerminalNode Instanceof() { return getToken(YJSParser.Instanceof, 0); } - public TerminalNode Typeof() { return getToken(YJSParser.Typeof, 0); } - public TerminalNode Case() { return getToken(YJSParser.Case, 0); } - public TerminalNode Else() { return getToken(YJSParser.Else, 0); } - public TerminalNode New() { return getToken(YJSParser.New, 0); } - public TerminalNode Var() { return getToken(YJSParser.Var, 0); } - public TerminalNode Catch() { return getToken(YJSParser.Catch, 0); } - public TerminalNode Finally() { return getToken(YJSParser.Finally, 0); } - public TerminalNode Return() { return getToken(YJSParser.Return, 0); } - public TerminalNode Void() { return getToken(YJSParser.Void, 0); } - public TerminalNode Continue() { return getToken(YJSParser.Continue, 0); } - public TerminalNode For() { return getToken(YJSParser.For, 0); } - public TerminalNode Switch() { return getToken(YJSParser.Switch, 0); } - public TerminalNode While() { return getToken(YJSParser.While, 0); } - public TerminalNode Debugger() { return getToken(YJSParser.Debugger, 0); } - public TerminalNode Function() { return getToken(YJSParser.Function, 0); } - public TerminalNode This() { return getToken(YJSParser.This, 0); } - public TerminalNode With() { return getToken(YJSParser.With, 0); } - public TerminalNode Default() { return getToken(YJSParser.Default, 0); } - public TerminalNode If() { return getToken(YJSParser.If, 0); } - public TerminalNode Throw() { return getToken(YJSParser.Throw, 0); } - public TerminalNode Delete() { return getToken(YJSParser.Delete, 0); } - public TerminalNode In() { return getToken(YJSParser.In, 0); } - public TerminalNode Try() { return getToken(YJSParser.Try, 0); } - public TerminalNode Class() { return getToken(YJSParser.Class, 0); } - public TerminalNode Enum() { return getToken(YJSParser.Enum, 0); } - public TerminalNode Extends() { return getToken(YJSParser.Extends, 0); } - public TerminalNode Super() { return getToken(YJSParser.Super, 0); } - public TerminalNode Const() { return getToken(YJSParser.Const, 0); } - public TerminalNode Export() { return getToken(YJSParser.Export, 0); } - public TerminalNode Import() { return getToken(YJSParser.Import, 0); } - public TerminalNode Implements() { return getToken(YJSParser.Implements, 0); } - public TerminalNode Let() { return getToken(YJSParser.Let, 0); } - public TerminalNode Private() { return getToken(YJSParser.Private, 0); } - public TerminalNode Public() { return getToken(YJSParser.Public, 0); } - public TerminalNode Interface() { return getToken(YJSParser.Interface, 0); } - public TerminalNode Package() { return getToken(YJSParser.Package, 0); } - public TerminalNode Protected() { return getToken(YJSParser.Protected, 0); } - public TerminalNode Static() { return getToken(YJSParser.Static, 0); } - public TerminalNode Yield() { return getToken(YJSParser.Yield, 0); } - public TerminalNode Sharable() { return getToken(YJSParser.Sharable, 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 YJSParserListener ) ((YJSParserListener)listener).enterKeyword(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitKeyword(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitKeyword(this); - else return visitor.visitChildren(this); - } - } - - public final KeywordContext keyword() throws RecognitionException { - KeywordContext _localctx = new KeywordContext(_ctx, getState()); - enterRule(_localctx, 142, RULE_keyword); - int _la; - try { - enterOuterAlt(_localctx, 1); - { - setState(815); - _la = _input.LA(1); - if ( !(((((_la - 61)) & ~0x3f) == 0 && ((1L << (_la - 61)) & ((1L << (Break - 61)) | (1L << (Do - 61)) | (1L << (Instanceof - 61)) | (1L << (Typeof - 61)) | (1L << (Case - 61)) | (1L << (Else - 61)) | (1L << (New - 61)) | (1L << (Var - 61)) | (1L << (Catch - 61)) | (1L << (Finally - 61)) | (1L << (Return - 61)) | (1L << (Void - 61)) | (1L << (Continue - 61)) | (1L << (For - 61)) | (1L << (Switch - 61)) | (1L << (While - 61)) | (1L << (Debugger - 61)) | (1L << (Function - 61)) | (1L << (This - 61)) | (1L << (With - 61)) | (1L << (Default - 61)) | (1L << (If - 61)) | (1L << (Throw - 61)) | (1L << (Delete - 61)) | (1L << (In - 61)) | (1L << (Try - 61)) | (1L << (Sharable - 61)) | (1L << (Class - 61)) | (1L << (Enum - 61)) | (1L << (Extends - 61)) | (1L << (Super - 61)) | (1L << (Const - 61)) | (1L << (Export - 61)) | (1L << (Import - 61)) | (1L << (Implements - 61)) | (1L << (Let - 61)) | (1L << (Private - 61)) | (1L << (Public - 61)) | (1L << (Interface - 61)) | (1L << (Package - 61)) | (1L << (Protected - 61)) | (1L << (Static - 61)) | (1L << (Yield - 61)))) != 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 static class EosContext extends ParserRuleContext { - public TerminalNode SemiColon() { return getToken(YJSParser.SemiColon, 0); } - public TerminalNode EOF() { return getToken(YJSParser.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 YJSParserListener ) ((YJSParserListener)listener).enterEos(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof YJSParserListener ) ((YJSParserListener)listener).exitEos(this); - } - @Override - public T accept(ParseTreeVisitor visitor) { - if ( visitor instanceof YJSParserVisitor ) return ((YJSParserVisitor)visitor).visitEos(this); - else return visitor.visitChildren(this); - } - } - - public final EosContext eos() throws RecognitionException { - EosContext _localctx = new EosContext(_ctx, getState()); - enterRule(_localctx, 144, RULE_eos); - try { - setState(821); - _errHandler.sync(this); - switch ( getInterpreter().adaptivePredict(_input,82,_ctx) ) { - case 1: - enterOuterAlt(_localctx, 1); - { - setState(817); - match(SemiColon); - } - break; - case 2: - enterOuterAlt(_localctx, 2); - { - setState(818); - match(EOF); - } - break; - case 3: - enterOuterAlt(_localctx, 3); - { - setState(819); - if (!(lineTerminatorAhead())) throw new FailedPredicateException(this, "lineTerminatorAhead()"); - } - break; - case 4: - enterOuterAlt(_localctx, 4); - { - setState(820); - if (!(closeBrace())) throw new FailedPredicateException(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 26: - return expressionStatement_sempred((ExpressionStatementContext)_localctx, predIndex); - case 28: - return iterationStatement_sempred((IterationStatementContext)_localctx, predIndex); - case 30: - return continueStatement_sempred((ContinueStatementContext)_localctx, predIndex); - case 31: - return breakStatement_sempred((BreakStatementContext)_localctx, predIndex); - case 32: - return returnStatement_sempred((ReturnStatementContext)_localctx, predIndex); - case 39: - return throwStatement_sempred((ThrowStatementContext)_localctx, predIndex); - case 63: - return singleExpression_sempred((SingleExpressionContext)_localctx, predIndex); - case 72: - return eos_sempred((EosContext)_localctx, predIndex); - } - return true; - } - private boolean expressionStatement_sempred(ExpressionStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 0: - return notOpenBraceAndNotFunction(); - } - return true; - } - private boolean iterationStatement_sempred(IterationStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 1: - return p("of"); - case 2: - return p("of"); - } - return true; - } - private boolean continueStatement_sempred(ContinueStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 3: - return notLineTerminator(); - } - return true; - } - private boolean breakStatement_sempred(BreakStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 4: - return notLineTerminator(); - } - return true; - } - private boolean returnStatement_sempred(ReturnStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 5: - return notLineTerminator(); - } - return true; - } - private boolean throwStatement_sempred(ThrowStatementContext _localctx, int predIndex) { - switch (predIndex) { - case 6: - return notLineTerminator(); - } - return true; - } - private boolean singleExpression_sempred(SingleExpressionContext _localctx, int predIndex) { - switch (predIndex) { - case 7: - return precpred(_ctx, 24); - case 8: - return precpred(_ctx, 23); - case 9: - return precpred(_ctx, 22); - case 10: - return precpred(_ctx, 21); - case 11: - return precpred(_ctx, 20); - case 12: - return precpred(_ctx, 19); - case 13: - return precpred(_ctx, 18); - case 14: - return precpred(_ctx, 17); - case 15: - return precpred(_ctx, 16); - case 16: - return precpred(_ctx, 15); - case 17: - return precpred(_ctx, 14); - case 18: - return precpred(_ctx, 13); - case 19: - return precpred(_ctx, 12); - case 20: - return precpred(_ctx, 11); - case 21: - return precpred(_ctx, 10); - case 22: - return precpred(_ctx, 37); - case 23: - return precpred(_ctx, 36); - case 24: - return precpred(_ctx, 35); - case 25: - return precpred(_ctx, 33); - case 26: - return notLineTerminator(); - case 27: - return precpred(_ctx, 32); - case 28: - return notLineTerminator(); - case 29: - return precpred(_ctx, 9); - } - return true; - } - private boolean eos_sempred(EosContext _localctx, int predIndex) { - switch (predIndex) { - case 30: - return lineTerminatorAhead(); - case 31: - return closeBrace(); - } - return true; - } - - public static final String _serializedATN = - "\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\3}\u033a\4\2\t\2\4"+ - "\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t"+ - "\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22"+ - "\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31"+ - "\4\32\t\32\4\33\t\33\4\34\t\34\4\35\t\35\4\36\t\36\4\37\t\37\4 \t \4!"+ - "\t!\4\"\t\"\4#\t#\4$\t$\4%\t%\4&\t&\4\'\t\'\4(\t(\4)\t)\4*\t*\4+\t+\4"+ - ",\t,\4-\t-\4.\t.\4/\t/\4\60\t\60\4\61\t\61\4\62\t\62\4\63\t\63\4\64\t"+ - "\64\4\65\t\65\4\66\t\66\4\67\t\67\48\t8\49\t9\4:\t:\4;\t;\4<\t<\4=\t="+ - "\4>\t>\4?\t?\4@\t@\4A\tA\4B\tB\4C\tC\4D\tD\4E\tE\4F\tF\4G\tG\4H\tH\4I"+ - "\tI\4J\tJ\3\2\5\2\u0096\n\2\3\2\3\2\3\3\5\3\u009b\n\3\3\3\3\3\3\3\3\3"+ - "\6\3\u00a1\n\3\r\3\16\3\u00a2\3\3\3\3\3\4\6\4\u00a8\n\4\r\4\16\4\u00a9"+ - "\3\5\3\5\3\5\3\5\5\5\u00b0\n\5\3\5\3\5\3\6\3\6\3\6\7\6\u00b7\n\6\f\6\16"+ - "\6\u00ba\13\6\3\7\3\7\3\7\5\7\u00bf\n\7\3\b\3\b\3\b\3\b\3\b\5\b\u00c6"+ - "\n\b\3\t\5\t\u00c9\n\t\3\t\3\t\3\t\3\t\5\t\u00cf\n\t\3\t\3\t\3\t\3\n\3"+ - "\n\5\n\u00d6\n\n\3\n\3\n\3\n\3\n\5\n\u00dc\n\n\3\n\3\n\3\n\5\n\u00e1\n"+ - "\n\3\n\3\n\5\n\u00e5\n\n\3\13\3\13\3\f\3\f\3\r\3\r\3\16\6\16\u00ee\n\16"+ - "\r\16\16\16\u00ef\3\17\3\17\3\17\3\17\3\20\3\20\3\20\3\20\3\20\3\21\3"+ - "\21\3\21\7\21\u00fe\n\21\f\21\16\21\u0101\13\21\3\22\3\22\3\22\3\22\3"+ - "\22\3\22\3\22\3\22\3\22\3\22\5\22\u010d\n\22\3\23\3\23\5\23\u0111\n\23"+ - "\3\23\3\23\3\24\6\24\u0116\n\24\r\24\16\24\u0117\3\25\3\25\3\26\3\26\3"+ - "\26\3\26\3\27\3\27\3\30\3\30\3\30\3\30\3\31\3\31\3\31\7\31\u0129\n\31"+ - "\f\31\16\31\u012c\13\31\3\32\3\32\3\32\5\32\u0131\n\32\3\33\3\33\3\34"+ - "\3\34\3\34\3\34\3\35\3\35\3\35\3\35\3\35\3\35\3\35\5\35\u0140\n\35\3\36"+ - "\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36"+ - "\3\36\3\36\5\36\u0153\n\36\3\36\3\36\5\36\u0157\n\36\3\36\3\36\5\36\u015b"+ - "\n\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\5\36\u0165\n\36\3\36\3\36"+ - "\5\36\u0169\n\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\5\36\u0174"+ - "\n\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\5\36\u0181"+ - "\n\36\3\36\3\36\3\36\3\36\5\36\u0187\n\36\3\37\3\37\3 \3 \3 \5 \u018e"+ - "\n \3 \3 \3!\3!\3!\5!\u0195\n!\3!\3!\3\"\3\"\3\"\5\"\u019c\n\"\3\"\3\""+ - "\3#\3#\3#\3#\3#\3#\3$\3$\3$\3$\3$\3$\3%\3%\5%\u01ae\n%\3%\3%\5%\u01b2"+ - "\n%\5%\u01b4\n%\3%\3%\3&\6&\u01b9\n&\r&\16&\u01ba\3\'\3\'\3\'\3\'\5\'"+ - "\u01c1\n\'\3(\3(\3(\5(\u01c6\n(\3)\3)\3)\3)\3)\3*\3*\3*\3*\5*\u01d1\n"+ - "*\3*\5*\u01d4\n*\3+\3+\3+\3+\3+\3+\3,\3,\3,\3-\3-\3-\3.\5.\u01e3\n.\3"+ - ".\5.\u01e6\n.\3.\3.\3.\3.\5.\u01ec\n.\3.\3.\5.\u01f0\n.\3.\3.\3.\3.\3"+ - "/\3/\3/\3/\3\60\3\60\5\60\u01fc\n\60\3\60\3\60\7\60\u0200\n\60\f\60\16"+ - "\60\u0203\13\60\3\60\3\60\3\61\5\61\u0208\n\61\3\61\3\61\3\62\3\62\3\62"+ - "\5\62\u020f\n\62\3\62\3\62\3\62\3\62\3\62\3\63\3\63\3\63\7\63\u0219\n"+ - "\63\f\63\16\63\u021c\13\63\3\63\3\63\5\63\u0220\n\63\3\63\3\63\3\63\5"+ - "\63\u0225\n\63\3\64\3\64\3\64\5\64\u022a\n\64\3\65\3\65\3\65\3\66\5\66"+ - "\u0230\n\66\3\67\6\67\u0233\n\67\r\67\16\67\u0234\38\38\78\u0239\n8\f"+ - "8\168\u023c\138\38\58\u023f\n8\38\78\u0242\n8\f8\168\u0245\138\38\38\3"+ - "9\39\69\u024b\n9\r9\169\u024c\39\79\u0250\n9\f9\169\u0253\139\39\69\u0256"+ - "\n9\r9\169\u0257\39\59\u025b\n9\39\59\u025e\n9\3:\3:\3:\3;\3;\3;\3;\7"+ - ";\u0267\n;\f;\16;\u026a\13;\5;\u026c\n;\3;\5;\u026f\n;\3;\3;\3<\3<\3<"+ - "\3<\3<\3<\3<\3<\3<\3<\3<\5<\u027e\n<\3=\3=\3=\5=\u0283\n=\3>\3>\3>\3>"+ - "\7>\u0289\n>\f>\16>\u028c\13>\3>\3>\5>\u0290\n>\3>\5>\u0293\n>\3>\3>\3"+ - "?\3?\3?\3@\3@\3@\7@\u029d\n@\f@\16@\u02a0\13@\3A\3A\3A\3A\5A\u02a6\nA"+ - "\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A"+ - "\3A\3A\3A\3A\3A\5A\u02c4\nA\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A"+ - "\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A"+ - "\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A"+ - "\3A\3A\3A\3A\3A\3A\3A\7A\u0309\nA\fA\16A\u030c\13A\3B\3B\3B\5B\u0311\n"+ - "B\3B\5B\u0314\nB\3C\3C\3C\3C\3C\5C\u031b\nC\3D\3D\3E\3E\3E\3E\3E\3E\5"+ - "E\u0325\nE\3F\3F\3G\3G\5G\u032b\nG\3H\3H\3H\5H\u0330\nH\3I\3I\3J\3J\3"+ - "J\3J\5J\u0338\nJ\3J\2\3\u0080K\2\4\6\b\n\f\16\20\22\24\26\30\32\34\36"+ - " \"$&(*,.\60\62\64\668:<>@BDFHJLNPRTVXZ\\^`bdfhjlnprtvxz|~\u0080\u0082"+ - "\u0084\u0086\u0088\u008a\u008c\u008e\u0090\u0092\2\16\3\2il\3\2_`\3\2"+ - "\\^\4\2\16\16\20\20\3\2\31\33\3\2\25\26\3\2\34\36\3\2\37\"\3\2#&\3\2,"+ - "\66\3\2:>\6\2?X[[bhmu\2\u0380\2\u0095\3\2\2\2\4\u009a\3\2\2\2\6\u00a7"+ - "\3\2\2\2\b\u00ab\3\2\2\2\n\u00b3\3\2\2\2\f\u00be\3\2\2\2\16\u00c5\3\2"+ - "\2\2\20\u00c8\3\2\2\2\22\u00e4\3\2\2\2\24\u00e6\3\2\2\2\26\u00e8\3\2\2"+ - "\2\30\u00ea\3\2\2\2\32\u00ed\3\2\2\2\34\u00f1\3\2\2\2\36\u00f5\3\2\2\2"+ - " \u00fa\3\2\2\2\"\u010c\3\2\2\2$\u010e\3\2\2\2&\u0115\3\2\2\2(\u0119\3"+ - "\2\2\2*\u011b\3\2\2\2,\u011f\3\2\2\2.\u0121\3\2\2\2\60\u0125\3\2\2\2\62"+ - "\u012d\3\2\2\2\64\u0132\3\2\2\2\66\u0134\3\2\2\28\u0138\3\2\2\2:\u0186"+ - "\3\2\2\2<\u0188\3\2\2\2>\u018a\3\2\2\2@\u0191\3\2\2\2B\u0198\3\2\2\2D"+ - "\u019f\3\2\2\2F\u01a5\3\2\2\2H\u01ab\3\2\2\2J\u01b8\3\2\2\2L\u01bc\3\2"+ - "\2\2N\u01c2\3\2\2\2P\u01c7\3\2\2\2R\u01cc\3\2\2\2T\u01d5\3\2\2\2V\u01db"+ - "\3\2\2\2X\u01de\3\2\2\2Z\u01e2\3\2\2\2\\\u01f5\3\2\2\2^\u01fb\3\2\2\2"+ - "`\u0207\3\2\2\2b\u020b\3\2\2\2d\u0224\3\2\2\2f\u0226\3\2\2\2h\u022b\3"+ - "\2\2\2j\u022f\3\2\2\2l\u0232\3\2\2\2n\u0236\3\2\2\2p\u025d\3\2\2\2r\u025f"+ - "\3\2\2\2t\u0262\3\2\2\2v\u027d\3\2\2\2x\u0282\3\2\2\2z\u0284\3\2\2\2|"+ - "\u0296\3\2\2\2~\u0299\3\2\2\2\u0080\u02c3\3\2\2\2\u0082\u0313\3\2\2\2"+ - "\u0084\u031a\3\2\2\2\u0086\u031c\3\2\2\2\u0088\u0324\3\2\2\2\u008a\u0326"+ - "\3\2\2\2\u008c\u032a\3\2\2\2\u008e\u032f\3\2\2\2\u0090\u0331\3\2\2\2\u0092"+ - "\u0337\3\2\2\2\u0094\u0096\5\32\16\2\u0095\u0094\3\2\2\2\u0095\u0096\3"+ - "\2\2\2\u0096\u0097\3\2\2\2\u0097\u0098\5\4\3\2\u0098\3\3\2\2\2\u0099\u009b"+ - "\5\6\4\2\u009a\u0099\3\2\2\2\u009a\u009b\3\2\2\2\u009b\u009c\3\2\2\2\u009c"+ - "\u009d\t\2\2\2\u009d\u009e\7v\2\2\u009e\u00a0\7\n\2\2\u009f\u00a1\5\16"+ - "\b\2\u00a0\u009f\3\2\2\2\u00a1\u00a2\3\2\2\2\u00a2\u00a0\3\2\2\2\u00a2"+ - "\u00a3\3\2\2\2\u00a3\u00a4\3\2\2\2\u00a4\u00a5\7\13\2\2\u00a5\5\3\2\2"+ - "\2\u00a6\u00a8\5\b\5\2\u00a7\u00a6\3\2\2\2\u00a8\u00a9\3\2\2\2\u00a9\u00a7"+ - "\3\2\2\2\u00a9\u00aa\3\2\2\2\u00aa\7\3\2\2\2\u00ab\u00ac\7Z\2\2\u00ac"+ - "\u00ad\7v\2\2\u00ad\u00af\7\b\2\2\u00ae\u00b0\5\n\6\2\u00af\u00ae\3\2"+ - "\2\2\u00af\u00b0\3\2\2\2\u00b0\u00b1\3\2\2\2\u00b1\u00b2\7\t\2\2\u00b2"+ - "\t\3\2\2\2\u00b3\u00b8\5\f\7\2\u00b4\u00b5\7\r\2\2\u00b5\u00b7\5\f\7\2"+ - "\u00b6\u00b4\3\2\2\2\u00b7\u00ba\3\2\2\2\u00b8\u00b6\3\2\2\2\u00b8\u00b9"+ - "\3\2\2\2\u00b9\13\3\2\2\2\u00ba\u00b8\3\2\2\2\u00bb\u00bf\5\u008aF\2\u00bc"+ - "\u00bf\7w\2\2\u00bd\u00bf\5t;\2\u00be\u00bb\3\2\2\2\u00be\u00bc\3\2\2"+ - "\2\u00be\u00bd\3\2\2\2\u00bf\r\3\2\2\2\u00c0\u00c6\5\\/\2\u00c1\u00c6"+ - "\5Z.\2\u00c2\u00c6\5\20\t\2\u00c3\u00c6\5\22\n\2\u00c4\u00c6\5(\25\2\u00c5"+ - "\u00c0\3\2\2\2\u00c5\u00c1\3\2\2\2\u00c5\u00c2\3\2\2\2\u00c5\u00c3\3\2"+ - "\2\2\u00c5\u00c4\3\2\2\2\u00c6\17\3\2\2\2\u00c7\u00c9\5\6\4\2\u00c8\u00c7"+ - "\3\2\2\2\u00c8\u00c9\3\2\2\2\u00c9\u00ca\3\2\2\2\u00ca\u00cb\7q\2\2\u00cb"+ - "\u00cc\7v\2\2\u00cc\u00ce\7\b\2\2\u00cd\u00cf\5d\63\2\u00ce\u00cd\3\2"+ - "\2\2\u00ce\u00cf\3\2\2\2\u00cf\u00d0\3\2\2\2\u00d0\u00d1\7\t\2\2\u00d1"+ - "\u00d2\5\u0092J\2\u00d2\21\3\2\2\2\u00d3\u00d5\7Y\2\2\u00d4\u00d6\5\24"+ - "\13\2\u00d5\u00d4\3\2\2\2\u00d5\u00d6\3\2\2\2\u00d6\u00d7\3\2\2\2\u00d7"+ - "\u00d8\7v\2\2\u00d8\u00e5\7\f\2\2\u00d9\u00db\7Y\2\2\u00da\u00dc\5\24"+ - "\13\2\u00db\u00da\3\2\2\2\u00db\u00dc\3\2\2\2\u00dc\u00dd\3\2\2\2\u00dd"+ - "\u00de\7v\2\2\u00de\u00e0\7\b\2\2\u00df\u00e1\5\26\f\2\u00e0\u00df\3\2"+ - "\2\2\u00e0\u00e1\3\2\2\2\u00e1\u00e2\3\2\2\2\u00e2\u00e3\7\t\2\2\u00e3"+ - "\u00e5\7\f\2\2\u00e4\u00d3\3\2\2\2\u00e4\u00d9\3\2\2\2\u00e5\23\3\2\2"+ - "\2\u00e6\u00e7\t\3\2\2\u00e7\25\3\2\2\2\u00e8\u00e9\t\4\2\2\u00e9\27\3"+ - "\2\2\2\u00ea\u00eb\5\"\22\2\u00eb\31\3\2\2\2\u00ec\u00ee\5\34\17\2\u00ed"+ - "\u00ec\3\2\2\2\u00ee\u00ef\3\2\2\2\u00ef\u00ed\3\2\2\2\u00ef\u00f0\3\2"+ - "\2\2\u00f0\33\3\2\2\2\u00f1\u00f2\7h\2\2\u00f2\u00f3\7w\2\2\u00f3\u00f4"+ - "\7\f\2\2\u00f4\35\3\2\2\2\u00f5\u00f6\7g\2\2\u00f6\u00f7\7v\2\2\u00f7"+ - "\u00f8\5 \21\2\u00f8\u00f9\7\f\2\2\u00f9\37\3\2\2\2\u00fa\u00ff\7:\2\2"+ - "\u00fb\u00fc\7\22\2\2\u00fc\u00fe\7:\2\2\u00fd\u00fb\3\2\2\2\u00fe\u0101"+ - "\3\2\2\2\u00ff\u00fd\3\2\2\2\u00ff\u0100\3\2\2\2\u0100!\3\2\2\2\u0101"+ - "\u00ff\3\2\2\2\u0102\u010d\5$\23\2\u0103\u010d\5.\30\2\u0104\u010d\5\64"+ - "\33\2\u0105\u010d\5\66\34\2\u0106\u010d\58\35\2\u0107\u010d\5:\36\2\u0108"+ - "\u010d\5> \2\u0109\u010d\5@!\2\u010a\u010d\5B\"\2\u010b\u010d\5F$\2\u010c"+ - "\u0102\3\2\2\2\u010c\u0103\3\2\2\2\u010c\u0104\3\2\2\2\u010c\u0105\3\2"+ - "\2\2\u010c\u0106\3\2\2\2\u010c\u0107\3\2\2\2\u010c\u0108\3\2\2\2\u010c"+ - "\u0109\3\2\2\2\u010c\u010a\3\2\2\2\u010c\u010b\3\2\2\2\u010d#\3\2\2\2"+ - "\u010e\u0110\7\n\2\2\u010f\u0111\5&\24\2\u0110\u010f\3\2\2\2\u0110\u0111"+ - "\3\2\2\2\u0111\u0112\3\2\2\2\u0112\u0113\7\13\2\2\u0113%\3\2\2\2\u0114"+ - "\u0116\5\"\22\2\u0115\u0114\3\2\2\2\u0116\u0117\3\2\2\2\u0117\u0115\3"+ - "\2\2\2\u0117\u0118\3\2\2\2\u0118\'\3\2\2\2\u0119\u011a\5*\26\2\u011a)"+ - "\3\2\2\2\u011b\u011c\5,\27\2\u011c\u011d\5\60\31\2\u011d\u011e\5\u0092"+ - "J\2\u011e+\3\2\2\2\u011f\u0120\7[\2\2\u0120-\3\2\2\2\u0121\u0122\5<\37"+ - "\2\u0122\u0123\5\60\31\2\u0123\u0124\5\u0092J\2\u0124/\3\2\2\2\u0125\u012a"+ - "\5\62\32\2\u0126\u0127\7\r\2\2\u0127\u0129\5\62\32\2\u0128\u0126\3\2\2"+ - "\2\u0129\u012c\3\2\2\2\u012a\u0128\3\2\2\2\u012a\u012b\3\2\2\2\u012b\61"+ - "\3\2\2\2\u012c\u012a\3\2\2\2\u012d\u0130\7v\2\2\u012e\u012f\7\16\2\2\u012f"+ - "\u0131\5\u0080A\2\u0130\u012e\3\2\2\2\u0130\u0131\3\2\2\2\u0131\63\3\2"+ - "\2\2\u0132\u0133\7\f\2\2\u0133\65\3\2\2\2\u0134\u0135\6\34\2\2\u0135\u0136"+ - "\5~@\2\u0136\u0137\5\u0092J\2\u0137\67\3\2\2\2\u0138\u0139\7T\2\2\u0139"+ - "\u013a\7\b\2\2\u013a\u013b\5~@\2\u013b\u013c\7\t\2\2\u013c\u013f\5\"\22"+ - "\2\u013d\u013e\7D\2\2\u013e\u0140\5\"\22\2\u013f\u013d\3\2\2\2\u013f\u0140"+ - "\3\2\2\2\u01409\3\2\2\2\u0141\u0142\7@\2\2\u0142\u0143\5\"\22\2\u0143"+ - "\u0144\7N\2\2\u0144\u0145\7\b\2\2\u0145\u0146\5~@\2\u0146\u0147\7\t\2"+ - "\2\u0147\u0148\5\u0092J\2\u0148\u0187\3\2\2\2\u0149\u014a\7N\2\2\u014a"+ - "\u014b\7\b\2\2\u014b\u014c\5~@\2\u014c\u014d\7\t\2\2\u014d\u014e\5\"\22"+ - "\2\u014e\u0187\3\2\2\2\u014f\u0150\7L\2\2\u0150\u0152\7\b\2\2\u0151\u0153"+ - "\5~@\2\u0152\u0151\3\2\2\2\u0152\u0153\3\2\2\2\u0153\u0154\3\2\2\2\u0154"+ - "\u0156\7\f\2\2\u0155\u0157\5~@\2\u0156\u0155\3\2\2\2\u0156\u0157\3\2\2"+ - "\2\u0157\u0158\3\2\2\2\u0158\u015a\7\f\2\2\u0159\u015b\5~@\2\u015a\u0159"+ - "\3\2\2\2\u015a\u015b\3\2\2\2\u015b\u015c\3\2\2\2\u015c\u015d\7\t\2\2\u015d"+ - "\u0187\5\"\22\2\u015e\u015f\7L\2\2\u015f\u0160\7\b\2\2\u0160\u0161\5<"+ - "\37\2\u0161\u0162\5\60\31\2\u0162\u0164\7\f\2\2\u0163\u0165\5~@\2\u0164"+ - "\u0163\3\2\2\2\u0164\u0165\3\2\2\2\u0165\u0166\3\2\2\2\u0166\u0168\7\f"+ - "\2\2\u0167\u0169\5~@\2\u0168\u0167\3\2\2\2\u0168\u0169\3\2\2\2\u0169\u016a"+ - "\3\2\2\2\u016a\u016b\7\t\2\2\u016b\u016c\5\"\22\2\u016c\u0187\3\2\2\2"+ - "\u016d\u016e\7L\2\2\u016e\u016f\7\b\2\2\u016f\u0173\5\u0080A\2\u0170\u0174"+ - "\7W\2\2\u0171\u0172\7v\2\2\u0172\u0174\6\36\3\2\u0173\u0170\3\2\2\2\u0173"+ - "\u0171\3\2\2\2\u0174\u0175\3\2\2\2\u0175\u0176\5~@\2\u0176\u0177\7\t\2"+ - "\2\u0177\u0178\5\"\22\2\u0178\u0187\3\2\2\2\u0179\u017a\7L\2\2\u017a\u017b"+ - "\7\b\2\2\u017b\u017c\5<\37\2\u017c\u0180\5\62\32\2\u017d\u0181\7W\2\2"+ - "\u017e\u017f\7v\2\2\u017f\u0181\6\36\4\2\u0180\u017d\3\2\2\2\u0180\u017e"+ - "\3\2\2\2\u0181\u0182\3\2\2\2\u0182\u0183\5~@\2\u0183\u0184\7\t\2\2\u0184"+ - "\u0185\5\"\22\2\u0185\u0187\3\2\2\2\u0186\u0141\3\2\2\2\u0186\u0149\3"+ - "\2\2\2\u0186\u014f\3\2\2\2\u0186\u015e\3\2\2\2\u0186\u016d\3\2\2\2\u0186"+ - "\u0179\3\2\2\2\u0187;\3\2\2\2\u0188\u0189\7F\2\2\u0189=\3\2\2\2\u018a"+ - "\u018d\7K\2\2\u018b\u018c\6 \5\2\u018c\u018e\7v\2\2\u018d\u018b\3\2\2"+ - "\2\u018d\u018e\3\2\2\2\u018e\u018f\3\2\2\2\u018f\u0190\5\u0092J\2\u0190"+ - "?\3\2\2\2\u0191\u0194\7?\2\2\u0192\u0193\6!\6\2\u0193\u0195\7v\2\2\u0194"+ - "\u0192\3\2\2\2\u0194\u0195\3\2\2\2\u0195\u0196\3\2\2\2\u0196\u0197\5\u0092"+ - "J\2\u0197A\3\2\2\2\u0198\u019b\7I\2\2\u0199\u019a\6\"\7\2\u019a\u019c"+ - "\5~@\2\u019b\u0199\3\2\2\2\u019b\u019c\3\2\2\2\u019c\u019d\3\2\2\2\u019d"+ - "\u019e\5\u0092J\2\u019eC\3\2\2\2\u019f\u01a0\7R\2\2\u01a0\u01a1\7\b\2"+ - "\2\u01a1\u01a2\5~@\2\u01a2\u01a3\7\t\2\2\u01a3\u01a4\5\"\22\2\u01a4E\3"+ - "\2\2\2\u01a5\u01a6\7M\2\2\u01a6\u01a7\7\b\2\2\u01a7\u01a8\5~@\2\u01a8"+ - "\u01a9\7\t\2\2\u01a9\u01aa\5H%\2\u01aaG\3\2\2\2\u01ab\u01ad\7\n\2\2\u01ac"+ - "\u01ae\5J&\2\u01ad\u01ac\3\2\2\2\u01ad\u01ae\3\2\2\2\u01ae\u01b3\3\2\2"+ - "\2\u01af\u01b1\5N(\2\u01b0\u01b2\5J&\2\u01b1\u01b0\3\2\2\2\u01b1\u01b2"+ - "\3\2\2\2\u01b2\u01b4\3\2\2\2\u01b3\u01af\3\2\2\2\u01b3\u01b4\3\2\2\2\u01b4"+ - "\u01b5\3\2\2\2\u01b5\u01b6\7\13\2\2\u01b6I\3\2\2\2\u01b7\u01b9\5L\'\2"+ - "\u01b8\u01b7\3\2\2\2\u01b9\u01ba\3\2\2\2\u01ba\u01b8\3\2\2\2\u01ba\u01bb"+ - "\3\2\2\2\u01bbK\3\2\2\2\u01bc\u01bd\7C\2\2\u01bd\u01be\5~@\2\u01be\u01c0"+ - "\7\20\2\2\u01bf\u01c1\5&\24\2\u01c0\u01bf\3\2\2\2\u01c0\u01c1\3\2\2\2"+ - "\u01c1M\3\2\2\2\u01c2\u01c3\7S\2\2\u01c3\u01c5\7\20\2\2\u01c4\u01c6\5"+ - "&\24\2\u01c5\u01c4\3\2\2\2\u01c5\u01c6\3\2\2\2\u01c6O\3\2\2\2\u01c7\u01c8"+ - "\7U\2\2\u01c8\u01c9\6)\b\2\u01c9\u01ca\5~@\2\u01ca\u01cb\5\u0092J\2\u01cb"+ - "Q\3\2\2\2\u01cc\u01cd\7X\2\2\u01cd\u01d3\5$\23\2\u01ce\u01d0\5T+\2\u01cf"+ - "\u01d1\5V,\2\u01d0\u01cf\3\2\2\2\u01d0\u01d1\3\2\2\2\u01d1\u01d4\3\2\2"+ - "\2\u01d2\u01d4\5V,\2\u01d3\u01ce\3\2\2\2\u01d3\u01d2\3\2\2\2\u01d4S\3"+ - "\2\2\2\u01d5\u01d6\7G\2\2\u01d6\u01d7\7\b\2\2\u01d7\u01d8\7v\2\2\u01d8"+ - "\u01d9\7\t\2\2\u01d9\u01da\5$\23\2\u01daU\3\2\2\2\u01db\u01dc\7H\2\2\u01dc"+ - "\u01dd\5$\23\2\u01ddW\3\2\2\2\u01de\u01df\7O\2\2\u01df\u01e0\5\u0092J"+ - "\2\u01e0Y\3\2\2\2\u01e1\u01e3\5\6\4\2\u01e2\u01e1\3\2\2\2\u01e2\u01e3"+ - "\3\2\2\2\u01e3\u01e5\3\2\2\2\u01e4\u01e6\7g\2\2\u01e5\u01e4\3\2\2\2\u01e5"+ - "\u01e6\3\2\2\2\u01e6\u01e7\3\2\2\2\u01e7\u01e8\7P\2\2\u01e8\u01e9\7v\2"+ - "\2\u01e9\u01eb\7\b\2\2\u01ea\u01ec\5d\63\2\u01eb\u01ea\3\2\2\2\u01eb\u01ec"+ - "\3\2\2\2\u01ec\u01ed\3\2\2\2\u01ed\u01ef\7\t\2\2\u01ee\u01f0\7a\2\2\u01ef"+ - "\u01ee\3\2\2\2\u01ef\u01f0\3\2\2\2\u01f0\u01f1\3\2\2\2\u01f1\u01f2\7\n"+ - "\2\2\u01f2\u01f3\5j\66\2\u01f3\u01f4\7\13\2\2\u01f4[\3\2\2\2\u01f5\u01f6"+ - "\7b\2\2\u01f6\u01f7\7v\2\2\u01f7\u01f8\5^\60\2\u01f8]\3\2\2\2\u01f9\u01fa"+ - "\7d\2\2\u01fa\u01fc\5\u0080A\2\u01fb\u01f9\3\2\2\2\u01fb\u01fc\3\2\2\2"+ - "\u01fc\u01fd\3\2\2\2\u01fd\u0201\7\n\2\2\u01fe\u0200\5`\61\2\u01ff\u01fe"+ - "\3\2\2\2\u0200\u0203\3\2\2\2\u0201\u01ff\3\2\2\2\u0201\u0202\3\2\2\2\u0202"+ - "\u0204\3\2\2\2\u0203\u0201\3\2\2\2\u0204\u0205\7\13\2\2\u0205_\3\2\2\2"+ - "\u0206\u0208\7t\2\2\u0207\u0206\3\2\2\2\u0207\u0208\3\2\2\2\u0208\u0209"+ - "\3\2\2\2\u0209\u020a\5b\62\2\u020aa\3\2\2\2\u020b\u020c\5x=\2\u020c\u020e"+ - "\7\b\2\2\u020d\u020f\5d\63\2\u020e\u020d\3\2\2\2\u020e\u020f\3\2\2\2\u020f"+ - "\u0210\3\2\2\2\u0210\u0211\7\t\2\2\u0211\u0212\7\n\2\2\u0212\u0213\5j"+ - "\66\2\u0213\u0214\7\13\2\2\u0214c\3\2\2\2\u0215\u021a\5f\64\2\u0216\u0217"+ - "\7\r\2\2\u0217\u0219\5f\64\2\u0218\u0216\3\2\2\2\u0219\u021c\3\2\2\2\u021a"+ - "\u0218\3\2\2\2\u021a\u021b\3\2\2\2\u021b\u021f\3\2\2\2\u021c\u021a\3\2"+ - "\2\2\u021d\u021e\7\r\2\2\u021e\u0220\5h\65\2\u021f\u021d\3\2\2\2\u021f"+ - "\u0220\3\2\2\2\u0220\u0225\3\2\2\2\u0221\u0225\5h\65\2\u0222\u0225\5n"+ - "8\2\u0223\u0225\5t;\2\u0224\u0215\3\2\2\2\u0224\u0221\3\2\2\2\u0224\u0222"+ - "\3\2\2\2\u0224\u0223\3\2\2\2\u0225e\3\2\2\2\u0226\u0229\7v\2\2\u0227\u0228"+ - "\7\16\2\2\u0228\u022a\5\u0080A\2\u0229\u0227\3\2\2\2\u0229\u022a\3\2\2"+ - "\2\u022ag\3\2\2\2\u022b\u022c\7\21\2\2\u022c\u022d\7v\2\2\u022di\3\2\2"+ - "\2\u022e\u0230\5l\67\2\u022f\u022e\3\2\2\2\u022f\u0230\3\2\2\2\u0230k"+ - "\3\2\2\2\u0231\u0233\5\30\r\2\u0232\u0231\3\2\2\2\u0233\u0234\3\2\2\2"+ - "\u0234\u0232\3\2\2\2\u0234\u0235\3\2\2\2\u0235m\3\2\2\2\u0236\u023a\7"+ - "\6\2\2\u0237\u0239\7\r\2\2\u0238\u0237\3\2\2\2\u0239\u023c\3\2\2\2\u023a"+ - "\u0238\3\2\2\2\u023a\u023b\3\2\2\2\u023b\u023e\3\2\2\2\u023c\u023a\3\2"+ - "\2\2\u023d\u023f\5p9\2\u023e\u023d\3\2\2\2\u023e\u023f\3\2\2\2\u023f\u0243"+ - "\3\2\2\2\u0240\u0242\7\r\2\2\u0241\u0240\3\2\2\2\u0242\u0245\3\2\2\2\u0243"+ - "\u0241\3\2\2\2\u0243\u0244\3\2\2\2\u0244\u0246\3\2\2\2\u0245\u0243\3\2"+ - "\2\2\u0246\u0247\7\7\2\2\u0247o\3\2\2\2\u0248\u0251\5\u0080A\2\u0249\u024b"+ - "\7\r\2\2\u024a\u0249\3\2\2\2\u024b\u024c\3\2\2\2\u024c\u024a\3\2\2\2\u024c"+ - "\u024d\3\2\2\2\u024d\u024e\3\2\2\2\u024e\u0250\5\u0080A\2\u024f\u024a"+ - "\3\2\2\2\u0250\u0253\3\2\2\2\u0251\u024f\3\2\2\2\u0251\u0252\3\2\2\2\u0252"+ - "\u025a\3\2\2\2\u0253\u0251\3\2\2\2\u0254\u0256\7\r\2\2\u0255\u0254\3\2"+ - "\2\2\u0256\u0257\3\2\2\2\u0257\u0255\3\2\2\2\u0257\u0258\3\2\2\2\u0258"+ - "\u0259\3\2\2\2\u0259\u025b\5r:\2\u025a\u0255\3\2\2\2\u025a\u025b\3\2\2"+ - "\2\u025b\u025e\3\2\2\2\u025c\u025e\5r:\2\u025d\u0248\3\2\2\2\u025d\u025c"+ - "\3\2\2\2\u025eq\3\2\2\2\u025f\u0260\7\21\2\2\u0260\u0261\7v\2\2\u0261"+ - "s\3\2\2\2\u0262\u026b\7\n\2\2\u0263\u0268\5v<\2\u0264\u0265\7\r\2\2\u0265"+ - "\u0267\5v<\2\u0266\u0264\3\2\2\2\u0267\u026a\3\2\2\2\u0268\u0266\3\2\2"+ - "\2\u0268\u0269\3\2\2\2\u0269\u026c\3\2\2\2\u026a\u0268\3\2\2\2\u026b\u0263"+ - "\3\2\2\2\u026b\u026c\3\2\2\2\u026c\u026e\3\2\2\2\u026d\u026f\7\r\2\2\u026e"+ - "\u026d\3\2\2\2\u026e\u026f\3\2\2\2\u026f\u0270\3\2\2\2\u0270\u0271\7\13"+ - "\2\2\u0271u\3\2\2\2\u0272\u0273\5x=\2\u0273\u0274\t\5\2\2\u0274\u0275"+ - "\5\u0080A\2\u0275\u027e\3\2\2\2\u0276\u0277\7\6\2\2\u0277\u0278\5\u0080"+ - "A\2\u0278\u0279\7\7\2\2\u0279\u027a\7\20\2\2\u027a\u027b\5\u0080A\2\u027b"+ - "\u027e\3\2\2\2\u027c\u027e\7v\2\2\u027d\u0272\3\2\2\2\u027d\u0276\3\2"+ - "\2\2\u027d\u027c\3\2\2\2\u027ew\3\2\2\2\u027f\u0283\5\u008cG\2\u0280\u0283"+ - "\7w\2\2\u0281\u0283\5\u008aF\2\u0282\u027f\3\2\2\2\u0282\u0280\3\2\2\2"+ - "\u0282\u0281\3\2\2\2\u0283y\3\2\2\2\u0284\u0292\7\b\2\2\u0285\u028a\5"+ - "\u0080A\2\u0286\u0287\7\r\2\2\u0287\u0289\5\u0080A\2\u0288\u0286\3\2\2"+ - "\2\u0289\u028c\3\2\2\2\u028a\u0288\3\2\2\2\u028a\u028b\3\2\2\2\u028b\u028f"+ - "\3\2\2\2\u028c\u028a\3\2\2\2\u028d\u028e\7\r\2\2\u028e\u0290\5|?\2\u028f"+ - "\u028d\3\2\2\2\u028f\u0290\3\2\2\2\u0290\u0293\3\2\2\2\u0291\u0293\5|"+ - "?\2\u0292\u0285\3\2\2\2\u0292\u0291\3\2\2\2\u0292\u0293\3\2\2\2\u0293"+ - "\u0294\3\2\2\2\u0294\u0295\7\t\2\2\u0295{\3\2\2\2\u0296\u0297\7\21\2\2"+ - "\u0297\u0298\7v\2\2\u0298}\3\2\2\2\u0299\u029e\5\u0080A\2\u029a\u029b"+ - "\7\r\2\2\u029b\u029d\5\u0080A\2\u029c\u029a\3\2\2\2\u029d\u02a0\3\2\2"+ - "\2\u029e\u029c\3\2\2\2\u029e\u029f\3\2\2\2\u029f\177\3\2\2\2\u02a0\u029e"+ - "\3\2\2\2\u02a1\u02a2\bA\1\2\u02a2\u02a3\7E\2\2\u02a3\u02a5\5\u0080A\2"+ - "\u02a4\u02a6\5z>\2\u02a5\u02a4\3\2\2\2\u02a5\u02a6\3\2\2\2\u02a6\u02c4"+ - "\3\2\2\2\u02a7\u02a8\7B\2\2\u02a8\u02c4\5\u0080A!\u02a9\u02aa\7\23\2\2"+ - "\u02aa\u02c4\5\u0080A \u02ab\u02ac\7\24\2\2\u02ac\u02c4\5\u0080A\37\u02ad"+ - "\u02ae\7\25\2\2\u02ae\u02c4\5\u0080A\36\u02af\u02b0\7\26\2\2\u02b0\u02c4"+ - "\5\u0080A\35\u02b1\u02b2\7\27\2\2\u02b2\u02c4\5\u0080A\34\u02b3\u02b4"+ - "\7\30\2\2\u02b4\u02c4\5\u0080A\33\u02b5\u02c4\7Q\2\2\u02b6\u02c4\7v\2"+ - "\2\u02b7\u02c4\7e\2\2\u02b8\u02c4\5\u0088E\2\u02b9\u02c4\5n8\2\u02ba\u02c4"+ - "\5t;\2\u02bb\u02bc\7\b\2\2\u02bc\u02bd\5~@\2\u02bd\u02be\7\t\2\2\u02be"+ - "\u02c4\3\2\2\2\u02bf\u02c0\5\u0082B\2\u02c0\u02c1\7\67\2\2\u02c1\u02c2"+ - "\5\u0084C\2\u02c2\u02c4\3\2\2\2\u02c3\u02a1\3\2\2\2\u02c3\u02a7\3\2\2"+ - "\2\u02c3\u02a9\3\2\2\2\u02c3\u02ab\3\2\2\2\u02c3\u02ad\3\2\2\2\u02c3\u02af"+ - "\3\2\2\2\u02c3\u02b1\3\2\2\2\u02c3\u02b3\3\2\2\2\u02c3\u02b5\3\2\2\2\u02c3"+ - "\u02b6\3\2\2\2\u02c3\u02b7\3\2\2\2\u02c3\u02b8\3\2\2\2\u02c3\u02b9\3\2"+ - "\2\2\u02c3\u02ba\3\2\2\2\u02c3\u02bb\3\2\2\2\u02c3\u02bf\3\2\2\2\u02c4"+ - "\u030a\3\2\2\2\u02c5\u02c6\f\32\2\2\u02c6\u02c7\t\6\2\2\u02c7\u0309\5"+ - "\u0080A\33\u02c8\u02c9\f\31\2\2\u02c9\u02ca\t\7\2\2\u02ca\u0309\5\u0080"+ - "A\32\u02cb\u02cc\f\30\2\2\u02cc\u02cd\t\b\2\2\u02cd\u0309\5\u0080A\31"+ - "\u02ce\u02cf\f\27\2\2\u02cf\u02d0\t\t\2\2\u02d0\u0309\5\u0080A\30\u02d1"+ - "\u02d2\f\26\2\2\u02d2\u02d3\7A\2\2\u02d3\u0309\5\u0080A\27\u02d4\u02d5"+ - "\f\25\2\2\u02d5\u02d6\7W\2\2\u02d6\u0309\5\u0080A\26\u02d7\u02d8\f\24"+ - "\2\2\u02d8\u02d9\t\n\2\2\u02d9\u0309\5\u0080A\25\u02da\u02db\f\23\2\2"+ - "\u02db\u02dc\7\'\2\2\u02dc\u0309\5\u0080A\24\u02dd\u02de\f\22\2\2\u02de"+ - "\u02df\7(\2\2\u02df\u0309\5\u0080A\23\u02e0\u02e1\f\21\2\2\u02e1\u02e2"+ - "\7)\2\2\u02e2\u0309\5\u0080A\22\u02e3\u02e4\f\20\2\2\u02e4\u02e5\7*\2"+ - "\2\u02e5\u0309\5\u0080A\21\u02e6\u02e7\f\17\2\2\u02e7\u02e8\7+\2\2\u02e8"+ - "\u0309\5\u0080A\20\u02e9\u02ea\f\16\2\2\u02ea\u02eb\7\17\2\2\u02eb\u02ec"+ - "\5\u0080A\2\u02ec\u02ed\7\20\2\2\u02ed\u02ee\5\u0080A\17\u02ee\u0309\3"+ - "\2\2\2\u02ef\u02f0\f\r\2\2\u02f0\u02f1\7\16\2\2\u02f1\u0309\5\u0080A\16"+ - "\u02f2\u02f3\f\f\2\2\u02f3\u02f4\5\u0086D\2\u02f4\u02f5\5\u0080A\r\u02f5"+ - "\u0309\3\2\2\2\u02f6\u02f7\f\'\2\2\u02f7\u02f8\7\6\2\2\u02f8\u02f9\5~"+ - "@\2\u02f9\u02fa\7\7\2\2\u02fa\u0309\3\2\2\2\u02fb\u02fc\f&\2\2\u02fc\u02fd"+ - "\7\22\2\2\u02fd\u0309\5\u008cG\2\u02fe\u02ff\f%\2\2\u02ff\u0309\5z>\2"+ - "\u0300\u0301\f#\2\2\u0301\u0302\6A\34\2\u0302\u0309\7\23\2\2\u0303\u0304"+ - "\f\"\2\2\u0304\u0305\6A\36\2\u0305\u0309\7\24\2\2\u0306\u0307\f\13\2\2"+ - "\u0307\u0309\7x\2\2\u0308\u02c5\3\2\2\2\u0308\u02c8\3\2\2\2\u0308\u02cb"+ - "\3\2\2\2\u0308\u02ce\3\2\2\2\u0308\u02d1\3\2\2\2\u0308\u02d4\3\2\2\2\u0308"+ - "\u02d7\3\2\2\2\u0308\u02da\3\2\2\2\u0308\u02dd\3\2\2\2\u0308\u02e0\3\2"+ - "\2\2\u0308\u02e3\3\2\2\2\u0308\u02e6\3\2\2\2\u0308\u02e9\3\2\2\2\u0308"+ - "\u02ef\3\2\2\2\u0308\u02f2\3\2\2\2\u0308\u02f6\3\2\2\2\u0308\u02fb\3\2"+ - "\2\2\u0308\u02fe\3\2\2\2\u0308\u0300\3\2\2\2\u0308\u0303\3\2\2\2\u0308"+ - "\u0306\3\2\2\2\u0309\u030c\3\2\2\2\u030a\u0308\3\2\2\2\u030a\u030b\3\2"+ - "\2\2\u030b\u0081\3\2\2\2\u030c\u030a\3\2\2\2\u030d\u0314\7v\2\2\u030e"+ - "\u0310\7\b\2\2\u030f\u0311\5d\63\2\u0310\u030f\3\2\2\2\u0310\u0311\3\2"+ - "\2\2\u0311\u0312\3\2\2\2\u0312\u0314\7\t\2\2\u0313\u030d\3\2\2\2\u0313"+ - "\u030e\3\2\2\2\u0314\u0083\3\2\2\2\u0315\u031b\5\u0080A\2\u0316\u0317"+ - "\7\n\2\2\u0317\u0318\5j\66\2\u0318\u0319\7\13\2\2\u0319\u031b\3\2\2\2"+ - "\u031a\u0315\3\2\2\2\u031a\u0316\3\2\2\2\u031b\u0085\3\2\2\2\u031c\u031d"+ - "\t\13\2\2\u031d\u0087\3\2\2\2\u031e\u0325\78\2\2\u031f\u0325\79\2\2\u0320"+ - "\u0325\7w\2\2\u0321\u0325\7x\2\2\u0322\u0325\7\5\2\2\u0323\u0325\5\u008a"+ - "F\2\u0324\u031e\3\2\2\2\u0324\u031f\3\2\2\2\u0324\u0320\3\2\2\2\u0324"+ - "\u0321\3\2\2\2\u0324\u0322\3\2\2\2\u0324\u0323\3\2\2\2\u0325\u0089\3\2"+ - "\2\2\u0326\u0327\t\f\2\2\u0327\u008b\3\2\2\2\u0328\u032b\7v\2\2\u0329"+ - "\u032b\5\u008eH\2\u032a\u0328\3\2\2\2\u032a\u0329\3\2\2\2\u032b\u008d"+ - "\3\2\2\2\u032c\u0330\5\u0090I\2\u032d\u0330\78\2\2\u032e\u0330\79\2\2"+ - "\u032f\u032c\3\2\2\2\u032f\u032d\3\2\2\2\u032f\u032e\3\2\2\2\u0330\u008f"+ - "\3\2\2\2\u0331\u0332\t\r\2\2\u0332\u0091\3\2\2\2\u0333\u0338\7\f\2\2\u0334"+ - "\u0338\7\2\2\3\u0335\u0338\6J \2\u0336\u0338\6J!\2\u0337\u0333\3\2\2\2"+ - "\u0337\u0334\3\2\2\2\u0337\u0335\3\2\2\2\u0337\u0336\3\2\2\2\u0338\u0093"+ - "\3\2\2\2U\u0095\u009a\u00a2\u00a9\u00af\u00b8\u00be\u00c5\u00c8\u00ce"+ - "\u00d5\u00db\u00e0\u00e4\u00ef\u00ff\u010c\u0110\u0117\u012a\u0130\u013f"+ - "\u0152\u0156\u015a\u0164\u0168\u0173\u0180\u0186\u018d\u0194\u019b\u01ad"+ - "\u01b1\u01b3\u01ba\u01c0\u01c5\u01d0\u01d3\u01e2\u01e5\u01eb\u01ef\u01fb"+ - "\u0201\u0207\u020e\u021a\u021f\u0224\u0229\u022f\u0234\u023a\u023e\u0243"+ - "\u024c\u0251\u0257\u025a\u025d\u0268\u026b\u026e\u027d\u0282\u028a\u028f"+ - "\u0292\u029e\u02a5\u02c3\u0308\u030a\u0310\u0313\u031a\u0324\u032a\u032f"+ - "\u0337"; - 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 + static { + RuntimeMetaData.checkVersion("4.9.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, CloseBrace = 9, SemiColon = 10, Comma = 11, Assign = 12, + QuestionMark = 13, Colon = 14, Ellipsis = 15, Dot = 16, PlusPlus = 17, MinusMinus = 18, + Plus = 19, Minus = 20, BitNot = 21, Not = 22, Multiply = 23, Divide = 24, Modulus = 25, + RightShiftArithmetic = 26, LeftShiftArithmetic = 27, RightShiftLogical = 28, + LessThan = 29, MoreThan = 30, LessThanEquals = 31, GreaterThanEquals = 32, Equals_ = 33, + NotEquals = 34, IdentityEquals = 35, IdentityNotEquals = 36, BitAnd = 37, BitXOr = 38, + BitOr = 39, And = 40, Or = 41, MultiplyAssign = 42, DivideAssign = 43, + ModulusAssign = 44, PlusAssign = 45, MinusAssign = 46, LeftShiftArithmeticAssign = 47, + RightShiftArithmeticAssign = 48, RightShiftLogicalAssign = 49, BitAndAssign = 50, + BitXorAssign = 51, BitOrAssign = 52, ARROW = 53, NullLiteral = 54, BooleanLiteral = 55, + DecimalLiteral = 56, HexIntegerLiteral = 57, OctalIntegerLiteral = 58, + OctalIntegerLiteral2 = 59, BinaryIntegerLiteral = 60, Break = 61, Do = 62, + Instanceof = 63, Typeof = 64, Case = 65, Else = 66, New = 67, Var = 68, Catch = 69, + Finally = 70, Return = 71, Void = 72, Continue = 73, For = 74, Switch = 75, While = 76, + Debugger = 77, Function = 78, This = 79, With = 80, Default = 81, If = 82, Throw = 83, + Delete = 84, In = 85, Try = 86, Event = 87, AtToken = 88, Sharable = 89, + AtLeastOnce = 90, AtMostOnce = 91, OnlyOnce = 92, Global = 93, Local = 94, View = 95, + Class = 96, Enum = 97, Extends = 98, Super = 99, Const = 100, Export = 101, + Import = 102, Contract = 103, Module = 104, Oracle = 105, DoipModule = 106, + Implements = 107, Let = 108, Private = 109, Public = 110, Interface = 111, + Package = 112, Protected = 113, Static = 114, Yield = 115, Identifier = 116, + StringLiteral = 117, TemplateStringLiteral = 118, WhiteSpaces = 119, + LineTerminator = 120, HtmlComment = 121, CDataComment = 122, UnexpectedCharacter = 123; + public static final int RULE_program = 0, RULE_contractDeclar = 1, RULE_annotations = 2, + RULE_annotation = 3, RULE_annotationArgs = 4, RULE_annotationLiteral = 5, + RULE_clzOrFunctionDeclaration = 6, RULE_interfaceDeclaration = 7, + RULE_eventDeclaration = 8, RULE_eventGlobalOrLocal = 9, RULE_eventSemantics = 10, + RULE_sourceElement = 11, RULE_importStmts = 12, RULE_importStmt = 13, + RULE_exportStmt = 14, RULE_versionName = 15, RULE_statement = 16, RULE_block = 17, + RULE_statementList = 18, RULE_sharableDeclaration = 19, RULE_sharableStatement = 20, + RULE_sharableModifier = 21, RULE_variableStatement = 22, + RULE_variableDeclarationList = 23, RULE_variableDeclaration = 24, + RULE_emptyStatement = 25, RULE_expressionStatement = 26, RULE_ifStatement = 27, + RULE_iterationStatement = 28, RULE_varModifier = 29, RULE_continueStatement = 30, + RULE_breakStatement = 31, RULE_returnStatement = 32, RULE_withStatement = 33, + RULE_switchStatement = 34, RULE_caseBlock = 35, RULE_caseClauses = 36, + RULE_caseClause = 37, RULE_defaultClause = 38, RULE_throwStatement = 39, + RULE_tryStatement = 40, RULE_catchProduction = 41, RULE_finallyProduction = 42, + RULE_debuggerStatement = 43, RULE_functionDeclaration = 44, RULE_classDeclaration = 45, + RULE_classTail = 46, RULE_classElement = 47, RULE_methodDefinition = 48, + RULE_formalParameterList = 49, RULE_formalParameterArg = 50, + RULE_lastFormalParameterArg = 51, RULE_functionBody = 52, RULE_sourceElements = 53, + RULE_arrayLiteral = 54, RULE_elementList = 55, RULE_lastElement = 56, + RULE_objectLiteral = 57, RULE_propertyAssignment = 58, RULE_propertyName = 59, + RULE_arguments = 60, RULE_lastArgument = 61, RULE_expressionSequence = 62, + RULE_singleExpression = 63, RULE_arrowFunctionParameters = 64, + RULE_arrowFunctionBody = 65, RULE_assignmentOperator = 66, RULE_literal = 67, + RULE_numericLiteral = 68, RULE_identifierName = 69, RULE_reservedWord = 70, + RULE_keyword = 71, RULE_eos = 72; + + private static String[] makeRuleNames() { + return new String[] {"program", "contractDeclar", "annotations", "annotation", + "annotationArgs", "annotationLiteral", "clzOrFunctionDeclaration", + "interfaceDeclaration", "eventDeclaration", "eventGlobalOrLocal", "eventSemantics", + "sourceElement", "importStmts", "importStmt", "exportStmt", "versionName", + "statement", "block", "statementList", "sharableDeclaration", "sharableStatement", + "sharableModifier", "variableStatement", "variableDeclarationList", + "variableDeclaration", "emptyStatement", "expressionStatement", "ifStatement", + "iterationStatement", "varModifier", "continueStatement", "breakStatement", + "returnStatement", "withStatement", "switchStatement", "caseBlock", "caseClauses", + "caseClause", "defaultClause", "throwStatement", "tryStatement", "catchProduction", + "finallyProduction", "debuggerStatement", "functionDeclaration", "classDeclaration", + "classTail", "classElement", "methodDefinition", "formalParameterList", + "formalParameterArg", "lastFormalParameterArg", "functionBody", "sourceElements", + "arrayLiteral", "elementList", "lastElement", "objectLiteral", "propertyAssignment", + "propertyName", "arguments", "lastArgument", "expressionSequence", + "singleExpression", "arrowFunctionParameters", "arrowFunctionBody", + "assignmentOperator", "literal", "numericLiteral", "identifierName", "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, "'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'", "'event'", "'@'", "'sharable'", "'AT_LEAST_ONCE'", + "'AT_MOST_ONCE'", "'ONLY_ONCE'", "'global'", "'local'", "'view'", "'class'", + "'enum'", "'extends'", "'super'", "'const'", "'export'", "'import'", "'contract'", + "'module'", "'oracle'", "'doipmodule'", "'implements'", "'let'", "'private'", + "'public'", "'interface'", "'package'", "'protected'", "'static'", "'yield'"}; + } + + private static final String[] _LITERAL_NAMES = makeLiteralNames(); + + private static String[] makeSymbolicNames() { + return new String[] {null, "MultiLineComment", "SingleLineComment", + "RegularExpressionLiteral", "OpenBracket", "CloseBracket", "OpenParen", + "CloseParen", "OpenBrace", "CloseBrace", "SemiColon", "Comma", "Assign", + "QuestionMark", "Colon", "Ellipsis", "Dot", "PlusPlus", "MinusMinus", "Plus", + "Minus", "BitNot", "Not", "Multiply", "Divide", "Modulus", "RightShiftArithmetic", + "LeftShiftArithmetic", "RightShiftLogical", "LessThan", "MoreThan", + "LessThanEquals", "GreaterThanEquals", "Equals_", "NotEquals", "IdentityEquals", + "IdentityNotEquals", "BitAnd", "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", + "DivideAssign", "ModulusAssign", "PlusAssign", "MinusAssign", + "LeftShiftArithmeticAssign", "RightShiftArithmeticAssign", + "RightShiftLogicalAssign", "BitAndAssign", "BitXorAssign", "BitOrAssign", "ARROW", + "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", + "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", "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", "Event", "AtToken", + "Sharable", "AtLeastOnce", "AtMostOnce", "OnlyOnce", "Global", "Local", "View", + "Class", "Enum", "Extends", "Super", "Const", "Export", "Import", "Contract", + "Module", "Oracle", "DoipModule", "Implements", "Let", "Private", "Public", + "Interface", "Package", "Protected", "Static", "Yield", "Identifier", + "StringLiteral", "TemplateStringLiteral", "WhiteSpaces", "LineTerminator", + "HtmlComment", "CDataComment", "UnexpectedCharacter"}; + } + + 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 "YJSParser.g4"; + } + + @Override + public String[] getRuleNames() { + return ruleNames; + } + + @Override + public String getSerializedATN() { + return _serializedATN; + } + + @Override + public ATN getATN() { + return _ATN; + } + + public YJSParser(TokenStream input) { + super(input); + _interp = new ParserATNSimulator(this, _ATN, _decisionToDFA, _sharedContextCache); + } + + public static class ProgramContext extends ParserRuleContext { + public ContractDeclarContext contractDeclar() { + return getRuleContext(ContractDeclarContext.class, 0); + } + + public ImportStmtsContext importStmts() { + return getRuleContext(ImportStmtsContext.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 YJSParserListener) + ((YJSParserListener) listener).enterProgram(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitProgram(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitProgram(this); + else + return visitor.visitChildren(this); + } + } + + public final ProgramContext program() throws RecognitionException { + ProgramContext _localctx = new ProgramContext(_ctx, getState()); + enterRule(_localctx, 0, RULE_program); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(147); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Import) { + { + setState(146); + importStmts(); + } + } + + setState(149); + contractDeclar(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ContractDeclarContext extends ParserRuleContext { + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode OpenBrace() { + return getToken(YJSParser.OpenBrace, 0); + } + + public TerminalNode CloseBrace() { + return getToken(YJSParser.CloseBrace, 0); + } + + public TerminalNode Contract() { + return getToken(YJSParser.Contract, 0); + } + + public TerminalNode Module() { + return getToken(YJSParser.Module, 0); + } + + public TerminalNode Oracle() { + return getToken(YJSParser.Oracle, 0); + } + + public TerminalNode DoipModule() { + return getToken(YJSParser.DoipModule, 0); + } + + public AnnotationsContext annotations() { + return getRuleContext(AnnotationsContext.class, 0); + } + + public List clzOrFunctionDeclaration() { + return getRuleContexts(ClzOrFunctionDeclarationContext.class); + } + + public ClzOrFunctionDeclarationContext clzOrFunctionDeclaration(int i) { + return getRuleContext(ClzOrFunctionDeclarationContext.class, i); + } + + public ContractDeclarContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_contractDeclar; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterContractDeclar(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitContractDeclar(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitContractDeclar(this); + else + return visitor.visitChildren(this); + } + } + + public final ContractDeclarContext contractDeclar() throws RecognitionException { + ContractDeclarContext _localctx = new ContractDeclarContext(_ctx, getState()); + enterRule(_localctx, 2, RULE_contractDeclar); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(152); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == AtToken) { + { + setState(151); + annotations(); + } + } + + setState(154); + _la = _input.LA(1); + if (!(((((_la - 103)) & ~0x3f) == 0 + && ((1L << (_la - 103)) & ((1L << (Contract - 103)) | (1L << (Module - 103)) + | (1L << (Oracle - 103)) | (1L << (DoipModule - 103)))) != 0))) { + _errHandler.recoverInline(this); + } else { + if (_input.LA(1) == Token.EOF) + matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(155); + match(Identifier); + setState(156); + match(OpenBrace); + setState(158); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(157); + clzOrFunctionDeclaration(); + } + } + setState(160); + _errHandler.sync(this); + _la = _input.LA(1); + } while (((((_la - 78)) & ~0x3f) == 0 && ((1L << (_la - 78)) + & ((1L << (Function - 78)) | (1L << (Event - 78)) | (1L << (AtToken - 78)) + | (1L << (Sharable - 78)) | (1L << (Class - 78)) + | (1L << (Export - 78)) | (1L << (Interface - 78)))) != 0)); + setState(162); + match(CloseBrace); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class AnnotationsContext extends ParserRuleContext { + public List annotation() { + return getRuleContexts(AnnotationContext.class); + } + + public AnnotationContext annotation(int i) { + return getRuleContext(AnnotationContext.class, i); + } + + public AnnotationsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_annotations; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterAnnotations(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitAnnotations(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitAnnotations(this); + else + return visitor.visitChildren(this); + } + } + + public final AnnotationsContext annotations() throws RecognitionException { + AnnotationsContext _localctx = new AnnotationsContext(_ctx, getState()); + enterRule(_localctx, 4, RULE_annotations); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(165); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(164); + annotation(); + } + } + setState(167); + _errHandler.sync(this); + _la = _input.LA(1); + } while (_la == AtToken); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class AnnotationContext extends ParserRuleContext { + public TerminalNode AtToken() { + return getToken(YJSParser.AtToken, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public AnnotationArgsContext annotationArgs() { + return getRuleContext(AnnotationArgsContext.class, 0); + } + + public AnnotationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_annotation; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterAnnotation(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitAnnotation(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitAnnotation(this); + else + return visitor.visitChildren(this); + } + } + + public final AnnotationContext annotation() throws RecognitionException { + AnnotationContext _localctx = new AnnotationContext(_ctx, getState()); + enterRule(_localctx, 6, RULE_annotation); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(169); + match(AtToken); + setState(170); + match(Identifier); + setState(171); + match(OpenParen); + setState(173); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) + & ((1L << OpenBrace) | (1L << DecimalLiteral) | (1L << HexIntegerLiteral) + | (1L << OctalIntegerLiteral) | (1L << OctalIntegerLiteral2) + | (1L << BinaryIntegerLiteral))) != 0) + || _la == StringLiteral) { + { + setState(172); + annotationArgs(); + } + } + + setState(175); + match(CloseParen); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class AnnotationArgsContext extends ParserRuleContext { + public List annotationLiteral() { + return getRuleContexts(AnnotationLiteralContext.class); + } + + public AnnotationLiteralContext annotationLiteral(int i) { + return getRuleContext(AnnotationLiteralContext.class, i); + } + + public List Comma() { + return getTokens(YJSParser.Comma); + } + + public TerminalNode Comma(int i) { + return getToken(YJSParser.Comma, i); + } + + public AnnotationArgsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_annotationArgs; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterAnnotationArgs(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitAnnotationArgs(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitAnnotationArgs(this); + else + return visitor.visitChildren(this); + } + } + + public final AnnotationArgsContext annotationArgs() throws RecognitionException { + AnnotationArgsContext _localctx = new AnnotationArgsContext(_ctx, getState()); + enterRule(_localctx, 8, RULE_annotationArgs); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(177); + annotationLiteral(); + setState(182); + _errHandler.sync(this); + _la = _input.LA(1); + while (_la == Comma) { + { + { + setState(178); + match(Comma); + setState(179); + annotationLiteral(); + } + } + setState(184); + _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; + } + + public static class AnnotationLiteralContext extends ParserRuleContext { + public NumericLiteralContext numericLiteral() { + return getRuleContext(NumericLiteralContext.class, 0); + } + + public TerminalNode StringLiteral() { + return getToken(YJSParser.StringLiteral, 0); + } + + public ObjectLiteralContext objectLiteral() { + return getRuleContext(ObjectLiteralContext.class, 0); + } + + public AnnotationLiteralContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_annotationLiteral; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterAnnotationLiteral(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitAnnotationLiteral(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitAnnotationLiteral(this); + else + return visitor.visitChildren(this); + } + } + + public final AnnotationLiteralContext annotationLiteral() throws RecognitionException { + AnnotationLiteralContext _localctx = new AnnotationLiteralContext(_ctx, getState()); + enterRule(_localctx, 10, RULE_annotationLiteral); + try { + setState(188); + _errHandler.sync(this); + switch (_input.LA(1)) { + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + enterOuterAlt(_localctx, 1); { + setState(185); + numericLiteral(); + } + break; + case StringLiteral: + enterOuterAlt(_localctx, 2); { + setState(186); + match(StringLiteral); + } + break; + case OpenBrace: + enterOuterAlt(_localctx, 3); { + setState(187); + 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; + } + + public static class ClzOrFunctionDeclarationContext extends ParserRuleContext { + public ClassDeclarationContext classDeclaration() { + return getRuleContext(ClassDeclarationContext.class, 0); + } + + public FunctionDeclarationContext functionDeclaration() { + return getRuleContext(FunctionDeclarationContext.class, 0); + } + + public InterfaceDeclarationContext interfaceDeclaration() { + return getRuleContext(InterfaceDeclarationContext.class, 0); + } + + public EventDeclarationContext eventDeclaration() { + return getRuleContext(EventDeclarationContext.class, 0); + } + + public SharableDeclarationContext sharableDeclaration() { + return getRuleContext(SharableDeclarationContext.class, 0); + } + + public ClzOrFunctionDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_clzOrFunctionDeclaration; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterClzOrFunctionDeclaration(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitClzOrFunctionDeclaration(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor) + .visitClzOrFunctionDeclaration(this); + else + return visitor.visitChildren(this); + } + } + + public final ClzOrFunctionDeclarationContext clzOrFunctionDeclaration() + throws RecognitionException { + ClzOrFunctionDeclarationContext _localctx = + new ClzOrFunctionDeclarationContext(_ctx, getState()); + enterRule(_localctx, 12, RULE_clzOrFunctionDeclaration); + try { + setState(195); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 7, _ctx)) { + case 1: + enterOuterAlt(_localctx, 1); { + setState(190); + classDeclaration(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); { + setState(191); + functionDeclaration(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); { + setState(192); + interfaceDeclaration(); + } + break; + case 4: + enterOuterAlt(_localctx, 4); { + setState(193); + eventDeclaration(); + } + break; + case 5: + enterOuterAlt(_localctx, 5); { + setState(194); + sharableDeclaration(); + } + break; + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class InterfaceDeclarationContext extends ParserRuleContext { + public TerminalNode Interface() { + return getToken(YJSParser.Interface, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public EosContext eos() { + return getRuleContext(EosContext.class, 0); + } + + public AnnotationsContext annotations() { + return getRuleContext(AnnotationsContext.class, 0); + } + + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class, 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 YJSParserListener) + ((YJSParserListener) listener).enterInterfaceDeclaration(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitInterfaceDeclaration(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitInterfaceDeclaration(this); + else + return visitor.visitChildren(this); + } + } + + public final InterfaceDeclarationContext interfaceDeclaration() throws RecognitionException { + InterfaceDeclarationContext _localctx = new InterfaceDeclarationContext(_ctx, getState()); + enterRule(_localctx, 14, RULE_interfaceDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(198); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == AtToken) { + { + setState(197); + annotations(); + } + } + + setState(200); + match(Interface); + setState(201); + match(Identifier); + setState(202); + match(OpenParen); + setState(204); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) + & ((1L << OpenBracket) | (1L << OpenBrace) | (1L << Ellipsis))) != 0) + || _la == Identifier) { + { + setState(203); + formalParameterList(); + } + } + + setState(206); + match(CloseParen); + setState(207); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class EventDeclarationContext extends ParserRuleContext { + public TerminalNode Event() { + return getToken(YJSParser.Event, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode SemiColon() { + return getToken(YJSParser.SemiColon, 0); + } + + public EventGlobalOrLocalContext eventGlobalOrLocal() { + return getRuleContext(EventGlobalOrLocalContext.class, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public EventSemanticsContext eventSemantics() { + return getRuleContext(EventSemanticsContext.class, 0); + } + + public EventDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_eventDeclaration; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterEventDeclaration(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitEventDeclaration(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitEventDeclaration(this); + else + return visitor.visitChildren(this); + } + } + + public final EventDeclarationContext eventDeclaration() throws RecognitionException { + EventDeclarationContext _localctx = new EventDeclarationContext(_ctx, getState()); + enterRule(_localctx, 16, RULE_eventDeclaration); + int _la; + try { + setState(226); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 13, _ctx)) { + case 1: + enterOuterAlt(_localctx, 1); { + setState(209); + match(Event); + setState(211); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Global || _la == Local) { + { + setState(210); + eventGlobalOrLocal(); + } + } + + setState(213); + match(Identifier); + setState(214); + match(SemiColon); + } + break; + case 2: + enterOuterAlt(_localctx, 2); { + setState(215); + match(Event); + setState(217); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Global || _la == Local) { + { + setState(216); + eventGlobalOrLocal(); + } + } + + setState(219); + match(Identifier); + setState(220); + match(OpenParen); + setState(222); + _errHandler.sync(this); + _la = _input.LA(1); + if (((((_la - 90)) & ~0x3f) == 0 + && ((1L << (_la - 90)) & ((1L << (AtLeastOnce - 90)) + | (1L << (AtMostOnce - 90)) | (1L << (OnlyOnce - 90)))) != 0)) { + { + setState(221); + eventSemantics(); + } + } + + setState(224); + match(CloseParen); + setState(225); + match(SemiColon); + } + break; + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class EventGlobalOrLocalContext extends ParserRuleContext { + public TerminalNode Global() { + return getToken(YJSParser.Global, 0); + } + + public TerminalNode Local() { + return getToken(YJSParser.Local, 0); + } + + public EventGlobalOrLocalContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_eventGlobalOrLocal; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterEventGlobalOrLocal(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitEventGlobalOrLocal(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitEventGlobalOrLocal(this); + else + return visitor.visitChildren(this); + } + } + + public final EventGlobalOrLocalContext eventGlobalOrLocal() throws RecognitionException { + EventGlobalOrLocalContext _localctx = new EventGlobalOrLocalContext(_ctx, getState()); + enterRule(_localctx, 18, RULE_eventGlobalOrLocal); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(228); + _la = _input.LA(1); + if (!(_la == Global || _la == Local)) { + _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 static class EventSemanticsContext extends ParserRuleContext { + public TerminalNode AtLeastOnce() { + return getToken(YJSParser.AtLeastOnce, 0); + } + + public TerminalNode AtMostOnce() { + return getToken(YJSParser.AtMostOnce, 0); + } + + public TerminalNode OnlyOnce() { + return getToken(YJSParser.OnlyOnce, 0); + } + + public EventSemanticsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_eventSemantics; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterEventSemantics(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitEventSemantics(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitEventSemantics(this); + else + return visitor.visitChildren(this); + } + } + + public final EventSemanticsContext eventSemantics() throws RecognitionException { + EventSemanticsContext _localctx = new EventSemanticsContext(_ctx, getState()); + enterRule(_localctx, 20, RULE_eventSemantics); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(230); + _la = _input.LA(1); + if (!(((((_la - 90)) & ~0x3f) == 0 + && ((1L << (_la - 90)) & ((1L << (AtLeastOnce - 90)) + | (1L << (AtMostOnce - 90)) | (1L << (OnlyOnce - 90)))) != 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 static class SourceElementContext extends ParserRuleContext { + public StatementContext statement() { + return getRuleContext(StatementContext.class, 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 YJSParserListener) + ((YJSParserListener) listener).enterSourceElement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitSourceElement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitSourceElement(this); + else + return visitor.visitChildren(this); + } + } + + public final SourceElementContext sourceElement() throws RecognitionException { + SourceElementContext _localctx = new SourceElementContext(_ctx, getState()); + enterRule(_localctx, 22, RULE_sourceElement); + try { + enterOuterAlt(_localctx, 1); + { + setState(232); + statement(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ImportStmtsContext extends ParserRuleContext { + public List importStmt() { + return getRuleContexts(ImportStmtContext.class); + } + + public ImportStmtContext importStmt(int i) { + return getRuleContext(ImportStmtContext.class, i); + } + + public ImportStmtsContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_importStmts; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterImportStmts(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitImportStmts(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitImportStmts(this); + else + return visitor.visitChildren(this); + } + } + + public final ImportStmtsContext importStmts() throws RecognitionException { + ImportStmtsContext _localctx = new ImportStmtsContext(_ctx, getState()); + enterRule(_localctx, 24, RULE_importStmts); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(235); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(234); + importStmt(); + } + } + setState(237); + _errHandler.sync(this); + _la = _input.LA(1); + } while (_la == Import); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ImportStmtContext extends ParserRuleContext { + public TerminalNode Import() { + return getToken(YJSParser.Import, 0); + } + + public TerminalNode StringLiteral() { + return getToken(YJSParser.StringLiteral, 0); + } + + public TerminalNode SemiColon() { + return getToken(YJSParser.SemiColon, 0); + } + + public ImportStmtContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_importStmt; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterImportStmt(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitImportStmt(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitImportStmt(this); + else + return visitor.visitChildren(this); + } + } + + public final ImportStmtContext importStmt() throws RecognitionException { + ImportStmtContext _localctx = new ImportStmtContext(_ctx, getState()); + enterRule(_localctx, 26, RULE_importStmt); + try { + enterOuterAlt(_localctx, 1); + { + setState(239); + match(Import); + setState(240); + match(StringLiteral); + setState(241); + match(SemiColon); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ExportStmtContext extends ParserRuleContext { + public TerminalNode Export() { + return getToken(YJSParser.Export, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public VersionNameContext versionName() { + return getRuleContext(VersionNameContext.class, 0); + } + + public TerminalNode SemiColon() { + return getToken(YJSParser.SemiColon, 0); + } + + public ExportStmtContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_exportStmt; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterExportStmt(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitExportStmt(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitExportStmt(this); + else + return visitor.visitChildren(this); + } + } + + public final ExportStmtContext exportStmt() throws RecognitionException { + ExportStmtContext _localctx = new ExportStmtContext(_ctx, getState()); + enterRule(_localctx, 28, RULE_exportStmt); + try { + enterOuterAlt(_localctx, 1); + { + setState(243); + match(Export); + setState(244); + match(Identifier); + setState(245); + versionName(); + setState(246); + match(SemiColon); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class VersionNameContext extends ParserRuleContext { + public List DecimalLiteral() { + return getTokens(YJSParser.DecimalLiteral); + } + + public TerminalNode DecimalLiteral(int i) { + return getToken(YJSParser.DecimalLiteral, i); + } + + public List Dot() { + return getTokens(YJSParser.Dot); + } + + public TerminalNode Dot(int i) { + return getToken(YJSParser.Dot, i); + } + + public VersionNameContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_versionName; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterVersionName(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitVersionName(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitVersionName(this); + else + return visitor.visitChildren(this); + } + } + + public final VersionNameContext versionName() throws RecognitionException { + VersionNameContext _localctx = new VersionNameContext(_ctx, getState()); + enterRule(_localctx, 30, RULE_versionName); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(248); + match(DecimalLiteral); + setState(253); + _errHandler.sync(this); + _la = _input.LA(1); + while (_la == Dot) { + { + { + setState(249); + match(Dot); + setState(250); + match(DecimalLiteral); + } + } + setState(255); + _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; + } + + public static class StatementContext extends ParserRuleContext { + public BlockContext block() { + return getRuleContext(BlockContext.class, 0); + } + + public VariableStatementContext variableStatement() { + return getRuleContext(VariableStatementContext.class, 0); + } + + public EmptyStatementContext emptyStatement() { + return getRuleContext(EmptyStatementContext.class, 0); + } + + public ExpressionStatementContext expressionStatement() { + return getRuleContext(ExpressionStatementContext.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 SwitchStatementContext switchStatement() { + return getRuleContext(SwitchStatementContext.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 YJSParserListener) + ((YJSParserListener) listener).enterStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final StatementContext statement() throws RecognitionException { + StatementContext _localctx = new StatementContext(_ctx, getState()); + enterRule(_localctx, 32, RULE_statement); + try { + setState(266); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 16, _ctx)) { + case 1: + enterOuterAlt(_localctx, 1); { + setState(256); + block(); + } + break; + case 2: + enterOuterAlt(_localctx, 2); { + setState(257); + variableStatement(); + } + break; + case 3: + enterOuterAlt(_localctx, 3); { + setState(258); + emptyStatement(); + } + break; + case 4: + enterOuterAlt(_localctx, 4); { + setState(259); + expressionStatement(); + } + break; + case 5: + enterOuterAlt(_localctx, 5); { + setState(260); + ifStatement(); + } + break; + case 6: + enterOuterAlt(_localctx, 6); { + setState(261); + iterationStatement(); + } + break; + case 7: + enterOuterAlt(_localctx, 7); { + setState(262); + continueStatement(); + } + break; + case 8: + enterOuterAlt(_localctx, 8); { + setState(263); + breakStatement(); + } + break; + case 9: + enterOuterAlt(_localctx, 9); { + setState(264); + returnStatement(); + } + break; + case 10: + enterOuterAlt(_localctx, 10); { + setState(265); + switchStatement(); + } + break; + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class BlockContext extends ParserRuleContext { + public TerminalNode OpenBrace() { + return getToken(YJSParser.OpenBrace, 0); + } + + public TerminalNode CloseBrace() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterBlock(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitBlock(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitBlock(this); + else + return visitor.visitChildren(this); + } + } + + public final BlockContext block() throws RecognitionException { + BlockContext _localctx = new BlockContext(_ctx, getState()); + enterRule(_localctx, 34, RULE_block); + try { + enterOuterAlt(_localctx, 1); + { + setState(268); + match(OpenBrace); + setState(270); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 17, _ctx)) { + case 1: { + setState(269); + statementList(); + } + break; + } + setState(272); + match(CloseBrace); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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 YJSParserListener) + ((YJSParserListener) listener).enterStatementList(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitStatementList(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitStatementList(this); + else + return visitor.visitChildren(this); + } + } + + public final StatementListContext statementList() throws RecognitionException { + StatementListContext _localctx = new StatementListContext(_ctx, getState()); + enterRule(_localctx, 36, RULE_statementList); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(275); + _errHandler.sync(this); + _alt = 1; + do { + switch (_alt) { + case 1: { + { + setState(274); + statement(); + } + } + break; + default: + throw new NoViableAltException(this); + } + setState(277); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 18, _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; + } + + public static class SharableDeclarationContext extends ParserRuleContext { + public SharableStatementContext sharableStatement() { + return getRuleContext(SharableStatementContext.class, 0); + } + + public SharableDeclarationContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_sharableDeclaration; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterSharableDeclaration(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitSharableDeclaration(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitSharableDeclaration(this); + else + return visitor.visitChildren(this); + } + } + + public final SharableDeclarationContext sharableDeclaration() throws RecognitionException { + SharableDeclarationContext _localctx = new SharableDeclarationContext(_ctx, getState()); + enterRule(_localctx, 38, RULE_sharableDeclaration); + try { + enterOuterAlt(_localctx, 1); + { + setState(279); + sharableStatement(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class SharableStatementContext extends ParserRuleContext { + public SharableModifierContext sharableModifier() { + return getRuleContext(SharableModifierContext.class, 0); + } + + public VariableDeclarationListContext variableDeclarationList() { + return getRuleContext(VariableDeclarationListContext.class, 0); + } + + public EosContext eos() { + return getRuleContext(EosContext.class, 0); + } + + public SharableStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_sharableStatement; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterSharableStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitSharableStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitSharableStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final SharableStatementContext sharableStatement() throws RecognitionException { + SharableStatementContext _localctx = new SharableStatementContext(_ctx, getState()); + enterRule(_localctx, 40, RULE_sharableStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(281); + sharableModifier(); + setState(282); + variableDeclarationList(); + setState(283); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class SharableModifierContext extends ParserRuleContext { + public TerminalNode Sharable() { + return getToken(YJSParser.Sharable, 0); + } + + public SharableModifierContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_sharableModifier; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterSharableModifier(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitSharableModifier(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitSharableModifier(this); + else + return visitor.visitChildren(this); + } + } + + public final SharableModifierContext sharableModifier() throws RecognitionException { + SharableModifierContext _localctx = new SharableModifierContext(_ctx, getState()); + enterRule(_localctx, 42, RULE_sharableModifier); + try { + enterOuterAlt(_localctx, 1); + { + setState(285); + match(Sharable); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class VariableStatementContext extends ParserRuleContext { + public VarModifierContext varModifier() { + return getRuleContext(VarModifierContext.class, 0); + } + + public VariableDeclarationListContext variableDeclarationList() { + return getRuleContext(VariableDeclarationListContext.class, 0); + } + + public EosContext eos() { + return getRuleContext(EosContext.class, 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 YJSParserListener) + ((YJSParserListener) listener).enterVariableStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitVariableStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitVariableStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final VariableStatementContext variableStatement() throws RecognitionException { + VariableStatementContext _localctx = new VariableStatementContext(_ctx, getState()); + enterRule(_localctx, 44, RULE_variableStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(287); + varModifier(); + setState(288); + variableDeclarationList(); + setState(289); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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(YJSParser.Comma); + } + + public TerminalNode Comma(int i) { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterVariableDeclarationList(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitVariableDeclarationList(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitVariableDeclarationList(this); + else + return visitor.visitChildren(this); + } + } + + public final VariableDeclarationListContext variableDeclarationList() + throws RecognitionException { + VariableDeclarationListContext _localctx = + new VariableDeclarationListContext(_ctx, getState()); + enterRule(_localctx, 46, RULE_variableDeclarationList); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(291); + variableDeclaration(); + setState(296); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 19, _ctx); + while (_alt != 2 && _alt != org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER) { + if (_alt == 1) { + { + { + setState(292); + match(Comma); + setState(293); + variableDeclaration(); + } + } + } + setState(298); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 19, _ctx); + } + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class VariableDeclarationContext extends ParserRuleContext { + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode Assign() { + return getToken(YJSParser.Assign, 0); + } + + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.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 YJSParserListener) + ((YJSParserListener) listener).enterVariableDeclaration(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitVariableDeclaration(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitVariableDeclaration(this); + else + return visitor.visitChildren(this); + } + } + + public final VariableDeclarationContext variableDeclaration() throws RecognitionException { + VariableDeclarationContext _localctx = new VariableDeclarationContext(_ctx, getState()); + enterRule(_localctx, 48, RULE_variableDeclaration); + try { + enterOuterAlt(_localctx, 1); + { + { + setState(299); + match(Identifier); + } + setState(302); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 20, _ctx)) { + case 1: { + setState(300); + match(Assign); + setState(301); + singleExpression(0); + } + break; + } + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class EmptyStatementContext extends ParserRuleContext { + public TerminalNode SemiColon() { + return getToken(YJSParser.SemiColon, 0); + } + + public EmptyStatementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_emptyStatement; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterEmptyStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitEmptyStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitEmptyStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final EmptyStatementContext emptyStatement() throws RecognitionException { + EmptyStatementContext _localctx = new EmptyStatementContext(_ctx, getState()); + enterRule(_localctx, 50, RULE_emptyStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(304); + match(SemiColon); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ExpressionStatementContext extends ParserRuleContext { + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public EosContext eos() { + return getRuleContext(EosContext.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 YJSParserListener) + ((YJSParserListener) listener).enterExpressionStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitExpressionStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitExpressionStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final ExpressionStatementContext expressionStatement() throws RecognitionException { + ExpressionStatementContext _localctx = new ExpressionStatementContext(_ctx, getState()); + enterRule(_localctx, 52, RULE_expressionStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(306); + if (!(notOpenBraceAndNotFunction())) + throw new FailedPredicateException(this, "notOpenBraceAndNotFunction()"); + setState(307); + expressionSequence(); + setState(308); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class IfStatementContext extends ParserRuleContext { + public TerminalNode If() { + return getToken(YJSParser.If, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public List statement() { + return getRuleContexts(StatementContext.class); + } + + public StatementContext statement(int i) { + return getRuleContext(StatementContext.class, i); + } + + public TerminalNode Else() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterIfStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitIfStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitIfStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final IfStatementContext ifStatement() throws RecognitionException { + IfStatementContext _localctx = new IfStatementContext(_ctx, getState()); + enterRule(_localctx, 54, RULE_ifStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(310); + match(If); + setState(311); + match(OpenParen); + setState(312); + expressionSequence(); + setState(313); + match(CloseParen); + setState(314); + statement(); + setState(317); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 21, _ctx)) { + case 1: { + setState(315); + match(Else); + setState(316); + statement(); + } + break; + } + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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); + } + } + public static class DoStatementContext extends IterationStatementContext { + public TerminalNode Do() { + return getToken(YJSParser.Do, 0); + } + + public StatementContext statement() { + return getRuleContext(StatementContext.class, 0); + } + + public TerminalNode While() { + return getToken(YJSParser.While, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterDoStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitDoStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitDoStatement(this); + else + return visitor.visitChildren(this); + } + } + public static class ForVarStatementContext extends IterationStatementContext { + public TerminalNode For() { + return getToken(YJSParser.For, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public VarModifierContext varModifier() { + return getRuleContext(VarModifierContext.class, 0); + } + + public VariableDeclarationListContext variableDeclarationList() { + return getRuleContext(VariableDeclarationListContext.class, 0); + } + + public List SemiColon() { + return getTokens(YJSParser.SemiColon); + } + + public TerminalNode SemiColon(int i) { + return getToken(YJSParser.SemiColon, i); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterForVarStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitForVarStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitForVarStatement(this); + else + return visitor.visitChildren(this); + } + } + public static class ForVarInStatementContext extends IterationStatementContext { + public TerminalNode For() { + return getToken(YJSParser.For, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public VarModifierContext varModifier() { + return getRuleContext(VarModifierContext.class, 0); + } + + public VariableDeclarationContext variableDeclaration() { + return getRuleContext(VariableDeclarationContext.class, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public StatementContext statement() { + return getRuleContext(StatementContext.class, 0); + } + + public TerminalNode In() { + return getToken(YJSParser.In, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public ForVarInStatementContext(IterationStatementContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterForVarInStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitForVarInStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitForVarInStatement(this); + else + return visitor.visitChildren(this); + } + } + public static class WhileStatementContext extends IterationStatementContext { + public TerminalNode While() { + return getToken(YJSParser.While, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterWhileStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitWhileStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitWhileStatement(this); + else + return visitor.visitChildren(this); + } + } + public static class ForStatementContext extends IterationStatementContext { + public TerminalNode For() { + return getToken(YJSParser.For, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public List SemiColon() { + return getTokens(YJSParser.SemiColon); + } + + public TerminalNode SemiColon(int i) { + return getToken(YJSParser.SemiColon, i); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterForStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitForStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitForStatement(this); + else + return visitor.visitChildren(this); + } + } + public static class ForInStatementContext extends IterationStatementContext { + public TerminalNode For() { + return getToken(YJSParser.For, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public StatementContext statement() { + return getRuleContext(StatementContext.class, 0); + } + + public TerminalNode In() { + return getToken(YJSParser.In, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public ForInStatementContext(IterationStatementContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterForInStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitForInStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitForInStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final IterationStatementContext iterationStatement() throws RecognitionException { + IterationStatementContext _localctx = new IterationStatementContext(_ctx, getState()); + enterRule(_localctx, 56, RULE_iterationStatement); + int _la; + try { + setState(388); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 29, _ctx)) { + case 1: + _localctx = new DoStatementContext(_localctx); + enterOuterAlt(_localctx, 1); { + setState(319); + match(Do); + setState(320); + statement(); + setState(321); + match(While); + setState(322); + match(OpenParen); + setState(323); + expressionSequence(); + setState(324); + match(CloseParen); + setState(325); + eos(); + } + break; + case 2: + _localctx = new WhileStatementContext(_localctx); + enterOuterAlt(_localctx, 2); { + setState(327); + match(While); + setState(328); + match(OpenParen); + setState(329); + expressionSequence(); + setState(330); + match(CloseParen); + setState(331); + statement(); + } + break; + case 3: + _localctx = new ForStatementContext(_localctx); + enterOuterAlt(_localctx, 3); { + setState(333); + match(For); + setState(334); + match(OpenParen); + setState(336); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) + | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) + | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) + | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) + | (1L << BooleanLiteral) | (1L << DecimalLiteral) + | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) + | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) + || ((((_la - 64)) & ~0x3f) == 0 + && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) + | (1L << (New - 64)) | (1L << (This - 64)) + | (1L << (Super - 64)) | (1L << (Identifier - 64)) + | (1L << (StringLiteral - 64)) + | (1L << (TemplateStringLiteral - 64)))) != 0)) { + { + setState(335); + expressionSequence(); + } + } + + setState(338); + match(SemiColon); + setState(340); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) + | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) + | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) + | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) + | (1L << BooleanLiteral) | (1L << DecimalLiteral) + | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) + | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) + || ((((_la - 64)) & ~0x3f) == 0 + && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) + | (1L << (New - 64)) | (1L << (This - 64)) + | (1L << (Super - 64)) | (1L << (Identifier - 64)) + | (1L << (StringLiteral - 64)) + | (1L << (TemplateStringLiteral - 64)))) != 0)) { + { + setState(339); + expressionSequence(); + } + } + + setState(342); + match(SemiColon); + setState(344); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) + | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) + | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) + | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) + | (1L << BooleanLiteral) | (1L << DecimalLiteral) + | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) + | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) + || ((((_la - 64)) & ~0x3f) == 0 + && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) + | (1L << (New - 64)) | (1L << (This - 64)) + | (1L << (Super - 64)) | (1L << (Identifier - 64)) + | (1L << (StringLiteral - 64)) + | (1L << (TemplateStringLiteral - 64)))) != 0)) { + { + setState(343); + expressionSequence(); + } + } + + setState(346); + match(CloseParen); + setState(347); + statement(); + } + break; + case 4: + _localctx = new ForVarStatementContext(_localctx); + enterOuterAlt(_localctx, 4); { + setState(348); + match(For); + setState(349); + match(OpenParen); + setState(350); + varModifier(); + setState(351); + variableDeclarationList(); + setState(352); + match(SemiColon); + setState(354); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) + | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) + | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) + | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) + | (1L << BooleanLiteral) | (1L << DecimalLiteral) + | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) + | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) + || ((((_la - 64)) & ~0x3f) == 0 + && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) + | (1L << (New - 64)) | (1L << (This - 64)) + | (1L << (Super - 64)) | (1L << (Identifier - 64)) + | (1L << (StringLiteral - 64)) + | (1L << (TemplateStringLiteral - 64)))) != 0)) { + { + setState(353); + expressionSequence(); + } + } + + setState(356); + match(SemiColon); + setState(358); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) + | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) + | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) | (1L << Minus) + | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) + | (1L << BooleanLiteral) | (1L << DecimalLiteral) + | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) + | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) + || ((((_la - 64)) & ~0x3f) == 0 + && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) + | (1L << (New - 64)) | (1L << (This - 64)) + | (1L << (Super - 64)) | (1L << (Identifier - 64)) + | (1L << (StringLiteral - 64)) + | (1L << (TemplateStringLiteral - 64)))) != 0)) { + { + setState(357); + expressionSequence(); + } + } + + setState(360); + match(CloseParen); + setState(361); + statement(); + } + break; + case 5: + _localctx = new ForInStatementContext(_localctx); + enterOuterAlt(_localctx, 5); { + setState(363); + match(For); + setState(364); + match(OpenParen); + setState(365); + singleExpression(0); + setState(369); + _errHandler.sync(this); + switch (_input.LA(1)) { + case In: { + setState(366); + match(In); + } + break; + case Identifier: { + setState(367); + match(Identifier); + setState(368); + if (!(p("of"))) + throw new FailedPredicateException(this, "p(\"of\")"); + } + break; + default: + throw new NoViableAltException(this); + } + setState(371); + expressionSequence(); + setState(372); + match(CloseParen); + setState(373); + statement(); + } + break; + case 6: + _localctx = new ForVarInStatementContext(_localctx); + enterOuterAlt(_localctx, 6); { + setState(375); + match(For); + setState(376); + match(OpenParen); + setState(377); + varModifier(); + setState(378); + variableDeclaration(); + setState(382); + _errHandler.sync(this); + switch (_input.LA(1)) { + case In: { + setState(379); + match(In); + } + break; + case Identifier: { + setState(380); + match(Identifier); + setState(381); + if (!(p("of"))) + throw new FailedPredicateException(this, "p(\"of\")"); + } + break; + default: + throw new NoViableAltException(this); + } + setState(384); + expressionSequence(); + setState(385); + match(CloseParen); + setState(386); + statement(); + } + break; + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class VarModifierContext extends ParserRuleContext { + public TerminalNode Var() { + return getToken(YJSParser.Var, 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 YJSParserListener) + ((YJSParserListener) listener).enterVarModifier(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitVarModifier(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitVarModifier(this); + else + return visitor.visitChildren(this); + } + } + + public final VarModifierContext varModifier() throws RecognitionException { + VarModifierContext _localctx = new VarModifierContext(_ctx, getState()); + enterRule(_localctx, 58, RULE_varModifier); + try { + enterOuterAlt(_localctx, 1); + { + setState(390); + match(Var); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ContinueStatementContext extends ParserRuleContext { + public TerminalNode Continue() { + return getToken(YJSParser.Continue, 0); + } + + public EosContext eos() { + return getRuleContext(EosContext.class, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 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 YJSParserListener) + ((YJSParserListener) listener).enterContinueStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitContinueStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitContinueStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final ContinueStatementContext continueStatement() throws RecognitionException { + ContinueStatementContext _localctx = new ContinueStatementContext(_ctx, getState()); + enterRule(_localctx, 60, RULE_continueStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(392); + match(Continue); + setState(395); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 30, _ctx)) { + case 1: { + setState(393); + if (!(notLineTerminator())) + throw new FailedPredicateException(this, "notLineTerminator()"); + setState(394); + match(Identifier); + } + break; + } + setState(397); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class BreakStatementContext extends ParserRuleContext { + public TerminalNode Break() { + return getToken(YJSParser.Break, 0); + } + + public EosContext eos() { + return getRuleContext(EosContext.class, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 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 YJSParserListener) + ((YJSParserListener) listener).enterBreakStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitBreakStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitBreakStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final BreakStatementContext breakStatement() throws RecognitionException { + BreakStatementContext _localctx = new BreakStatementContext(_ctx, getState()); + enterRule(_localctx, 62, RULE_breakStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(399); + match(Break); + setState(402); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 31, _ctx)) { + case 1: { + setState(400); + if (!(notLineTerminator())) + throw new FailedPredicateException(this, "notLineTerminator()"); + setState(401); + match(Identifier); + } + break; + } + setState(404); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ReturnStatementContext extends ParserRuleContext { + public TerminalNode Return() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterReturnStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitReturnStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitReturnStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final ReturnStatementContext returnStatement() throws RecognitionException { + ReturnStatementContext _localctx = new ReturnStatementContext(_ctx, getState()); + enterRule(_localctx, 64, RULE_returnStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(406); + match(Return); + setState(409); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 32, _ctx)) { + case 1: { + setState(407); + if (!(notLineTerminator())) + throw new FailedPredicateException(this, "notLineTerminator()"); + setState(408); + expressionSequence(); + } + break; + } + setState(411); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class WithStatementContext extends ParserRuleContext { + public TerminalNode With() { + return getToken(YJSParser.With, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterWithStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitWithStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitWithStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final WithStatementContext withStatement() throws RecognitionException { + WithStatementContext _localctx = new WithStatementContext(_ctx, getState()); + enterRule(_localctx, 66, RULE_withStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(413); + match(With); + setState(414); + match(OpenParen); + setState(415); + expressionSequence(); + setState(416); + match(CloseParen); + setState(417); + statement(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class SwitchStatementContext extends ParserRuleContext { + public TerminalNode Switch() { + return getToken(YJSParser.Switch, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterSwitchStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitSwitchStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitSwitchStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final SwitchStatementContext switchStatement() throws RecognitionException { + SwitchStatementContext _localctx = new SwitchStatementContext(_ctx, getState()); + enterRule(_localctx, 68, RULE_switchStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(419); + match(Switch); + setState(420); + match(OpenParen); + setState(421); + expressionSequence(); + setState(422); + match(CloseParen); + setState(423); + caseBlock(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class CaseBlockContext extends ParserRuleContext { + public TerminalNode OpenBrace() { + return getToken(YJSParser.OpenBrace, 0); + } + + public TerminalNode CloseBrace() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterCaseBlock(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitCaseBlock(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitCaseBlock(this); + else + return visitor.visitChildren(this); + } + } + + public final CaseBlockContext caseBlock() throws RecognitionException { + CaseBlockContext _localctx = new CaseBlockContext(_ctx, getState()); + enterRule(_localctx, 70, RULE_caseBlock); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(425); + match(OpenBrace); + setState(427); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Case) { + { + setState(426); + caseClauses(); + } + } + + setState(433); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Default) { + { + setState(429); + defaultClause(); + setState(431); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Case) { + { + setState(430); + caseClauses(); + } + } + + } + } + + setState(435); + match(CloseBrace); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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 YJSParserListener) + ((YJSParserListener) listener).enterCaseClauses(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitCaseClauses(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitCaseClauses(this); + else + return visitor.visitChildren(this); + } + } + + public final CaseClausesContext caseClauses() throws RecognitionException { + CaseClausesContext _localctx = new CaseClausesContext(_ctx, getState()); + enterRule(_localctx, 72, RULE_caseClauses); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(438); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(437); + caseClause(); + } + } + setState(440); + _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; + } + + public static class CaseClauseContext extends ParserRuleContext { + public TerminalNode Case() { + return getToken(YJSParser.Case, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode Colon() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterCaseClause(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitCaseClause(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitCaseClause(this); + else + return visitor.visitChildren(this); + } + } + + public final CaseClauseContext caseClause() throws RecognitionException { + CaseClauseContext _localctx = new CaseClauseContext(_ctx, getState()); + enterRule(_localctx, 74, RULE_caseClause); + try { + enterOuterAlt(_localctx, 1); + { + setState(442); + match(Case); + setState(443); + expressionSequence(); + setState(444); + match(Colon); + setState(446); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 37, _ctx)) { + case 1: { + setState(445); + statementList(); + } + break; + } + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class DefaultClauseContext extends ParserRuleContext { + public TerminalNode Default() { + return getToken(YJSParser.Default, 0); + } + + public TerminalNode Colon() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterDefaultClause(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitDefaultClause(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitDefaultClause(this); + else + return visitor.visitChildren(this); + } + } + + public final DefaultClauseContext defaultClause() throws RecognitionException { + DefaultClauseContext _localctx = new DefaultClauseContext(_ctx, getState()); + enterRule(_localctx, 76, RULE_defaultClause); + try { + enterOuterAlt(_localctx, 1); + { + setState(448); + match(Default); + setState(449); + match(Colon); + setState(451); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 38, _ctx)) { + case 1: { + setState(450); + statementList(); + } + break; + } + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ThrowStatementContext extends ParserRuleContext { + public TerminalNode Throw() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterThrowStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitThrowStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitThrowStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final ThrowStatementContext throwStatement() throws RecognitionException { + ThrowStatementContext _localctx = new ThrowStatementContext(_ctx, getState()); + enterRule(_localctx, 78, RULE_throwStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(453); + match(Throw); + setState(454); + if (!(notLineTerminator())) + throw new FailedPredicateException(this, "notLineTerminator()"); + setState(455); + expressionSequence(); + setState(456); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class TryStatementContext extends ParserRuleContext { + public TerminalNode Try() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterTryStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitTryStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitTryStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final TryStatementContext tryStatement() throws RecognitionException { + TryStatementContext _localctx = new TryStatementContext(_ctx, getState()); + enterRule(_localctx, 80, RULE_tryStatement); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(458); + match(Try); + setState(459); + block(); + setState(465); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Catch: { + setState(460); + catchProduction(); + setState(462); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Finally) { + { + setState(461); + finallyProduction(); + } + } + + } + break; + case Finally: { + setState(464); + 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; + } + + public static class CatchProductionContext extends ParserRuleContext { + public TerminalNode Catch() { + return getToken(YJSParser.Catch, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public BlockContext block() { + return getRuleContext(BlockContext.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 YJSParserListener) + ((YJSParserListener) listener).enterCatchProduction(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitCatchProduction(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitCatchProduction(this); + else + return visitor.visitChildren(this); + } + } + + public final CatchProductionContext catchProduction() throws RecognitionException { + CatchProductionContext _localctx = new CatchProductionContext(_ctx, getState()); + enterRule(_localctx, 82, RULE_catchProduction); + try { + enterOuterAlt(_localctx, 1); + { + setState(467); + match(Catch); + setState(468); + match(OpenParen); + setState(469); + match(Identifier); + setState(470); + match(CloseParen); + setState(471); + block(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class FinallyProductionContext extends ParserRuleContext { + public TerminalNode Finally() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterFinallyProduction(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitFinallyProduction(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitFinallyProduction(this); + else + return visitor.visitChildren(this); + } + } + + public final FinallyProductionContext finallyProduction() throws RecognitionException { + FinallyProductionContext _localctx = new FinallyProductionContext(_ctx, getState()); + enterRule(_localctx, 84, RULE_finallyProduction); + try { + enterOuterAlt(_localctx, 1); + { + setState(473); + match(Finally); + setState(474); + block(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class DebuggerStatementContext extends ParserRuleContext { + public TerminalNode Debugger() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterDebuggerStatement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitDebuggerStatement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitDebuggerStatement(this); + else + return visitor.visitChildren(this); + } + } + + public final DebuggerStatementContext debuggerStatement() throws RecognitionException { + DebuggerStatementContext _localctx = new DebuggerStatementContext(_ctx, getState()); + enterRule(_localctx, 86, RULE_debuggerStatement); + try { + enterOuterAlt(_localctx, 1); + { + setState(476); + match(Debugger); + setState(477); + eos(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class FunctionDeclarationContext extends ParserRuleContext { + public TerminalNode Function() { + return getToken(YJSParser.Function, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public TerminalNode OpenBrace() { + return getToken(YJSParser.OpenBrace, 0); + } + + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class, 0); + } + + public TerminalNode CloseBrace() { + return getToken(YJSParser.CloseBrace, 0); + } + + public AnnotationsContext annotations() { + return getRuleContext(AnnotationsContext.class, 0); + } + + public TerminalNode Export() { + return getToken(YJSParser.Export, 0); + } + + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class, 0); + } + + public TerminalNode View() { + return getToken(YJSParser.View, 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 YJSParserListener) + ((YJSParserListener) listener).enterFunctionDeclaration(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitFunctionDeclaration(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitFunctionDeclaration(this); + else + return visitor.visitChildren(this); + } + } + + public final FunctionDeclarationContext functionDeclaration() throws RecognitionException { + FunctionDeclarationContext _localctx = new FunctionDeclarationContext(_ctx, getState()); + enterRule(_localctx, 88, RULE_functionDeclaration); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(480); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == AtToken) { + { + setState(479); + annotations(); + } + } + + setState(483); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Export) { + { + setState(482); + match(Export); + } + } + + setState(485); + match(Function); + setState(486); + match(Identifier); + setState(487); + match(OpenParen); + setState(489); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) + & ((1L << OpenBracket) | (1L << OpenBrace) | (1L << Ellipsis))) != 0) + || _la == Identifier) { + { + setState(488); + formalParameterList(); + } + } + + setState(491); + match(CloseParen); + setState(493); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == View) { + { + setState(492); + match(View); + } + } + + setState(495); + match(OpenBrace); + setState(496); + functionBody(); + setState(497); + match(CloseBrace); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ClassDeclarationContext extends ParserRuleContext { + public TerminalNode Class() { + return getToken(YJSParser.Class, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public ClassTailContext classTail() { + return getRuleContext(ClassTailContext.class, 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 YJSParserListener) + ((YJSParserListener) listener).enterClassDeclaration(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitClassDeclaration(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitClassDeclaration(this); + else + return visitor.visitChildren(this); + } + } + + public final ClassDeclarationContext classDeclaration() throws RecognitionException { + ClassDeclarationContext _localctx = new ClassDeclarationContext(_ctx, getState()); + enterRule(_localctx, 90, RULE_classDeclaration); + try { + enterOuterAlt(_localctx, 1); + { + setState(499); + match(Class); + setState(500); + match(Identifier); + setState(501); + classTail(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ClassTailContext extends ParserRuleContext { + public TerminalNode OpenBrace() { + return getToken(YJSParser.OpenBrace, 0); + } + + public TerminalNode CloseBrace() { + return getToken(YJSParser.CloseBrace, 0); + } + + public TerminalNode Extends() { + return getToken(YJSParser.Extends, 0); + } + + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 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 YJSParserListener) + ((YJSParserListener) listener).enterClassTail(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitClassTail(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitClassTail(this); + else + return visitor.visitChildren(this); + } + } + + public final ClassTailContext classTail() throws RecognitionException { + ClassTailContext _localctx = new ClassTailContext(_ctx, getState()); + enterRule(_localctx, 92, RULE_classTail); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(505); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Extends) { + { + setState(503); + match(Extends); + setState(504); + singleExpression(0); + } + } + + setState(507); + match(OpenBrace); + setState(511); + _errHandler.sync(this); + _la = _input.LA(1); + while (((((_la - 54)) & ~0x3f) == 0 && ((1L << (_la - 54)) + & ((1L << (NullLiteral - 54)) | (1L << (BooleanLiteral - 54)) + | (1L << (DecimalLiteral - 54)) | (1L << (HexIntegerLiteral - 54)) + | (1L << (OctalIntegerLiteral - 54)) + | (1L << (OctalIntegerLiteral2 - 54)) + | (1L << (BinaryIntegerLiteral - 54)) | (1L << (Break - 54)) + | (1L << (Do - 54)) | (1L << (Instanceof - 54)) + | (1L << (Typeof - 54)) | (1L << (Case - 54)) | (1L << (Else - 54)) + | (1L << (New - 54)) | (1L << (Var - 54)) | (1L << (Catch - 54)) + | (1L << (Finally - 54)) | (1L << (Return - 54)) + | (1L << (Void - 54)) | (1L << (Continue - 54)) | (1L << (For - 54)) + | (1L << (Switch - 54)) | (1L << (While - 54)) + | (1L << (Debugger - 54)) | (1L << (Function - 54)) + | (1L << (This - 54)) | (1L << (With - 54)) | (1L << (Default - 54)) + | (1L << (If - 54)) | (1L << (Throw - 54)) | (1L << (Delete - 54)) + | (1L << (In - 54)) | (1L << (Try - 54)) | (1L << (Sharable - 54)) + | (1L << (Class - 54)) | (1L << (Enum - 54)) + | (1L << (Extends - 54)) | (1L << (Super - 54)) + | (1L << (Const - 54)) | (1L << (Export - 54)) + | (1L << (Import - 54)) | (1L << (Implements - 54)) + | (1L << (Let - 54)) | (1L << (Private - 54)) + | (1L << (Public - 54)) | (1L << (Interface - 54)) + | (1L << (Package - 54)) | (1L << (Protected - 54)) + | (1L << (Static - 54)) | (1L << (Yield - 54)) + | (1L << (Identifier - 54)) + | (1L << (StringLiteral - 54)))) != 0)) { + { + { + setState(508); + classElement(); + } + } + setState(513); + _errHandler.sync(this); + _la = _input.LA(1); + } + setState(514); + match(CloseBrace); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ClassElementContext extends ParserRuleContext { + public MethodDefinitionContext methodDefinition() { + return getRuleContext(MethodDefinitionContext.class, 0); + } + + public TerminalNode Static() { + return getToken(YJSParser.Static, 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 YJSParserListener) + ((YJSParserListener) listener).enterClassElement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitClassElement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitClassElement(this); + else + return visitor.visitChildren(this); + } + } + + public final ClassElementContext classElement() throws RecognitionException { + ClassElementContext _localctx = new ClassElementContext(_ctx, getState()); + enterRule(_localctx, 94, RULE_classElement); + try { + enterOuterAlt(_localctx, 1); + { + setState(517); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 47, _ctx)) { + case 1: { + setState(516); + match(Static); + } + break; + } + setState(519); + methodDefinition(); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class MethodDefinitionContext extends ParserRuleContext { + public PropertyNameContext propertyName() { + return getRuleContext(PropertyNameContext.class, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public TerminalNode OpenBrace() { + return getToken(YJSParser.OpenBrace, 0); + } + + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class, 0); + } + + public TerminalNode CloseBrace() { + return getToken(YJSParser.CloseBrace, 0); + } + + public FormalParameterListContext formalParameterList() { + return getRuleContext(FormalParameterListContext.class, 0); + } + + public MethodDefinitionContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_methodDefinition; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterMethodDefinition(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitMethodDefinition(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitMethodDefinition(this); + else + return visitor.visitChildren(this); + } + } + + public final MethodDefinitionContext methodDefinition() throws RecognitionException { + MethodDefinitionContext _localctx = new MethodDefinitionContext(_ctx, getState()); + enterRule(_localctx, 96, RULE_methodDefinition); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(521); + propertyName(); + setState(522); + match(OpenParen); + setState(524); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) + & ((1L << OpenBracket) | (1L << OpenBrace) | (1L << Ellipsis))) != 0) + || _la == Identifier) { + { + setState(523); + formalParameterList(); + } + } + + setState(526); + match(CloseParen); + setState(527); + match(OpenBrace); + setState(528); + functionBody(); + setState(529); + match(CloseBrace); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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(YJSParser.Comma); + } + + public TerminalNode Comma(int i) { + return getToken(YJSParser.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 FormalParameterListContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_formalParameterList; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterFormalParameterList(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitFormalParameterList(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitFormalParameterList(this); + else + return visitor.visitChildren(this); + } + } + + public final FormalParameterListContext formalParameterList() throws RecognitionException { + FormalParameterListContext _localctx = new FormalParameterListContext(_ctx, getState()); + enterRule(_localctx, 98, RULE_formalParameterList); + int _la; + try { + int _alt; + setState(546); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Identifier: + enterOuterAlt(_localctx, 1); { + setState(531); + formalParameterArg(); + setState(536); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 49, _ctx); + while (_alt != 2 && _alt != org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER) { + if (_alt == 1) { + { + { + setState(532); + match(Comma); + setState(533); + formalParameterArg(); + } + } + } + setState(538); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 49, _ctx); + } + setState(541); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Comma) { + { + setState(539); + match(Comma); + setState(540); + lastFormalParameterArg(); + } + } + + } + break; + case Ellipsis: + enterOuterAlt(_localctx, 2); { + setState(543); + lastFormalParameterArg(); + } + break; + case OpenBracket: + enterOuterAlt(_localctx, 3); { + setState(544); + arrayLiteral(); + } + break; + case OpenBrace: + enterOuterAlt(_localctx, 4); { + setState(545); + 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; + } + + public static class FormalParameterArgContext extends ParserRuleContext { + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode Assign() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterFormalParameterArg(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitFormalParameterArg(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitFormalParameterArg(this); + else + return visitor.visitChildren(this); + } + } + + public final FormalParameterArgContext formalParameterArg() throws RecognitionException { + FormalParameterArgContext _localctx = new FormalParameterArgContext(_ctx, getState()); + enterRule(_localctx, 100, RULE_formalParameterArg); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(548); + match(Identifier); + setState(551); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Assign) { + { + setState(549); + match(Assign); + setState(550); + singleExpression(0); + } + } + + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class LastFormalParameterArgContext extends ParserRuleContext { + public TerminalNode Ellipsis() { + return getToken(YJSParser.Ellipsis, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 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 YJSParserListener) + ((YJSParserListener) listener).enterLastFormalParameterArg(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitLastFormalParameterArg(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitLastFormalParameterArg(this); + else + return visitor.visitChildren(this); + } + } + + public final LastFormalParameterArgContext lastFormalParameterArg() + throws RecognitionException { + LastFormalParameterArgContext _localctx = + new LastFormalParameterArgContext(_ctx, getState()); + enterRule(_localctx, 102, RULE_lastFormalParameterArg); + try { + enterOuterAlt(_localctx, 1); + { + setState(553); + match(Ellipsis); + setState(554); + match(Identifier); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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 YJSParserListener) + ((YJSParserListener) listener).enterFunctionBody(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitFunctionBody(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitFunctionBody(this); + else + return visitor.visitChildren(this); + } + } + + public final FunctionBodyContext functionBody() throws RecognitionException { + FunctionBodyContext _localctx = new FunctionBodyContext(_ctx, getState()); + enterRule(_localctx, 104, RULE_functionBody); + try { + enterOuterAlt(_localctx, 1); + { + setState(557); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 53, _ctx)) { + case 1: { + setState(556); + sourceElements(); + } + break; + } + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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 YJSParserListener) + ((YJSParserListener) listener).enterSourceElements(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitSourceElements(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitSourceElements(this); + else + return visitor.visitChildren(this); + } + } + + public final SourceElementsContext sourceElements() throws RecognitionException { + SourceElementsContext _localctx = new SourceElementsContext(_ctx, getState()); + enterRule(_localctx, 106, RULE_sourceElements); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(560); + _errHandler.sync(this); + _alt = 1; + do { + switch (_alt) { + case 1: { + { + setState(559); + sourceElement(); + } + } + break; + default: + throw new NoViableAltException(this); + } + setState(562); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 54, _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; + } + + public static class ArrayLiteralContext extends ParserRuleContext { + public TerminalNode OpenBracket() { + return getToken(YJSParser.OpenBracket, 0); + } + + public TerminalNode CloseBracket() { + return getToken(YJSParser.CloseBracket, 0); + } + + public List Comma() { + return getTokens(YJSParser.Comma); + } + + public TerminalNode Comma(int i) { + return getToken(YJSParser.Comma, i); + } + + public ElementListContext elementList() { + return getRuleContext(ElementListContext.class, 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 YJSParserListener) + ((YJSParserListener) listener).enterArrayLiteral(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitArrayLiteral(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitArrayLiteral(this); + else + return visitor.visitChildren(this); + } + } + + public final ArrayLiteralContext arrayLiteral() throws RecognitionException { + ArrayLiteralContext _localctx = new ArrayLiteralContext(_ctx, getState()); + enterRule(_localctx, 108, RULE_arrayLiteral); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(564); + match(OpenBracket); + setState(568); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 55, _ctx); + while (_alt != 2 && _alt != org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER) { + if (_alt == 1) { + { + { + setState(565); + match(Comma); + } + } + } + setState(570); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 55, _ctx); + } + setState(572); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << RegularExpressionLiteral) + | (1L << OpenBracket) | (1L << OpenParen) | (1L << OpenBrace) + | (1L << Ellipsis) | (1L << PlusPlus) | (1L << MinusMinus) | (1L << Plus) + | (1L << Minus) | (1L << BitNot) | (1L << Not) | (1L << NullLiteral) + | (1L << BooleanLiteral) | (1L << DecimalLiteral) + | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) + | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 0) + || ((((_la - 64)) & ~0x3f) == 0 + && ((1L << (_la - 64)) & ((1L << (Typeof - 64)) | (1L << (New - 64)) + | (1L << (This - 64)) | (1L << (Super - 64)) + | (1L << (Identifier - 64)) | (1L << (StringLiteral - 64)) + | (1L << (TemplateStringLiteral - 64)))) != 0)) { + { + setState(571); + elementList(); + } + } + + setState(577); + _errHandler.sync(this); + _la = _input.LA(1); + while (_la == Comma) { + { + { + setState(574); + match(Comma); + } + } + setState(579); + _errHandler.sync(this); + _la = _input.LA(1); + } + setState(580); + match(CloseBracket); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ElementListContext extends ParserRuleContext { + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class, i); + } + + public LastElementContext lastElement() { + return getRuleContext(LastElementContext.class, 0); + } + + public List Comma() { + return getTokens(YJSParser.Comma); + } + + public TerminalNode Comma(int i) { + return getToken(YJSParser.Comma, 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 YJSParserListener) + ((YJSParserListener) listener).enterElementList(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitElementList(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitElementList(this); + else + return visitor.visitChildren(this); + } + } + + public final ElementListContext elementList() throws RecognitionException { + ElementListContext _localctx = new ElementListContext(_ctx, getState()); + enterRule(_localctx, 110, RULE_elementList); + int _la; + try { + int _alt; + setState(603); + _errHandler.sync(this); + switch (_input.LA(1)) { + case RegularExpressionLiteral: + case OpenBracket: + case OpenParen: + case OpenBrace: + case PlusPlus: + case MinusMinus: + case Plus: + case Minus: + case BitNot: + case Not: + case NullLiteral: + case BooleanLiteral: + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + case Typeof: + case New: + case This: + case Super: + case Identifier: + case StringLiteral: + case TemplateStringLiteral: + enterOuterAlt(_localctx, 1); { + setState(582); + singleExpression(0); + setState(591); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 59, _ctx); + while (_alt != 2 && _alt != org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER) { + if (_alt == 1) { + { + { + setState(584); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(583); + match(Comma); + } + } + setState(586); + _errHandler.sync(this); + _la = _input.LA(1); + } while (_la == Comma); + setState(588); + singleExpression(0); + } + } + } + setState(593); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 59, _ctx); + } + setState(600); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 61, _ctx)) { + case 1: { + setState(595); + _errHandler.sync(this); + _la = _input.LA(1); + do { + { + { + setState(594); + match(Comma); + } + } + setState(597); + _errHandler.sync(this); + _la = _input.LA(1); + } while (_la == Comma); + setState(599); + lastElement(); + } + break; + } + } + break; + case Ellipsis: + enterOuterAlt(_localctx, 2); { + setState(602); + lastElement(); + } + break; + default: + throw new NoViableAltException(this); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class LastElementContext extends ParserRuleContext { + public TerminalNode Ellipsis() { + return getToken(YJSParser.Ellipsis, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public LastElementContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_lastElement; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterLastElement(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitLastElement(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitLastElement(this); + else + return visitor.visitChildren(this); + } + } + + public final LastElementContext lastElement() throws RecognitionException { + LastElementContext _localctx = new LastElementContext(_ctx, getState()); + enterRule(_localctx, 112, RULE_lastElement); + try { + enterOuterAlt(_localctx, 1); + { + setState(605); + match(Ellipsis); + setState(606); + match(Identifier); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ObjectLiteralContext extends ParserRuleContext { + public TerminalNode OpenBrace() { + return getToken(YJSParser.OpenBrace, 0); + } + + public TerminalNode CloseBrace() { + return getToken(YJSParser.CloseBrace, 0); + } + + public List propertyAssignment() { + return getRuleContexts(PropertyAssignmentContext.class); + } + + public PropertyAssignmentContext propertyAssignment(int i) { + return getRuleContext(PropertyAssignmentContext.class, i); + } + + public List Comma() { + return getTokens(YJSParser.Comma); + } + + public TerminalNode Comma(int i) { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterObjectLiteral(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitObjectLiteral(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitObjectLiteral(this); + else + return visitor.visitChildren(this); + } + } + + public final ObjectLiteralContext objectLiteral() throws RecognitionException { + ObjectLiteralContext _localctx = new ObjectLiteralContext(_ctx, getState()); + enterRule(_localctx, 114, RULE_objectLiteral); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(608); + match(OpenBrace); + setState(617); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OpenBracket) + | (1L << NullLiteral) | (1L << BooleanLiteral) | (1L << DecimalLiteral) + | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) + | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral) + | (1L << Break) | (1L << Do) | (1L << Instanceof))) != 0) + || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) + & ((1L << (Typeof - 64)) | (1L << (Case - 64)) | (1L << (Else - 64)) + | (1L << (New - 64)) | (1L << (Var - 64)) + | (1L << (Catch - 64)) | (1L << (Finally - 64)) + | (1L << (Return - 64)) | (1L << (Void - 64)) + | (1L << (Continue - 64)) | (1L << (For - 64)) + | (1L << (Switch - 64)) | (1L << (While - 64)) + | (1L << (Debugger - 64)) | (1L << (Function - 64)) + | (1L << (This - 64)) | (1L << (With - 64)) + | (1L << (Default - 64)) | (1L << (If - 64)) + | (1L << (Throw - 64)) | (1L << (Delete - 64)) + | (1L << (In - 64)) | (1L << (Try - 64)) + | (1L << (Sharable - 64)) | (1L << (Class - 64)) + | (1L << (Enum - 64)) | (1L << (Extends - 64)) + | (1L << (Super - 64)) | (1L << (Const - 64)) + | (1L << (Export - 64)) | (1L << (Import - 64)) + | (1L << (Implements - 64)) | (1L << (Let - 64)) + | (1L << (Private - 64)) | (1L << (Public - 64)) + | (1L << (Interface - 64)) | (1L << (Package - 64)) + | (1L << (Protected - 64)) | (1L << (Static - 64)) + | (1L << (Yield - 64)) | (1L << (Identifier - 64)) + | (1L << (StringLiteral - 64)))) != 0)) { + { + setState(609); + propertyAssignment(); + setState(614); + _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(610); + match(Comma); + setState(611); + propertyAssignment(); + } + } + } + setState(616); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 63, _ctx); + } + } + } + + setState(620); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Comma) { + { + setState(619); + match(Comma); + } + } + + setState(622); + match(CloseBrace); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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); + } + } + 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(YJSParser.Colon, 0); + } + + public TerminalNode Assign() { + return getToken(YJSParser.Assign, 0); + } + + public PropertyExpressionAssignmentContext(PropertyAssignmentContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterPropertyExpressionAssignment(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitPropertyExpressionAssignment(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor) + .visitPropertyExpressionAssignment(this); + else + return visitor.visitChildren(this); + } + } + public static class ComputedPropertyExpressionAssignmentContext + extends PropertyAssignmentContext { + public TerminalNode OpenBracket() { + return getToken(YJSParser.OpenBracket, 0); + } + + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class, i); + } + + public TerminalNode CloseBracket() { + return getToken(YJSParser.CloseBracket, 0); + } + + public TerminalNode Colon() { + return getToken(YJSParser.Colon, 0); + } + + public ComputedPropertyExpressionAssignmentContext(PropertyAssignmentContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterComputedPropertyExpressionAssignment(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitComputedPropertyExpressionAssignment(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor) + .visitComputedPropertyExpressionAssignment(this); + else + return visitor.visitChildren(this); + } + } + public static class PropertyShorthandContext extends PropertyAssignmentContext { + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public PropertyShorthandContext(PropertyAssignmentContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterPropertyShorthand(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitPropertyShorthand(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitPropertyShorthand(this); + else + return visitor.visitChildren(this); + } + } + + public final PropertyAssignmentContext propertyAssignment() throws RecognitionException { + PropertyAssignmentContext _localctx = new PropertyAssignmentContext(_ctx, getState()); + enterRule(_localctx, 116, RULE_propertyAssignment); + int _la; + try { + setState(635); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 66, _ctx)) { + case 1: + _localctx = new PropertyExpressionAssignmentContext(_localctx); + enterOuterAlt(_localctx, 1); { + setState(624); + propertyName(); + setState(625); + _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(626); + singleExpression(0); + } + break; + case 2: + _localctx = new ComputedPropertyExpressionAssignmentContext(_localctx); + enterOuterAlt(_localctx, 2); { + setState(628); + match(OpenBracket); + setState(629); + singleExpression(0); + setState(630); + match(CloseBracket); + setState(631); + match(Colon); + setState(632); + singleExpression(0); + } + break; + case 3: + _localctx = new PropertyShorthandContext(_localctx); + enterOuterAlt(_localctx, 3); { + setState(634); + match(Identifier); + } + break; + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class PropertyNameContext extends ParserRuleContext { + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class, 0); + } + + public TerminalNode StringLiteral() { + return getToken(YJSParser.StringLiteral, 0); + } + + public NumericLiteralContext numericLiteral() { + return getRuleContext(NumericLiteralContext.class, 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 YJSParserListener) + ((YJSParserListener) listener).enterPropertyName(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitPropertyName(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitPropertyName(this); + else + return visitor.visitChildren(this); + } + } + + public final PropertyNameContext propertyName() throws RecognitionException { + PropertyNameContext _localctx = new PropertyNameContext(_ctx, getState()); + enterRule(_localctx, 118, RULE_propertyName); + try { + setState(640); + _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 Sharable: + 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 Yield: + case Identifier: + enterOuterAlt(_localctx, 1); { + setState(637); + identifierName(); + } + break; + case StringLiteral: + enterOuterAlt(_localctx, 2); { + setState(638); + match(StringLiteral); + } + break; + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + enterOuterAlt(_localctx, 3); { + setState(639); + numericLiteral(); + } + break; + default: + throw new NoViableAltException(this); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ArgumentsContext extends ParserRuleContext { + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public List singleExpression() { + return getRuleContexts(SingleExpressionContext.class); + } + + public SingleExpressionContext singleExpression(int i) { + return getRuleContext(SingleExpressionContext.class, i); + } + + public LastArgumentContext lastArgument() { + return getRuleContext(LastArgumentContext.class, 0); + } + + public List Comma() { + return getTokens(YJSParser.Comma); + } + + public TerminalNode Comma(int i) { + return getToken(YJSParser.Comma, i); + } + + 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 YJSParserListener) + ((YJSParserListener) listener).enterArguments(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitArguments(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitArguments(this); + else + return visitor.visitChildren(this); + } + } + + public final ArgumentsContext arguments() throws RecognitionException { + ArgumentsContext _localctx = new ArgumentsContext(_ctx, getState()); + enterRule(_localctx, 120, RULE_arguments); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(642); + match(OpenParen); + setState(656); + _errHandler.sync(this); + switch (_input.LA(1)) { + case RegularExpressionLiteral: + case OpenBracket: + case OpenParen: + case OpenBrace: + case PlusPlus: + case MinusMinus: + case Plus: + case Minus: + case BitNot: + case Not: + case NullLiteral: + case BooleanLiteral: + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + case Typeof: + case New: + case This: + case Super: + case Identifier: + case StringLiteral: + case TemplateStringLiteral: { + setState(643); + singleExpression(0); + setState(648); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 68, _ctx); + while (_alt != 2 + && _alt != org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER) { + if (_alt == 1) { + { + { + setState(644); + match(Comma); + setState(645); + singleExpression(0); + } + } + } + setState(650); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 68, _ctx); + } + setState(653); + _errHandler.sync(this); + _la = _input.LA(1); + if (_la == Comma) { + { + setState(651); + match(Comma); + setState(652); + lastArgument(); + } + } + + } + break; + case Ellipsis: { + setState(655); + lastArgument(); + } + break; + case CloseParen: + break; + default: + break; + } + setState(658); + match(CloseParen); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class LastArgumentContext extends ParserRuleContext { + public TerminalNode Ellipsis() { + return getToken(YJSParser.Ellipsis, 0); + } + + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public LastArgumentContext(ParserRuleContext parent, int invokingState) { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() { + return RULE_lastArgument; + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterLastArgument(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitLastArgument(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitLastArgument(this); + else + return visitor.visitChildren(this); + } + } + + public final LastArgumentContext lastArgument() throws RecognitionException { + LastArgumentContext _localctx = new LastArgumentContext(_ctx, getState()); + enterRule(_localctx, 122, RULE_lastArgument); + try { + enterOuterAlt(_localctx, 1); + { + setState(660); + match(Ellipsis); + setState(661); + match(Identifier); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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(YJSParser.Comma); + } + + public TerminalNode Comma(int i) { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterExpressionSequence(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitExpressionSequence(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitExpressionSequence(this); + else + return visitor.visitChildren(this); + } + } + + public final ExpressionSequenceContext expressionSequence() throws RecognitionException { + ExpressionSequenceContext _localctx = new ExpressionSequenceContext(_ctx, getState()); + enterRule(_localctx, 124, RULE_expressionSequence); + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(663); + singleExpression(0); + setState(668); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 71, _ctx); + while (_alt != 2 && _alt != org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER) { + if (_alt == 1) { + { + { + setState(664); + match(Comma); + setState(665); + singleExpression(0); + } + } + } + setState(670); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 71, _ctx); + } + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + 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); + } + } + public static class TemplateStringExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 0); + } + + public TerminalNode TemplateStringLiteral() { + return getToken(YJSParser.TemplateStringLiteral, 0); + } + + public TemplateStringExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterTemplateStringExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitTemplateStringExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor) + .visitTemplateStringExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.QuestionMark, 0); + } + + public TerminalNode Colon() { + return getToken(YJSParser.Colon, 0); + } + + public TernaryExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterTernaryExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitTernaryExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitTernaryExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.And, 0); + } + + public LogicalAndExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterLogicalAndExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitLogicalAndExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitLogicalAndExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class PreIncrementExpressionContext extends SingleExpressionContext { + public TerminalNode PlusPlus() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterPreIncrementExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitPreIncrementExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitPreIncrementExpression(this); + else + return visitor.visitChildren(this); + } + } + 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 YJSParserListener) + ((YJSParserListener) listener).enterObjectLiteralExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitObjectLiteralExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitObjectLiteralExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.In, 0); + } + + public InExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterInExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitInExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitInExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.Or, 0); + } + + public LogicalOrExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterLogicalOrExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitLogicalOrExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitLogicalOrExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class NotExpressionContext extends SingleExpressionContext { + public TerminalNode Not() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterNotExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitNotExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitNotExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class PreDecreaseExpressionContext extends SingleExpressionContext { + public TerminalNode MinusMinus() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterPreDecreaseExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitPreDecreaseExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitPreDecreaseExpression(this); + else + return visitor.visitChildren(this); + } + } + 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 YJSParserListener) + ((YJSParserListener) listener).enterArgumentsExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitArgumentsExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitArgumentsExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class ThisExpressionContext extends SingleExpressionContext { + public TerminalNode This() { + return getToken(YJSParser.This, 0); + } + + public ThisExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterThisExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitThisExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitThisExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class UnaryMinusExpressionContext extends SingleExpressionContext { + public TerminalNode Minus() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterUnaryMinusExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitUnaryMinusExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitUnaryMinusExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.Assign, 0); + } + + public AssignmentExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterAssignmentExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitAssignmentExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitAssignmentExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class PostDecreaseExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 0); + } + + public TerminalNode MinusMinus() { + return getToken(YJSParser.MinusMinus, 0); + } + + public PostDecreaseExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterPostDecreaseExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitPostDecreaseExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitPostDecreaseExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class TypeofExpressionContext extends SingleExpressionContext { + public TerminalNode Typeof() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterTypeofExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitTypeofExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitTypeofExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.Instanceof, 0); + } + + public InstanceofExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterInstanceofExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitInstanceofExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitInstanceofExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class UnaryPlusExpressionContext extends SingleExpressionContext { + public TerminalNode Plus() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterUnaryPlusExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitUnaryPlusExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitUnaryPlusExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class ArrowFunctionExpressionContext extends SingleExpressionContext { + public ArrowFunctionParametersContext arrowFunctionParameters() { + return getRuleContext(ArrowFunctionParametersContext.class, 0); + } + + public TerminalNode ARROW() { + return getToken(YJSParser.ARROW, 0); + } + + public ArrowFunctionBodyContext arrowFunctionBody() { + return getRuleContext(ArrowFunctionBodyContext.class, 0); + } + + public ArrowFunctionExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterArrowFunctionExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitArrowFunctionExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitArrowFunctionExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.Equals_, 0); + } + + public TerminalNode NotEquals() { + return getToken(YJSParser.NotEquals, 0); + } + + public TerminalNode IdentityEquals() { + return getToken(YJSParser.IdentityEquals, 0); + } + + public TerminalNode IdentityNotEquals() { + return getToken(YJSParser.IdentityNotEquals, 0); + } + + public EqualityExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterEqualityExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitEqualityExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitEqualityExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.BitXOr, 0); + } + + public BitXOrExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterBitXOrExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitBitXOrExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitBitXOrExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class SuperExpressionContext extends SingleExpressionContext { + public TerminalNode Super() { + return getToken(YJSParser.Super, 0); + } + + public SuperExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterSuperExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitSuperExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitSuperExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.Multiply, 0); + } + + public TerminalNode Divide() { + return getToken(YJSParser.Divide, 0); + } + + public TerminalNode Modulus() { + return getToken(YJSParser.Modulus, 0); + } + + public MultiplicativeExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterMultiplicativeExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitMultiplicativeExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor) + .visitMultiplicativeExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.LeftShiftArithmetic, 0); + } + + public TerminalNode RightShiftArithmetic() { + return getToken(YJSParser.RightShiftArithmetic, 0); + } + + public TerminalNode RightShiftLogical() { + return getToken(YJSParser.RightShiftLogical, 0); + } + + public BitShiftExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterBitShiftExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitBitShiftExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitBitShiftExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class ParenthesizedExpressionContext extends SingleExpressionContext { + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.CloseParen, 0); + } + + public ParenthesizedExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterParenthesizedExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitParenthesizedExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitParenthesizedExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.Plus, 0); + } + + public TerminalNode Minus() { + return getToken(YJSParser.Minus, 0); + } + + public AdditiveExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterAdditiveExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitAdditiveExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitAdditiveExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.LessThan, 0); + } + + public TerminalNode MoreThan() { + return getToken(YJSParser.MoreThan, 0); + } + + public TerminalNode LessThanEquals() { + return getToken(YJSParser.LessThanEquals, 0); + } + + public TerminalNode GreaterThanEquals() { + return getToken(YJSParser.GreaterThanEquals, 0); + } + + public RelationalExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterRelationalExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitRelationalExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitRelationalExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class PostIncrementExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 0); + } + + public TerminalNode PlusPlus() { + return getToken(YJSParser.PlusPlus, 0); + } + + public PostIncrementExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterPostIncrementExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitPostIncrementExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitPostIncrementExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class BitNotExpressionContext extends SingleExpressionContext { + public TerminalNode BitNot() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterBitNotExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitBitNotExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitBitNotExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class NewExpressionContext extends SingleExpressionContext { + public TerminalNode New() { + return getToken(YJSParser.New, 0); + } + + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 0); + } + + public ArgumentsContext arguments() { + return getRuleContext(ArgumentsContext.class, 0); + } + + public NewExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterNewExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitNewExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitNewExpression(this); + else + return visitor.visitChildren(this); + } + } + 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 YJSParserListener) + ((YJSParserListener) listener).enterLiteralExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitLiteralExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitLiteralExpression(this); + else + return visitor.visitChildren(this); + } + } + 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 YJSParserListener) + ((YJSParserListener) listener).enterArrayLiteralExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitArrayLiteralExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitArrayLiteralExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class MemberDotExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 0); + } + + public TerminalNode Dot() { + return getToken(YJSParser.Dot, 0); + } + + public IdentifierNameContext identifierName() { + return getRuleContext(IdentifierNameContext.class, 0); + } + + public MemberDotExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterMemberDotExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitMemberDotExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitMemberDotExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class MemberIndexExpressionContext extends SingleExpressionContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 0); + } + + public TerminalNode OpenBracket() { + return getToken(YJSParser.OpenBracket, 0); + } + + public ExpressionSequenceContext expressionSequence() { + return getRuleContext(ExpressionSequenceContext.class, 0); + } + + public TerminalNode CloseBracket() { + return getToken(YJSParser.CloseBracket, 0); + } + + public MemberIndexExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterMemberIndexExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitMemberIndexExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitMemberIndexExpression(this); + else + return visitor.visitChildren(this); + } + } + public static class IdentifierExpressionContext extends SingleExpressionContext { + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public IdentifierExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterIdentifierExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitIdentifierExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitIdentifierExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.BitAnd, 0); + } + + public BitAndExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterBitAndExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitBitAndExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitBitAndExpression(this); + else + return visitor.visitChildren(this); + } + } + 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(YJSParser.BitOr, 0); + } + + public BitOrExpressionContext(SingleExpressionContext ctx) { + copyFrom(ctx); + } + + @Override + public void enterRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).enterBitOrExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitBitOrExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitBitOrExpression(this); + else + return visitor.visitChildren(this); + } + } + 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 YJSParserListener) + ((YJSParserListener) listener).enterAssignmentOperatorExpression(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitAssignmentOperatorExpression(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor) + .visitAssignmentOperatorExpression(this); + else + return visitor.visitChildren(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 = 126; + enterRecursionRule(_localctx, 126, RULE_singleExpression, _p); + int _la; + try { + int _alt; + enterOuterAlt(_localctx, 1); + { + setState(705); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 73, _ctx)) { + case 1: { + _localctx = new NewExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + + setState(672); + match(New); + setState(673); + singleExpression(0); + setState(675); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 72, _ctx)) { + case 1: { + setState(674); + arguments(); + } + break; + } + } + break; + case 2: { + _localctx = new TypeofExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(677); + match(Typeof); + setState(678); + singleExpression(31); + } + break; + case 3: { + _localctx = new PreIncrementExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(679); + match(PlusPlus); + setState(680); + singleExpression(30); + } + break; + case 4: { + _localctx = new PreDecreaseExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(681); + match(MinusMinus); + setState(682); + singleExpression(29); + } + break; + case 5: { + _localctx = new UnaryPlusExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(683); + match(Plus); + setState(684); + singleExpression(28); + } + break; + case 6: { + _localctx = new UnaryMinusExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(685); + match(Minus); + setState(686); + singleExpression(27); + } + break; + case 7: { + _localctx = new BitNotExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(687); + match(BitNot); + setState(688); + singleExpression(26); + } + break; + case 8: { + _localctx = new NotExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(689); + match(Not); + setState(690); + singleExpression(25); + } + break; + case 9: { + _localctx = new ThisExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(691); + match(This); + } + break; + case 10: { + _localctx = new IdentifierExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(692); + match(Identifier); + } + break; + case 11: { + _localctx = new SuperExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(693); + match(Super); + } + break; + case 12: { + _localctx = new LiteralExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(694); + literal(); + } + break; + case 13: { + _localctx = new ArrayLiteralExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(695); + arrayLiteral(); + } + break; + case 14: { + _localctx = new ObjectLiteralExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(696); + objectLiteral(); + } + break; + case 15: { + _localctx = new ParenthesizedExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(697); + match(OpenParen); + setState(698); + expressionSequence(); + setState(699); + match(CloseParen); + } + break; + case 16: { + _localctx = new ArrowFunctionExpressionContext(_localctx); + _ctx = _localctx; + _prevctx = _localctx; + setState(701); + arrowFunctionParameters(); + setState(702); + match(ARROW); + setState(703); + arrowFunctionBody(); + } + break; + } + _ctx.stop = _input.LT(-1); + setState(776); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 75, _ctx); + while (_alt != 2 && _alt != org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER) { + if (_alt == 1) { + if (_parseListeners != null) + triggerExitRuleEvent(); + _prevctx = _localctx; + { + setState(774); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 74, _ctx)) { + case 1: { + _localctx = new MultiplicativeExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(707); + if (!(precpred(_ctx, 24))) + throw new FailedPredicateException(this, + "precpred(_ctx, 24)"); + setState(708); + _la = _input.LA(1); + if (!((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << Multiply) + | (1L << Divide) | (1L << Modulus))) != 0))) { + _errHandler.recoverInline(this); + } else { + if (_input.LA(1) == Token.EOF) + matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(709); + singleExpression(25); + } + break; + case 2: { + _localctx = new AdditiveExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(710); + if (!(precpred(_ctx, 23))) + throw new FailedPredicateException(this, + "precpred(_ctx, 23)"); + setState(711); + _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(712); + singleExpression(24); + } + break; + case 3: { + _localctx = new BitShiftExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(713); + if (!(precpred(_ctx, 22))) + throw new FailedPredicateException(this, + "precpred(_ctx, 22)"); + setState(714); + _la = _input.LA(1); + if (!((((_la) & ~0x3f) == 0 + && ((1L << _la) & ((1L << RightShiftArithmetic) + | (1L << LeftShiftArithmetic) + | (1L << RightShiftLogical))) != 0))) { + _errHandler.recoverInline(this); + } else { + if (_input.LA(1) == Token.EOF) + matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(715); + singleExpression(23); + } + break; + case 4: { + _localctx = new RelationalExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(716); + if (!(precpred(_ctx, 21))) + throw new FailedPredicateException(this, + "precpred(_ctx, 21)"); + setState(717); + _la = _input.LA(1); + if (!((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << LessThan) + | (1L << MoreThan) | (1L << LessThanEquals) + | (1L << GreaterThanEquals))) != 0))) { + _errHandler.recoverInline(this); + } else { + if (_input.LA(1) == Token.EOF) + matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(718); + singleExpression(22); + } + break; + case 5: { + _localctx = new InstanceofExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(719); + if (!(precpred(_ctx, 20))) + throw new FailedPredicateException(this, + "precpred(_ctx, 20)"); + setState(720); + match(Instanceof); + setState(721); + singleExpression(21); + } + break; + case 6: { + _localctx = new InExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(722); + if (!(precpred(_ctx, 19))) + throw new FailedPredicateException(this, + "precpred(_ctx, 19)"); + setState(723); + match(In); + setState(724); + singleExpression(20); + } + break; + case 7: { + _localctx = new EqualityExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(725); + if (!(precpred(_ctx, 18))) + throw new FailedPredicateException(this, + "precpred(_ctx, 18)"); + setState(726); + _la = _input.LA(1); + if (!((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << Equals_) + | (1L << NotEquals) | (1L << IdentityEquals) + | (1L << IdentityNotEquals))) != 0))) { + _errHandler.recoverInline(this); + } else { + if (_input.LA(1) == Token.EOF) + matchedEOF = true; + _errHandler.reportMatch(this); + consume(); + } + setState(727); + singleExpression(19); + } + break; + case 8: { + _localctx = new BitAndExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(728); + if (!(precpred(_ctx, 17))) + throw new FailedPredicateException(this, + "precpred(_ctx, 17)"); + setState(729); + match(BitAnd); + setState(730); + singleExpression(18); + } + break; + case 9: { + _localctx = new BitXOrExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(731); + if (!(precpred(_ctx, 16))) + throw new FailedPredicateException(this, + "precpred(_ctx, 16)"); + setState(732); + match(BitXOr); + setState(733); + singleExpression(17); + } + break; + case 10: { + _localctx = new BitOrExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(734); + if (!(precpred(_ctx, 15))) + throw new FailedPredicateException(this, + "precpred(_ctx, 15)"); + setState(735); + match(BitOr); + setState(736); + singleExpression(16); + } + break; + case 11: { + _localctx = new LogicalAndExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(737); + if (!(precpred(_ctx, 14))) + throw new FailedPredicateException(this, + "precpred(_ctx, 14)"); + setState(738); + match(And); + setState(739); + singleExpression(15); + } + break; + case 12: { + _localctx = new LogicalOrExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(740); + if (!(precpred(_ctx, 13))) + throw new FailedPredicateException(this, + "precpred(_ctx, 13)"); + setState(741); + match(Or); + setState(742); + singleExpression(14); + } + break; + case 13: { + _localctx = new TernaryExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(743); + if (!(precpred(_ctx, 12))) + throw new FailedPredicateException(this, + "precpred(_ctx, 12)"); + setState(744); + match(QuestionMark); + setState(745); + singleExpression(0); + setState(746); + match(Colon); + setState(747); + singleExpression(13); + } + break; + case 14: { + _localctx = new AssignmentExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(749); + if (!(precpred(_ctx, 11))) + throw new FailedPredicateException(this, + "precpred(_ctx, 11)"); + setState(750); + match(Assign); + setState(751); + singleExpression(12); + } + break; + case 15: { + _localctx = new AssignmentOperatorExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(752); + if (!(precpred(_ctx, 10))) + throw new FailedPredicateException(this, + "precpred(_ctx, 10)"); + setState(753); + assignmentOperator(); + setState(754); + singleExpression(11); + } + break; + case 16: { + _localctx = new MemberIndexExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(756); + if (!(precpred(_ctx, 37))) + throw new FailedPredicateException(this, + "precpred(_ctx, 37)"); + setState(757); + match(OpenBracket); + setState(758); + expressionSequence(); + setState(759); + match(CloseBracket); + } + break; + case 17: { + _localctx = new MemberDotExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(761); + if (!(precpred(_ctx, 36))) + throw new FailedPredicateException(this, + "precpred(_ctx, 36)"); + setState(762); + match(Dot); + setState(763); + identifierName(); + } + break; + case 18: { + _localctx = new ArgumentsExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(764); + if (!(precpred(_ctx, 35))) + throw new FailedPredicateException(this, + "precpred(_ctx, 35)"); + setState(765); + arguments(); + } + break; + case 19: { + _localctx = new PostIncrementExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(766); + if (!(precpred(_ctx, 33))) + throw new FailedPredicateException(this, + "precpred(_ctx, 33)"); + setState(767); + if (!(notLineTerminator())) + throw new FailedPredicateException(this, + "notLineTerminator()"); + setState(768); + match(PlusPlus); + } + break; + case 20: { + _localctx = new PostDecreaseExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(769); + if (!(precpred(_ctx, 32))) + throw new FailedPredicateException(this, + "precpred(_ctx, 32)"); + setState(770); + if (!(notLineTerminator())) + throw new FailedPredicateException(this, + "notLineTerminator()"); + setState(771); + match(MinusMinus); + } + break; + case 21: { + _localctx = new TemplateStringExpressionContext( + new SingleExpressionContext(_parentctx, _parentState)); + pushNewRecursionContext(_localctx, _startState, + RULE_singleExpression); + setState(772); + if (!(precpred(_ctx, 9))) + throw new FailedPredicateException(this, + "precpred(_ctx, 9)"); + setState(773); + match(TemplateStringLiteral); + } + break; + } + } + } + setState(778); + _errHandler.sync(this); + _alt = getInterpreter().adaptivePredict(_input, 75, _ctx); + } + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + unrollRecursionContexts(_parentctx); + } + return _localctx; + } + + public static class ArrowFunctionParametersContext extends ParserRuleContext { + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 0); + } + + public TerminalNode OpenParen() { + return getToken(YJSParser.OpenParen, 0); + } + + public TerminalNode CloseParen() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterArrowFunctionParameters(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitArrowFunctionParameters(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitArrowFunctionParameters(this); + else + return visitor.visitChildren(this); + } + } + + public final ArrowFunctionParametersContext arrowFunctionParameters() + throws RecognitionException { + ArrowFunctionParametersContext _localctx = + new ArrowFunctionParametersContext(_ctx, getState()); + enterRule(_localctx, 128, RULE_arrowFunctionParameters); + int _la; + try { + setState(785); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Identifier: + enterOuterAlt(_localctx, 1); { + setState(779); + match(Identifier); + } + break; + case OpenParen: + enterOuterAlt(_localctx, 2); { + setState(780); + match(OpenParen); + setState(782); + _errHandler.sync(this); + _la = _input.LA(1); + if ((((_la) & ~0x3f) == 0 && ((1L << _la) + & ((1L << OpenBracket) | (1L << OpenBrace) | (1L << Ellipsis))) != 0) + || _la == Identifier) { + { + setState(781); + formalParameterList(); + } + } + + setState(784); + 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; + } + + public static class ArrowFunctionBodyContext extends ParserRuleContext { + public SingleExpressionContext singleExpression() { + return getRuleContext(SingleExpressionContext.class, 0); + } + + public TerminalNode OpenBrace() { + return getToken(YJSParser.OpenBrace, 0); + } + + public FunctionBodyContext functionBody() { + return getRuleContext(FunctionBodyContext.class, 0); + } + + public TerminalNode CloseBrace() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterArrowFunctionBody(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitArrowFunctionBody(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitArrowFunctionBody(this); + else + return visitor.visitChildren(this); + } + } + + public final ArrowFunctionBodyContext arrowFunctionBody() throws RecognitionException { + ArrowFunctionBodyContext _localctx = new ArrowFunctionBodyContext(_ctx, getState()); + enterRule(_localctx, 130, RULE_arrowFunctionBody); + try { + setState(792); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 78, _ctx)) { + case 1: + enterOuterAlt(_localctx, 1); { + setState(787); + singleExpression(0); + } + break; + case 2: + enterOuterAlt(_localctx, 2); { + setState(788); + match(OpenBrace); + setState(789); + functionBody(); + setState(790); + match(CloseBrace); + } + break; + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class AssignmentOperatorContext extends ParserRuleContext { + public TerminalNode MultiplyAssign() { + return getToken(YJSParser.MultiplyAssign, 0); + } + + public TerminalNode DivideAssign() { + return getToken(YJSParser.DivideAssign, 0); + } + + public TerminalNode ModulusAssign() { + return getToken(YJSParser.ModulusAssign, 0); + } + + public TerminalNode PlusAssign() { + return getToken(YJSParser.PlusAssign, 0); + } + + public TerminalNode MinusAssign() { + return getToken(YJSParser.MinusAssign, 0); + } + + public TerminalNode LeftShiftArithmeticAssign() { + return getToken(YJSParser.LeftShiftArithmeticAssign, 0); + } + + public TerminalNode RightShiftArithmeticAssign() { + return getToken(YJSParser.RightShiftArithmeticAssign, 0); + } + + public TerminalNode RightShiftLogicalAssign() { + return getToken(YJSParser.RightShiftLogicalAssign, 0); + } + + public TerminalNode BitAndAssign() { + return getToken(YJSParser.BitAndAssign, 0); + } + + public TerminalNode BitXorAssign() { + return getToken(YJSParser.BitXorAssign, 0); + } + + public TerminalNode BitOrAssign() { + return getToken(YJSParser.BitOrAssign, 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 YJSParserListener) + ((YJSParserListener) listener).enterAssignmentOperator(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitAssignmentOperator(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitAssignmentOperator(this); + else + return visitor.visitChildren(this); + } + } + + public final AssignmentOperatorContext assignmentOperator() throws RecognitionException { + AssignmentOperatorContext _localctx = new AssignmentOperatorContext(_ctx, getState()); + enterRule(_localctx, 132, RULE_assignmentOperator); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(794); + _la = _input.LA(1); + if (!((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << MultiplyAssign) + | (1L << DivideAssign) | (1L << ModulusAssign) | (1L << PlusAssign) + | (1L << MinusAssign) | (1L << LeftShiftArithmeticAssign) + | (1L << RightShiftArithmeticAssign) | (1L << RightShiftLogicalAssign) + | (1L << BitAndAssign) | (1L << BitXorAssign) + | (1L << BitOrAssign))) != 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 static class LiteralContext extends ParserRuleContext { + public TerminalNode NullLiteral() { + return getToken(YJSParser.NullLiteral, 0); + } + + public TerminalNode BooleanLiteral() { + return getToken(YJSParser.BooleanLiteral, 0); + } + + public TerminalNode StringLiteral() { + return getToken(YJSParser.StringLiteral, 0); + } + + public TerminalNode TemplateStringLiteral() { + return getToken(YJSParser.TemplateStringLiteral, 0); + } + + public TerminalNode RegularExpressionLiteral() { + return getToken(YJSParser.RegularExpressionLiteral, 0); + } + + public NumericLiteralContext numericLiteral() { + return getRuleContext(NumericLiteralContext.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 YJSParserListener) + ((YJSParserListener) listener).enterLiteral(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitLiteral(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitLiteral(this); + else + return visitor.visitChildren(this); + } + } + + public final LiteralContext literal() throws RecognitionException { + LiteralContext _localctx = new LiteralContext(_ctx, getState()); + enterRule(_localctx, 134, RULE_literal); + try { + setState(802); + _errHandler.sync(this); + switch (_input.LA(1)) { + case NullLiteral: + enterOuterAlt(_localctx, 1); { + setState(796); + match(NullLiteral); + } + break; + case BooleanLiteral: + enterOuterAlt(_localctx, 2); { + setState(797); + match(BooleanLiteral); + } + break; + case StringLiteral: + enterOuterAlt(_localctx, 3); { + setState(798); + match(StringLiteral); + } + break; + case TemplateStringLiteral: + enterOuterAlt(_localctx, 4); { + setState(799); + match(TemplateStringLiteral); + } + break; + case RegularExpressionLiteral: + enterOuterAlt(_localctx, 5); { + setState(800); + match(RegularExpressionLiteral); + } + break; + case DecimalLiteral: + case HexIntegerLiteral: + case OctalIntegerLiteral: + case OctalIntegerLiteral2: + case BinaryIntegerLiteral: + enterOuterAlt(_localctx, 6); { + setState(801); + numericLiteral(); + } + break; + default: + throw new NoViableAltException(this); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class NumericLiteralContext extends ParserRuleContext { + public TerminalNode DecimalLiteral() { + return getToken(YJSParser.DecimalLiteral, 0); + } + + public TerminalNode HexIntegerLiteral() { + return getToken(YJSParser.HexIntegerLiteral, 0); + } + + public TerminalNode OctalIntegerLiteral() { + return getToken(YJSParser.OctalIntegerLiteral, 0); + } + + public TerminalNode OctalIntegerLiteral2() { + return getToken(YJSParser.OctalIntegerLiteral2, 0); + } + + public TerminalNode BinaryIntegerLiteral() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterNumericLiteral(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitNumericLiteral(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitNumericLiteral(this); + else + return visitor.visitChildren(this); + } + } + + public final NumericLiteralContext numericLiteral() throws RecognitionException { + NumericLiteralContext _localctx = new NumericLiteralContext(_ctx, getState()); + enterRule(_localctx, 136, RULE_numericLiteral); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(804); + _la = _input.LA(1); + if (!((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << DecimalLiteral) + | (1L << HexIntegerLiteral) | (1L << OctalIntegerLiteral) + | (1L << OctalIntegerLiteral2) | (1L << BinaryIntegerLiteral))) != 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 static class IdentifierNameContext extends ParserRuleContext { + public TerminalNode Identifier() { + return getToken(YJSParser.Identifier, 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 YJSParserListener) + ((YJSParserListener) listener).enterIdentifierName(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitIdentifierName(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitIdentifierName(this); + else + return visitor.visitChildren(this); + } + } + + public final IdentifierNameContext identifierName() throws RecognitionException { + IdentifierNameContext _localctx = new IdentifierNameContext(_ctx, getState()); + enterRule(_localctx, 138, RULE_identifierName); + try { + setState(808); + _errHandler.sync(this); + switch (_input.LA(1)) { + case Identifier: + enterOuterAlt(_localctx, 1); { + setState(806); + match(Identifier); + } + 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 Sharable: + 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 Yield: + enterOuterAlt(_localctx, 2); { + setState(807); + reservedWord(); + } + break; + default: + throw new NoViableAltException(this); + } + } catch (RecognitionException re) { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } finally { + exitRule(); + } + return _localctx; + } + + public static class ReservedWordContext extends ParserRuleContext { + public KeywordContext keyword() { + return getRuleContext(KeywordContext.class, 0); + } + + public TerminalNode NullLiteral() { + return getToken(YJSParser.NullLiteral, 0); + } + + public TerminalNode BooleanLiteral() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterReservedWord(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitReservedWord(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitReservedWord(this); + else + return visitor.visitChildren(this); + } + } + + public final ReservedWordContext reservedWord() throws RecognitionException { + ReservedWordContext _localctx = new ReservedWordContext(_ctx, getState()); + enterRule(_localctx, 140, RULE_reservedWord); + try { + setState(813); + _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 Sharable: + 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 Yield: + enterOuterAlt(_localctx, 1); { + setState(810); + keyword(); + } + break; + case NullLiteral: + enterOuterAlt(_localctx, 2); { + setState(811); + match(NullLiteral); + } + break; + case BooleanLiteral: + enterOuterAlt(_localctx, 3); { + setState(812); + 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; + } + + public static class KeywordContext extends ParserRuleContext { + public TerminalNode Break() { + return getToken(YJSParser.Break, 0); + } + + public TerminalNode Do() { + return getToken(YJSParser.Do, 0); + } + + public TerminalNode Instanceof() { + return getToken(YJSParser.Instanceof, 0); + } + + public TerminalNode Typeof() { + return getToken(YJSParser.Typeof, 0); + } + + public TerminalNode Case() { + return getToken(YJSParser.Case, 0); + } + + public TerminalNode Else() { + return getToken(YJSParser.Else, 0); + } + + public TerminalNode New() { + return getToken(YJSParser.New, 0); + } + + public TerminalNode Var() { + return getToken(YJSParser.Var, 0); + } + + public TerminalNode Catch() { + return getToken(YJSParser.Catch, 0); + } + + public TerminalNode Finally() { + return getToken(YJSParser.Finally, 0); + } + + public TerminalNode Return() { + return getToken(YJSParser.Return, 0); + } + + public TerminalNode Void() { + return getToken(YJSParser.Void, 0); + } + + public TerminalNode Continue() { + return getToken(YJSParser.Continue, 0); + } + + public TerminalNode For() { + return getToken(YJSParser.For, 0); + } + + public TerminalNode Switch() { + return getToken(YJSParser.Switch, 0); + } + + public TerminalNode While() { + return getToken(YJSParser.While, 0); + } + + public TerminalNode Debugger() { + return getToken(YJSParser.Debugger, 0); + } + + public TerminalNode Function() { + return getToken(YJSParser.Function, 0); + } + + public TerminalNode This() { + return getToken(YJSParser.This, 0); + } + + public TerminalNode With() { + return getToken(YJSParser.With, 0); + } + + public TerminalNode Default() { + return getToken(YJSParser.Default, 0); + } + + public TerminalNode If() { + return getToken(YJSParser.If, 0); + } + + public TerminalNode Throw() { + return getToken(YJSParser.Throw, 0); + } + + public TerminalNode Delete() { + return getToken(YJSParser.Delete, 0); + } + + public TerminalNode In() { + return getToken(YJSParser.In, 0); + } + + public TerminalNode Try() { + return getToken(YJSParser.Try, 0); + } + + public TerminalNode Class() { + return getToken(YJSParser.Class, 0); + } + + public TerminalNode Enum() { + return getToken(YJSParser.Enum, 0); + } + + public TerminalNode Extends() { + return getToken(YJSParser.Extends, 0); + } + + public TerminalNode Super() { + return getToken(YJSParser.Super, 0); + } + + public TerminalNode Const() { + return getToken(YJSParser.Const, 0); + } + + public TerminalNode Export() { + return getToken(YJSParser.Export, 0); + } + + public TerminalNode Import() { + return getToken(YJSParser.Import, 0); + } + + public TerminalNode Implements() { + return getToken(YJSParser.Implements, 0); + } + + public TerminalNode Let() { + return getToken(YJSParser.Let, 0); + } + + public TerminalNode Private() { + return getToken(YJSParser.Private, 0); + } + + public TerminalNode Public() { + return getToken(YJSParser.Public, 0); + } + + public TerminalNode Interface() { + return getToken(YJSParser.Interface, 0); + } + + public TerminalNode Package() { + return getToken(YJSParser.Package, 0); + } + + public TerminalNode Protected() { + return getToken(YJSParser.Protected, 0); + } + + public TerminalNode Static() { + return getToken(YJSParser.Static, 0); + } + + public TerminalNode Yield() { + return getToken(YJSParser.Yield, 0); + } + + public TerminalNode Sharable() { + return getToken(YJSParser.Sharable, 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 YJSParserListener) + ((YJSParserListener) listener).enterKeyword(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitKeyword(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitKeyword(this); + else + return visitor.visitChildren(this); + } + } + + public final KeywordContext keyword() throws RecognitionException { + KeywordContext _localctx = new KeywordContext(_ctx, getState()); + enterRule(_localctx, 142, RULE_keyword); + int _la; + try { + enterOuterAlt(_localctx, 1); + { + setState(815); + _la = _input.LA(1); + if (!(((((_la - 61)) & ~0x3f) == 0 && ((1L << (_la - 61)) & ((1L << (Break - 61)) + | (1L << (Do - 61)) | (1L << (Instanceof - 61)) | (1L << (Typeof - 61)) + | (1L << (Case - 61)) | (1L << (Else - 61)) | (1L << (New - 61)) + | (1L << (Var - 61)) | (1L << (Catch - 61)) | (1L << (Finally - 61)) + | (1L << (Return - 61)) | (1L << (Void - 61)) | (1L << (Continue - 61)) + | (1L << (For - 61)) | (1L << (Switch - 61)) | (1L << (While - 61)) + | (1L << (Debugger - 61)) | (1L << (Function - 61)) | (1L << (This - 61)) + | (1L << (With - 61)) | (1L << (Default - 61)) | (1L << (If - 61)) + | (1L << (Throw - 61)) | (1L << (Delete - 61)) | (1L << (In - 61)) + | (1L << (Try - 61)) | (1L << (Sharable - 61)) | (1L << (Class - 61)) + | (1L << (Enum - 61)) | (1L << (Extends - 61)) | (1L << (Super - 61)) + | (1L << (Const - 61)) | (1L << (Export - 61)) | (1L << (Import - 61)) + | (1L << (Implements - 61)) | (1L << (Let - 61)) | (1L << (Private - 61)) + | (1L << (Public - 61)) | (1L << (Interface - 61)) | (1L << (Package - 61)) + | (1L << (Protected - 61)) | (1L << (Static - 61)) + | (1L << (Yield - 61)))) != 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 static class EosContext extends ParserRuleContext { + public TerminalNode SemiColon() { + return getToken(YJSParser.SemiColon, 0); + } + + public TerminalNode EOF() { + return getToken(YJSParser.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 YJSParserListener) + ((YJSParserListener) listener).enterEos(this); + } + + @Override + public void exitRule(ParseTreeListener listener) { + if (listener instanceof YJSParserListener) + ((YJSParserListener) listener).exitEos(this); + } + + @Override + public T accept(ParseTreeVisitor visitor) { + if (visitor instanceof YJSParserVisitor) + return ((YJSParserVisitor) visitor).visitEos(this); + else + return visitor.visitChildren(this); + } + } + + public final EosContext eos() throws RecognitionException { + EosContext _localctx = new EosContext(_ctx, getState()); + enterRule(_localctx, 144, RULE_eos); + try { + setState(821); + _errHandler.sync(this); + switch (getInterpreter().adaptivePredict(_input, 82, _ctx)) { + case 1: + enterOuterAlt(_localctx, 1); { + setState(817); + match(SemiColon); + } + break; + case 2: + enterOuterAlt(_localctx, 2); { + setState(818); + match(EOF); + } + break; + case 3: + enterOuterAlt(_localctx, 3); { + setState(819); + if (!(lineTerminatorAhead())) + throw new FailedPredicateException(this, "lineTerminatorAhead()"); + } + break; + case 4: + enterOuterAlt(_localctx, 4); { + setState(820); + if (!(closeBrace())) + throw new FailedPredicateException(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 26: + return expressionStatement_sempred((ExpressionStatementContext) _localctx, + predIndex); + case 28: + return iterationStatement_sempred((IterationStatementContext) _localctx, predIndex); + case 30: + return continueStatement_sempred((ContinueStatementContext) _localctx, predIndex); + case 31: + return breakStatement_sempred((BreakStatementContext) _localctx, predIndex); + case 32: + return returnStatement_sempred((ReturnStatementContext) _localctx, predIndex); + case 39: + return throwStatement_sempred((ThrowStatementContext) _localctx, predIndex); + case 63: + return singleExpression_sempred((SingleExpressionContext) _localctx, predIndex); + case 72: + return eos_sempred((EosContext) _localctx, predIndex); + } + return true; + } + + private boolean expressionStatement_sempred(ExpressionStatementContext _localctx, + int predIndex) { + switch (predIndex) { + case 0: + return notOpenBraceAndNotFunction(); + } + return true; + } + + private boolean iterationStatement_sempred(IterationStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 1: + return p("of"); + case 2: + return p("of"); + } + return true; + } + + private boolean continueStatement_sempred(ContinueStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 3: + return notLineTerminator(); + } + return true; + } + + private boolean breakStatement_sempred(BreakStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 4: + return notLineTerminator(); + } + return true; + } + + private boolean returnStatement_sempred(ReturnStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 5: + return notLineTerminator(); + } + return true; + } + + private boolean throwStatement_sempred(ThrowStatementContext _localctx, int predIndex) { + switch (predIndex) { + case 6: + return notLineTerminator(); + } + return true; + } + + private boolean singleExpression_sempred(SingleExpressionContext _localctx, int predIndex) { + switch (predIndex) { + case 7: + return precpred(_ctx, 24); + case 8: + return precpred(_ctx, 23); + case 9: + return precpred(_ctx, 22); + case 10: + return precpred(_ctx, 21); + case 11: + return precpred(_ctx, 20); + case 12: + return precpred(_ctx, 19); + case 13: + return precpred(_ctx, 18); + case 14: + return precpred(_ctx, 17); + case 15: + return precpred(_ctx, 16); + case 16: + return precpred(_ctx, 15); + case 17: + return precpred(_ctx, 14); + case 18: + return precpred(_ctx, 13); + case 19: + return precpred(_ctx, 12); + case 20: + return precpred(_ctx, 11); + case 21: + return precpred(_ctx, 10); + case 22: + return precpred(_ctx, 37); + case 23: + return precpred(_ctx, 36); + case 24: + return precpred(_ctx, 35); + case 25: + return precpred(_ctx, 33); + case 26: + return notLineTerminator(); + case 27: + return precpred(_ctx, 32); + case 28: + return notLineTerminator(); + case 29: + return precpred(_ctx, 9); + } + return true; + } + + private boolean eos_sempred(EosContext _localctx, int predIndex) { + switch (predIndex) { + case 30: + return lineTerminatorAhead(); + case 31: + return closeBrace(); + } + return true; + } + + public static final String _serializedATN = + "\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\3}\u033a\4\2\t\2\4" + + "\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t" + + "\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22" + + "\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31" + + "\4\32\t\32\4\33\t\33\4\34\t\34\4\35\t\35\4\36\t\36\4\37\t\37\4 \t \4!" + + "\t!\4\"\t\"\4#\t#\4$\t$\4%\t%\4&\t&\4\'\t\'\4(\t(\4)\t)\4*\t*\4+\t+\4" + + ",\t,\4-\t-\4.\t.\4/\t/\4\60\t\60\4\61\t\61\4\62\t\62\4\63\t\63\4\64\t" + + "\64\4\65\t\65\4\66\t\66\4\67\t\67\48\t8\49\t9\4:\t:\4;\t;\4<\t<\4=\t=" + + "\4>\t>\4?\t?\4@\t@\4A\tA\4B\tB\4C\tC\4D\tD\4E\tE\4F\tF\4G\tG\4H\tH\4I" + + "\tI\4J\tJ\3\2\5\2\u0096\n\2\3\2\3\2\3\3\5\3\u009b\n\3\3\3\3\3\3\3\3\3" + + "\6\3\u00a1\n\3\r\3\16\3\u00a2\3\3\3\3\3\4\6\4\u00a8\n\4\r\4\16\4\u00a9" + + "\3\5\3\5\3\5\3\5\5\5\u00b0\n\5\3\5\3\5\3\6\3\6\3\6\7\6\u00b7\n\6\f\6\16" + + "\6\u00ba\13\6\3\7\3\7\3\7\5\7\u00bf\n\7\3\b\3\b\3\b\3\b\3\b\5\b\u00c6" + + "\n\b\3\t\5\t\u00c9\n\t\3\t\3\t\3\t\3\t\5\t\u00cf\n\t\3\t\3\t\3\t\3\n\3" + + "\n\5\n\u00d6\n\n\3\n\3\n\3\n\3\n\5\n\u00dc\n\n\3\n\3\n\3\n\5\n\u00e1\n" + + "\n\3\n\3\n\5\n\u00e5\n\n\3\13\3\13\3\f\3\f\3\r\3\r\3\16\6\16\u00ee\n\16" + + "\r\16\16\16\u00ef\3\17\3\17\3\17\3\17\3\20\3\20\3\20\3\20\3\20\3\21\3" + + "\21\3\21\7\21\u00fe\n\21\f\21\16\21\u0101\13\21\3\22\3\22\3\22\3\22\3" + + "\22\3\22\3\22\3\22\3\22\3\22\5\22\u010d\n\22\3\23\3\23\5\23\u0111\n\23" + + "\3\23\3\23\3\24\6\24\u0116\n\24\r\24\16\24\u0117\3\25\3\25\3\26\3\26\3" + + "\26\3\26\3\27\3\27\3\30\3\30\3\30\3\30\3\31\3\31\3\31\7\31\u0129\n\31" + + "\f\31\16\31\u012c\13\31\3\32\3\32\3\32\5\32\u0131\n\32\3\33\3\33\3\34" + + "\3\34\3\34\3\34\3\35\3\35\3\35\3\35\3\35\3\35\3\35\5\35\u0140\n\35\3\36" + + "\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36" + + "\3\36\3\36\5\36\u0153\n\36\3\36\3\36\5\36\u0157\n\36\3\36\3\36\5\36\u015b" + + "\n\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\5\36\u0165\n\36\3\36\3\36" + + "\5\36\u0169\n\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\5\36\u0174" + + "\n\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\5\36\u0181" + + "\n\36\3\36\3\36\3\36\3\36\5\36\u0187\n\36\3\37\3\37\3 \3 \3 \5 \u018e" + + "\n \3 \3 \3!\3!\3!\5!\u0195\n!\3!\3!\3\"\3\"\3\"\5\"\u019c\n\"\3\"\3\"" + + "\3#\3#\3#\3#\3#\3#\3$\3$\3$\3$\3$\3$\3%\3%\5%\u01ae\n%\3%\3%\5%\u01b2" + + "\n%\5%\u01b4\n%\3%\3%\3&\6&\u01b9\n&\r&\16&\u01ba\3\'\3\'\3\'\3\'\5\'" + + "\u01c1\n\'\3(\3(\3(\5(\u01c6\n(\3)\3)\3)\3)\3)\3*\3*\3*\3*\5*\u01d1\n" + + "*\3*\5*\u01d4\n*\3+\3+\3+\3+\3+\3+\3,\3,\3,\3-\3-\3-\3.\5.\u01e3\n.\3" + + ".\5.\u01e6\n.\3.\3.\3.\3.\5.\u01ec\n.\3.\3.\5.\u01f0\n.\3.\3.\3.\3.\3" + + "/\3/\3/\3/\3\60\3\60\5\60\u01fc\n\60\3\60\3\60\7\60\u0200\n\60\f\60\16" + + "\60\u0203\13\60\3\60\3\60\3\61\5\61\u0208\n\61\3\61\3\61\3\62\3\62\3\62" + + "\5\62\u020f\n\62\3\62\3\62\3\62\3\62\3\62\3\63\3\63\3\63\7\63\u0219\n" + + "\63\f\63\16\63\u021c\13\63\3\63\3\63\5\63\u0220\n\63\3\63\3\63\3\63\5" + + "\63\u0225\n\63\3\64\3\64\3\64\5\64\u022a\n\64\3\65\3\65\3\65\3\66\5\66" + + "\u0230\n\66\3\67\6\67\u0233\n\67\r\67\16\67\u0234\38\38\78\u0239\n8\f" + + "8\168\u023c\138\38\58\u023f\n8\38\78\u0242\n8\f8\168\u0245\138\38\38\3" + + "9\39\69\u024b\n9\r9\169\u024c\39\79\u0250\n9\f9\169\u0253\139\39\69\u0256" + + "\n9\r9\169\u0257\39\59\u025b\n9\39\59\u025e\n9\3:\3:\3:\3;\3;\3;\3;\7" + + ";\u0267\n;\f;\16;\u026a\13;\5;\u026c\n;\3;\5;\u026f\n;\3;\3;\3<\3<\3<" + + "\3<\3<\3<\3<\3<\3<\3<\3<\5<\u027e\n<\3=\3=\3=\5=\u0283\n=\3>\3>\3>\3>" + + "\7>\u0289\n>\f>\16>\u028c\13>\3>\3>\5>\u0290\n>\3>\5>\u0293\n>\3>\3>\3" + + "?\3?\3?\3@\3@\3@\7@\u029d\n@\f@\16@\u02a0\13@\3A\3A\3A\3A\5A\u02a6\nA" + + "\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A" + + "\3A\3A\3A\3A\3A\5A\u02c4\nA\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A" + + "\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A" + + "\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A" + + "\3A\3A\3A\3A\3A\3A\3A\7A\u0309\nA\fA\16A\u030c\13A\3B\3B\3B\5B\u0311\n" + + "B\3B\5B\u0314\nB\3C\3C\3C\3C\3C\5C\u031b\nC\3D\3D\3E\3E\3E\3E\3E\3E\5" + + "E\u0325\nE\3F\3F\3G\3G\5G\u032b\nG\3H\3H\3H\5H\u0330\nH\3I\3I\3J\3J\3" + + "J\3J\5J\u0338\nJ\3J\2\3\u0080K\2\4\6\b\n\f\16\20\22\24\26\30\32\34\36" + + " \"$&(*,.\60\62\64\668:<>@BDFHJLNPRTVXZ\\^`bdfhjlnprtvxz|~\u0080\u0082" + + "\u0084\u0086\u0088\u008a\u008c\u008e\u0090\u0092\2\16\3\2il\3\2_`\3\2" + + "\\^\4\2\16\16\20\20\3\2\31\33\3\2\25\26\3\2\34\36\3\2\37\"\3\2#&\3\2," + + "\66\3\2:>\6\2?X[[bhmu\2\u0380\2\u0095\3\2\2\2\4\u009a\3\2\2\2\6\u00a7" + + "\3\2\2\2\b\u00ab\3\2\2\2\n\u00b3\3\2\2\2\f\u00be\3\2\2\2\16\u00c5\3\2" + + "\2\2\20\u00c8\3\2\2\2\22\u00e4\3\2\2\2\24\u00e6\3\2\2\2\26\u00e8\3\2\2" + + "\2\30\u00ea\3\2\2\2\32\u00ed\3\2\2\2\34\u00f1\3\2\2\2\36\u00f5\3\2\2\2" + + " \u00fa\3\2\2\2\"\u010c\3\2\2\2$\u010e\3\2\2\2&\u0115\3\2\2\2(\u0119\3" + + "\2\2\2*\u011b\3\2\2\2,\u011f\3\2\2\2.\u0121\3\2\2\2\60\u0125\3\2\2\2\62" + + "\u012d\3\2\2\2\64\u0132\3\2\2\2\66\u0134\3\2\2\28\u0138\3\2\2\2:\u0186" + + "\3\2\2\2<\u0188\3\2\2\2>\u018a\3\2\2\2@\u0191\3\2\2\2B\u0198\3\2\2\2D" + + "\u019f\3\2\2\2F\u01a5\3\2\2\2H\u01ab\3\2\2\2J\u01b8\3\2\2\2L\u01bc\3\2" + + "\2\2N\u01c2\3\2\2\2P\u01c7\3\2\2\2R\u01cc\3\2\2\2T\u01d5\3\2\2\2V\u01db" + + "\3\2\2\2X\u01de\3\2\2\2Z\u01e2\3\2\2\2\\\u01f5\3\2\2\2^\u01fb\3\2\2\2" + + "`\u0207\3\2\2\2b\u020b\3\2\2\2d\u0224\3\2\2\2f\u0226\3\2\2\2h\u022b\3" + + "\2\2\2j\u022f\3\2\2\2l\u0232\3\2\2\2n\u0236\3\2\2\2p\u025d\3\2\2\2r\u025f" + + "\3\2\2\2t\u0262\3\2\2\2v\u027d\3\2\2\2x\u0282\3\2\2\2z\u0284\3\2\2\2|" + + "\u0296\3\2\2\2~\u0299\3\2\2\2\u0080\u02c3\3\2\2\2\u0082\u0313\3\2\2\2" + + "\u0084\u031a\3\2\2\2\u0086\u031c\3\2\2\2\u0088\u0324\3\2\2\2\u008a\u0326" + + "\3\2\2\2\u008c\u032a\3\2\2\2\u008e\u032f\3\2\2\2\u0090\u0331\3\2\2\2\u0092" + + "\u0337\3\2\2\2\u0094\u0096\5\32\16\2\u0095\u0094\3\2\2\2\u0095\u0096\3" + + "\2\2\2\u0096\u0097\3\2\2\2\u0097\u0098\5\4\3\2\u0098\3\3\2\2\2\u0099\u009b" + + "\5\6\4\2\u009a\u0099\3\2\2\2\u009a\u009b\3\2\2\2\u009b\u009c\3\2\2\2\u009c" + + "\u009d\t\2\2\2\u009d\u009e\7v\2\2\u009e\u00a0\7\n\2\2\u009f\u00a1\5\16" + + "\b\2\u00a0\u009f\3\2\2\2\u00a1\u00a2\3\2\2\2\u00a2\u00a0\3\2\2\2\u00a2" + + "\u00a3\3\2\2\2\u00a3\u00a4\3\2\2\2\u00a4\u00a5\7\13\2\2\u00a5\5\3\2\2" + + "\2\u00a6\u00a8\5\b\5\2\u00a7\u00a6\3\2\2\2\u00a8\u00a9\3\2\2\2\u00a9\u00a7" + + "\3\2\2\2\u00a9\u00aa\3\2\2\2\u00aa\7\3\2\2\2\u00ab\u00ac\7Z\2\2\u00ac" + + "\u00ad\7v\2\2\u00ad\u00af\7\b\2\2\u00ae\u00b0\5\n\6\2\u00af\u00ae\3\2" + + "\2\2\u00af\u00b0\3\2\2\2\u00b0\u00b1\3\2\2\2\u00b1\u00b2\7\t\2\2\u00b2" + + "\t\3\2\2\2\u00b3\u00b8\5\f\7\2\u00b4\u00b5\7\r\2\2\u00b5\u00b7\5\f\7\2" + + "\u00b6\u00b4\3\2\2\2\u00b7\u00ba\3\2\2\2\u00b8\u00b6\3\2\2\2\u00b8\u00b9" + + "\3\2\2\2\u00b9\13\3\2\2\2\u00ba\u00b8\3\2\2\2\u00bb\u00bf\5\u008aF\2\u00bc" + + "\u00bf\7w\2\2\u00bd\u00bf\5t;\2\u00be\u00bb\3\2\2\2\u00be\u00bc\3\2\2" + + "\2\u00be\u00bd\3\2\2\2\u00bf\r\3\2\2\2\u00c0\u00c6\5\\/\2\u00c1\u00c6" + + "\5Z.\2\u00c2\u00c6\5\20\t\2\u00c3\u00c6\5\22\n\2\u00c4\u00c6\5(\25\2\u00c5" + + "\u00c0\3\2\2\2\u00c5\u00c1\3\2\2\2\u00c5\u00c2\3\2\2\2\u00c5\u00c3\3\2" + + "\2\2\u00c5\u00c4\3\2\2\2\u00c6\17\3\2\2\2\u00c7\u00c9\5\6\4\2\u00c8\u00c7" + + "\3\2\2\2\u00c8\u00c9\3\2\2\2\u00c9\u00ca\3\2\2\2\u00ca\u00cb\7q\2\2\u00cb" + + "\u00cc\7v\2\2\u00cc\u00ce\7\b\2\2\u00cd\u00cf\5d\63\2\u00ce\u00cd\3\2" + + "\2\2\u00ce\u00cf\3\2\2\2\u00cf\u00d0\3\2\2\2\u00d0\u00d1\7\t\2\2\u00d1" + + "\u00d2\5\u0092J\2\u00d2\21\3\2\2\2\u00d3\u00d5\7Y\2\2\u00d4\u00d6\5\24" + + "\13\2\u00d5\u00d4\3\2\2\2\u00d5\u00d6\3\2\2\2\u00d6\u00d7\3\2\2\2\u00d7" + + "\u00d8\7v\2\2\u00d8\u00e5\7\f\2\2\u00d9\u00db\7Y\2\2\u00da\u00dc\5\24" + + "\13\2\u00db\u00da\3\2\2\2\u00db\u00dc\3\2\2\2\u00dc\u00dd\3\2\2\2\u00dd" + + "\u00de\7v\2\2\u00de\u00e0\7\b\2\2\u00df\u00e1\5\26\f\2\u00e0\u00df\3\2" + + "\2\2\u00e0\u00e1\3\2\2\2\u00e1\u00e2\3\2\2\2\u00e2\u00e3\7\t\2\2\u00e3" + + "\u00e5\7\f\2\2\u00e4\u00d3\3\2\2\2\u00e4\u00d9\3\2\2\2\u00e5\23\3\2\2" + + "\2\u00e6\u00e7\t\3\2\2\u00e7\25\3\2\2\2\u00e8\u00e9\t\4\2\2\u00e9\27\3" + + "\2\2\2\u00ea\u00eb\5\"\22\2\u00eb\31\3\2\2\2\u00ec\u00ee\5\34\17\2\u00ed" + + "\u00ec\3\2\2\2\u00ee\u00ef\3\2\2\2\u00ef\u00ed\3\2\2\2\u00ef\u00f0\3\2" + + "\2\2\u00f0\33\3\2\2\2\u00f1\u00f2\7h\2\2\u00f2\u00f3\7w\2\2\u00f3\u00f4" + + "\7\f\2\2\u00f4\35\3\2\2\2\u00f5\u00f6\7g\2\2\u00f6\u00f7\7v\2\2\u00f7" + + "\u00f8\5 \21\2\u00f8\u00f9\7\f\2\2\u00f9\37\3\2\2\2\u00fa\u00ff\7:\2\2" + + "\u00fb\u00fc\7\22\2\2\u00fc\u00fe\7:\2\2\u00fd\u00fb\3\2\2\2\u00fe\u0101" + + "\3\2\2\2\u00ff\u00fd\3\2\2\2\u00ff\u0100\3\2\2\2\u0100!\3\2\2\2\u0101" + + "\u00ff\3\2\2\2\u0102\u010d\5$\23\2\u0103\u010d\5.\30\2\u0104\u010d\5\64" + + "\33\2\u0105\u010d\5\66\34\2\u0106\u010d\58\35\2\u0107\u010d\5:\36\2\u0108" + + "\u010d\5> \2\u0109\u010d\5@!\2\u010a\u010d\5B\"\2\u010b\u010d\5F$\2\u010c" + + "\u0102\3\2\2\2\u010c\u0103\3\2\2\2\u010c\u0104\3\2\2\2\u010c\u0105\3\2" + + "\2\2\u010c\u0106\3\2\2\2\u010c\u0107\3\2\2\2\u010c\u0108\3\2\2\2\u010c" + + "\u0109\3\2\2\2\u010c\u010a\3\2\2\2\u010c\u010b\3\2\2\2\u010d#\3\2\2\2" + + "\u010e\u0110\7\n\2\2\u010f\u0111\5&\24\2\u0110\u010f\3\2\2\2\u0110\u0111" + + "\3\2\2\2\u0111\u0112\3\2\2\2\u0112\u0113\7\13\2\2\u0113%\3\2\2\2\u0114" + + "\u0116\5\"\22\2\u0115\u0114\3\2\2\2\u0116\u0117\3\2\2\2\u0117\u0115\3" + + "\2\2\2\u0117\u0118\3\2\2\2\u0118\'\3\2\2\2\u0119\u011a\5*\26\2\u011a)" + + "\3\2\2\2\u011b\u011c\5,\27\2\u011c\u011d\5\60\31\2\u011d\u011e\5\u0092" + + "J\2\u011e+\3\2\2\2\u011f\u0120\7[\2\2\u0120-\3\2\2\2\u0121\u0122\5<\37" + + "\2\u0122\u0123\5\60\31\2\u0123\u0124\5\u0092J\2\u0124/\3\2\2\2\u0125\u012a" + + "\5\62\32\2\u0126\u0127\7\r\2\2\u0127\u0129\5\62\32\2\u0128\u0126\3\2\2" + + "\2\u0129\u012c\3\2\2\2\u012a\u0128\3\2\2\2\u012a\u012b\3\2\2\2\u012b\61" + + "\3\2\2\2\u012c\u012a\3\2\2\2\u012d\u0130\7v\2\2\u012e\u012f\7\16\2\2\u012f" + + "\u0131\5\u0080A\2\u0130\u012e\3\2\2\2\u0130\u0131\3\2\2\2\u0131\63\3\2" + + "\2\2\u0132\u0133\7\f\2\2\u0133\65\3\2\2\2\u0134\u0135\6\34\2\2\u0135\u0136" + + "\5~@\2\u0136\u0137\5\u0092J\2\u0137\67\3\2\2\2\u0138\u0139\7T\2\2\u0139" + + "\u013a\7\b\2\2\u013a\u013b\5~@\2\u013b\u013c\7\t\2\2\u013c\u013f\5\"\22" + + "\2\u013d\u013e\7D\2\2\u013e\u0140\5\"\22\2\u013f\u013d\3\2\2\2\u013f\u0140" + + "\3\2\2\2\u01409\3\2\2\2\u0141\u0142\7@\2\2\u0142\u0143\5\"\22\2\u0143" + + "\u0144\7N\2\2\u0144\u0145\7\b\2\2\u0145\u0146\5~@\2\u0146\u0147\7\t\2" + + "\2\u0147\u0148\5\u0092J\2\u0148\u0187\3\2\2\2\u0149\u014a\7N\2\2\u014a" + + "\u014b\7\b\2\2\u014b\u014c\5~@\2\u014c\u014d\7\t\2\2\u014d\u014e\5\"\22" + + "\2\u014e\u0187\3\2\2\2\u014f\u0150\7L\2\2\u0150\u0152\7\b\2\2\u0151\u0153" + + "\5~@\2\u0152\u0151\3\2\2\2\u0152\u0153\3\2\2\2\u0153\u0154\3\2\2\2\u0154" + + "\u0156\7\f\2\2\u0155\u0157\5~@\2\u0156\u0155\3\2\2\2\u0156\u0157\3\2\2" + + "\2\u0157\u0158\3\2\2\2\u0158\u015a\7\f\2\2\u0159\u015b\5~@\2\u015a\u0159" + + "\3\2\2\2\u015a\u015b\3\2\2\2\u015b\u015c\3\2\2\2\u015c\u015d\7\t\2\2\u015d" + + "\u0187\5\"\22\2\u015e\u015f\7L\2\2\u015f\u0160\7\b\2\2\u0160\u0161\5<" + + "\37\2\u0161\u0162\5\60\31\2\u0162\u0164\7\f\2\2\u0163\u0165\5~@\2\u0164" + + "\u0163\3\2\2\2\u0164\u0165\3\2\2\2\u0165\u0166\3\2\2\2\u0166\u0168\7\f" + + "\2\2\u0167\u0169\5~@\2\u0168\u0167\3\2\2\2\u0168\u0169\3\2\2\2\u0169\u016a" + + "\3\2\2\2\u016a\u016b\7\t\2\2\u016b\u016c\5\"\22\2\u016c\u0187\3\2\2\2" + + "\u016d\u016e\7L\2\2\u016e\u016f\7\b\2\2\u016f\u0173\5\u0080A\2\u0170\u0174" + + "\7W\2\2\u0171\u0172\7v\2\2\u0172\u0174\6\36\3\2\u0173\u0170\3\2\2\2\u0173" + + "\u0171\3\2\2\2\u0174\u0175\3\2\2\2\u0175\u0176\5~@\2\u0176\u0177\7\t\2" + + "\2\u0177\u0178\5\"\22\2\u0178\u0187\3\2\2\2\u0179\u017a\7L\2\2\u017a\u017b" + + "\7\b\2\2\u017b\u017c\5<\37\2\u017c\u0180\5\62\32\2\u017d\u0181\7W\2\2" + + "\u017e\u017f\7v\2\2\u017f\u0181\6\36\4\2\u0180\u017d\3\2\2\2\u0180\u017e" + + "\3\2\2\2\u0181\u0182\3\2\2\2\u0182\u0183\5~@\2\u0183\u0184\7\t\2\2\u0184" + + "\u0185\5\"\22\2\u0185\u0187\3\2\2\2\u0186\u0141\3\2\2\2\u0186\u0149\3" + + "\2\2\2\u0186\u014f\3\2\2\2\u0186\u015e\3\2\2\2\u0186\u016d\3\2\2\2\u0186" + + "\u0179\3\2\2\2\u0187;\3\2\2\2\u0188\u0189\7F\2\2\u0189=\3\2\2\2\u018a" + + "\u018d\7K\2\2\u018b\u018c\6 \5\2\u018c\u018e\7v\2\2\u018d\u018b\3\2\2" + + "\2\u018d\u018e\3\2\2\2\u018e\u018f\3\2\2\2\u018f\u0190\5\u0092J\2\u0190" + + "?\3\2\2\2\u0191\u0194\7?\2\2\u0192\u0193\6!\6\2\u0193\u0195\7v\2\2\u0194" + + "\u0192\3\2\2\2\u0194\u0195\3\2\2\2\u0195\u0196\3\2\2\2\u0196\u0197\5\u0092" + + "J\2\u0197A\3\2\2\2\u0198\u019b\7I\2\2\u0199\u019a\6\"\7\2\u019a\u019c" + + "\5~@\2\u019b\u0199\3\2\2\2\u019b\u019c\3\2\2\2\u019c\u019d\3\2\2\2\u019d" + + "\u019e\5\u0092J\2\u019eC\3\2\2\2\u019f\u01a0\7R\2\2\u01a0\u01a1\7\b\2" + + "\2\u01a1\u01a2\5~@\2\u01a2\u01a3\7\t\2\2\u01a3\u01a4\5\"\22\2\u01a4E\3" + + "\2\2\2\u01a5\u01a6\7M\2\2\u01a6\u01a7\7\b\2\2\u01a7\u01a8\5~@\2\u01a8" + + "\u01a9\7\t\2\2\u01a9\u01aa\5H%\2\u01aaG\3\2\2\2\u01ab\u01ad\7\n\2\2\u01ac" + + "\u01ae\5J&\2\u01ad\u01ac\3\2\2\2\u01ad\u01ae\3\2\2\2\u01ae\u01b3\3\2\2" + + "\2\u01af\u01b1\5N(\2\u01b0\u01b2\5J&\2\u01b1\u01b0\3\2\2\2\u01b1\u01b2" + + "\3\2\2\2\u01b2\u01b4\3\2\2\2\u01b3\u01af\3\2\2\2\u01b3\u01b4\3\2\2\2\u01b4" + + "\u01b5\3\2\2\2\u01b5\u01b6\7\13\2\2\u01b6I\3\2\2\2\u01b7\u01b9\5L\'\2" + + "\u01b8\u01b7\3\2\2\2\u01b9\u01ba\3\2\2\2\u01ba\u01b8\3\2\2\2\u01ba\u01bb" + + "\3\2\2\2\u01bbK\3\2\2\2\u01bc\u01bd\7C\2\2\u01bd\u01be\5~@\2\u01be\u01c0" + + "\7\20\2\2\u01bf\u01c1\5&\24\2\u01c0\u01bf\3\2\2\2\u01c0\u01c1\3\2\2\2" + + "\u01c1M\3\2\2\2\u01c2\u01c3\7S\2\2\u01c3\u01c5\7\20\2\2\u01c4\u01c6\5" + + "&\24\2\u01c5\u01c4\3\2\2\2\u01c5\u01c6\3\2\2\2\u01c6O\3\2\2\2\u01c7\u01c8" + + "\7U\2\2\u01c8\u01c9\6)\b\2\u01c9\u01ca\5~@\2\u01ca\u01cb\5\u0092J\2\u01cb" + + "Q\3\2\2\2\u01cc\u01cd\7X\2\2\u01cd\u01d3\5$\23\2\u01ce\u01d0\5T+\2\u01cf" + + "\u01d1\5V,\2\u01d0\u01cf\3\2\2\2\u01d0\u01d1\3\2\2\2\u01d1\u01d4\3\2\2" + + "\2\u01d2\u01d4\5V,\2\u01d3\u01ce\3\2\2\2\u01d3\u01d2\3\2\2\2\u01d4S\3" + + "\2\2\2\u01d5\u01d6\7G\2\2\u01d6\u01d7\7\b\2\2\u01d7\u01d8\7v\2\2\u01d8" + + "\u01d9\7\t\2\2\u01d9\u01da\5$\23\2\u01daU\3\2\2\2\u01db\u01dc\7H\2\2\u01dc" + + "\u01dd\5$\23\2\u01ddW\3\2\2\2\u01de\u01df\7O\2\2\u01df\u01e0\5\u0092J" + + "\2\u01e0Y\3\2\2\2\u01e1\u01e3\5\6\4\2\u01e2\u01e1\3\2\2\2\u01e2\u01e3" + + "\3\2\2\2\u01e3\u01e5\3\2\2\2\u01e4\u01e6\7g\2\2\u01e5\u01e4\3\2\2\2\u01e5" + + "\u01e6\3\2\2\2\u01e6\u01e7\3\2\2\2\u01e7\u01e8\7P\2\2\u01e8\u01e9\7v\2" + + "\2\u01e9\u01eb\7\b\2\2\u01ea\u01ec\5d\63\2\u01eb\u01ea\3\2\2\2\u01eb\u01ec" + + "\3\2\2\2\u01ec\u01ed\3\2\2\2\u01ed\u01ef\7\t\2\2\u01ee\u01f0\7a\2\2\u01ef" + + "\u01ee\3\2\2\2\u01ef\u01f0\3\2\2\2\u01f0\u01f1\3\2\2\2\u01f1\u01f2\7\n" + + "\2\2\u01f2\u01f3\5j\66\2\u01f3\u01f4\7\13\2\2\u01f4[\3\2\2\2\u01f5\u01f6" + + "\7b\2\2\u01f6\u01f7\7v\2\2\u01f7\u01f8\5^\60\2\u01f8]\3\2\2\2\u01f9\u01fa" + + "\7d\2\2\u01fa\u01fc\5\u0080A\2\u01fb\u01f9\3\2\2\2\u01fb\u01fc\3\2\2\2" + + "\u01fc\u01fd\3\2\2\2\u01fd\u0201\7\n\2\2\u01fe\u0200\5`\61\2\u01ff\u01fe" + + "\3\2\2\2\u0200\u0203\3\2\2\2\u0201\u01ff\3\2\2\2\u0201\u0202\3\2\2\2\u0202" + + "\u0204\3\2\2\2\u0203\u0201\3\2\2\2\u0204\u0205\7\13\2\2\u0205_\3\2\2\2" + + "\u0206\u0208\7t\2\2\u0207\u0206\3\2\2\2\u0207\u0208\3\2\2\2\u0208\u0209" + + "\3\2\2\2\u0209\u020a\5b\62\2\u020aa\3\2\2\2\u020b\u020c\5x=\2\u020c\u020e" + + "\7\b\2\2\u020d\u020f\5d\63\2\u020e\u020d\3\2\2\2\u020e\u020f\3\2\2\2\u020f" + + "\u0210\3\2\2\2\u0210\u0211\7\t\2\2\u0211\u0212\7\n\2\2\u0212\u0213\5j" + + "\66\2\u0213\u0214\7\13\2\2\u0214c\3\2\2\2\u0215\u021a\5f\64\2\u0216\u0217" + + "\7\r\2\2\u0217\u0219\5f\64\2\u0218\u0216\3\2\2\2\u0219\u021c\3\2\2\2\u021a" + + "\u0218\3\2\2\2\u021a\u021b\3\2\2\2\u021b\u021f\3\2\2\2\u021c\u021a\3\2" + + "\2\2\u021d\u021e\7\r\2\2\u021e\u0220\5h\65\2\u021f\u021d\3\2\2\2\u021f" + + "\u0220\3\2\2\2\u0220\u0225\3\2\2\2\u0221\u0225\5h\65\2\u0222\u0225\5n" + + "8\2\u0223\u0225\5t;\2\u0224\u0215\3\2\2\2\u0224\u0221\3\2\2\2\u0224\u0222" + + "\3\2\2\2\u0224\u0223\3\2\2\2\u0225e\3\2\2\2\u0226\u0229\7v\2\2\u0227\u0228" + + "\7\16\2\2\u0228\u022a\5\u0080A\2\u0229\u0227\3\2\2\2\u0229\u022a\3\2\2" + + "\2\u022ag\3\2\2\2\u022b\u022c\7\21\2\2\u022c\u022d\7v\2\2\u022di\3\2\2" + + "\2\u022e\u0230\5l\67\2\u022f\u022e\3\2\2\2\u022f\u0230\3\2\2\2\u0230k" + + "\3\2\2\2\u0231\u0233\5\30\r\2\u0232\u0231\3\2\2\2\u0233\u0234\3\2\2\2" + + "\u0234\u0232\3\2\2\2\u0234\u0235\3\2\2\2\u0235m\3\2\2\2\u0236\u023a\7" + + "\6\2\2\u0237\u0239\7\r\2\2\u0238\u0237\3\2\2\2\u0239\u023c\3\2\2\2\u023a" + + "\u0238\3\2\2\2\u023a\u023b\3\2\2\2\u023b\u023e\3\2\2\2\u023c\u023a\3\2" + + "\2\2\u023d\u023f\5p9\2\u023e\u023d\3\2\2\2\u023e\u023f\3\2\2\2\u023f\u0243" + + "\3\2\2\2\u0240\u0242\7\r\2\2\u0241\u0240\3\2\2\2\u0242\u0245\3\2\2\2\u0243" + + "\u0241\3\2\2\2\u0243\u0244\3\2\2\2\u0244\u0246\3\2\2\2\u0245\u0243\3\2" + + "\2\2\u0246\u0247\7\7\2\2\u0247o\3\2\2\2\u0248\u0251\5\u0080A\2\u0249\u024b" + + "\7\r\2\2\u024a\u0249\3\2\2\2\u024b\u024c\3\2\2\2\u024c\u024a\3\2\2\2\u024c" + + "\u024d\3\2\2\2\u024d\u024e\3\2\2\2\u024e\u0250\5\u0080A\2\u024f\u024a" + + "\3\2\2\2\u0250\u0253\3\2\2\2\u0251\u024f\3\2\2\2\u0251\u0252\3\2\2\2\u0252" + + "\u025a\3\2\2\2\u0253\u0251\3\2\2\2\u0254\u0256\7\r\2\2\u0255\u0254\3\2" + + "\2\2\u0256\u0257\3\2\2\2\u0257\u0255\3\2\2\2\u0257\u0258\3\2\2\2\u0258" + + "\u0259\3\2\2\2\u0259\u025b\5r:\2\u025a\u0255\3\2\2\2\u025a\u025b\3\2\2" + + "\2\u025b\u025e\3\2\2\2\u025c\u025e\5r:\2\u025d\u0248\3\2\2\2\u025d\u025c" + + "\3\2\2\2\u025eq\3\2\2\2\u025f\u0260\7\21\2\2\u0260\u0261\7v\2\2\u0261" + + "s\3\2\2\2\u0262\u026b\7\n\2\2\u0263\u0268\5v<\2\u0264\u0265\7\r\2\2\u0265" + + "\u0267\5v<\2\u0266\u0264\3\2\2\2\u0267\u026a\3\2\2\2\u0268\u0266\3\2\2" + + "\2\u0268\u0269\3\2\2\2\u0269\u026c\3\2\2\2\u026a\u0268\3\2\2\2\u026b\u0263" + + "\3\2\2\2\u026b\u026c\3\2\2\2\u026c\u026e\3\2\2\2\u026d\u026f\7\r\2\2\u026e" + + "\u026d\3\2\2\2\u026e\u026f\3\2\2\2\u026f\u0270\3\2\2\2\u0270\u0271\7\13" + + "\2\2\u0271u\3\2\2\2\u0272\u0273\5x=\2\u0273\u0274\t\5\2\2\u0274\u0275" + + "\5\u0080A\2\u0275\u027e\3\2\2\2\u0276\u0277\7\6\2\2\u0277\u0278\5\u0080" + + "A\2\u0278\u0279\7\7\2\2\u0279\u027a\7\20\2\2\u027a\u027b\5\u0080A\2\u027b" + + "\u027e\3\2\2\2\u027c\u027e\7v\2\2\u027d\u0272\3\2\2\2\u027d\u0276\3\2" + + "\2\2\u027d\u027c\3\2\2\2\u027ew\3\2\2\2\u027f\u0283\5\u008cG\2\u0280\u0283" + + "\7w\2\2\u0281\u0283\5\u008aF\2\u0282\u027f\3\2\2\2\u0282\u0280\3\2\2\2" + + "\u0282\u0281\3\2\2\2\u0283y\3\2\2\2\u0284\u0292\7\b\2\2\u0285\u028a\5" + + "\u0080A\2\u0286\u0287\7\r\2\2\u0287\u0289\5\u0080A\2\u0288\u0286\3\2\2" + + "\2\u0289\u028c\3\2\2\2\u028a\u0288\3\2\2\2\u028a\u028b\3\2\2\2\u028b\u028f" + + "\3\2\2\2\u028c\u028a\3\2\2\2\u028d\u028e\7\r\2\2\u028e\u0290\5|?\2\u028f" + + "\u028d\3\2\2\2\u028f\u0290\3\2\2\2\u0290\u0293\3\2\2\2\u0291\u0293\5|" + + "?\2\u0292\u0285\3\2\2\2\u0292\u0291\3\2\2\2\u0292\u0293\3\2\2\2\u0293" + + "\u0294\3\2\2\2\u0294\u0295\7\t\2\2\u0295{\3\2\2\2\u0296\u0297\7\21\2\2" + + "\u0297\u0298\7v\2\2\u0298}\3\2\2\2\u0299\u029e\5\u0080A\2\u029a\u029b" + + "\7\r\2\2\u029b\u029d\5\u0080A\2\u029c\u029a\3\2\2\2\u029d\u02a0\3\2\2" + + "\2\u029e\u029c\3\2\2\2\u029e\u029f\3\2\2\2\u029f\177\3\2\2\2\u02a0\u029e" + + "\3\2\2\2\u02a1\u02a2\bA\1\2\u02a2\u02a3\7E\2\2\u02a3\u02a5\5\u0080A\2" + + "\u02a4\u02a6\5z>\2\u02a5\u02a4\3\2\2\2\u02a5\u02a6\3\2\2\2\u02a6\u02c4" + + "\3\2\2\2\u02a7\u02a8\7B\2\2\u02a8\u02c4\5\u0080A!\u02a9\u02aa\7\23\2\2" + + "\u02aa\u02c4\5\u0080A \u02ab\u02ac\7\24\2\2\u02ac\u02c4\5\u0080A\37\u02ad" + + "\u02ae\7\25\2\2\u02ae\u02c4\5\u0080A\36\u02af\u02b0\7\26\2\2\u02b0\u02c4" + + "\5\u0080A\35\u02b1\u02b2\7\27\2\2\u02b2\u02c4\5\u0080A\34\u02b3\u02b4" + + "\7\30\2\2\u02b4\u02c4\5\u0080A\33\u02b5\u02c4\7Q\2\2\u02b6\u02c4\7v\2" + + "\2\u02b7\u02c4\7e\2\2\u02b8\u02c4\5\u0088E\2\u02b9\u02c4\5n8\2\u02ba\u02c4" + + "\5t;\2\u02bb\u02bc\7\b\2\2\u02bc\u02bd\5~@\2\u02bd\u02be\7\t\2\2\u02be" + + "\u02c4\3\2\2\2\u02bf\u02c0\5\u0082B\2\u02c0\u02c1\7\67\2\2\u02c1\u02c2" + + "\5\u0084C\2\u02c2\u02c4\3\2\2\2\u02c3\u02a1\3\2\2\2\u02c3\u02a7\3\2\2" + + "\2\u02c3\u02a9\3\2\2\2\u02c3\u02ab\3\2\2\2\u02c3\u02ad\3\2\2\2\u02c3\u02af" + + "\3\2\2\2\u02c3\u02b1\3\2\2\2\u02c3\u02b3\3\2\2\2\u02c3\u02b5\3\2\2\2\u02c3" + + "\u02b6\3\2\2\2\u02c3\u02b7\3\2\2\2\u02c3\u02b8\3\2\2\2\u02c3\u02b9\3\2" + + "\2\2\u02c3\u02ba\3\2\2\2\u02c3\u02bb\3\2\2\2\u02c3\u02bf\3\2\2\2\u02c4" + + "\u030a\3\2\2\2\u02c5\u02c6\f\32\2\2\u02c6\u02c7\t\6\2\2\u02c7\u0309\5" + + "\u0080A\33\u02c8\u02c9\f\31\2\2\u02c9\u02ca\t\7\2\2\u02ca\u0309\5\u0080" + + "A\32\u02cb\u02cc\f\30\2\2\u02cc\u02cd\t\b\2\2\u02cd\u0309\5\u0080A\31" + + "\u02ce\u02cf\f\27\2\2\u02cf\u02d0\t\t\2\2\u02d0\u0309\5\u0080A\30\u02d1" + + "\u02d2\f\26\2\2\u02d2\u02d3\7A\2\2\u02d3\u0309\5\u0080A\27\u02d4\u02d5" + + "\f\25\2\2\u02d5\u02d6\7W\2\2\u02d6\u0309\5\u0080A\26\u02d7\u02d8\f\24" + + "\2\2\u02d8\u02d9\t\n\2\2\u02d9\u0309\5\u0080A\25\u02da\u02db\f\23\2\2" + + "\u02db\u02dc\7\'\2\2\u02dc\u0309\5\u0080A\24\u02dd\u02de\f\22\2\2\u02de" + + "\u02df\7(\2\2\u02df\u0309\5\u0080A\23\u02e0\u02e1\f\21\2\2\u02e1\u02e2" + + "\7)\2\2\u02e2\u0309\5\u0080A\22\u02e3\u02e4\f\20\2\2\u02e4\u02e5\7*\2" + + "\2\u02e5\u0309\5\u0080A\21\u02e6\u02e7\f\17\2\2\u02e7\u02e8\7+\2\2\u02e8" + + "\u0309\5\u0080A\20\u02e9\u02ea\f\16\2\2\u02ea\u02eb\7\17\2\2\u02eb\u02ec" + + "\5\u0080A\2\u02ec\u02ed\7\20\2\2\u02ed\u02ee\5\u0080A\17\u02ee\u0309\3" + + "\2\2\2\u02ef\u02f0\f\r\2\2\u02f0\u02f1\7\16\2\2\u02f1\u0309\5\u0080A\16" + + "\u02f2\u02f3\f\f\2\2\u02f3\u02f4\5\u0086D\2\u02f4\u02f5\5\u0080A\r\u02f5" + + "\u0309\3\2\2\2\u02f6\u02f7\f\'\2\2\u02f7\u02f8\7\6\2\2\u02f8\u02f9\5~" + + "@\2\u02f9\u02fa\7\7\2\2\u02fa\u0309\3\2\2\2\u02fb\u02fc\f&\2\2\u02fc\u02fd" + + "\7\22\2\2\u02fd\u0309\5\u008cG\2\u02fe\u02ff\f%\2\2\u02ff\u0309\5z>\2" + + "\u0300\u0301\f#\2\2\u0301\u0302\6A\34\2\u0302\u0309\7\23\2\2\u0303\u0304" + + "\f\"\2\2\u0304\u0305\6A\36\2\u0305\u0309\7\24\2\2\u0306\u0307\f\13\2\2" + + "\u0307\u0309\7x\2\2\u0308\u02c5\3\2\2\2\u0308\u02c8\3\2\2\2\u0308\u02cb" + + "\3\2\2\2\u0308\u02ce\3\2\2\2\u0308\u02d1\3\2\2\2\u0308\u02d4\3\2\2\2\u0308" + + "\u02d7\3\2\2\2\u0308\u02da\3\2\2\2\u0308\u02dd\3\2\2\2\u0308\u02e0\3\2" + + "\2\2\u0308\u02e3\3\2\2\2\u0308\u02e6\3\2\2\2\u0308\u02e9\3\2\2\2\u0308" + + "\u02ef\3\2\2\2\u0308\u02f2\3\2\2\2\u0308\u02f6\3\2\2\2\u0308\u02fb\3\2" + + "\2\2\u0308\u02fe\3\2\2\2\u0308\u0300\3\2\2\2\u0308\u0303\3\2\2\2\u0308" + + "\u0306\3\2\2\2\u0309\u030c\3\2\2\2\u030a\u0308\3\2\2\2\u030a\u030b\3\2" + + "\2\2\u030b\u0081\3\2\2\2\u030c\u030a\3\2\2\2\u030d\u0314\7v\2\2\u030e" + + "\u0310\7\b\2\2\u030f\u0311\5d\63\2\u0310\u030f\3\2\2\2\u0310\u0311\3\2" + + "\2\2\u0311\u0312\3\2\2\2\u0312\u0314\7\t\2\2\u0313\u030d\3\2\2\2\u0313" + + "\u030e\3\2\2\2\u0314\u0083\3\2\2\2\u0315\u031b\5\u0080A\2\u0316\u0317" + + "\7\n\2\2\u0317\u0318\5j\66\2\u0318\u0319\7\13\2\2\u0319\u031b\3\2\2\2" + + "\u031a\u0315\3\2\2\2\u031a\u0316\3\2\2\2\u031b\u0085\3\2\2\2\u031c\u031d" + + "\t\13\2\2\u031d\u0087\3\2\2\2\u031e\u0325\78\2\2\u031f\u0325\79\2\2\u0320" + + "\u0325\7w\2\2\u0321\u0325\7x\2\2\u0322\u0325\7\5\2\2\u0323\u0325\5\u008a" + + "F\2\u0324\u031e\3\2\2\2\u0324\u031f\3\2\2\2\u0324\u0320\3\2\2\2\u0324" + + "\u0321\3\2\2\2\u0324\u0322\3\2\2\2\u0324\u0323\3\2\2\2\u0325\u0089\3\2" + + "\2\2\u0326\u0327\t\f\2\2\u0327\u008b\3\2\2\2\u0328\u032b\7v\2\2\u0329" + + "\u032b\5\u008eH\2\u032a\u0328\3\2\2\2\u032a\u0329\3\2\2\2\u032b\u008d" + + "\3\2\2\2\u032c\u0330\5\u0090I\2\u032d\u0330\78\2\2\u032e\u0330\79\2\2" + + "\u032f\u032c\3\2\2\2\u032f\u032d\3\2\2\2\u032f\u032e\3\2\2\2\u0330\u008f" + + "\3\2\2\2\u0331\u0332\t\r\2\2\u0332\u0091\3\2\2\2\u0333\u0338\7\f\2\2\u0334" + + "\u0338\7\2\2\3\u0335\u0338\6J \2\u0336\u0338\6J!\2\u0337\u0333\3\2\2\2" + + "\u0337\u0334\3\2\2\2\u0337\u0335\3\2\2\2\u0337\u0336\3\2\2\2\u0338\u0093" + + "\3\2\2\2U\u0095\u009a\u00a2\u00a9\u00af\u00b8\u00be\u00c5\u00c8\u00ce" + + "\u00d5\u00db\u00e0\u00e4\u00ef\u00ff\u010c\u0110\u0117\u012a\u0130\u013f" + + "\u0152\u0156\u015a\u0164\u0168\u0173\u0180\u0186\u018d\u0194\u019b\u01ad" + + "\u01b1\u01b3\u01ba\u01c0\u01c5\u01d0\u01d3\u01e2\u01e5\u01eb\u01ef\u01fb" + + "\u0201\u0207\u020e\u021a\u021f\u0224\u0229\u022f\u0234\u023a\u023e\u0243" + + "\u024c\u0251\u0257\u025a\u025d\u0268\u026b\u026e\u027d\u0282\u028a\u028f" + + "\u0292\u029e\u02a5\u02c3\u0308\u030a\u0310\u0313\u031a\u0324\u032a\u032f" + + "\u0337"; + 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); + } + } +} diff --git a/src/main/gen/org/bdware/sc/parser/YJSParserBaseListener.java b/src/main/gen/org/bdware/sc/parser/YJSParserBaseListener.java index 0e6f34d..6510cc8 100644 --- a/src/main/gen/org/bdware/sc/parser/YJSParserBaseListener.java +++ b/src/main/gen/org/bdware/sc/parser/YJSParserBaseListener.java @@ -6,1426 +6,2373 @@ import org.antlr.v4.runtime.tree.ErrorNode; import org.antlr.v4.runtime.tree.TerminalNode; /** - * This class provides an empty implementation of {@link YJSParserListener}, - * which can be extended to create a listener which only needs to handle a subset - * of the available methods. + * This class provides an empty implementation of {@link YJSParserListener}, which can be extended + * to create a listener which only needs to handle a subset of the available methods. */ public class YJSParserBaseListener implements YJSParserListener { - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterProgram(YJSParser.ProgramContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitProgram(YJSParser.ProgramContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterContractDeclar(YJSParser.ContractDeclarContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitContractDeclar(YJSParser.ContractDeclarContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAnnotations(YJSParser.AnnotationsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAnnotations(YJSParser.AnnotationsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAnnotation(YJSParser.AnnotationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAnnotation(YJSParser.AnnotationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAnnotationArgs(YJSParser.AnnotationArgsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAnnotationArgs(YJSParser.AnnotationArgsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEventDeclaration(YJSParser.EventDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEventDeclaration(YJSParser.EventDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEventSemantics(YJSParser.EventSemanticsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEventSemantics(YJSParser.EventSemanticsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSourceElement(YJSParser.SourceElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSourceElement(YJSParser.SourceElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportStmts(YJSParser.ImportStmtsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportStmts(YJSParser.ImportStmtsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterImportStmt(YJSParser.ImportStmtContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitImportStmt(YJSParser.ImportStmtContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExportStmt(YJSParser.ExportStmtContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExportStmt(YJSParser.ExportStmtContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVersionName(YJSParser.VersionNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVersionName(YJSParser.VersionNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterStatement(YJSParser.StatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitStatement(YJSParser.StatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBlock(YJSParser.BlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBlock(YJSParser.BlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterStatementList(YJSParser.StatementListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitStatementList(YJSParser.StatementListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSharableDeclaration(YJSParser.SharableDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSharableDeclaration(YJSParser.SharableDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSharableStatement(YJSParser.SharableStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSharableStatement(YJSParser.SharableStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSharableModifier(YJSParser.SharableModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSharableModifier(YJSParser.SharableModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVariableStatement(YJSParser.VariableStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVariableStatement(YJSParser.VariableStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVariableDeclaration(YJSParser.VariableDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVariableDeclaration(YJSParser.VariableDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEmptyStatement(YJSParser.EmptyStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEmptyStatement(YJSParser.EmptyStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExpressionStatement(YJSParser.ExpressionStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExpressionStatement(YJSParser.ExpressionStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIfStatement(YJSParser.IfStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIfStatement(YJSParser.IfStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDoStatement(YJSParser.DoStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDoStatement(YJSParser.DoStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterWhileStatement(YJSParser.WhileStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitWhileStatement(YJSParser.WhileStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForStatement(YJSParser.ForStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForStatement(YJSParser.ForStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForVarStatement(YJSParser.ForVarStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForVarStatement(YJSParser.ForVarStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForInStatement(YJSParser.ForInStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForInStatement(YJSParser.ForInStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterForVarInStatement(YJSParser.ForVarInStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitForVarInStatement(YJSParser.ForVarInStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterVarModifier(YJSParser.VarModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitVarModifier(YJSParser.VarModifierContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterContinueStatement(YJSParser.ContinueStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitContinueStatement(YJSParser.ContinueStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBreakStatement(YJSParser.BreakStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBreakStatement(YJSParser.BreakStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterReturnStatement(YJSParser.ReturnStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitReturnStatement(YJSParser.ReturnStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterWithStatement(YJSParser.WithStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitWithStatement(YJSParser.WithStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSwitchStatement(YJSParser.SwitchStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSwitchStatement(YJSParser.SwitchStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCaseBlock(YJSParser.CaseBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCaseBlock(YJSParser.CaseBlockContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCaseClauses(YJSParser.CaseClausesContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCaseClauses(YJSParser.CaseClausesContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCaseClause(YJSParser.CaseClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCaseClause(YJSParser.CaseClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDefaultClause(YJSParser.DefaultClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDefaultClause(YJSParser.DefaultClauseContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterThrowStatement(YJSParser.ThrowStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitThrowStatement(YJSParser.ThrowStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTryStatement(YJSParser.TryStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTryStatement(YJSParser.TryStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterCatchProduction(YJSParser.CatchProductionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitCatchProduction(YJSParser.CatchProductionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFinallyProduction(YJSParser.FinallyProductionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFinallyProduction(YJSParser.FinallyProductionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterDebuggerStatement(YJSParser.DebuggerStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitDebuggerStatement(YJSParser.DebuggerStatementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassDeclaration(YJSParser.ClassDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassDeclaration(YJSParser.ClassDeclarationContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassTail(YJSParser.ClassTailContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassTail(YJSParser.ClassTailContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterClassElement(YJSParser.ClassElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitClassElement(YJSParser.ClassElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMethodDefinition(YJSParser.MethodDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMethodDefinition(YJSParser.MethodDefinitionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFormalParameterList(YJSParser.FormalParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFormalParameterList(YJSParser.FormalParameterListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFormalParameterArg(YJSParser.FormalParameterArgContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFormalParameterArg(YJSParser.FormalParameterArgContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterFunctionBody(YJSParser.FunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitFunctionBody(YJSParser.FunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSourceElements(YJSParser.SourceElementsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSourceElements(YJSParser.SourceElementsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrayLiteral(YJSParser.ArrayLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrayLiteral(YJSParser.ArrayLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterElementList(YJSParser.ElementListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitElementList(YJSParser.ElementListContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLastElement(YJSParser.LastElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLastElement(YJSParser.LastElementContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterObjectLiteral(YJSParser.ObjectLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitObjectLiteral(YJSParser.ObjectLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterComputedPropertyExpressionAssignment(YJSParser.ComputedPropertyExpressionAssignmentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitComputedPropertyExpressionAssignment(YJSParser.ComputedPropertyExpressionAssignmentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyShorthand(YJSParser.PropertyShorthandContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyShorthand(YJSParser.PropertyShorthandContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPropertyName(YJSParser.PropertyNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPropertyName(YJSParser.PropertyNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArguments(YJSParser.ArgumentsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArguments(YJSParser.ArgumentsContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLastArgument(YJSParser.LastArgumentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLastArgument(YJSParser.LastArgumentContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterExpressionSequence(YJSParser.ExpressionSequenceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitExpressionSequence(YJSParser.ExpressionSequenceContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTernaryExpression(YJSParser.TernaryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTernaryExpression(YJSParser.TernaryExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLogicalAndExpression(YJSParser.LogicalAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLogicalAndExpression(YJSParser.LogicalAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInExpression(YJSParser.InExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInExpression(YJSParser.InExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLogicalOrExpression(YJSParser.LogicalOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLogicalOrExpression(YJSParser.LogicalOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNotExpression(YJSParser.NotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNotExpression(YJSParser.NotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterThisExpression(YJSParser.ThisExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitThisExpression(YJSParser.ThisExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignmentExpression(YJSParser.AssignmentExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignmentExpression(YJSParser.AssignmentExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterTypeofExpression(YJSParser.TypeofExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitTypeofExpression(YJSParser.TypeofExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterInstanceofExpression(YJSParser.InstanceofExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitInstanceofExpression(YJSParser.InstanceofExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEqualityExpression(YJSParser.EqualityExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEqualityExpression(YJSParser.EqualityExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitXOrExpression(YJSParser.BitXOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitXOrExpression(YJSParser.BitXOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterSuperExpression(YJSParser.SuperExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitSuperExpression(YJSParser.SuperExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMultiplicativeExpression(YJSParser.MultiplicativeExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMultiplicativeExpression(YJSParser.MultiplicativeExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitShiftExpression(YJSParser.BitShiftExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitShiftExpression(YJSParser.BitShiftExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAdditiveExpression(YJSParser.AdditiveExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAdditiveExpression(YJSParser.AdditiveExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterRelationalExpression(YJSParser.RelationalExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitRelationalExpression(YJSParser.RelationalExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitNotExpression(YJSParser.BitNotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitNotExpression(YJSParser.BitNotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNewExpression(YJSParser.NewExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNewExpression(YJSParser.NewExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLiteralExpression(YJSParser.LiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLiteralExpression(YJSParser.LiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemberDotExpression(YJSParser.MemberDotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemberDotExpression(YJSParser.MemberDotExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIdentifierExpression(YJSParser.IdentifierExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIdentifierExpression(YJSParser.IdentifierExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitAndExpression(YJSParser.BitAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitAndExpression(YJSParser.BitAndExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterBitOrExpression(YJSParser.BitOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitBitOrExpression(YJSParser.BitOrExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterAssignmentOperator(YJSParser.AssignmentOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitAssignmentOperator(YJSParser.AssignmentOperatorContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterLiteral(YJSParser.LiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitLiteral(YJSParser.LiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterNumericLiteral(YJSParser.NumericLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitNumericLiteral(YJSParser.NumericLiteralContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterIdentifierName(YJSParser.IdentifierNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitIdentifierName(YJSParser.IdentifierNameContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterReservedWord(YJSParser.ReservedWordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitReservedWord(YJSParser.ReservedWordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterKeyword(YJSParser.KeywordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitKeyword(YJSParser.KeywordContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void enterEos(YJSParser.EosContext ctx) { } - /** - * {@inheritDoc} - * - *

The default implementation does nothing.

- */ - @Override public void exitEos(YJSParser.EosContext ctx) { } + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterProgram(YJSParser.ProgramContext 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 + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitProgram(YJSParser.ProgramContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterContractDeclar(YJSParser.ContractDeclarContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitContractDeclar(YJSParser.ContractDeclarContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterAnnotations(YJSParser.AnnotationsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitAnnotations(YJSParser.AnnotationsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterAnnotation(YJSParser.AnnotationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitAnnotation(YJSParser.AnnotationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterAnnotationArgs(YJSParser.AnnotationArgsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitAnnotationArgs(YJSParser.AnnotationArgsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterEventDeclaration(YJSParser.EventDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitEventDeclaration(YJSParser.EventDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterEventSemantics(YJSParser.EventSemanticsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitEventSemantics(YJSParser.EventSemanticsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterSourceElement(YJSParser.SourceElementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitSourceElement(YJSParser.SourceElementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterImportStmts(YJSParser.ImportStmtsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitImportStmts(YJSParser.ImportStmtsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterImportStmt(YJSParser.ImportStmtContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitImportStmt(YJSParser.ImportStmtContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterExportStmt(YJSParser.ExportStmtContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitExportStmt(YJSParser.ExportStmtContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterVersionName(YJSParser.VersionNameContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitVersionName(YJSParser.VersionNameContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterBlock(YJSParser.BlockContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitBlock(YJSParser.BlockContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterStatementList(YJSParser.StatementListContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitStatementList(YJSParser.StatementListContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterSharableDeclaration(YJSParser.SharableDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitSharableDeclaration(YJSParser.SharableDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterSharableStatement(YJSParser.SharableStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitSharableStatement(YJSParser.SharableStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterSharableModifier(YJSParser.SharableModifierContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitSharableModifier(YJSParser.SharableModifierContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterVariableStatement(YJSParser.VariableStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitVariableStatement(YJSParser.VariableStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterVariableDeclaration(YJSParser.VariableDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitVariableDeclaration(YJSParser.VariableDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterEmptyStatement(YJSParser.EmptyStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitEmptyStatement(YJSParser.EmptyStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterIfStatement(YJSParser.IfStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitIfStatement(YJSParser.IfStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterDoStatement(YJSParser.DoStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitDoStatement(YJSParser.DoStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterWhileStatement(YJSParser.WhileStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitWhileStatement(YJSParser.WhileStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterForStatement(YJSParser.ForStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitForStatement(YJSParser.ForStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterForVarStatement(YJSParser.ForVarStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitForVarStatement(YJSParser.ForVarStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterForInStatement(YJSParser.ForInStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitForInStatement(YJSParser.ForInStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterForVarInStatement(YJSParser.ForVarInStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitForVarInStatement(YJSParser.ForVarInStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterVarModifier(YJSParser.VarModifierContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitVarModifier(YJSParser.VarModifierContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterContinueStatement(YJSParser.ContinueStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitContinueStatement(YJSParser.ContinueStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterBreakStatement(YJSParser.BreakStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitBreakStatement(YJSParser.BreakStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterReturnStatement(YJSParser.ReturnStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitReturnStatement(YJSParser.ReturnStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterWithStatement(YJSParser.WithStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitWithStatement(YJSParser.WithStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterSwitchStatement(YJSParser.SwitchStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitSwitchStatement(YJSParser.SwitchStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterCaseBlock(YJSParser.CaseBlockContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitCaseBlock(YJSParser.CaseBlockContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterCaseClauses(YJSParser.CaseClausesContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitCaseClauses(YJSParser.CaseClausesContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterCaseClause(YJSParser.CaseClauseContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitCaseClause(YJSParser.CaseClauseContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterDefaultClause(YJSParser.DefaultClauseContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitDefaultClause(YJSParser.DefaultClauseContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterThrowStatement(YJSParser.ThrowStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitThrowStatement(YJSParser.ThrowStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterTryStatement(YJSParser.TryStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitTryStatement(YJSParser.TryStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterCatchProduction(YJSParser.CatchProductionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitCatchProduction(YJSParser.CatchProductionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterFinallyProduction(YJSParser.FinallyProductionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitFinallyProduction(YJSParser.FinallyProductionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterDebuggerStatement(YJSParser.DebuggerStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitDebuggerStatement(YJSParser.DebuggerStatementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterClassDeclaration(YJSParser.ClassDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitClassDeclaration(YJSParser.ClassDeclarationContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterClassTail(YJSParser.ClassTailContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitClassTail(YJSParser.ClassTailContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterClassElement(YJSParser.ClassElementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitClassElement(YJSParser.ClassElementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterMethodDefinition(YJSParser.MethodDefinitionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitMethodDefinition(YJSParser.MethodDefinitionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterFormalParameterList(YJSParser.FormalParameterListContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitFormalParameterList(YJSParser.FormalParameterListContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterFormalParameterArg(YJSParser.FormalParameterArgContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitFormalParameterArg(YJSParser.FormalParameterArgContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterSourceElements(YJSParser.SourceElementsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitSourceElements(YJSParser.SourceElementsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterArrayLiteral(YJSParser.ArrayLiteralContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitArrayLiteral(YJSParser.ArrayLiteralContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterElementList(YJSParser.ElementListContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitElementList(YJSParser.ElementListContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterLastElement(YJSParser.LastElementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitLastElement(YJSParser.LastElementContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterObjectLiteral(YJSParser.ObjectLiteralContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitObjectLiteral(YJSParser.ObjectLiteralContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterPropertyExpressionAssignment( + YJSParser.PropertyExpressionAssignmentContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitPropertyExpressionAssignment( + YJSParser.PropertyExpressionAssignmentContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterComputedPropertyExpressionAssignment( + YJSParser.ComputedPropertyExpressionAssignmentContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitComputedPropertyExpressionAssignment( + YJSParser.ComputedPropertyExpressionAssignmentContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterPropertyShorthand(YJSParser.PropertyShorthandContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitPropertyShorthand(YJSParser.PropertyShorthandContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterPropertyName(YJSParser.PropertyNameContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitPropertyName(YJSParser.PropertyNameContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterArguments(YJSParser.ArgumentsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitArguments(YJSParser.ArgumentsContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterLastArgument(YJSParser.LastArgumentContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitLastArgument(YJSParser.LastArgumentContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterExpressionSequence(YJSParser.ExpressionSequenceContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitExpressionSequence(YJSParser.ExpressionSequenceContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterTernaryExpression(YJSParser.TernaryExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitTernaryExpression(YJSParser.TernaryExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterInExpression(YJSParser.InExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitInExpression(YJSParser.InExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterNotExpression(YJSParser.NotExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitNotExpression(YJSParser.NotExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterThisExpression(YJSParser.ThisExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitThisExpression(YJSParser.ThisExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterTypeofExpression(YJSParser.TypeofExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitTypeofExpression(YJSParser.TypeofExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterInstanceofExpression(YJSParser.InstanceofExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitInstanceofExpression(YJSParser.InstanceofExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterBitXOrExpression(YJSParser.BitXOrExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitBitXOrExpression(YJSParser.BitXOrExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterSuperExpression(YJSParser.SuperExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitSuperExpression(YJSParser.SuperExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterBitShiftExpression(YJSParser.BitShiftExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitBitShiftExpression(YJSParser.BitShiftExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterBitNotExpression(YJSParser.BitNotExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitBitNotExpression(YJSParser.BitNotExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterNewExpression(YJSParser.NewExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitNewExpression(YJSParser.NewExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterLiteralExpression(YJSParser.LiteralExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitLiteralExpression(YJSParser.LiteralExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterMemberDotExpression(YJSParser.MemberDotExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitMemberDotExpression(YJSParser.MemberDotExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterIdentifierExpression(YJSParser.IdentifierExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitIdentifierExpression(YJSParser.IdentifierExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterBitAndExpression(YJSParser.BitAndExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitBitAndExpression(YJSParser.BitAndExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterBitOrExpression(YJSParser.BitOrExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitBitOrExpression(YJSParser.BitOrExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterAssignmentOperatorExpression( + YJSParser.AssignmentOperatorExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitAssignmentOperatorExpression( + YJSParser.AssignmentOperatorExpressionContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

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

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterNumericLiteral(YJSParser.NumericLiteralContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitNumericLiteral(YJSParser.NumericLiteralContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterIdentifierName(YJSParser.IdentifierNameContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitIdentifierName(YJSParser.IdentifierNameContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterReservedWord(YJSParser.ReservedWordContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitReservedWord(YJSParser.ReservedWordContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterKeyword(YJSParser.KeywordContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitKeyword(YJSParser.KeywordContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void enterEos(YJSParser.EosContext ctx) {} + + /** + * {@inheritDoc} + * + *

+ * The default implementation does nothing. + *

+ */ + @Override + public void exitEos(YJSParser.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) {} +} diff --git a/src/main/gen/org/bdware/sc/parser/YJSParserBaseVisitor.java b/src/main/gen/org/bdware/sc/parser/YJSParserBaseVisitor.java index cff571c..86bd048 100644 --- a/src/main/gen/org/bdware/sc/parser/YJSParserBaseVisitor.java +++ b/src/main/gen/org/bdware/sc/parser/YJSParserBaseVisitor.java @@ -1,826 +1,1523 @@ // Generated from YJSParser.g4 by ANTLR 4.9.2 package org.bdware.sc.parser; + import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor; /** - * This class provides an empty implementation of {@link YJSParserVisitor}, - * which can be extended to create a visitor which only needs to handle a subset - * of the available methods. + * This class provides an empty implementation of {@link YJSParserVisitor}, 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. + * @param The return type of the visit operation. Use {@link Void} for operations with no return + * type. */ -public class YJSParserBaseVisitor extends AbstractParseTreeVisitor implements YJSParserVisitor { - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitProgram(YJSParser.ProgramContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitContractDeclar(YJSParser.ContractDeclarContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitAnnotations(YJSParser.AnnotationsContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitAnnotation(YJSParser.AnnotationContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitAnnotationArgs(YJSParser.AnnotationArgsContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitEventDeclaration(YJSParser.EventDeclarationContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitEventSemantics(YJSParser.EventSemanticsContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitSourceElement(YJSParser.SourceElementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitImportStmts(YJSParser.ImportStmtsContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitImportStmt(YJSParser.ImportStmtContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitExportStmt(YJSParser.ExportStmtContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitVersionName(YJSParser.VersionNameContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitBlock(YJSParser.BlockContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitStatementList(YJSParser.StatementListContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitSharableDeclaration(YJSParser.SharableDeclarationContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitSharableStatement(YJSParser.SharableStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitSharableModifier(YJSParser.SharableModifierContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitVariableStatement(YJSParser.VariableStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitVariableDeclaration(YJSParser.VariableDeclarationContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitEmptyStatement(YJSParser.EmptyStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitIfStatement(YJSParser.IfStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitDoStatement(YJSParser.DoStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitWhileStatement(YJSParser.WhileStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitForStatement(YJSParser.ForStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitForVarStatement(YJSParser.ForVarStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitForInStatement(YJSParser.ForInStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitForVarInStatement(YJSParser.ForVarInStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitVarModifier(YJSParser.VarModifierContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitContinueStatement(YJSParser.ContinueStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitBreakStatement(YJSParser.BreakStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitReturnStatement(YJSParser.ReturnStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitWithStatement(YJSParser.WithStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitSwitchStatement(YJSParser.SwitchStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitCaseBlock(YJSParser.CaseBlockContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitCaseClauses(YJSParser.CaseClausesContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitCaseClause(YJSParser.CaseClauseContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitDefaultClause(YJSParser.DefaultClauseContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitThrowStatement(YJSParser.ThrowStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitTryStatement(YJSParser.TryStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitCatchProduction(YJSParser.CatchProductionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitFinallyProduction(YJSParser.FinallyProductionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitDebuggerStatement(YJSParser.DebuggerStatementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitClassDeclaration(YJSParser.ClassDeclarationContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitClassTail(YJSParser.ClassTailContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitClassElement(YJSParser.ClassElementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitMethodDefinition(YJSParser.MethodDefinitionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitFormalParameterList(YJSParser.FormalParameterListContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitFormalParameterArg(YJSParser.FormalParameterArgContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitSourceElements(YJSParser.SourceElementsContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitArrayLiteral(YJSParser.ArrayLiteralContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitElementList(YJSParser.ElementListContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitLastElement(YJSParser.LastElementContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitObjectLiteral(YJSParser.ObjectLiteralContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitComputedPropertyExpressionAssignment(YJSParser.ComputedPropertyExpressionAssignmentContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitPropertyShorthand(YJSParser.PropertyShorthandContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitPropertyName(YJSParser.PropertyNameContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitArguments(YJSParser.ArgumentsContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitLastArgument(YJSParser.LastArgumentContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitExpressionSequence(YJSParser.ExpressionSequenceContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitTernaryExpression(YJSParser.TernaryExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitInExpression(YJSParser.InExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitNotExpression(YJSParser.NotExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitThisExpression(YJSParser.ThisExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitTypeofExpression(YJSParser.TypeofExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitInstanceofExpression(YJSParser.InstanceofExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitBitXOrExpression(YJSParser.BitXOrExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitSuperExpression(YJSParser.SuperExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitBitShiftExpression(YJSParser.BitShiftExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

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

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

- */ - @Override public T visitPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitBitNotExpression(YJSParser.BitNotExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitNewExpression(YJSParser.NewExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitLiteralExpression(YJSParser.LiteralExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitMemberDotExpression(YJSParser.MemberDotExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitIdentifierExpression(YJSParser.IdentifierExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitBitAndExpression(YJSParser.BitAndExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitBitOrExpression(YJSParser.BitOrExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

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

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

- */ - @Override public T visitLiteral(YJSParser.LiteralContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitNumericLiteral(YJSParser.NumericLiteralContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitIdentifierName(YJSParser.IdentifierNameContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitReservedWord(YJSParser.ReservedWordContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitKeyword(YJSParser.KeywordContext ctx) { return visitChildren(ctx); } - /** - * {@inheritDoc} - * - *

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

- */ - @Override public T visitEos(YJSParser.EosContext ctx) { return visitChildren(ctx); } -} \ No newline at end of file +public class YJSParserBaseVisitor extends AbstractParseTreeVisitor + implements YJSParserVisitor { + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitProgram(YJSParser.ProgramContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitContractDeclar(YJSParser.ContractDeclarContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitAnnotations(YJSParser.AnnotationsContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitAnnotation(YJSParser.AnnotationContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitAnnotationArgs(YJSParser.AnnotationArgsContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitEventDeclaration(YJSParser.EventDeclarationContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitEventSemantics(YJSParser.EventSemanticsContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitSourceElement(YJSParser.SourceElementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitImportStmts(YJSParser.ImportStmtsContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitImportStmt(YJSParser.ImportStmtContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitExportStmt(YJSParser.ExportStmtContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitVersionName(YJSParser.VersionNameContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitBlock(YJSParser.BlockContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitStatementList(YJSParser.StatementListContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitSharableDeclaration(YJSParser.SharableDeclarationContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitSharableStatement(YJSParser.SharableStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitSharableModifier(YJSParser.SharableModifierContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitVariableStatement(YJSParser.VariableStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitVariableDeclaration(YJSParser.VariableDeclarationContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitEmptyStatement(YJSParser.EmptyStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitIfStatement(YJSParser.IfStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitDoStatement(YJSParser.DoStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitWhileStatement(YJSParser.WhileStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitForStatement(YJSParser.ForStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitForVarStatement(YJSParser.ForVarStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitForInStatement(YJSParser.ForInStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitForVarInStatement(YJSParser.ForVarInStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitVarModifier(YJSParser.VarModifierContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitContinueStatement(YJSParser.ContinueStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitBreakStatement(YJSParser.BreakStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitReturnStatement(YJSParser.ReturnStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitWithStatement(YJSParser.WithStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitSwitchStatement(YJSParser.SwitchStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitCaseBlock(YJSParser.CaseBlockContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitCaseClauses(YJSParser.CaseClausesContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitCaseClause(YJSParser.CaseClauseContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitDefaultClause(YJSParser.DefaultClauseContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitThrowStatement(YJSParser.ThrowStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitTryStatement(YJSParser.TryStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitCatchProduction(YJSParser.CatchProductionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitFinallyProduction(YJSParser.FinallyProductionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitDebuggerStatement(YJSParser.DebuggerStatementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitClassDeclaration(YJSParser.ClassDeclarationContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitClassTail(YJSParser.ClassTailContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitClassElement(YJSParser.ClassElementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitMethodDefinition(YJSParser.MethodDefinitionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitFormalParameterList(YJSParser.FormalParameterListContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitFormalParameterArg(YJSParser.FormalParameterArgContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitSourceElements(YJSParser.SourceElementsContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitArrayLiteral(YJSParser.ArrayLiteralContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitElementList(YJSParser.ElementListContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitLastElement(YJSParser.LastElementContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitObjectLiteral(YJSParser.ObjectLiteralContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitComputedPropertyExpressionAssignment( + YJSParser.ComputedPropertyExpressionAssignmentContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitPropertyShorthand(YJSParser.PropertyShorthandContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitPropertyName(YJSParser.PropertyNameContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitArguments(YJSParser.ArgumentsContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitLastArgument(YJSParser.LastArgumentContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitExpressionSequence(YJSParser.ExpressionSequenceContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitTernaryExpression(YJSParser.TernaryExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitInExpression(YJSParser.InExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitNotExpression(YJSParser.NotExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitThisExpression(YJSParser.ThisExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitTypeofExpression(YJSParser.TypeofExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitInstanceofExpression(YJSParser.InstanceofExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitBitXOrExpression(YJSParser.BitXOrExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitSuperExpression(YJSParser.SuperExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitBitShiftExpression(YJSParser.BitShiftExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

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

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

+ */ + @Override + public T visitPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitBitNotExpression(YJSParser.BitNotExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitNewExpression(YJSParser.NewExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitLiteralExpression(YJSParser.LiteralExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitMemberDotExpression(YJSParser.MemberDotExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitIdentifierExpression(YJSParser.IdentifierExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitBitAndExpression(YJSParser.BitAndExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitBitOrExpression(YJSParser.BitOrExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

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

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

+ */ + @Override + public T visitLiteral(YJSParser.LiteralContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitNumericLiteral(YJSParser.NumericLiteralContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitIdentifierName(YJSParser.IdentifierNameContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitReservedWord(YJSParser.ReservedWordContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitKeyword(YJSParser.KeywordContext ctx) { + return visitChildren(ctx); + } + + /** + * {@inheritDoc} + * + *

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

+ */ + @Override + public T visitEos(YJSParser.EosContext ctx) { + return visitChildren(ctx); + } +} diff --git a/src/main/gen/org/bdware/sc/parser/YJSParserListener.java b/src/main/gen/org/bdware/sc/parser/YJSParserListener.java index 2b16edb..4f77afb 100644 --- a/src/main/gen/org/bdware/sc/parser/YJSParserListener.java +++ b/src/main/gen/org/bdware/sc/parser/YJSParserListener.java @@ -1,1262 +1,1727 @@ // Generated from YJSParser.g4 by ANTLR 4.9.2 package org.bdware.sc.parser; + import org.antlr.v4.runtime.tree.ParseTreeListener; /** - * This interface defines a complete listener for a parse tree produced by - * {@link YJSParser}. + * This interface defines a complete listener for a parse tree produced by {@link YJSParser}. */ public interface YJSParserListener extends ParseTreeListener { - /** - * Enter a parse tree produced by {@link YJSParser#program}. - * @param ctx the parse tree - */ - void enterProgram(YJSParser.ProgramContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#program}. - * @param ctx the parse tree - */ - void exitProgram(YJSParser.ProgramContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#contractDeclar}. - * @param ctx the parse tree - */ - void enterContractDeclar(YJSParser.ContractDeclarContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#contractDeclar}. - * @param ctx the parse tree - */ - void exitContractDeclar(YJSParser.ContractDeclarContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#annotations}. - * @param ctx the parse tree - */ - void enterAnnotations(YJSParser.AnnotationsContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#annotations}. - * @param ctx the parse tree - */ - void exitAnnotations(YJSParser.AnnotationsContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#annotation}. - * @param ctx the parse tree - */ - void enterAnnotation(YJSParser.AnnotationContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#annotation}. - * @param ctx the parse tree - */ - void exitAnnotation(YJSParser.AnnotationContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#annotationArgs}. - * @param ctx the parse tree - */ - void enterAnnotationArgs(YJSParser.AnnotationArgsContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#annotationArgs}. - * @param ctx the parse tree - */ - void exitAnnotationArgs(YJSParser.AnnotationArgsContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#annotationLiteral}. - * @param ctx the parse tree - */ - void enterAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#annotationLiteral}. - * @param ctx the parse tree - */ - void exitAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#clzOrFunctionDeclaration}. - * @param ctx the parse tree - */ - void enterClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#clzOrFunctionDeclaration}. - * @param ctx the parse tree - */ - void exitClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#interfaceDeclaration}. - * @param ctx the parse tree - */ - void enterInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#interfaceDeclaration}. - * @param ctx the parse tree - */ - void exitInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#eventDeclaration}. - * @param ctx the parse tree - */ - void enterEventDeclaration(YJSParser.EventDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#eventDeclaration}. - * @param ctx the parse tree - */ - void exitEventDeclaration(YJSParser.EventDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#eventGlobalOrLocal}. - * @param ctx the parse tree - */ - void enterEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#eventGlobalOrLocal}. - * @param ctx the parse tree - */ - void exitEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#eventSemantics}. - * @param ctx the parse tree - */ - void enterEventSemantics(YJSParser.EventSemanticsContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#eventSemantics}. - * @param ctx the parse tree - */ - void exitEventSemantics(YJSParser.EventSemanticsContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#sourceElement}. - * @param ctx the parse tree - */ - void enterSourceElement(YJSParser.SourceElementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#sourceElement}. - * @param ctx the parse tree - */ - void exitSourceElement(YJSParser.SourceElementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#importStmts}. - * @param ctx the parse tree - */ - void enterImportStmts(YJSParser.ImportStmtsContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#importStmts}. - * @param ctx the parse tree - */ - void exitImportStmts(YJSParser.ImportStmtsContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#importStmt}. - * @param ctx the parse tree - */ - void enterImportStmt(YJSParser.ImportStmtContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#importStmt}. - * @param ctx the parse tree - */ - void exitImportStmt(YJSParser.ImportStmtContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#exportStmt}. - * @param ctx the parse tree - */ - void enterExportStmt(YJSParser.ExportStmtContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#exportStmt}. - * @param ctx the parse tree - */ - void exitExportStmt(YJSParser.ExportStmtContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#versionName}. - * @param ctx the parse tree - */ - void enterVersionName(YJSParser.VersionNameContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#versionName}. - * @param ctx the parse tree - */ - void exitVersionName(YJSParser.VersionNameContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#statement}. - * @param ctx the parse tree - */ - void enterStatement(YJSParser.StatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#statement}. - * @param ctx the parse tree - */ - void exitStatement(YJSParser.StatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#block}. - * @param ctx the parse tree - */ - void enterBlock(YJSParser.BlockContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#block}. - * @param ctx the parse tree - */ - void exitBlock(YJSParser.BlockContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#statementList}. - * @param ctx the parse tree - */ - void enterStatementList(YJSParser.StatementListContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#statementList}. - * @param ctx the parse tree - */ - void exitStatementList(YJSParser.StatementListContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#sharableDeclaration}. - * @param ctx the parse tree - */ - void enterSharableDeclaration(YJSParser.SharableDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#sharableDeclaration}. - * @param ctx the parse tree - */ - void exitSharableDeclaration(YJSParser.SharableDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#sharableStatement}. - * @param ctx the parse tree - */ - void enterSharableStatement(YJSParser.SharableStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#sharableStatement}. - * @param ctx the parse tree - */ - void exitSharableStatement(YJSParser.SharableStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#sharableModifier}. - * @param ctx the parse tree - */ - void enterSharableModifier(YJSParser.SharableModifierContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#sharableModifier}. - * @param ctx the parse tree - */ - void exitSharableModifier(YJSParser.SharableModifierContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#variableStatement}. - * @param ctx the parse tree - */ - void enterVariableStatement(YJSParser.VariableStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#variableStatement}. - * @param ctx the parse tree - */ - void exitVariableStatement(YJSParser.VariableStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#variableDeclarationList}. - * @param ctx the parse tree - */ - void enterVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#variableDeclarationList}. - * @param ctx the parse tree - */ - void exitVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#variableDeclaration}. - * @param ctx the parse tree - */ - void enterVariableDeclaration(YJSParser.VariableDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#variableDeclaration}. - * @param ctx the parse tree - */ - void exitVariableDeclaration(YJSParser.VariableDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#emptyStatement}. - * @param ctx the parse tree - */ - void enterEmptyStatement(YJSParser.EmptyStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#emptyStatement}. - * @param ctx the parse tree - */ - void exitEmptyStatement(YJSParser.EmptyStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#expressionStatement}. - * @param ctx the parse tree - */ - void enterExpressionStatement(YJSParser.ExpressionStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#expressionStatement}. - * @param ctx the parse tree - */ - void exitExpressionStatement(YJSParser.ExpressionStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#ifStatement}. - * @param ctx the parse tree - */ - void enterIfStatement(YJSParser.IfStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#ifStatement}. - * @param ctx the parse tree - */ - void exitIfStatement(YJSParser.IfStatementContext ctx); - /** - * Enter a parse tree produced by the {@code DoStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterDoStatement(YJSParser.DoStatementContext ctx); - /** - * Exit a parse tree produced by the {@code DoStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitDoStatement(YJSParser.DoStatementContext ctx); - /** - * Enter a parse tree produced by the {@code WhileStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterWhileStatement(YJSParser.WhileStatementContext ctx); - /** - * Exit a parse tree produced by the {@code WhileStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitWhileStatement(YJSParser.WhileStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForStatement(YJSParser.ForStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForStatement(YJSParser.ForStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForVarStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForVarStatement(YJSParser.ForVarStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForVarStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForVarStatement(YJSParser.ForVarStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForInStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForInStatement(YJSParser.ForInStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForInStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForInStatement(YJSParser.ForInStatementContext ctx); - /** - * Enter a parse tree produced by the {@code ForVarInStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void enterForVarInStatement(YJSParser.ForVarInStatementContext ctx); - /** - * Exit a parse tree produced by the {@code ForVarInStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - */ - void exitForVarInStatement(YJSParser.ForVarInStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#varModifier}. - * @param ctx the parse tree - */ - void enterVarModifier(YJSParser.VarModifierContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#varModifier}. - * @param ctx the parse tree - */ - void exitVarModifier(YJSParser.VarModifierContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#continueStatement}. - * @param ctx the parse tree - */ - void enterContinueStatement(YJSParser.ContinueStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#continueStatement}. - * @param ctx the parse tree - */ - void exitContinueStatement(YJSParser.ContinueStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#breakStatement}. - * @param ctx the parse tree - */ - void enterBreakStatement(YJSParser.BreakStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#breakStatement}. - * @param ctx the parse tree - */ - void exitBreakStatement(YJSParser.BreakStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#returnStatement}. - * @param ctx the parse tree - */ - void enterReturnStatement(YJSParser.ReturnStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#returnStatement}. - * @param ctx the parse tree - */ - void exitReturnStatement(YJSParser.ReturnStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#withStatement}. - * @param ctx the parse tree - */ - void enterWithStatement(YJSParser.WithStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#withStatement}. - * @param ctx the parse tree - */ - void exitWithStatement(YJSParser.WithStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#switchStatement}. - * @param ctx the parse tree - */ - void enterSwitchStatement(YJSParser.SwitchStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#switchStatement}. - * @param ctx the parse tree - */ - void exitSwitchStatement(YJSParser.SwitchStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#caseBlock}. - * @param ctx the parse tree - */ - void enterCaseBlock(YJSParser.CaseBlockContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#caseBlock}. - * @param ctx the parse tree - */ - void exitCaseBlock(YJSParser.CaseBlockContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#caseClauses}. - * @param ctx the parse tree - */ - void enterCaseClauses(YJSParser.CaseClausesContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#caseClauses}. - * @param ctx the parse tree - */ - void exitCaseClauses(YJSParser.CaseClausesContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#caseClause}. - * @param ctx the parse tree - */ - void enterCaseClause(YJSParser.CaseClauseContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#caseClause}. - * @param ctx the parse tree - */ - void exitCaseClause(YJSParser.CaseClauseContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#defaultClause}. - * @param ctx the parse tree - */ - void enterDefaultClause(YJSParser.DefaultClauseContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#defaultClause}. - * @param ctx the parse tree - */ - void exitDefaultClause(YJSParser.DefaultClauseContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#throwStatement}. - * @param ctx the parse tree - */ - void enterThrowStatement(YJSParser.ThrowStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#throwStatement}. - * @param ctx the parse tree - */ - void exitThrowStatement(YJSParser.ThrowStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#tryStatement}. - * @param ctx the parse tree - */ - void enterTryStatement(YJSParser.TryStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#tryStatement}. - * @param ctx the parse tree - */ - void exitTryStatement(YJSParser.TryStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#catchProduction}. - * @param ctx the parse tree - */ - void enterCatchProduction(YJSParser.CatchProductionContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#catchProduction}. - * @param ctx the parse tree - */ - void exitCatchProduction(YJSParser.CatchProductionContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#finallyProduction}. - * @param ctx the parse tree - */ - void enterFinallyProduction(YJSParser.FinallyProductionContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#finallyProduction}. - * @param ctx the parse tree - */ - void exitFinallyProduction(YJSParser.FinallyProductionContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#debuggerStatement}. - * @param ctx the parse tree - */ - void enterDebuggerStatement(YJSParser.DebuggerStatementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#debuggerStatement}. - * @param ctx the parse tree - */ - void exitDebuggerStatement(YJSParser.DebuggerStatementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#functionDeclaration}. - * @param ctx the parse tree - */ - void enterFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#functionDeclaration}. - * @param ctx the parse tree - */ - void exitFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#classDeclaration}. - * @param ctx the parse tree - */ - void enterClassDeclaration(YJSParser.ClassDeclarationContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#classDeclaration}. - * @param ctx the parse tree - */ - void exitClassDeclaration(YJSParser.ClassDeclarationContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#classTail}. - * @param ctx the parse tree - */ - void enterClassTail(YJSParser.ClassTailContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#classTail}. - * @param ctx the parse tree - */ - void exitClassTail(YJSParser.ClassTailContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#classElement}. - * @param ctx the parse tree - */ - void enterClassElement(YJSParser.ClassElementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#classElement}. - * @param ctx the parse tree - */ - void exitClassElement(YJSParser.ClassElementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#methodDefinition}. - * @param ctx the parse tree - */ - void enterMethodDefinition(YJSParser.MethodDefinitionContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#methodDefinition}. - * @param ctx the parse tree - */ - void exitMethodDefinition(YJSParser.MethodDefinitionContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#formalParameterList}. - * @param ctx the parse tree - */ - void enterFormalParameterList(YJSParser.FormalParameterListContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#formalParameterList}. - * @param ctx the parse tree - */ - void exitFormalParameterList(YJSParser.FormalParameterListContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#formalParameterArg}. - * @param ctx the parse tree - */ - void enterFormalParameterArg(YJSParser.FormalParameterArgContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#formalParameterArg}. - * @param ctx the parse tree - */ - void exitFormalParameterArg(YJSParser.FormalParameterArgContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#lastFormalParameterArg}. - * @param ctx the parse tree - */ - void enterLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#lastFormalParameterArg}. - * @param ctx the parse tree - */ - void exitLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#functionBody}. - * @param ctx the parse tree - */ - void enterFunctionBody(YJSParser.FunctionBodyContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#functionBody}. - * @param ctx the parse tree - */ - void exitFunctionBody(YJSParser.FunctionBodyContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#sourceElements}. - * @param ctx the parse tree - */ - void enterSourceElements(YJSParser.SourceElementsContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#sourceElements}. - * @param ctx the parse tree - */ - void exitSourceElements(YJSParser.SourceElementsContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#arrayLiteral}. - * @param ctx the parse tree - */ - void enterArrayLiteral(YJSParser.ArrayLiteralContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#arrayLiteral}. - * @param ctx the parse tree - */ - void exitArrayLiteral(YJSParser.ArrayLiteralContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#elementList}. - * @param ctx the parse tree - */ - void enterElementList(YJSParser.ElementListContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#elementList}. - * @param ctx the parse tree - */ - void exitElementList(YJSParser.ElementListContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#lastElement}. - * @param ctx the parse tree - */ - void enterLastElement(YJSParser.LastElementContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#lastElement}. - * @param ctx the parse tree - */ - void exitLastElement(YJSParser.LastElementContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#objectLiteral}. - * @param ctx the parse tree - */ - void enterObjectLiteral(YJSParser.ObjectLiteralContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#objectLiteral}. - * @param ctx the parse tree - */ - void exitObjectLiteral(YJSParser.ObjectLiteralContext ctx); - /** - * Enter a parse tree produced by the {@code PropertyExpressionAssignment} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx); - /** - * Exit a parse tree produced by the {@code PropertyExpressionAssignment} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx); - /** - * Enter a parse tree produced by the {@code ComputedPropertyExpressionAssignment} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterComputedPropertyExpressionAssignment(YJSParser.ComputedPropertyExpressionAssignmentContext ctx); - /** - * Exit a parse tree produced by the {@code ComputedPropertyExpressionAssignment} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitComputedPropertyExpressionAssignment(YJSParser.ComputedPropertyExpressionAssignmentContext ctx); - /** - * Enter a parse tree produced by the {@code PropertyShorthand} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - */ - void enterPropertyShorthand(YJSParser.PropertyShorthandContext ctx); - /** - * Exit a parse tree produced by the {@code PropertyShorthand} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - */ - void exitPropertyShorthand(YJSParser.PropertyShorthandContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#propertyName}. - * @param ctx the parse tree - */ - void enterPropertyName(YJSParser.PropertyNameContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#propertyName}. - * @param ctx the parse tree - */ - void exitPropertyName(YJSParser.PropertyNameContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#arguments}. - * @param ctx the parse tree - */ - void enterArguments(YJSParser.ArgumentsContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#arguments}. - * @param ctx the parse tree - */ - void exitArguments(YJSParser.ArgumentsContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#lastArgument}. - * @param ctx the parse tree - */ - void enterLastArgument(YJSParser.LastArgumentContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#lastArgument}. - * @param ctx the parse tree - */ - void exitLastArgument(YJSParser.LastArgumentContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#expressionSequence}. - * @param ctx the parse tree - */ - void enterExpressionSequence(YJSParser.ExpressionSequenceContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#expressionSequence}. - * @param ctx the parse tree - */ - void exitExpressionSequence(YJSParser.ExpressionSequenceContext ctx); - /** - * Enter a parse tree produced by the {@code TemplateStringExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code TemplateStringExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code TernaryExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterTernaryExpression(YJSParser.TernaryExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code TernaryExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitTernaryExpression(YJSParser.TernaryExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code LogicalAndExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterLogicalAndExpression(YJSParser.LogicalAndExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code LogicalAndExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitLogicalAndExpression(YJSParser.LogicalAndExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PreIncrementExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PreIncrementExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ObjectLiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ObjectLiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code InExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterInExpression(YJSParser.InExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code InExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitInExpression(YJSParser.InExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code LogicalOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterLogicalOrExpression(YJSParser.LogicalOrExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code LogicalOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitLogicalOrExpression(YJSParser.LogicalOrExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code NotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterNotExpression(YJSParser.NotExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code NotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitNotExpression(YJSParser.NotExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PreDecreaseExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PreDecreaseExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ArgumentsExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ArgumentsExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ThisExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterThisExpression(YJSParser.ThisExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ThisExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitThisExpression(YJSParser.ThisExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code UnaryMinusExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code UnaryMinusExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code AssignmentExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterAssignmentExpression(YJSParser.AssignmentExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code AssignmentExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitAssignmentExpression(YJSParser.AssignmentExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PostDecreaseExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PostDecreaseExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code TypeofExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterTypeofExpression(YJSParser.TypeofExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code TypeofExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitTypeofExpression(YJSParser.TypeofExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code InstanceofExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterInstanceofExpression(YJSParser.InstanceofExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code InstanceofExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitInstanceofExpression(YJSParser.InstanceofExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code UnaryPlusExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code UnaryPlusExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ArrowFunctionExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ArrowFunctionExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code EqualityExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterEqualityExpression(YJSParser.EqualityExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code EqualityExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitEqualityExpression(YJSParser.EqualityExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitXOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitXOrExpression(YJSParser.BitXOrExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitXOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitXOrExpression(YJSParser.BitXOrExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code SuperExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterSuperExpression(YJSParser.SuperExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code SuperExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitSuperExpression(YJSParser.SuperExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code MultiplicativeExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterMultiplicativeExpression(YJSParser.MultiplicativeExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code MultiplicativeExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitMultiplicativeExpression(YJSParser.MultiplicativeExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitShiftExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitShiftExpression(YJSParser.BitShiftExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitShiftExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitShiftExpression(YJSParser.BitShiftExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ParenthesizedExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ParenthesizedExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code AdditiveExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterAdditiveExpression(YJSParser.AdditiveExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code AdditiveExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitAdditiveExpression(YJSParser.AdditiveExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code RelationalExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterRelationalExpression(YJSParser.RelationalExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code RelationalExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitRelationalExpression(YJSParser.RelationalExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code PostIncrementExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code PostIncrementExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitNotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitNotExpression(YJSParser.BitNotExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitNotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitNotExpression(YJSParser.BitNotExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code NewExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterNewExpression(YJSParser.NewExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code NewExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitNewExpression(YJSParser.NewExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code LiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterLiteralExpression(YJSParser.LiteralExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code LiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitLiteralExpression(YJSParser.LiteralExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code ArrayLiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code ArrayLiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code MemberDotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterMemberDotExpression(YJSParser.MemberDotExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code MemberDotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitMemberDotExpression(YJSParser.MemberDotExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code MemberIndexExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code MemberIndexExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code IdentifierExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterIdentifierExpression(YJSParser.IdentifierExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code IdentifierExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitIdentifierExpression(YJSParser.IdentifierExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitAndExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitAndExpression(YJSParser.BitAndExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitAndExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitAndExpression(YJSParser.BitAndExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code BitOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterBitOrExpression(YJSParser.BitOrExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code BitOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitBitOrExpression(YJSParser.BitOrExpressionContext ctx); - /** - * Enter a parse tree produced by the {@code AssignmentOperatorExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void enterAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx); - /** - * Exit a parse tree produced by the {@code AssignmentOperatorExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - */ - void exitAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#arrowFunctionParameters}. - * @param ctx the parse tree - */ - void enterArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#arrowFunctionParameters}. - * @param ctx the parse tree - */ - void exitArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#arrowFunctionBody}. - * @param ctx the parse tree - */ - void enterArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#arrowFunctionBody}. - * @param ctx the parse tree - */ - void exitArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#assignmentOperator}. - * @param ctx the parse tree - */ - void enterAssignmentOperator(YJSParser.AssignmentOperatorContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#assignmentOperator}. - * @param ctx the parse tree - */ - void exitAssignmentOperator(YJSParser.AssignmentOperatorContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#literal}. - * @param ctx the parse tree - */ - void enterLiteral(YJSParser.LiteralContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#literal}. - * @param ctx the parse tree - */ - void exitLiteral(YJSParser.LiteralContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#numericLiteral}. - * @param ctx the parse tree - */ - void enterNumericLiteral(YJSParser.NumericLiteralContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#numericLiteral}. - * @param ctx the parse tree - */ - void exitNumericLiteral(YJSParser.NumericLiteralContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#identifierName}. - * @param ctx the parse tree - */ - void enterIdentifierName(YJSParser.IdentifierNameContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#identifierName}. - * @param ctx the parse tree - */ - void exitIdentifierName(YJSParser.IdentifierNameContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#reservedWord}. - * @param ctx the parse tree - */ - void enterReservedWord(YJSParser.ReservedWordContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#reservedWord}. - * @param ctx the parse tree - */ - void exitReservedWord(YJSParser.ReservedWordContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#keyword}. - * @param ctx the parse tree - */ - void enterKeyword(YJSParser.KeywordContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#keyword}. - * @param ctx the parse tree - */ - void exitKeyword(YJSParser.KeywordContext ctx); - /** - * Enter a parse tree produced by {@link YJSParser#eos}. - * @param ctx the parse tree - */ - void enterEos(YJSParser.EosContext ctx); - /** - * Exit a parse tree produced by {@link YJSParser#eos}. - * @param ctx the parse tree - */ - void exitEos(YJSParser.EosContext ctx); -} \ No newline at end of file + /** + * Enter a parse tree produced by {@link YJSParser#program}. + * + * @param ctx the parse tree + */ + void enterProgram(YJSParser.ProgramContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#program}. + * + * @param ctx the parse tree + */ + void exitProgram(YJSParser.ProgramContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#contractDeclar}. + * + * @param ctx the parse tree + */ + void enterContractDeclar(YJSParser.ContractDeclarContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#contractDeclar}. + * + * @param ctx the parse tree + */ + void exitContractDeclar(YJSParser.ContractDeclarContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#annotations}. + * + * @param ctx the parse tree + */ + void enterAnnotations(YJSParser.AnnotationsContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#annotations}. + * + * @param ctx the parse tree + */ + void exitAnnotations(YJSParser.AnnotationsContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#annotation}. + * + * @param ctx the parse tree + */ + void enterAnnotation(YJSParser.AnnotationContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#annotation}. + * + * @param ctx the parse tree + */ + void exitAnnotation(YJSParser.AnnotationContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#annotationArgs}. + * + * @param ctx the parse tree + */ + void enterAnnotationArgs(YJSParser.AnnotationArgsContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#annotationArgs}. + * + * @param ctx the parse tree + */ + void exitAnnotationArgs(YJSParser.AnnotationArgsContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#annotationLiteral}. + * + * @param ctx the parse tree + */ + void enterAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#annotationLiteral}. + * + * @param ctx the parse tree + */ + void exitAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#clzOrFunctionDeclaration}. + * + * @param ctx the parse tree + */ + void enterClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#clzOrFunctionDeclaration}. + * + * @param ctx the parse tree + */ + void exitClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#interfaceDeclaration}. + * + * @param ctx the parse tree + */ + void enterInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#interfaceDeclaration}. + * + * @param ctx the parse tree + */ + void exitInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#eventDeclaration}. + * + * @param ctx the parse tree + */ + void enterEventDeclaration(YJSParser.EventDeclarationContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#eventDeclaration}. + * + * @param ctx the parse tree + */ + void exitEventDeclaration(YJSParser.EventDeclarationContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#eventGlobalOrLocal}. + * + * @param ctx the parse tree + */ + void enterEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#eventGlobalOrLocal}. + * + * @param ctx the parse tree + */ + void exitEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#eventSemantics}. + * + * @param ctx the parse tree + */ + void enterEventSemantics(YJSParser.EventSemanticsContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#eventSemantics}. + * + * @param ctx the parse tree + */ + void exitEventSemantics(YJSParser.EventSemanticsContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#sourceElement}. + * + * @param ctx the parse tree + */ + void enterSourceElement(YJSParser.SourceElementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#sourceElement}. + * + * @param ctx the parse tree + */ + void exitSourceElement(YJSParser.SourceElementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#importStmts}. + * + * @param ctx the parse tree + */ + void enterImportStmts(YJSParser.ImportStmtsContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#importStmts}. + * + * @param ctx the parse tree + */ + void exitImportStmts(YJSParser.ImportStmtsContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#importStmt}. + * + * @param ctx the parse tree + */ + void enterImportStmt(YJSParser.ImportStmtContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#importStmt}. + * + * @param ctx the parse tree + */ + void exitImportStmt(YJSParser.ImportStmtContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#exportStmt}. + * + * @param ctx the parse tree + */ + void enterExportStmt(YJSParser.ExportStmtContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#exportStmt}. + * + * @param ctx the parse tree + */ + void exitExportStmt(YJSParser.ExportStmtContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#versionName}. + * + * @param ctx the parse tree + */ + void enterVersionName(YJSParser.VersionNameContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#versionName}. + * + * @param ctx the parse tree + */ + void exitVersionName(YJSParser.VersionNameContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#statement}. + * + * @param ctx the parse tree + */ + void enterStatement(YJSParser.StatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#statement}. + * + * @param ctx the parse tree + */ + void exitStatement(YJSParser.StatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#block}. + * + * @param ctx the parse tree + */ + void enterBlock(YJSParser.BlockContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#block}. + * + * @param ctx the parse tree + */ + void exitBlock(YJSParser.BlockContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#statementList}. + * + * @param ctx the parse tree + */ + void enterStatementList(YJSParser.StatementListContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#statementList}. + * + * @param ctx the parse tree + */ + void exitStatementList(YJSParser.StatementListContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#sharableDeclaration}. + * + * @param ctx the parse tree + */ + void enterSharableDeclaration(YJSParser.SharableDeclarationContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#sharableDeclaration}. + * + * @param ctx the parse tree + */ + void exitSharableDeclaration(YJSParser.SharableDeclarationContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#sharableStatement}. + * + * @param ctx the parse tree + */ + void enterSharableStatement(YJSParser.SharableStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#sharableStatement}. + * + * @param ctx the parse tree + */ + void exitSharableStatement(YJSParser.SharableStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#sharableModifier}. + * + * @param ctx the parse tree + */ + void enterSharableModifier(YJSParser.SharableModifierContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#sharableModifier}. + * + * @param ctx the parse tree + */ + void exitSharableModifier(YJSParser.SharableModifierContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#variableStatement}. + * + * @param ctx the parse tree + */ + void enterVariableStatement(YJSParser.VariableStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#variableStatement}. + * + * @param ctx the parse tree + */ + void exitVariableStatement(YJSParser.VariableStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#variableDeclarationList}. + * + * @param ctx the parse tree + */ + void enterVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#variableDeclarationList}. + * + * @param ctx the parse tree + */ + void exitVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#variableDeclaration}. + * + * @param ctx the parse tree + */ + void enterVariableDeclaration(YJSParser.VariableDeclarationContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#variableDeclaration}. + * + * @param ctx the parse tree + */ + void exitVariableDeclaration(YJSParser.VariableDeclarationContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#emptyStatement}. + * + * @param ctx the parse tree + */ + void enterEmptyStatement(YJSParser.EmptyStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#emptyStatement}. + * + * @param ctx the parse tree + */ + void exitEmptyStatement(YJSParser.EmptyStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#expressionStatement}. + * + * @param ctx the parse tree + */ + void enterExpressionStatement(YJSParser.ExpressionStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#expressionStatement}. + * + * @param ctx the parse tree + */ + void exitExpressionStatement(YJSParser.ExpressionStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#ifStatement}. + * + * @param ctx the parse tree + */ + void enterIfStatement(YJSParser.IfStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#ifStatement}. + * + * @param ctx the parse tree + */ + void exitIfStatement(YJSParser.IfStatementContext ctx); + + /** + * Enter a parse tree produced by the {@code DoStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void enterDoStatement(YJSParser.DoStatementContext ctx); + + /** + * Exit a parse tree produced by the {@code DoStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void exitDoStatement(YJSParser.DoStatementContext ctx); + + /** + * Enter a parse tree produced by the {@code WhileStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void enterWhileStatement(YJSParser.WhileStatementContext ctx); + + /** + * Exit a parse tree produced by the {@code WhileStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void exitWhileStatement(YJSParser.WhileStatementContext ctx); + + /** + * Enter a parse tree produced by the {@code ForStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void enterForStatement(YJSParser.ForStatementContext ctx); + + /** + * Exit a parse tree produced by the {@code ForStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void exitForStatement(YJSParser.ForStatementContext ctx); + + /** + * Enter a parse tree produced by the {@code ForVarStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void enterForVarStatement(YJSParser.ForVarStatementContext ctx); + + /** + * Exit a parse tree produced by the {@code ForVarStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void exitForVarStatement(YJSParser.ForVarStatementContext ctx); + + /** + * Enter a parse tree produced by the {@code ForInStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void enterForInStatement(YJSParser.ForInStatementContext ctx); + + /** + * Exit a parse tree produced by the {@code ForInStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void exitForInStatement(YJSParser.ForInStatementContext ctx); + + /** + * Enter a parse tree produced by the {@code ForVarInStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void enterForVarInStatement(YJSParser.ForVarInStatementContext ctx); + + /** + * Exit a parse tree produced by the {@code ForVarInStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + */ + void exitForVarInStatement(YJSParser.ForVarInStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#varModifier}. + * + * @param ctx the parse tree + */ + void enterVarModifier(YJSParser.VarModifierContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#varModifier}. + * + * @param ctx the parse tree + */ + void exitVarModifier(YJSParser.VarModifierContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#continueStatement}. + * + * @param ctx the parse tree + */ + void enterContinueStatement(YJSParser.ContinueStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#continueStatement}. + * + * @param ctx the parse tree + */ + void exitContinueStatement(YJSParser.ContinueStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#breakStatement}. + * + * @param ctx the parse tree + */ + void enterBreakStatement(YJSParser.BreakStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#breakStatement}. + * + * @param ctx the parse tree + */ + void exitBreakStatement(YJSParser.BreakStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#returnStatement}. + * + * @param ctx the parse tree + */ + void enterReturnStatement(YJSParser.ReturnStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#returnStatement}. + * + * @param ctx the parse tree + */ + void exitReturnStatement(YJSParser.ReturnStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#withStatement}. + * + * @param ctx the parse tree + */ + void enterWithStatement(YJSParser.WithStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#withStatement}. + * + * @param ctx the parse tree + */ + void exitWithStatement(YJSParser.WithStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#switchStatement}. + * + * @param ctx the parse tree + */ + void enterSwitchStatement(YJSParser.SwitchStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#switchStatement}. + * + * @param ctx the parse tree + */ + void exitSwitchStatement(YJSParser.SwitchStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#caseBlock}. + * + * @param ctx the parse tree + */ + void enterCaseBlock(YJSParser.CaseBlockContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#caseBlock}. + * + * @param ctx the parse tree + */ + void exitCaseBlock(YJSParser.CaseBlockContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#caseClauses}. + * + * @param ctx the parse tree + */ + void enterCaseClauses(YJSParser.CaseClausesContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#caseClauses}. + * + * @param ctx the parse tree + */ + void exitCaseClauses(YJSParser.CaseClausesContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#caseClause}. + * + * @param ctx the parse tree + */ + void enterCaseClause(YJSParser.CaseClauseContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#caseClause}. + * + * @param ctx the parse tree + */ + void exitCaseClause(YJSParser.CaseClauseContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#defaultClause}. + * + * @param ctx the parse tree + */ + void enterDefaultClause(YJSParser.DefaultClauseContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#defaultClause}. + * + * @param ctx the parse tree + */ + void exitDefaultClause(YJSParser.DefaultClauseContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#throwStatement}. + * + * @param ctx the parse tree + */ + void enterThrowStatement(YJSParser.ThrowStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#throwStatement}. + * + * @param ctx the parse tree + */ + void exitThrowStatement(YJSParser.ThrowStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#tryStatement}. + * + * @param ctx the parse tree + */ + void enterTryStatement(YJSParser.TryStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#tryStatement}. + * + * @param ctx the parse tree + */ + void exitTryStatement(YJSParser.TryStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#catchProduction}. + * + * @param ctx the parse tree + */ + void enterCatchProduction(YJSParser.CatchProductionContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#catchProduction}. + * + * @param ctx the parse tree + */ + void exitCatchProduction(YJSParser.CatchProductionContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#finallyProduction}. + * + * @param ctx the parse tree + */ + void enterFinallyProduction(YJSParser.FinallyProductionContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#finallyProduction}. + * + * @param ctx the parse tree + */ + void exitFinallyProduction(YJSParser.FinallyProductionContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#debuggerStatement}. + * + * @param ctx the parse tree + */ + void enterDebuggerStatement(YJSParser.DebuggerStatementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#debuggerStatement}. + * + * @param ctx the parse tree + */ + void exitDebuggerStatement(YJSParser.DebuggerStatementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#functionDeclaration}. + * + * @param ctx the parse tree + */ + void enterFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#functionDeclaration}. + * + * @param ctx the parse tree + */ + void exitFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#classDeclaration}. + * + * @param ctx the parse tree + */ + void enterClassDeclaration(YJSParser.ClassDeclarationContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#classDeclaration}. + * + * @param ctx the parse tree + */ + void exitClassDeclaration(YJSParser.ClassDeclarationContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#classTail}. + * + * @param ctx the parse tree + */ + void enterClassTail(YJSParser.ClassTailContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#classTail}. + * + * @param ctx the parse tree + */ + void exitClassTail(YJSParser.ClassTailContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#classElement}. + * + * @param ctx the parse tree + */ + void enterClassElement(YJSParser.ClassElementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#classElement}. + * + * @param ctx the parse tree + */ + void exitClassElement(YJSParser.ClassElementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#methodDefinition}. + * + * @param ctx the parse tree + */ + void enterMethodDefinition(YJSParser.MethodDefinitionContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#methodDefinition}. + * + * @param ctx the parse tree + */ + void exitMethodDefinition(YJSParser.MethodDefinitionContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#formalParameterList}. + * + * @param ctx the parse tree + */ + void enterFormalParameterList(YJSParser.FormalParameterListContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#formalParameterList}. + * + * @param ctx the parse tree + */ + void exitFormalParameterList(YJSParser.FormalParameterListContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#formalParameterArg}. + * + * @param ctx the parse tree + */ + void enterFormalParameterArg(YJSParser.FormalParameterArgContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#formalParameterArg}. + * + * @param ctx the parse tree + */ + void exitFormalParameterArg(YJSParser.FormalParameterArgContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#lastFormalParameterArg}. + * + * @param ctx the parse tree + */ + void enterLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#lastFormalParameterArg}. + * + * @param ctx the parse tree + */ + void exitLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#functionBody}. + * + * @param ctx the parse tree + */ + void enterFunctionBody(YJSParser.FunctionBodyContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#functionBody}. + * + * @param ctx the parse tree + */ + void exitFunctionBody(YJSParser.FunctionBodyContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#sourceElements}. + * + * @param ctx the parse tree + */ + void enterSourceElements(YJSParser.SourceElementsContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#sourceElements}. + * + * @param ctx the parse tree + */ + void exitSourceElements(YJSParser.SourceElementsContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#arrayLiteral}. + * + * @param ctx the parse tree + */ + void enterArrayLiteral(YJSParser.ArrayLiteralContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#arrayLiteral}. + * + * @param ctx the parse tree + */ + void exitArrayLiteral(YJSParser.ArrayLiteralContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#elementList}. + * + * @param ctx the parse tree + */ + void enterElementList(YJSParser.ElementListContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#elementList}. + * + * @param ctx the parse tree + */ + void exitElementList(YJSParser.ElementListContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#lastElement}. + * + * @param ctx the parse tree + */ + void enterLastElement(YJSParser.LastElementContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#lastElement}. + * + * @param ctx the parse tree + */ + void exitLastElement(YJSParser.LastElementContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#objectLiteral}. + * + * @param ctx the parse tree + */ + void enterObjectLiteral(YJSParser.ObjectLiteralContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#objectLiteral}. + * + * @param ctx the parse tree + */ + void exitObjectLiteral(YJSParser.ObjectLiteralContext ctx); + + /** + * Enter a parse tree produced by the {@code PropertyExpressionAssignment} labeled alternative + * in {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + */ + void enterPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx); + + /** + * Exit a parse tree produced by the {@code PropertyExpressionAssignment} labeled alternative in + * {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + */ + void exitPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx); + + /** + * Enter a parse tree produced by the {@code ComputedPropertyExpressionAssignment} labeled + * alternative in {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + */ + void enterComputedPropertyExpressionAssignment( + YJSParser.ComputedPropertyExpressionAssignmentContext ctx); + + /** + * Exit a parse tree produced by the {@code ComputedPropertyExpressionAssignment} labeled + * alternative in {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + */ + void exitComputedPropertyExpressionAssignment( + YJSParser.ComputedPropertyExpressionAssignmentContext ctx); + + /** + * Enter a parse tree produced by the {@code PropertyShorthand} labeled alternative in + * {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + */ + void enterPropertyShorthand(YJSParser.PropertyShorthandContext ctx); + + /** + * Exit a parse tree produced by the {@code PropertyShorthand} labeled alternative in + * {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + */ + void exitPropertyShorthand(YJSParser.PropertyShorthandContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#propertyName}. + * + * @param ctx the parse tree + */ + void enterPropertyName(YJSParser.PropertyNameContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#propertyName}. + * + * @param ctx the parse tree + */ + void exitPropertyName(YJSParser.PropertyNameContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#arguments}. + * + * @param ctx the parse tree + */ + void enterArguments(YJSParser.ArgumentsContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#arguments}. + * + * @param ctx the parse tree + */ + void exitArguments(YJSParser.ArgumentsContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#lastArgument}. + * + * @param ctx the parse tree + */ + void enterLastArgument(YJSParser.LastArgumentContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#lastArgument}. + * + * @param ctx the parse tree + */ + void exitLastArgument(YJSParser.LastArgumentContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#expressionSequence}. + * + * @param ctx the parse tree + */ + void enterExpressionSequence(YJSParser.ExpressionSequenceContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#expressionSequence}. + * + * @param ctx the parse tree + */ + void exitExpressionSequence(YJSParser.ExpressionSequenceContext ctx); + + /** + * Enter a parse tree produced by the {@code TemplateStringExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code TemplateStringExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code TernaryExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterTernaryExpression(YJSParser.TernaryExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code TernaryExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitTernaryExpression(YJSParser.TernaryExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code LogicalAndExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterLogicalAndExpression(YJSParser.LogicalAndExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code LogicalAndExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitLogicalAndExpression(YJSParser.LogicalAndExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code PreIncrementExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code PreIncrementExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code ObjectLiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code ObjectLiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code InExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterInExpression(YJSParser.InExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code InExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitInExpression(YJSParser.InExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code LogicalOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterLogicalOrExpression(YJSParser.LogicalOrExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code LogicalOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitLogicalOrExpression(YJSParser.LogicalOrExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code NotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterNotExpression(YJSParser.NotExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code NotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitNotExpression(YJSParser.NotExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code PreDecreaseExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code PreDecreaseExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code ArgumentsExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code ArgumentsExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code ThisExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterThisExpression(YJSParser.ThisExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code ThisExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitThisExpression(YJSParser.ThisExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code UnaryMinusExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code UnaryMinusExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code AssignmentExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterAssignmentExpression(YJSParser.AssignmentExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code AssignmentExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitAssignmentExpression(YJSParser.AssignmentExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code PostDecreaseExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code PostDecreaseExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code TypeofExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterTypeofExpression(YJSParser.TypeofExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code TypeofExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitTypeofExpression(YJSParser.TypeofExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code InstanceofExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterInstanceofExpression(YJSParser.InstanceofExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code InstanceofExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitInstanceofExpression(YJSParser.InstanceofExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code UnaryPlusExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code UnaryPlusExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code ArrowFunctionExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code ArrowFunctionExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code EqualityExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterEqualityExpression(YJSParser.EqualityExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code EqualityExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitEqualityExpression(YJSParser.EqualityExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code BitXOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterBitXOrExpression(YJSParser.BitXOrExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code BitXOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitBitXOrExpression(YJSParser.BitXOrExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code SuperExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterSuperExpression(YJSParser.SuperExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code SuperExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitSuperExpression(YJSParser.SuperExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code MultiplicativeExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterMultiplicativeExpression(YJSParser.MultiplicativeExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code MultiplicativeExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitMultiplicativeExpression(YJSParser.MultiplicativeExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code BitShiftExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterBitShiftExpression(YJSParser.BitShiftExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code BitShiftExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitBitShiftExpression(YJSParser.BitShiftExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code ParenthesizedExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code ParenthesizedExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code AdditiveExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterAdditiveExpression(YJSParser.AdditiveExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code AdditiveExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitAdditiveExpression(YJSParser.AdditiveExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code RelationalExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterRelationalExpression(YJSParser.RelationalExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code RelationalExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitRelationalExpression(YJSParser.RelationalExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code PostIncrementExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code PostIncrementExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code BitNotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterBitNotExpression(YJSParser.BitNotExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code BitNotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitBitNotExpression(YJSParser.BitNotExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code NewExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterNewExpression(YJSParser.NewExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code NewExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitNewExpression(YJSParser.NewExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code LiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterLiteralExpression(YJSParser.LiteralExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code LiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitLiteralExpression(YJSParser.LiteralExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code ArrayLiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code ArrayLiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code MemberDotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterMemberDotExpression(YJSParser.MemberDotExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code MemberDotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitMemberDotExpression(YJSParser.MemberDotExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code MemberIndexExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code MemberIndexExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code IdentifierExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterIdentifierExpression(YJSParser.IdentifierExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code IdentifierExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitIdentifierExpression(YJSParser.IdentifierExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code BitAndExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterBitAndExpression(YJSParser.BitAndExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code BitAndExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitBitAndExpression(YJSParser.BitAndExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code BitOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterBitOrExpression(YJSParser.BitOrExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code BitOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitBitOrExpression(YJSParser.BitOrExpressionContext ctx); + + /** + * Enter a parse tree produced by the {@code AssignmentOperatorExpression} labeled alternative + * in {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void enterAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx); + + /** + * Exit a parse tree produced by the {@code AssignmentOperatorExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + */ + void exitAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#arrowFunctionParameters}. + * + * @param ctx the parse tree + */ + void enterArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#arrowFunctionParameters}. + * + * @param ctx the parse tree + */ + void exitArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#arrowFunctionBody}. + * + * @param ctx the parse tree + */ + void enterArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#arrowFunctionBody}. + * + * @param ctx the parse tree + */ + void exitArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#assignmentOperator}. + * + * @param ctx the parse tree + */ + void enterAssignmentOperator(YJSParser.AssignmentOperatorContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#assignmentOperator}. + * + * @param ctx the parse tree + */ + void exitAssignmentOperator(YJSParser.AssignmentOperatorContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#literal}. + * + * @param ctx the parse tree + */ + void enterLiteral(YJSParser.LiteralContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#literal}. + * + * @param ctx the parse tree + */ + void exitLiteral(YJSParser.LiteralContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#numericLiteral}. + * + * @param ctx the parse tree + */ + void enterNumericLiteral(YJSParser.NumericLiteralContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#numericLiteral}. + * + * @param ctx the parse tree + */ + void exitNumericLiteral(YJSParser.NumericLiteralContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#identifierName}. + * + * @param ctx the parse tree + */ + void enterIdentifierName(YJSParser.IdentifierNameContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#identifierName}. + * + * @param ctx the parse tree + */ + void exitIdentifierName(YJSParser.IdentifierNameContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#reservedWord}. + * + * @param ctx the parse tree + */ + void enterReservedWord(YJSParser.ReservedWordContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#reservedWord}. + * + * @param ctx the parse tree + */ + void exitReservedWord(YJSParser.ReservedWordContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#keyword}. + * + * @param ctx the parse tree + */ + void enterKeyword(YJSParser.KeywordContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#keyword}. + * + * @param ctx the parse tree + */ + void exitKeyword(YJSParser.KeywordContext ctx); + + /** + * Enter a parse tree produced by {@link YJSParser#eos}. + * + * @param ctx the parse tree + */ + void enterEos(YJSParser.EosContext ctx); + + /** + * Exit a parse tree produced by {@link YJSParser#eos}. + * + * @param ctx the parse tree + */ + void exitEos(YJSParser.EosContext ctx); +} diff --git a/src/main/gen/org/bdware/sc/parser/YJSParserVisitor.java b/src/main/gen/org/bdware/sc/parser/YJSParserVisitor.java index b7c0fb9..0ca4238 100644 --- a/src/main/gen/org/bdware/sc/parser/YJSParserVisitor.java +++ b/src/main/gen/org/bdware/sc/parser/YJSParserVisitor.java @@ -1,755 +1,987 @@ // Generated from YJSParser.g4 by ANTLR 4.9.2 package org.bdware.sc.parser; + import org.antlr.v4.runtime.tree.ParseTreeVisitor; /** - * This interface defines a complete generic visitor for a parse tree produced - * by {@link YJSParser}. + * This interface defines a complete generic visitor for a parse tree produced by {@link YJSParser}. * - * @param The return type of the visit operation. Use {@link Void} for - * operations with no return type. + * @param The return type of the visit operation. Use {@link Void} for operations with no return + * type. */ public interface YJSParserVisitor extends ParseTreeVisitor { - /** - * Visit a parse tree produced by {@link YJSParser#program}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitProgram(YJSParser.ProgramContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#contractDeclar}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitContractDeclar(YJSParser.ContractDeclarContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#annotations}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitAnnotations(YJSParser.AnnotationsContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#annotation}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitAnnotation(YJSParser.AnnotationContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#annotationArgs}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitAnnotationArgs(YJSParser.AnnotationArgsContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#annotationLiteral}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#clzOrFunctionDeclaration}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#interfaceDeclaration}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#eventDeclaration}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitEventDeclaration(YJSParser.EventDeclarationContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#eventGlobalOrLocal}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#eventSemantics}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitEventSemantics(YJSParser.EventSemanticsContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#sourceElement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitSourceElement(YJSParser.SourceElementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#importStmts}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitImportStmts(YJSParser.ImportStmtsContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#importStmt}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitImportStmt(YJSParser.ImportStmtContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#exportStmt}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitExportStmt(YJSParser.ExportStmtContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#versionName}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitVersionName(YJSParser.VersionNameContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#statement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitStatement(YJSParser.StatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#block}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitBlock(YJSParser.BlockContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#statementList}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitStatementList(YJSParser.StatementListContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#sharableDeclaration}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitSharableDeclaration(YJSParser.SharableDeclarationContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#sharableStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitSharableStatement(YJSParser.SharableStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#sharableModifier}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitSharableModifier(YJSParser.SharableModifierContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#variableStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitVariableStatement(YJSParser.VariableStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#variableDeclarationList}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#variableDeclaration}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitVariableDeclaration(YJSParser.VariableDeclarationContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#emptyStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitEmptyStatement(YJSParser.EmptyStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#expressionStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitExpressionStatement(YJSParser.ExpressionStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#ifStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitIfStatement(YJSParser.IfStatementContext ctx); - /** - * Visit a parse tree produced by the {@code DoStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitDoStatement(YJSParser.DoStatementContext ctx); - /** - * Visit a parse tree produced by the {@code WhileStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitWhileStatement(YJSParser.WhileStatementContext ctx); - /** - * Visit a parse tree produced by the {@code ForStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitForStatement(YJSParser.ForStatementContext ctx); - /** - * Visit a parse tree produced by the {@code ForVarStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitForVarStatement(YJSParser.ForVarStatementContext ctx); - /** - * Visit a parse tree produced by the {@code ForInStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitForInStatement(YJSParser.ForInStatementContext ctx); - /** - * Visit a parse tree produced by the {@code ForVarInStatement} - * labeled alternative in {@link YJSParser#iterationStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitForVarInStatement(YJSParser.ForVarInStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#varModifier}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitVarModifier(YJSParser.VarModifierContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#continueStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitContinueStatement(YJSParser.ContinueStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#breakStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitBreakStatement(YJSParser.BreakStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#returnStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitReturnStatement(YJSParser.ReturnStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#withStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitWithStatement(YJSParser.WithStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#switchStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitSwitchStatement(YJSParser.SwitchStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#caseBlock}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitCaseBlock(YJSParser.CaseBlockContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#caseClauses}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitCaseClauses(YJSParser.CaseClausesContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#caseClause}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitCaseClause(YJSParser.CaseClauseContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#defaultClause}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitDefaultClause(YJSParser.DefaultClauseContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#throwStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitThrowStatement(YJSParser.ThrowStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#tryStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitTryStatement(YJSParser.TryStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#catchProduction}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitCatchProduction(YJSParser.CatchProductionContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#finallyProduction}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitFinallyProduction(YJSParser.FinallyProductionContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#debuggerStatement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitDebuggerStatement(YJSParser.DebuggerStatementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#functionDeclaration}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#classDeclaration}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitClassDeclaration(YJSParser.ClassDeclarationContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#classTail}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitClassTail(YJSParser.ClassTailContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#classElement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitClassElement(YJSParser.ClassElementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#methodDefinition}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitMethodDefinition(YJSParser.MethodDefinitionContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#formalParameterList}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitFormalParameterList(YJSParser.FormalParameterListContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#formalParameterArg}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitFormalParameterArg(YJSParser.FormalParameterArgContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#lastFormalParameterArg}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#functionBody}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitFunctionBody(YJSParser.FunctionBodyContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#sourceElements}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitSourceElements(YJSParser.SourceElementsContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#arrayLiteral}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitArrayLiteral(YJSParser.ArrayLiteralContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#elementList}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitElementList(YJSParser.ElementListContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#lastElement}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitLastElement(YJSParser.LastElementContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#objectLiteral}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitObjectLiteral(YJSParser.ObjectLiteralContext ctx); - /** - * Visit a parse tree produced by the {@code PropertyExpressionAssignment} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx); - /** - * Visit a parse tree produced by the {@code ComputedPropertyExpressionAssignment} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitComputedPropertyExpressionAssignment(YJSParser.ComputedPropertyExpressionAssignmentContext ctx); - /** - * Visit a parse tree produced by the {@code PropertyShorthand} - * labeled alternative in {@link YJSParser#propertyAssignment}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitPropertyShorthand(YJSParser.PropertyShorthandContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#propertyName}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitPropertyName(YJSParser.PropertyNameContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#arguments}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitArguments(YJSParser.ArgumentsContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#lastArgument}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitLastArgument(YJSParser.LastArgumentContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#expressionSequence}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitExpressionSequence(YJSParser.ExpressionSequenceContext ctx); - /** - * Visit a parse tree produced by the {@code TemplateStringExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code TernaryExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitTernaryExpression(YJSParser.TernaryExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code LogicalAndExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitLogicalAndExpression(YJSParser.LogicalAndExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code PreIncrementExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code ObjectLiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code InExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitInExpression(YJSParser.InExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code LogicalOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitLogicalOrExpression(YJSParser.LogicalOrExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code NotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitNotExpression(YJSParser.NotExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code PreDecreaseExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code ArgumentsExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code ThisExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitThisExpression(YJSParser.ThisExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code UnaryMinusExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code AssignmentExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitAssignmentExpression(YJSParser.AssignmentExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code PostDecreaseExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code TypeofExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitTypeofExpression(YJSParser.TypeofExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code InstanceofExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitInstanceofExpression(YJSParser.InstanceofExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code UnaryPlusExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code ArrowFunctionExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code EqualityExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitEqualityExpression(YJSParser.EqualityExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code BitXOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitBitXOrExpression(YJSParser.BitXOrExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code SuperExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitSuperExpression(YJSParser.SuperExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code MultiplicativeExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitMultiplicativeExpression(YJSParser.MultiplicativeExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code BitShiftExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitBitShiftExpression(YJSParser.BitShiftExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code ParenthesizedExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code AdditiveExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitAdditiveExpression(YJSParser.AdditiveExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code RelationalExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitRelationalExpression(YJSParser.RelationalExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code PostIncrementExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code BitNotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitBitNotExpression(YJSParser.BitNotExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code NewExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitNewExpression(YJSParser.NewExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code LiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitLiteralExpression(YJSParser.LiteralExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code ArrayLiteralExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code MemberDotExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitMemberDotExpression(YJSParser.MemberDotExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code MemberIndexExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code IdentifierExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitIdentifierExpression(YJSParser.IdentifierExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code BitAndExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitBitAndExpression(YJSParser.BitAndExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code BitOrExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitBitOrExpression(YJSParser.BitOrExpressionContext ctx); - /** - * Visit a parse tree produced by the {@code AssignmentOperatorExpression} - * labeled alternative in {@link YJSParser#singleExpression}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#arrowFunctionParameters}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#arrowFunctionBody}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#assignmentOperator}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitAssignmentOperator(YJSParser.AssignmentOperatorContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#literal}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitLiteral(YJSParser.LiteralContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#numericLiteral}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitNumericLiteral(YJSParser.NumericLiteralContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#identifierName}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitIdentifierName(YJSParser.IdentifierNameContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#reservedWord}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitReservedWord(YJSParser.ReservedWordContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#keyword}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitKeyword(YJSParser.KeywordContext ctx); - /** - * Visit a parse tree produced by {@link YJSParser#eos}. - * @param ctx the parse tree - * @return the visitor result - */ - T visitEos(YJSParser.EosContext ctx); -} \ No newline at end of file + /** + * Visit a parse tree produced by {@link YJSParser#program}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitProgram(YJSParser.ProgramContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#contractDeclar}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitContractDeclar(YJSParser.ContractDeclarContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#annotations}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitAnnotations(YJSParser.AnnotationsContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#annotation}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitAnnotation(YJSParser.AnnotationContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#annotationArgs}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitAnnotationArgs(YJSParser.AnnotationArgsContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#annotationLiteral}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitAnnotationLiteral(YJSParser.AnnotationLiteralContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#clzOrFunctionDeclaration}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitClzOrFunctionDeclaration(YJSParser.ClzOrFunctionDeclarationContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#interfaceDeclaration}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitInterfaceDeclaration(YJSParser.InterfaceDeclarationContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#eventDeclaration}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitEventDeclaration(YJSParser.EventDeclarationContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#eventGlobalOrLocal}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitEventGlobalOrLocal(YJSParser.EventGlobalOrLocalContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#eventSemantics}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitEventSemantics(YJSParser.EventSemanticsContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#sourceElement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitSourceElement(YJSParser.SourceElementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#importStmts}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitImportStmts(YJSParser.ImportStmtsContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#importStmt}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitImportStmt(YJSParser.ImportStmtContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#exportStmt}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitExportStmt(YJSParser.ExportStmtContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#versionName}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitVersionName(YJSParser.VersionNameContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#statement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitStatement(YJSParser.StatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#block}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitBlock(YJSParser.BlockContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#statementList}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitStatementList(YJSParser.StatementListContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#sharableDeclaration}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitSharableDeclaration(YJSParser.SharableDeclarationContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#sharableStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitSharableStatement(YJSParser.SharableStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#sharableModifier}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitSharableModifier(YJSParser.SharableModifierContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#variableStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitVariableStatement(YJSParser.VariableStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#variableDeclarationList}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitVariableDeclarationList(YJSParser.VariableDeclarationListContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#variableDeclaration}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitVariableDeclaration(YJSParser.VariableDeclarationContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#emptyStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitEmptyStatement(YJSParser.EmptyStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#expressionStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitExpressionStatement(YJSParser.ExpressionStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#ifStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitIfStatement(YJSParser.IfStatementContext ctx); + + /** + * Visit a parse tree produced by the {@code DoStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitDoStatement(YJSParser.DoStatementContext ctx); + + /** + * Visit a parse tree produced by the {@code WhileStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitWhileStatement(YJSParser.WhileStatementContext ctx); + + /** + * Visit a parse tree produced by the {@code ForStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitForStatement(YJSParser.ForStatementContext ctx); + + /** + * Visit a parse tree produced by the {@code ForVarStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitForVarStatement(YJSParser.ForVarStatementContext ctx); + + /** + * Visit a parse tree produced by the {@code ForInStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitForInStatement(YJSParser.ForInStatementContext ctx); + + /** + * Visit a parse tree produced by the {@code ForVarInStatement} labeled alternative in + * {@link YJSParser#iterationStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitForVarInStatement(YJSParser.ForVarInStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#varModifier}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitVarModifier(YJSParser.VarModifierContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#continueStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitContinueStatement(YJSParser.ContinueStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#breakStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitBreakStatement(YJSParser.BreakStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#returnStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitReturnStatement(YJSParser.ReturnStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#withStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitWithStatement(YJSParser.WithStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#switchStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitSwitchStatement(YJSParser.SwitchStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#caseBlock}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitCaseBlock(YJSParser.CaseBlockContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#caseClauses}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitCaseClauses(YJSParser.CaseClausesContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#caseClause}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitCaseClause(YJSParser.CaseClauseContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#defaultClause}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitDefaultClause(YJSParser.DefaultClauseContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#throwStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitThrowStatement(YJSParser.ThrowStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#tryStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitTryStatement(YJSParser.TryStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#catchProduction}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitCatchProduction(YJSParser.CatchProductionContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#finallyProduction}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitFinallyProduction(YJSParser.FinallyProductionContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#debuggerStatement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitDebuggerStatement(YJSParser.DebuggerStatementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#functionDeclaration}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitFunctionDeclaration(YJSParser.FunctionDeclarationContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#classDeclaration}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassDeclaration(YJSParser.ClassDeclarationContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#classTail}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassTail(YJSParser.ClassTailContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#classElement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitClassElement(YJSParser.ClassElementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#methodDefinition}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitMethodDefinition(YJSParser.MethodDefinitionContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#formalParameterList}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitFormalParameterList(YJSParser.FormalParameterListContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#formalParameterArg}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitFormalParameterArg(YJSParser.FormalParameterArgContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#lastFormalParameterArg}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitLastFormalParameterArg(YJSParser.LastFormalParameterArgContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#functionBody}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitFunctionBody(YJSParser.FunctionBodyContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#sourceElements}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitSourceElements(YJSParser.SourceElementsContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#arrayLiteral}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitArrayLiteral(YJSParser.ArrayLiteralContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#elementList}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitElementList(YJSParser.ElementListContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#lastElement}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitLastElement(YJSParser.LastElementContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#objectLiteral}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitObjectLiteral(YJSParser.ObjectLiteralContext ctx); + + /** + * Visit a parse tree produced by the {@code PropertyExpressionAssignment} labeled alternative + * in {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitPropertyExpressionAssignment(YJSParser.PropertyExpressionAssignmentContext ctx); + + /** + * Visit a parse tree produced by the {@code ComputedPropertyExpressionAssignment} labeled + * alternative in {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitComputedPropertyExpressionAssignment( + YJSParser.ComputedPropertyExpressionAssignmentContext ctx); + + /** + * Visit a parse tree produced by the {@code PropertyShorthand} labeled alternative in + * {@link YJSParser#propertyAssignment}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitPropertyShorthand(YJSParser.PropertyShorthandContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#propertyName}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitPropertyName(YJSParser.PropertyNameContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#arguments}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitArguments(YJSParser.ArgumentsContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#lastArgument}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitLastArgument(YJSParser.LastArgumentContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#expressionSequence}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitExpressionSequence(YJSParser.ExpressionSequenceContext ctx); + + /** + * Visit a parse tree produced by the {@code TemplateStringExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitTemplateStringExpression(YJSParser.TemplateStringExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code TernaryExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitTernaryExpression(YJSParser.TernaryExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code LogicalAndExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitLogicalAndExpression(YJSParser.LogicalAndExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code PreIncrementExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitPreIncrementExpression(YJSParser.PreIncrementExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code ObjectLiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitObjectLiteralExpression(YJSParser.ObjectLiteralExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code InExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitInExpression(YJSParser.InExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code LogicalOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitLogicalOrExpression(YJSParser.LogicalOrExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code NotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitNotExpression(YJSParser.NotExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code PreDecreaseExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitPreDecreaseExpression(YJSParser.PreDecreaseExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code ArgumentsExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitArgumentsExpression(YJSParser.ArgumentsExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code ThisExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitThisExpression(YJSParser.ThisExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code UnaryMinusExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitUnaryMinusExpression(YJSParser.UnaryMinusExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code AssignmentExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitAssignmentExpression(YJSParser.AssignmentExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code PostDecreaseExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitPostDecreaseExpression(YJSParser.PostDecreaseExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code TypeofExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitTypeofExpression(YJSParser.TypeofExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code InstanceofExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitInstanceofExpression(YJSParser.InstanceofExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code UnaryPlusExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitUnaryPlusExpression(YJSParser.UnaryPlusExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code ArrowFunctionExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitArrowFunctionExpression(YJSParser.ArrowFunctionExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code EqualityExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitEqualityExpression(YJSParser.EqualityExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code BitXOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitBitXOrExpression(YJSParser.BitXOrExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code SuperExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitSuperExpression(YJSParser.SuperExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code MultiplicativeExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitMultiplicativeExpression(YJSParser.MultiplicativeExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code BitShiftExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitBitShiftExpression(YJSParser.BitShiftExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code ParenthesizedExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitParenthesizedExpression(YJSParser.ParenthesizedExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code AdditiveExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitAdditiveExpression(YJSParser.AdditiveExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code RelationalExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitRelationalExpression(YJSParser.RelationalExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code PostIncrementExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitPostIncrementExpression(YJSParser.PostIncrementExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code BitNotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitBitNotExpression(YJSParser.BitNotExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code NewExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitNewExpression(YJSParser.NewExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code LiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitLiteralExpression(YJSParser.LiteralExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code ArrayLiteralExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitArrayLiteralExpression(YJSParser.ArrayLiteralExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code MemberDotExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitMemberDotExpression(YJSParser.MemberDotExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code MemberIndexExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitMemberIndexExpression(YJSParser.MemberIndexExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code IdentifierExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitIdentifierExpression(YJSParser.IdentifierExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code BitAndExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitBitAndExpression(YJSParser.BitAndExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code BitOrExpression} labeled alternative in + * {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitBitOrExpression(YJSParser.BitOrExpressionContext ctx); + + /** + * Visit a parse tree produced by the {@code AssignmentOperatorExpression} labeled alternative + * in {@link YJSParser#singleExpression}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitAssignmentOperatorExpression(YJSParser.AssignmentOperatorExpressionContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#arrowFunctionParameters}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitArrowFunctionParameters(YJSParser.ArrowFunctionParametersContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#arrowFunctionBody}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitArrowFunctionBody(YJSParser.ArrowFunctionBodyContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#assignmentOperator}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitAssignmentOperator(YJSParser.AssignmentOperatorContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#literal}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitLiteral(YJSParser.LiteralContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#numericLiteral}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitNumericLiteral(YJSParser.NumericLiteralContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#identifierName}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitIdentifierName(YJSParser.IdentifierNameContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#reservedWord}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitReservedWord(YJSParser.ReservedWordContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#keyword}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitKeyword(YJSParser.KeywordContext ctx); + + /** + * Visit a parse tree produced by {@link YJSParser#eos}. + * + * @param ctx the parse tree + * @return the visitor result + */ + T visitEos(YJSParser.EosContext ctx); +}