Class GeneratedJavaParser

    • Field Detail

      • token

        public Token token
        Current token.
      • jj_nt

        public Token jj_nt
        Next token.
      • jj_ntk

        private int jj_ntk
      • jj_scanpos

        private Token jj_scanpos
      • jj_lastpos

        private Token jj_lastpos
      • jj_la

        private int jj_la
      • jj_lookingAhead

        private boolean jj_lookingAhead
        Whether we are looking ahead.
      • jj_semLA

        private boolean jj_semLA
      • jj_gen

        private int jj_gen
      • jj_la1

        private final int[] jj_la1
      • jj_la1_0

        private static int[] jj_la1_0
      • jj_la1_1

        private static int[] jj_la1_1
      • jj_la1_2

        private static int[] jj_la1_2
      • jj_la1_3

        private static int[] jj_la1_3
      • jj_la1_4

        private static int[] jj_la1_4
      • jj_rescan

        private boolean jj_rescan
      • jj_gc

        private int jj_gc
      • jj_expentries

        private java.util.List<int[]> jj_expentries
      • jj_expentry

        private int[] jj_expentry
      • jj_kind

        private int jj_kind
      • jj_lasttokens

        private int[] jj_lasttokens
      • jj_endpos

        private int jj_endpos
      • trace_indent

        private int trace_indent
      • trace_enabled

        private boolean trace_enabled
    • Method Detail

      • getCurrentToken

        Token getCurrentToken()
      • setTabSize

        void setTabSize​(int size)
      • PackageDeclaration

        public final PackageDeclaration PackageDeclaration()
                                                    throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-7.html#jls-7.4.1
        
             PackageDeclaration:
                 {PackageModifier} package Identifier {. Identifier} ;
             PackageModifier:
                 Annotation
         
        Throws:
        ParseException
      • ImportDeclaration

        public final ImportDeclaration ImportDeclaration()
                                                  throws ParseException
        Import declaration types are not differentiated in the class hierarchy. https://docs.oracle.com/javase/specs/jls/se15/html/jls-7.html#jls-7.5
        
             ImportDeclaration:
                 SingleTypeImportDeclaration
                 TypeImportOnDemandDeclaration
                 SingleStaticImportDeclaration
                 StaticImportOnDemandDeclaration
         
        Note that the JLS terminology "On Demand" and JavaParser terminology "Asterisk" are equivalent
        
             SingleTypeImportDeclaration:
                 import TypeName ;
             TypeImportOnDemandDeclaration:
                 import PackageOrTypeName . * ;
             SingleStaticImportDeclaration:
                 import static TypeName . Identifier ;
             StaticImportOnDemandDeclaration:
                 import static TypeName . * ;
         
        Throws:
        ParseException
      • ClassOrInterfaceDeclaration

        public final ClassOrInterfaceDeclaration ClassOrInterfaceDeclaration​(ModifierHolder modifier)
                                                                      throws ParseException
        Note that this grammar is deliberately permissive. As a result, this grammar allows any combinations of class/interface and extends/implements (e.g. an interface implementing an interface). Validations of these combinations are handled at the same time as validating language features used. Also note that JavaParser handles the hierarchy/specialisations of classes, interfaces, and enums differently to the JLS.
        • This ClassOrInterfaceDeclaration refers to the NormalClassDeclaration and NormalInterfaceDeclaration,
        • while AnnotationTypeDeclaration and EnumDeclaration are handled separately within this grammar.
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.1
        
             ClassDeclaration:
                 NormalClassDeclaration
                 EnumDeclaration
             NormalClassDeclaration:
                 {ClassModifier} class TypeIdentifier [TypeParameters] [Superclass] [Superinterfaces] ClassBody
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.1
        
             InterfaceDeclaration:
                 NormalInterfaceDeclaration
                 AnnotationTypeDeclaration
             NormalInterfaceDeclaration:
                 {InterfaceModifier} interface TypeIdentifier [TypeParameters] [ExtendsInterfaces] InterfaceBody
         
        Throws:
        ParseException
      • RecordDeclaration

        public final RecordDeclaration RecordDeclaration​(ModifierHolder modifier)
                                                  throws ParseException
        https://openjdk.java.net/jeps/395#Java-grammar
        
             RecordDeclaration:
                {ClassModifier} `record` TypeIdentifier [TypeParameters]
                  RecordHeader [SuperInterfaces] RecordBody
        
              RecordHeader:
               `(` [RecordComponentList] `)`
        
              RecordComponentList:
               RecordComponent { `,` RecordComponent}
        
              RecordComponent:
               {Annotation} UnannType Identifier
               VariableArityRecordComponent
        
              VariableArityRecordComponent:
               {Annotation} UnannType {Annotation} `...` Identifier
        
              RecordBody:
                `{` {RecordBodyDeclaration} `}`
        
              RecordBodyDeclaration:
                ClassBodyDeclaration
                CompactConstructorDeclaration
        
              CompactConstructorDeclaration:
                {ConstructorModifier} SimpleTypeName ConstructorBody
         
        Throws:
        ParseException
      • ExtendsList

        public final NodeList<ClassOrInterfaceType> ExtendsList()
                                                         throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.1.4
        
             Superclass:
                 extends ClassType
         
        For convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.3
        
             ClassOrInterfaceType:
                 ClassType
                 InterfaceType
             ClassType:
                 {Annotation} TypeIdentifier [TypeArguments]
                 PackageName . {Annotation} TypeIdentifier [TypeArguments]
                 ClassOrInterfaceType . {Annotation} TypeIdentifier [TypeArguments]
             InterfaceType:
                 ClassType
         
        Throws:
        ParseException
      • ImplementsList

        public final NodeList<ClassOrInterfaceType> ImplementsList()
                                                            throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.1.5
        
             Superinterfaces:
                 implements InterfaceTypeList
             InterfaceTypeList:
                 InterfaceType {, InterfaceType}
         
        For convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.3
        
             ClassOrInterfaceType:
                 ClassType
                 InterfaceType
             ClassType:
                 {Annotation} TypeIdentifier [TypeArguments]
                 PackageName . {Annotation} TypeIdentifier [TypeArguments]
                 ClassOrInterfaceType . {Annotation} TypeIdentifier [TypeArguments]
             InterfaceType:
                 ClassType
         
        Throws:
        ParseException
      • EnumDeclaration

        public final EnumDeclaration EnumDeclaration​(ModifierHolder modifier)
                                              throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.9
        
             EnumDeclaration:
                 {ClassModifier} enum TypeIdentifier [Superinterfaces] EnumBody
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.9.1
        
             EnumBody:
                 { [EnumConstantList] [,] [EnumBodyDeclarations] }
             EnumConstantList:
                 EnumConstant {, EnumConstant}
             EnumConstant:
                 {EnumConstantModifier} Identifier [( [ArgumentList] )] [ClassBody]
             EnumConstantModifier:
                 Annotation
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.9.2
        
             EnumBodyDeclarations:
                 ; {ClassBodyDeclaration}
         
        Throws:
        ParseException
      • EnumConstantDeclaration

        public final EnumConstantDeclaration EnumConstantDeclaration()
                                                              throws ParseException
        Note that the EnumConstantModifier is defined as an Annotation. https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.9.1
        
             EnumConstant:
                 {EnumConstantModifier} Identifier [( [ArgumentList] )] [ClassBody]
             EnumConstantModifier:
                 Annotation
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.9.2
        
             EnumBodyDeclarations:
                 ; {ClassBodyDeclaration}
         
        Throws:
        ParseException
      • TypeParameters

        public final RangedList<TypeParameter> TypeParameters()
                                                       throws ParseException
        If the list inside the returned RangedList is null, there are no brackets. If it is empty, there are brackets, but nothing is in them <>. The normal case is that it contains TypeParameters, like . https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.1.2
        
             TypeParameters:
                 < TypeParameterList >
             TypeParameterList:
                 TypeParameter {, TypeParameter}
         
        For Convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.4
        
             TypeParameter:
                 {TypeParameterModifier} TypeIdentifier [TypeBound]
             TypeParameterModifier:
                 Annotation
             TypeBound:
                 extends TypeVariable
                 extends ClassOrInterfaceType {AdditionalBound}
             AdditionalBound:
                 & InterfaceType
         
        Throws:
        ParseException
      • TypeParameter

        public final TypeParameter TypeParameter​(NodeList<AnnotationExpr> annotations)
                                          throws ParseException
        Note that the TypeParameterModifier is defined as an Annotation. Note that the annotations are passed as a parameter to this grammar entry. https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.4
        
             TypeParameter:
                 {TypeParameterModifier} TypeIdentifier [TypeBound]
             TypeParameterModifier:
                 Annotation
             TypeBound:
                 extends TypeVariable
                 extends ClassOrInterfaceType {AdditionalBound}
             AdditionalBound:
                 & InterfaceType
         
        Throws:
        ParseException
      • TypeBound

        public final NodeList<ClassOrInterfaceType> TypeBound()
                                                       throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.4
        
             TypeBound:
                 extends TypeVariable
                 extends ClassOrInterfaceType {AdditionalBound}
             AdditionalBound:
                 & InterfaceType
         
        For Convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.3
        
             ClassOrInterfaceType:
                 ClassType
                 InterfaceType
             ClassType:
                 {Annotation} TypeIdentifier [TypeArguments]
                 PackageName . {Annotation} TypeIdentifier [TypeArguments]
                 ClassOrInterfaceType . {Annotation} TypeIdentifier [TypeArguments]
             InterfaceType:
                 ClassType
             TypeVariable:
                 {Annotation} TypeIdentifier
         
        Throws:
        ParseException
      • ClassOrInterfaceBody

        public final NodeList<BodyDeclaration<?>> ClassOrInterfaceBody()
                                                                throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.1.6
        
             ClassBody:
                 { {ClassBodyDeclaration} }
             ClassBodyDeclaration:
                 ClassMemberDeclaration
                 InstanceInitializer
                 StaticInitializer
                 ConstructorDeclaration
             ClassMemberDeclaration:
                 FieldDeclaration
                 MethodDeclaration
                 ClassDeclaration
                 InterfaceDeclaration
                 ;
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.1.4
        
             InterfaceBody:
                 { {InterfaceMemberDeclaration} }
             InterfaceMemberDeclaration:
                 ConstantDeclaration
                 InterfaceMethodDeclaration
                 ClassDeclaration
                 InterfaceDeclaration
                 ;
         
        Throws:
        ParseException
      • RecordBody

        public final NodeList<BodyDeclaration<?>> RecordBody()
                                                      throws ParseException
        Everything that can go into a "regular" class or interface declaration, can also (usually) be included within a record. Exceptions to this are handled within the validators. Note: This is HEAVILY based on ClassOrInterfaceBody() and ClassOrInterfaceBodyDeclaration(), and there may be some scope/potential to optimise this and merge some parts together. https://docs.oracle.com/javase/specs/jls/se16/html/jls-8.html#jls-8.10.2
        Throws:
        ParseException
      • RecordBodyDeclaration

        public final BodyDeclaration<?> RecordBodyDeclaration()
                                                       throws ParseException
        Almost identical to ClassOrInterfaceBodyDeclaration, but: - with a CompactConstructorDeclaration As a result, there may be some scope/potential to optimize this and merge some parts together. https://docs.oracle.com/javase/specs/jls/se16/html/jls-8.html#jls-8.10.2
        
             RecordBody:
                 { {RecordBodyDeclaration} }
             RecordBodyDeclaration:
                 ClassBodyDeclaration
                 CompactConstructorDeclaration
         
        For convenience: https://docs.oracle.com/javase/specs/jls/se16/html/jls-8.html#jls-8.10.2
        
             ClassBodyDeclaration:
                 ClassMemberDeclaration
                 InstanceInitializer
                 StaticInitializer
                 ConstructorDeclaration
             ClassMemberDeclaration:
                 FieldDeclaration
                 MethodDeclaration
                 ClassDeclaration
                 InterfaceDeclaration
                 ;
         
        Throws:
        ParseException
      • ClassOrInterfaceBodyDeclaration

        public final BodyDeclaration<?> ClassOrInterfaceBodyDeclaration()
                                                                 throws ParseException
        Note that ClassDeclaration and InterfaceDeclaration (in the JLS) include enum and annotation declarations. Note that InstanceInitializer and StaticInitializer are treated as an Initializer with an optional static modifier in JavaParser. TODO: Investigate the ClassBodyDeclaration parts existing within an interface - is permitting this a potential problem? https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.1.6
        
             ClassBody:
                 { {ClassBodyDeclaration} }
             ClassBodyDeclaration:
                 ClassMemberDeclaration
                 InstanceInitializer
                 StaticInitializer
                 ConstructorDeclaration
             ClassMemberDeclaration:
                 FieldDeclaration
                 MethodDeclaration
                 ClassDeclaration
                 InterfaceDeclaration
                 ;
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.1.4
        
             InterfaceBody:
                 { {InterfaceMemberDeclaration} }
             InterfaceMemberDeclaration:
                 ConstantDeclaration
                 InterfaceMethodDeclaration
                 ClassDeclaration
                 InterfaceDeclaration
                 ;
         
        Throws:
        ParseException
      • FieldDeclaration

        public final FieldDeclaration FieldDeclaration​(ModifierHolder modifier)
                                                throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.3
        
             FieldDeclaration:
                 {FieldModifier} UnannType VariableDeclaratorList ;
             VariableDeclaratorList:
                 VariableDeclarator {, VariableDeclarator}
             VariableDeclarator:
                 VariableDeclaratorId [= VariableInitializer]
             VariableDeclaratorId:
                 Identifier [Dims]
             VariableInitializer:
                 Expression
                 ArrayInitializer
         
        Throws:
        ParseException
      • VariableDeclarator

        public final VariableDeclarator VariableDeclarator​(Type partialType)
                                                    throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.3
        
             VariableDeclarator:
                 VariableDeclaratorId [= VariableInitializer]
             VariableDeclaratorId:
                 Identifier [Dims]
             VariableInitializer:
                 Expression
                 ArrayInitializer
         
        Throws:
        ParseException
      • VariableDeclaratorId

        public final Pair<SimpleName,​java.util.List<ArrayType.ArrayBracketPair>> VariableDeclaratorId()
                                                                                                     throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.3
        
             VariableDeclaratorId:
                 Identifier [Dims]
         
        For convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-Identifier
        
             Identifier:
                 IdentifierChars but not a Keyword or BooleanLiteral or NullLiteral
             IdentifierChars:
                 JavaLetter {JavaLetterOrDigit}
             JavaLetter:
                 any Unicode character that is a "Java letter"
             JavaLetterOrDigit:
                 any Unicode character that is a "Java letter-or-digit"
         
        For convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-Dims
        
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • VariableInitializer

        public final Expression VariableInitializer()
                                             throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.3
        
             VariableInitializer:
                 Expression
                 ArrayInitializer
         
        Throws:
        ParseException
      • ArrayInitializer

        public final ArrayInitializerExpr ArrayInitializer()
                                                    throws ParseException
        An array initializer is written as a comma-separated list of expressions, enclosed by braces { and }. A trailing comma may appear after the last expression in an array initializer and is ignored. https://docs.oracle.com/javase/specs/jls/se15/html/jls-10.html#jls-10.6
        
             ArrayInitializer:
                 { [VariableInitializerList] [,] }
             VariableInitializerList:
                 VariableInitializer {, VariableInitializer}
         
        
             VariableInitializer:
                 Expression
                 ArrayInitializer
         
        Throws:
        ParseException
      • MethodDeclaration

        public final MethodDeclaration MethodDeclaration​(ModifierHolder modifier)
                                                  throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.4
        
             MethodDeclaration:
                 {MethodModifier} MethodHeader MethodBody
             MethodHeader:
                 Result MethodDeclarator [Throws]
                 TypeParameters {Annotation} Result MethodDeclarator [Throws]
             MethodDeclarator:
                 Identifier ( [ReceiverParameter ,] [FormalParameterList] ) [Dims]
             ReceiverParameter:
                 {Annotation} UnannType [Identifier .] this
         
        Throws:
        ParseException
      • Parameters

        public final Pair<NodeList<Parameter>,​ReceiverParameter> Parameters()
                                                                           throws ParseException
        The JLS refers to parameters as FormalParameter. https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.4.1
        
             FormalParameterList:
                 FormalParameter {, FormalParameter}
             FormalParameter:
                 {VariableModifier} UnannType VariableDeclaratorId
                 VariableArityParameter
             VariableArityParameter:
                 {VariableModifier} UnannType {Annotation} ... Identifier
             VariableModifier:
                 Annotation
                 final
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.4 https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-ReceiverParameter
        
             MethodDeclarator:
                 Identifier ( [ReceiverParameter ,] [FormalParameterList] ) [Dims]
             ReceiverParameter:
                 {Annotation} UnannType [Identifier .] this
         
        Throws:
        ParseException
      • LambdaParameters

        public final NodeList<Parameter> LambdaParameters()
                                                   throws ParseException
        Note: Similar, but not identical to, FormalParameter. Note: Distinction between LambdaParameters and InferredLambdaParameters is presence of types. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.27.1
        
             LambdaParameters:
                 ( [LambdaParameterList] )
                 Identifier
             LambdaParameterList:
                 LambdaParameter {, LambdaParameter}
                 Identifier {, Identifier}
             LambdaParameter:
                 {VariableModifier} LambdaParameterType VariableDeclaratorId
                 VariableArityParameter
             LambdaParameterType:
                 UnannType
                 var
         
        For Convenience:
        
             VariableArityParameter:
                  {VariableModifier} UnannType {Annotation} ... Identifier
             VariableModifier:
                 Annotation
                 final
             VariableDeclaratorId:
                 Identifier [Dims]
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • InferredLambdaParameters

        public final NodeList<Parameter> InferredLambdaParameters()
                                                           throws ParseException
        Note: Similar, but not identical to, FormalParameter. Note: Distinction between LambdaParameters and InferredLambdaParameters is presence of types. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.27.1
        
             LambdaParameters:
                 ( [LambdaParameterList] )
                 Identifier
             LambdaParameterList:
                 LambdaParameter {, LambdaParameter}
                 Identifier {, Identifier}
             LambdaParameter:
                 {VariableModifier} LambdaParameterType VariableDeclaratorId
                 VariableArityParameter
             LambdaParameterType:
                 UnannType
                 var
         
        For Convenience:
        
             VariableArityParameter:
                  {VariableModifier} UnannType {Annotation} ... Identifier
             VariableModifier:
                 Annotation
                 final
             VariableDeclaratorId:
                 Identifier [Dims]
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • Parameter

        public final Parameter Parameter()
                                  throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.4.1
        
             FormalParameter:
                 {VariableModifier} UnannType VariableDeclaratorId
                 VariableArityParameter
             VariableArityParameter:
                 {VariableModifier} UnannType {Annotation} ... Identifier
             VariableModifier:
                 Annotation
                 final
         
        Throws:
        ParseException
      • ReceiverParameter

        public final ReceiverParameter ReceiverParameter()
                                                  throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.4 https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-ReceiverParameter
        
             MethodDeclarator:
                 Identifier ( [ReceiverParameter ,] [FormalParameterList] ) [Dims]
             ReceiverParameter:
                 {Annotation} UnannType [Identifier .] this
         
        Throws:
        ParseException
      • ReceiverParameterId

        public final Name ReceiverParameterId()
                                       throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.4 https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-ReceiverParameter
        
             MethodDeclarator:
                 Identifier ( [ReceiverParameter ,] [FormalParameterList] ) [Dims]
             ReceiverParameter:
                 {Annotation} UnannType [Identifier .] this
         
        Throws:
        ParseException
      • ConstructorDeclaration

        public final ConstructorDeclaration ConstructorDeclaration​(ModifierHolder modifier)
                                                            throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.8
        
             ConstructorDeclaration:
                 {ConstructorModifier} ConstructorDeclarator [Throws] ConstructorBody
             ConstructorDeclarator:
                 [TypeParameters] SimpleTypeName ( [ReceiverParameter ,] [FormalParameterList] )
             SimpleTypeName:
                 TypeIdentifier
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.8.7
        
             ConstructorBody:
                 { [ExplicitConstructorInvocation] [BlockStatements] }
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.8.7.1
        
             ExplicitConstructorInvocation:
                 [TypeArguments] this ( [ArgumentList] ) ;
                 [TypeArguments] super ( [ArgumentList] ) ;
                 ExpressionName . [TypeArguments] super ( [ArgumentList] ) ;
                 Primary . [TypeArguments] super ( [ArgumentList] ) ;
         
        Throws:
        ParseException
      • ExplicitConstructorInvocation

        public final ExplicitConstructorInvocationStmt ExplicitConstructorInvocation()
                                                                              throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.8.7.1
        
             ExplicitConstructorInvocation:
                 [TypeArguments] this ( [ArgumentList] ) ;
                 [TypeArguments] super ( [ArgumentList] ) ;
                 ExpressionName . [TypeArguments] super ( [ArgumentList] ) ;
                 Primary . [TypeArguments] super ( [ArgumentList] ) ;
         
        The same, but aligned on super, to emphasise how this grammar relates:
        
             ExplicitConstructorInvocation:
                 [TypeArguments] this ( [ArgumentList] ) ;
                                  [TypeArguments] super ( [ArgumentList] ) ;
                 ExpressionName . [TypeArguments] super ( [ArgumentList] ) ;
                        Primary . [TypeArguments] super ( [ArgumentList] ) ;
         
        Throws:
        ParseException
      • Statements

        public final NodeList<Statement> Statements()
                                             throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.5
        
             Statement:
                 StatementWithoutTrailingSubstatement
                 LabeledStatement
                 IfThenStatement
                 IfThenElseStatement
                 WhileStatement
                 ForStatement
             StatementNoShortIf:
                 StatementWithoutTrailingSubstatement
                 LabeledStatementNoShortIf
                 IfThenElseStatementNoShortIf
                 WhileStatementNoShortIf
                 ForStatementNoShortIf
             StatementWithoutTrailingSubstatement:
                 Block
                 EmptyStatement
                 ExpressionStatement
                 AssertStatement
                 SwitchStatement
                 DoStatement
                 BreakStatement
                 ContinueStatement
                 ReturnStatement
                 SynchronizedStatement
                 ThrowStatement
                 TryStatement
                 YieldStatement
         
        Throws:
        ParseException
      • InitializerDeclaration

        public final InitializerDeclaration InitializerDeclaration()
                                                            throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.6 https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.
        
             InstanceInitializer:
                 Block
         
        
             StaticInitializer:
                 static Block
         
        Throws:
        ParseException
      • ReferenceType

        public final ReferenceType ReferenceType​(NodeList<AnnotationExpr> annotations)
                                          throws ParseException
        // TODO: JLS Has type and unannotated type, while JavaParser has type and annotated type. Note that an array of primitives is considered a reference type. https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.1
        
             ReferenceType:
                 ClassOrInterfaceType
                 TypeVariable
                 ArrayType
             ClassOrInterfaceType:
                 ClassType
                 InterfaceType
             ClassType:
                 {Annotation} TypeIdentifier [TypeArguments]
                 PackageName . {Annotation} TypeIdentifier [TypeArguments]
                 ClassOrInterfaceType . {Annotation} TypeIdentifier [TypeArguments]
             InterfaceType:
                 ClassType
             TypeVariable:
                 {Annotation} TypeIdentifier
             ArrayType:
                 PrimitiveType Dims
                 ClassOrInterfaceType Dims
                 TypeVariable Dims
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • TypeArguments

        public final RangedList<Type> TypeArguments()
                                             throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.5.1
        
             TypeArguments:
                 < TypeArgumentList >
             TypeArgumentList:
                 TypeArgument {, TypeArgument}
             TypeArgument:
                 ReferenceType
                 Wildcard
         
        Throws:
        ParseException
      • TypeArgument

        public final Type TypeArgument()
                                throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.5.1
        
             TypeArguments:
                 < TypeArgumentList >
             TypeArgumentList:
                 TypeArgument {, TypeArgument}
             TypeArgument:
                 ReferenceType
                 Wildcard
         
        Throws:
        ParseException
      • Wildcard

        public final WildcardType Wildcard​(NodeList<AnnotationExpr> firstAnnotations)
                                    throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.5.1
        
             Wildcard:
                 {Annotation} ? [WildcardBounds]
             WildcardBounds:
                 extends ReferenceType
                 super ReferenceType
         
        Throws:
        ParseException
      • PrimitiveType

        public final PrimitiveType PrimitiveType​(NodeList<AnnotationExpr> annotations)
                                          throws ParseException
        Note that char and byte are treated as an IntegralType, which is a subtype of NumericType. https://docs.oracle.com/javase/specs/jls/se15/html/jls-4.html#jls-4.2
        
             PrimitiveType:
                 {Annotation} NumericType
                 {Annotation} boolean
             NumericType:
                 IntegralType
                 FloatingPointType
             IntegralType:
                 (one of)
                 byte short int long char
             FloatingPointType:
                 (one of)
                 float double
         
        Throws:
        ParseException
      • Name

        public final Name Name()
                        throws ParseException
        A SimpleName is just an identifier. A Name can be a SimpleName or a SimpleName with qualifiers (e.g. a class or object reference). Note that no disambiguation is made as to exactly what type of name it is - e.g. whether it is a package, subclass, or field. That happens within JavaParser, rather than the grammar.
        Throws:
        ParseException
      • SimpleName

        public final SimpleName SimpleName()
                                    throws ParseException
        A SimpleName is just an identifier. A Name can be a SimpleName or a SimpleName with qualifiers (e.g. a class or object reference). Note that no disambiguation is made as to exactly what type of name it is - e.g. whether it is a package, subclass, or field. That happens within JavaParser, rather than the grammar.
        Throws:
        ParseException
      • Identifier

        public final java.lang.String Identifier()
                                          throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-3.8
        
             Identifier:
                 IdentifierChars but not a Keyword or BooleanLiteral or NullLiteral
             IdentifierChars:
                 JavaLetter {JavaLetterOrDigit}
             JavaLetter:
                 any Unicode character that is a "Java letter"
         
        For Convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-3.9
        51 character sequences, formed from ASCII letters, are reserved for use as keywords and cannot be used as identifiers (?3.8).
        
             Keyword:
                 (one of)
        
                 abstract   continue   for          new         switch
                 assert     default    if           package     synchronized
                 boolean    do         goto         private     this
                 break      double     implements   protected   throw
                 byte       else       import       public      throws
                 case       enum       instanceof   return      transient
                 catch      extends    int          short       try
                 char       final      interface    static      void
                 class      finally    long         strictfp    volatile
                 const      float      native       super       while
                 _ (underscore)
         
        Throws:
        ParseException
      • AssignmentOperator

        public final AssignExpr.Operator AssignmentOperator()
                                                     throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.26
        
             AssignmentExpression:
                 ConditionalExpression
                 Assignment
             Assignment:
                 LeftHandSide AssignmentOperator Expression
             LeftHandSide:
                 ExpressionName
                 FieldAccess
                 ArrayAccess
             AssignmentOperator:
                 (one of)
                 =  *=  /=  %=  +=  -=  <<=  >>=  >>>=  &=  ^=  |=
         
        Throws:
        ParseException
      • ConditionalExpression

        public final Expression ConditionalExpression()
                                               throws ParseException
        // TODO: Examine further re: missing(?) LambdaExpression or whether it is permissive enough to include it. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.25
        
             ConditionalExpression:
                 ConditionalOrExpression
                 ConditionalOrExpression ? Expression : ConditionalExpression
                 ConditionalOrExpression ? Expression : LambdaExpression
         
        Throws:
        ParseException
      • ConditionalOrExpression

        public final Expression ConditionalOrExpression()
                                                 throws ParseException
        Note subtle distinctions between inclusive and exclusive expressions. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.24
        
             ConditionalOrExpression:
                 ConditionalAndExpression
                 ConditionalOrExpression || ConditionalAndExpression
         
        Throws:
        ParseException
      • ConditionalAndExpression

        public final Expression ConditionalAndExpression()
                                                  throws ParseException
        Note subtle distinctions between inclusive and exclusive expressions. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.23
        
             ConditionalAndExpression:
                 InclusiveOrExpression
                 ConditionalAndExpression && InclusiveOrExpression
         
         For Convenience:
         
        
             AndExpression:
                 EqualityExpression
                 AndExpression & EqualityExpression
             ExclusiveOrExpression:
                 AndExpression
                 ExclusiveOrExpression ^ AndExpression
             InclusiveOrExpression:
                 ExclusiveOrExpression
                 InclusiveOrExpression | ExclusiveOrExpression
         
        Throws:
        ParseException
      • InclusiveOrExpression

        public final Expression InclusiveOrExpression()
                                               throws ParseException
        Note subtle distinctions between inclusive and exclusive expressions. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.22 https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-InclusiveOrExpression
        
             AndExpression:
                 EqualityExpression
                 AndExpression & EqualityExpression
             ExclusiveOrExpression:
                 AndExpression
                 ExclusiveOrExpression ^ AndExpression
             InclusiveOrExpression:
                 ExclusiveOrExpression
                 InclusiveOrExpression | ExclusiveOrExpression
         
        Throws:
        ParseException
      • ExclusiveOrExpression

        public final Expression ExclusiveOrExpression()
                                               throws ParseException
        Note subtle distinctions between inclusive and exclusive expressions. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.22 https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-ExclusiveOrExpression
        
             AndExpression:
                 EqualityExpression
                 AndExpression & EqualityExpression
             ExclusiveOrExpression:
                 AndExpression
                 ExclusiveOrExpression ^ AndExpression
             InclusiveOrExpression:
                 ExclusiveOrExpression
                 InclusiveOrExpression | ExclusiveOrExpression
         
        Throws:
        ParseException
      • AndExpression

        public final Expression AndExpression()
                                       throws ParseException
        Note subtle distinctions between inclusive and exclusive expressions. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.22 https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-AndExpression
        
             AndExpression:
                 EqualityExpression
                 AndExpression & EqualityExpression
             ExclusiveOrExpression:
                 AndExpression
                 ExclusiveOrExpression ^ AndExpression
             InclusiveOrExpression:
                 ExclusiveOrExpression
                 InclusiveOrExpression | ExclusiveOrExpression
         
        Throws:
        ParseException
      • EqualityExpression

        public final Expression EqualityExpression()
                                            throws ParseException
        // Note that instanceof is a RelationalExpression within the JLS, which differs from JavaParser https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.21
        
             EqualityExpression:
                 RelationalExpression
                 EqualityExpression == RelationalExpression
                 EqualityExpression != RelationalExpression
         
         For Convenience:
         https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.20
         
        
             RelationalExpression:
                 ShiftExpression
                 RelationalExpression < ShiftExpression
                 RelationalExpression > ShiftExpression
                 RelationalExpression <= ShiftExpression
                 RelationalExpression >= ShiftExpression
                 RelationalExpression instanceof ReferenceType
         
        Throws:
        ParseException
      • PatternExpression

        public final PatternExpr PatternExpression()
                                            throws ParseException
        https://openjdk.java.net/jeps/375 The instanceof grammar is extended accordingly:
        
             Pattern:
                 ReferenceType Identifier
         
        Throws:
        ParseException
      • InstanceOfExpression

        public final Expression InstanceOfExpression()
                                              throws ParseException
        // Note that instanceof is a RelationalExpression within the JLS, which differs from JavaParser https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.20
        
             RelationalExpression:
                 ShiftExpression
                 RelationalExpression < ShiftExpression
                 RelationalExpression > ShiftExpression
                 RelationalExpression <= ShiftExpression
                 RelationalExpression >= ShiftExpression
                 RelationalExpression instanceof ReferenceType
         
        Throws:
        ParseException
      • RelationalExpression

        public final Expression RelationalExpression()
                                              throws ParseException
        // Note that instanceof is a RelationalExpression within the JLS, which differs from JavaParser https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.20
        
             RelationalExpression:
                 ShiftExpression
                 RelationalExpression < ShiftExpression
                 RelationalExpression > ShiftExpression
                 RelationalExpression <= ShiftExpression
                 RelationalExpression >= ShiftExpression
                 RelationalExpression instanceof ReferenceType
         
         // Note that JDK 13/14 introduce pattern Matching for instanceof
         https://openjdk.java.net/jeps/375
         The instanceof grammar is extended accordingly:
         
        
             RelationalExpression:
                 ...
                 RelationalExpression instanceof ReferenceType
                 RelationalExpression instanceof Pattern
        
             Pattern:
                 ReferenceType Identifier
         
        Throws:
        ParseException
      • ShiftExpression

        public final Expression ShiftExpression()
                                         throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.19
        
             ShiftExpression:
                 AdditiveExpression
                 ShiftExpression << AdditiveExpression
                 ShiftExpression >> AdditiveExpression
                 ShiftExpression >>> AdditiveExpression
         
        Throws:
        ParseException
      • AdditiveExpression

        public final Expression AdditiveExpression()
                                            throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.18
        
             AdditiveExpression:
                 MultiplicativeExpression
                 AdditiveExpression + MultiplicativeExpression
                 AdditiveExpression - MultiplicativeExpression
         
        Throws:
        ParseException
      • MultiplicativeExpression

        public final Expression MultiplicativeExpression()
                                                  throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.17
        
             MultiplicativeExpression:
                 UnaryExpression
                 MultiplicativeExpression * UnaryExpression
                 MultiplicativeExpression / UnaryExpression
                 MultiplicativeExpression % UnaryExpression
         
        Throws:
        ParseException
      • UnaryExpression

        public final Expression UnaryExpression()
                                         throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.15
        
             UnaryExpression:
                 PreIncrementExpression
                 PreDecrementExpression
                 + UnaryExpression
                 - UnaryExpression
                 UnaryExpressionNotPlusMinus
             PreIncrementExpression:
                 ++ UnaryExpression
             PreDecrementExpression:
                 -- UnaryExpression
             UnaryExpressionNotPlusMinus:
                 PostfixExpression
                 ~ UnaryExpression
                 ! UnaryExpression
                 CastExpression
                 SwitchExpression
         
        Throws:
        ParseException
      • PreIncrementExpression

        public final Expression PreIncrementExpression()
                                                throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.15
        
             PreIncrementExpression:
                 ++ UnaryExpression
         
        Throws:
        ParseException
      • PreDecrementExpression

        public final Expression PreDecrementExpression()
                                                throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.15
        
             PreDecrementExpression:
                 -- UnaryExpression
         
        Throws:
        ParseException
      • UnaryExpressionNotPlusMinus

        public final Expression UnaryExpressionNotPlusMinus()
                                                     throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.15
        
             UnaryExpressionNotPlusMinus:
                 PostfixExpression
                 ~ UnaryExpression
                 ! UnaryExpression
                 CastExpression
                 SwitchExpression
         
        Throws:
        ParseException
      • PostfixExpression

        public final Expression PostfixExpression()
                                           throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.15
        
             PostfixExpression:
                 Primary
                 ExpressionName
                 PostIncrementExpression
                 PostDecrementExpression
         
        Throws:
        ParseException
      • CastExpression

        public final Expression CastExpression()
                                        throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.16
        
             CastExpression:
                 ( PrimitiveType ) UnaryExpression
                 ( ReferenceType {AdditionalBound} ) UnaryExpressionNotPlusMinus
                 ( ReferenceType {AdditionalBound} ) LambdaExpression
         
         For Convenience:
         
        
             AdditionalBound:
                 & InterfaceType
         
        Throws:
        ParseException
      • PrimaryExpression

        public final Expression PrimaryExpression()
                                           throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.8
        
             Primary:
                 PrimaryNoNewArray
                 ArrayCreationExpression
             PrimaryNoNewArray:
                 Literal
                 ClassLiteral
                 this
                 TypeName . this
                 ( Expression )
                 ClassInstanceCreationExpression
                 FieldAccess
                 ArrayAccess
                 MethodInvocation
                 MethodReference
         
        Throws:
        ParseException
      • PrimaryExpressionWithoutSuperSuffix

        public final Expression PrimaryExpressionWithoutSuperSuffix()
                                                             throws ParseException
        // TODO: Unclear exactly which part of the JLS this relates to - a JavaParser-specific thing with no 1:1 mapping, perhaps?
        Throws:
        ParseException
      • PrimaryPrefix

        public final Expression PrimaryPrefix()
                                       throws ParseException
        // TODO: Unclear exactly which part of the JLS this relates to - a JavaParser-specific thing with no 1:1 mapping, perhaps?
        Throws:
        ParseException
      • PrimarySuffix

        public final Expression PrimarySuffix​(Expression scope)
                                       throws ParseException
        // TODO: Unclear exactly which part of the JLS this relates to - a JavaParser-specific thing with no 1:1 mapping, perhaps?
        Throws:
        ParseException
      • PrimarySuffixWithoutSuper

        public final Expression PrimarySuffixWithoutSuper​(Expression scope)
                                                   throws ParseException
        // TODO: Unclear exactly which part of the JLS this relates to - a JavaParser-specific thing with no 1:1 mapping, perhaps?
        Throws:
        ParseException
      • Literal

        public final Expression Literal()
                                 throws ParseException
        Note that a Long Literal is defined as an IntegerLiteral, suffixed by "L" https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-3.10.1
        
             Literal:
                 IntegerLiteral
                 FloatingPointLiteral
                 BooleanLiteral
                 CharacterLiteral
                 StringLiteral
                 TextBlock
                 NullLiteral
         
        Throws:
        ParseException
      • BooleanLiteral

        public final Expression BooleanLiteral()
                                        throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-3.10.3
        
             BooleanLiteral:
                 (one of)
                 true false
         
        Throws:
        ParseException
      • Arguments

        public final NodeList<Expression> Arguments()
                                             throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.12
        
             MethodInvocation:
                 MethodName ( [ArgumentList] )
                 TypeName . [TypeArguments] Identifier ( [ArgumentList] )
                 ExpressionName . [TypeArguments] Identifier ( [ArgumentList] )
                 Primary . [TypeArguments] Identifier ( [ArgumentList] )
                 super . [TypeArguments] Identifier ( [ArgumentList] )
                 TypeName . super . [TypeArguments] Identifier ( [ArgumentList] )
             ArgumentList:
                 Expression {, Expression}
         
        Throws:
        ParseException
      • AllocationExpression

        public final Expression AllocationExpression​(Expression scope)
                                              throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.9
        
             ClassInstanceCreationExpression:
                 UnqualifiedClassInstanceCreationExpression
                 ExpressionName . UnqualifiedClassInstanceCreationExpression
                 Primary . UnqualifiedClassInstanceCreationExpression
             UnqualifiedClassInstanceCreationExpression:
                 new [TypeArguments] ClassOrInterfaceTypeToInstantiate ( [ArgumentList] ) [ClassBody]
             ClassOrInterfaceTypeToInstantiate:
                 {Annotation} Identifier {. {Annotation} Identifier} [TypeArgumentsOrDiamond]
             TypeArgumentsOrDiamond:
                 TypeArguments
                 <>
         
        For Convenience:
        
             ArgumentList:
                 Expression {, Expression}
         
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.10
        
             ArrayCreationExpression:
                 new PrimitiveType DimExprs [Dims]
                 new ClassOrInterfaceType DimExprs [Dims]
                 new PrimitiveType Dims ArrayInitializer
                 new ClassOrInterfaceType Dims ArrayInitializer
             DimExprs:
                 DimExpr {DimExpr}
             DimExpr:
                 {Annotation} [ Expression ]
         
        For Convenience:
        
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • ArrayCreation

        public final ArrayCreationExpr ArrayCreation​(JavaToken begin,
                                                     Type type)
                                              throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.10
        
             ArrayCreationExpression:
                 new PrimitiveType DimExprs [Dims]
                 new ClassOrInterfaceType DimExprs [Dims]
                 new PrimitiveType Dims ArrayInitializer
                 new ClassOrInterfaceType Dims ArrayInitializer
             DimExprs:
                 DimExpr {DimExpr}
             DimExpr:
                 {Annotation} [ Expression ]
         
        For Convenience:
        
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • Statement

        public final Statement Statement()
                                  throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.5
        
             Statement:
                 StatementWithoutTrailingSubstatement
                 LabeledStatement
                 IfThenStatement
                 IfThenElseStatement
                 WhileStatement
                 ForStatement
             StatementNoShortIf:
                 StatementWithoutTrailingSubstatement
                 LabeledStatementNoShortIf
                 IfThenElseStatementNoShortIf
                 WhileStatementNoShortIf
                 ForStatementNoShortIf
             StatementWithoutTrailingSubstatement:
                 Block
                 EmptyStatement
                 ExpressionStatement
                 AssertStatement
                 SwitchStatement
                 DoStatement
                 BreakStatement
                 ContinueStatement
                 ReturnStatement
                 SynchronizedStatement
                 ThrowStatement
                 TryStatement
                 YieldStatement
         
        Throws:
        ParseException
      • AssertStatement

        public final AssertStmt AssertStatement()
                                         throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.10
        
             AssertStatement:
                 assert Expression ;
                 assert Expression : Expression ;
         
        Throws:
        ParseException
      • LabeledStatement

        public final LabeledStmt LabeledStatement()
                                           throws ParseException
        // TODO: Examine more closely. https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.7
        
             LabeledStatement:
                 Identifier : Statement
             LabeledStatementNoShortIf:
                 Identifier : StatementNoShortIf
         
        Throws:
        ParseException
      • Block

        public final BlockStmt Block()
                              throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.2
        
             Block:
                 { [BlockStatements] }
             BlockStatements:
                 BlockStatement {BlockStatement}
             BlockStatement:
                 LocalVariableDeclarationStatement
                 ClassDeclaration
                 Statement
         
        Throws:
        ParseException
      • BlockStatement

        public final Statement BlockStatement()
                                       throws ParseException
        Classes inside body statements can only be abstract or final. The semantic checks must check it. TODO/FIXME: Note that the JLS specifies ClassDeclaration (thus NormalClassDeclaration and EnumDeclaration, but not interface. TODO/FIXME: Is this a bug in the grammar? https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-Statement
        
             Block:
                 { [BlockStatements] }
             BlockStatements:
                 BlockStatement {BlockStatement}
             BlockStatement:
                 LocalVariableDeclarationStatement
                 ClassDeclaration
                 Statement
         
        For Convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.1
        
             ClassDeclaration:
                 NormalClassDeclaration
                 EnumDeclaration
             NormalClassDeclaration:
                 {ClassModifier} class TypeIdentifier [TypeParameters] [Superclass] [Superinterfaces] ClassBody
         
        For Convenience: https://docs.oracle.com/javase/specs/jls/se15/html/jls-8.html#jls-8.9
        
             EnumDeclaration:
                 {ClassModifier} enum TypeIdentifier [Superinterfaces] EnumBody
         
        Throws:
        ParseException
      • EmptyStatement

        public final EmptyStmt EmptyStatement()
                                       throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.6
        
             EmptyStatement:
                 ;
         
        Throws:
        ParseException
      • LambdaBody

        public final Statement LambdaBody()
                                   throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.27.2
        
             LambdaBody:
                 Expression
                 Block
         
        Throws:
        ParseException
      • SwitchStatement

        public final SwitchStmt SwitchStatement()
                                         throws ParseException
        Note that the SwitchExpression and SwitchStatemnt are similar but different. // TODO: Why/How? // TODO: Examine more closely. https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.11
        
             SwitchStatement:
                 switch ( Expression ) SwitchBlock
         
        For Convenience:
        
             SwitchBlock:
                 { SwitchRule {SwitchRule} }
                 { {SwitchBlockStatementGroup} {SwitchLabel :} }
             SwitchRule:
                 SwitchLabel -> Expression ;
                 SwitchLabel -> Block
                 SwitchLabel -> ThrowStatement
             SwitchBlockStatementGroup:
                 SwitchLabel : {SwitchLabel :} BlockStatements
             SwitchLabel:
                 case CaseConstant {, CaseConstant}
                 default
             CaseConstant:
                 ConditionalExpression
         
        Throws:
        ParseException
      • SwitchExpression

        public final SwitchExpr SwitchExpression()
                                          throws ParseException
        Note that the SwitchExpression and SwitchStatemnt are similar but different. // TODO: Why/How? // TODO: Examine more closely. https://docs.oracle.com/javase/specs/jls/se15/html/jls-15.html#jls-15.28
        
             SwitchExpression:
                 switch ( Expression ) SwitchBlock
         
        For Convenience:
        
             SwitchBlock:
                 { SwitchRule {SwitchRule} }
                 { {SwitchBlockStatementGroup} {SwitchLabel :} }
             SwitchRule:
                 SwitchLabel -> Expression ;
                 SwitchLabel -> Block
                 SwitchLabel -> ThrowStatement
             SwitchBlockStatementGroup:
                 SwitchLabel : {SwitchLabel :} BlockStatements
             SwitchLabel:
                 case CaseConstant {, CaseConstant}
                 default
             CaseConstant:
                 ConditionalExpression
         
        Throws:
        ParseException
      • SwitchEntry

        public final SwitchEntry SwitchEntry()
                                      throws ParseException
        Note that the SwitchBlock (JLS) and SwitchEntry (JavaParser) are equivlent. // TODO: Examine more closely. https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.11.1
        
             SwitchBlock:
                 { SwitchRule {SwitchRule} }
                 { {SwitchBlockStatementGroup} {SwitchLabel :} }
             SwitchRule:
                 SwitchLabel -> Expression ;
                 SwitchLabel -> Block
                 SwitchLabel -> ThrowStatement
             SwitchBlockStatementGroup:
                 SwitchLabel : {SwitchLabel :} BlockStatements
             SwitchLabel:
                 case CaseConstant {, CaseConstant}
                 default
             CaseConstant:
                 ConditionalExpression
         
        Throws:
        ParseException
      • IfStatement

        public final IfStmt IfStatement()
                                 throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.9
        
             IfThenStatement:
                 if ( Expression ) Statement
             IfThenElseStatement:
                 if ( Expression ) StatementNoShortIf else Statement
             IfThenElseStatementNoShortIf:
                 if ( Expression ) StatementNoShortIf else StatementNoShortIf
         
        Throws:
        ParseException
      • WhileStatement

        public final WhileStmt WhileStatement()
                                       throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.12
        
             WhileStatement:
                 while ( Expression ) Statement
             WhileStatementNoShortIf:
                 while ( Expression ) StatementNoShortIf
         
        Throws:
        ParseException
      • DoStatement

        public final DoStmt DoStatement()
                                 throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.12
        
             DoStatement:
                 do Statement while ( Expression ) ;
         
        Throws:
        ParseException
      • ForStatement

        public final Statement ForStatement()
                                     throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.14
        
             ForStatement:
                 BasicForStatement
                 EnhancedForStatement
             ForStatementNoShortIf:
                 BasicForStatementNoShortIf
                 EnhancedForStatementNoShortIf
         
        Throws:
        ParseException
      • ForInit

        public final NodeList<Expression> ForInit()
                                           throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.14
        
             BasicForStatement:
                 for ( [ForInit] ; [Expression] ; [ForUpdate] ) Statement
             BasicForStatementNoShortIf:
                 for ( [ForInit] ; [Expression] ; [ForUpdate] ) StatementNoShortIf
             ForInit:
                 StatementExpressionList
                 LocalVariableDeclaration
             ForUpdate:
                 StatementExpressionList
             StatementExpressionList:
                 StatementExpression {, StatementExpression}
         
        Throws:
        ParseException
      • ExpressionList

        public final NodeList<Expression> ExpressionList()
                                                  throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.14
        
             BasicForStatement:
                 for ( [ForInit] ; [Expression] ; [ForUpdate] ) Statement
             BasicForStatementNoShortIf:
                 for ( [ForInit] ; [Expression] ; [ForUpdate] ) StatementNoShortIf
             ForInit:
                 StatementExpressionList
                 LocalVariableDeclaration
             ForUpdate:
                 StatementExpressionList
             StatementExpressionList:
                 StatementExpression {, StatementExpression}
         
        Throws:
        ParseException
      • ForUpdate

        public final NodeList<Expression> ForUpdate()
                                             throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.14
        
             BasicForStatement:
                 for ( [ForInit] ; [Expression] ; [ForUpdate] ) Statement
             BasicForStatementNoShortIf:
                 for ( [ForInit] ; [Expression] ; [ForUpdate] ) StatementNoShortIf
             ForInit:
                 StatementExpressionList
                 LocalVariableDeclaration
             ForUpdate:
                 StatementExpressionList
             StatementExpressionList:
                 StatementExpression {, StatementExpression}
         
        Throws:
        ParseException
      • BreakStatement

        public final BreakStmt BreakStatement()
                                       throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.15
        
             BreakStatement:
                 break [Identifier] ;
         
        Throws:
        ParseException
      • YieldStatement

        public final YieldStmt YieldStatement()
                                       throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.21
        
             YieldStatement:
                 yield Expression ;
         
        Throws:
        ParseException
      • ContinueStatement

        public final ContinueStmt ContinueStatement()
                                             throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.16
        
             ContinueStatement:
                 continue [Identifier] ;
         
        Throws:
        ParseException
      • ReturnStatement

        public final ReturnStmt ReturnStatement()
                                         throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.17
        
             ReturnStatement:
                 return [Expression] ;
         
        Throws:
        ParseException
      • ThrowStatement

        public final ThrowStmt ThrowStatement()
                                       throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.18
        
             ThrowStatement:
                 throw Expression ;
         
        Throws:
        ParseException
      • SynchronizedStatement

        public final SynchronizedStmt SynchronizedStatement()
                                                     throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.19
        
             SynchronizedStatement:
                 synchronized ( Expression ) Block
         
        Throws:
        ParseException
      • TryStatement

        public final TryStmt TryStatement()
                                   throws ParseException
        // TODO: Examine more closely. https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.20
        
             TryStatement:
                 try Block Catches
                 try Block [Catches] Finally
                 TryWithResourcesStatement
             Catches:
                 CatchClause {CatchClause}
             CatchClause:
                 catch ( CatchFormalParameter ) Block
             CatchFormalParameter:
                {VariableModifier} CatchType VariableDeclaratorId
             CatchType:
                 UnannClassType {| ClassType}
             Finally:
                 finally Block
         
         For Convenience:
         
        
             VariableModifier:
                 Annotation
                 final
             VariableDeclaratorId:
                 Identifier [Dims]
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • ResourceSpecification

        public final NodeList<Expression> ResourceSpecification()
                                                         throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.20.3
        
             TryWithResourcesStatement:
                 try ResourceSpecification Block [Catches] [Finally]
             ResourceSpecification:
                 ( ResourceList [;] )
             ResourceList:
                 Resource {; Resource}
             Resource:
                 {VariableModifier} LocalVariableType Identifier = Expression
                 VariableAccess
             VariableAccess:
                 ExpressionName
                 FieldAccess
         
         For Convenience:
         
        
             VariableModifier:
                 Annotation
                 final
             LocalVariableType:
                 UnannType
                 var
         
        Throws:
        ParseException
      • Resources

        public final NodeList<Expression> Resources()
                                             throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.20.3
        
             ResourceList:
                 Resource {; Resource}
             Resource:
                 {VariableModifier} LocalVariableType Identifier = Expression
                 VariableAccess
             VariableAccess:
                 ExpressionName
                 FieldAccess
         
         For Convenience:
         
        
             VariableModifier:
                 Annotation
                 final
             LocalVariableType:
                 UnannType
                 var
         
        Throws:
        ParseException
      • Resource

        public final Expression Resource()
                                  throws ParseException
        // TODO: Examine more closely. https://docs.oracle.com/javase/specs/jls/se15/html/jls-14.html#jls-14.20.3
        
             Resource:
                 {VariableModifier} LocalVariableType Identifier = Expression
                 VariableAccess
             VariableAccess:
                 ExpressionName
                 FieldAccess
         
         For Convenience:
         
        
             VariableModifier:
                 Annotation
                 final
             LocalVariableType:
                 UnannType
                 var
         
        Throws:
        ParseException
      • Annotations

        public final NodeList<AnnotationExpr> Annotations()
                                                   throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.7
        
             Annotation:
                 NormalAnnotation
                 MarkerAnnotation
                 SingleElementAnnotation
         
        Throws:
        ParseException
      • Annotation

        public final AnnotationExpr Annotation()
                                        throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.7
        
             Annotation:
                 NormalAnnotation
                 MarkerAnnotation
                 SingleElementAnnotation
         
         For Convenience:
         https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.7.1
         
        {@code
             NormalAnnotation:
        Throws:
        ParseException
      • MemberValuePairs

        public final NodeList<MemberValuePair> MemberValuePairs()
                                                         throws ParseException
        Note that MemberValuePairs (JavaParser) is synonymous with ElementValuePairList (JLS) https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.7.1
        {@code
             NormalAnnotation:
        Throws:
        ParseException
      • MemberValuePair

        public final MemberValuePair MemberValuePair()
                                              throws ParseException
        Note that MemberValuePair (JavaParser) is synonymous with ElementValuePair (JLS) https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.7.1
        
             ElementValuePair:
                 Identifier = ElementValue
             ElementValue:
                 ConditionalExpression
                 ElementValueArrayInitializer
                 Annotation
             ElementValueArrayInitializer:
                 { [ElementValueList] [,] }
             ElementValueList:
                 ElementValue {, ElementValue}
         
        Throws:
        ParseException
      • MemberValue

        public final Expression MemberValue()
                                     throws ParseException
        Note that MemberValue (JavaParser) is synonymous with ElementValue (JLS) https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.7.1 https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-ElementValue
        
             ElementValue:
                 ConditionalExpression
                 ElementValueArrayInitializer
                 Annotation
             ElementValueArrayInitializer:
                 { [ElementValueList] [,] }
             ElementValueList:
                 ElementValue {, ElementValue}
         
        Throws:
        ParseException
      • MemberValueArrayInitializer

        public final Expression MemberValueArrayInitializer()
                                                     throws ParseException
        Note that MemberValueArrayInitializer (JavaParser) is synonymous with ElementValueArrayInitializer (JLS) https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.7.1
        
             ElementValueArrayInitializer:
                 { [ElementValueList] [,] }
             ElementValueList:
                 ElementValue {, ElementValue}
         
        Throws:
        ParseException
      • AnnotationTypeDeclaration

        public final AnnotationDeclaration AnnotationTypeDeclaration​(ModifierHolder modifier)
                                                              throws ParseException
        An annotation type declaration specifies a new annotation type, a special kind of interface type. To distinguish an annotation type declaration from a normal interface declaration, the keyword interface is preceded by an at-sign (@).
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.6
        
             AnnotationTypeDeclaration:
                 {InterfaceModifier} @ interface TypeIdentifier AnnotationTypeBody
         
        Throws:
        ParseException
      • AnnotationTypeBody

        public final NodeList<BodyDeclaration<?>> AnnotationTypeBody()
                                                              throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.6.1
        
             AnnotationTypeBody:
                 { {AnnotationTypeMemberDeclaration} }
             AnnotationTypeMemberDeclaration:
                 AnnotationTypeElementDeclaration
                 ConstantDeclaration
                 ClassDeclaration
                 InterfaceDeclaration
                 ;
         
        Throws:
        ParseException
      • AnnotationBodyDeclaration

        public final BodyDeclaration<?> AnnotationBodyDeclaration()
                                                           throws ParseException
        Note that AnnotationTypeMemberDeclaration (JLS) and AnnotationBodyDeclaration (JavaParser) are synonymous. https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.6.1
        
             AnnotationTypeBody:
                 { {AnnotationTypeMemberDeclaration} }
             AnnotationTypeMemberDeclaration:
                 AnnotationTypeElementDeclaration
                 ConstantDeclaration
                 ClassDeclaration
                 InterfaceDeclaration
                 ;
             AnnotationTypeElementDeclaration:
                 {AnnotationTypeElementModifier} UnannType Identifier ( ) [Dims] [DefaultValue] ;
             AnnotationTypeElementModifier:
                 (one of)
                 Annotation public
                 abstract
         
         For Convenience:
         
        
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • AnnotationTypeMemberDeclaration

        public final AnnotationMemberDeclaration AnnotationTypeMemberDeclaration​(ModifierHolder modifier)
                                                                          throws ParseException
        Note that AnnotationTypeElementDeclaration (JLS) and AnnotationTypeMemberDeclaration (JavaParser) are synonymous. // TODO/FIXME: Consider missing `[Dims] (present in the JLS, but not the JavaParser grammar) // TODO/FIXME: {AnnotationTypeElementModifier} UnannType Identifier ( ) [Dims] [DefaultValue] ; https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.6.1
        
             AnnotationTypeElementDeclaration:
                 {AnnotationTypeElementModifier} UnannType Identifier ( ) [Dims] [DefaultValue] ;
             AnnotationTypeElementModifier:
                 (one of)
                 Annotation public
                 abstract
         
         For Convenience:
         
        
             Dims:
                 {Annotation} [ ] {{Annotation} [ ]}
         
        Throws:
        ParseException
      • DefaultValue

        public final Expression DefaultValue()
                                      throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.6.2
        
             DefaultValue:
             default ElementValue
         
         For Convenience:
         https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-9.7.1
         https://docs.oracle.com/javase/specs/jls/se15/html/jls-9.html#jls-ElementValue
         
        
             ElementValue:
                 ConditionalExpression
                 ElementValueArrayInitializer
                 Annotation
             ElementValueArrayInitializer:
                 { [ElementValueList] [,] }
             ElementValueList:
                 ElementValue {, ElementValue}
         
        Throws:
        ParseException
      • ModuleDirective

        public final ModuleDirective ModuleDirective()
                                              throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-7.html#jls-ModuleDirective
        
             ModuleDirective:
                 requires {RequiresModifier} ModuleName ;
                 exports PackageName [to ModuleName {, ModuleName}] ;
                 opens PackageName [to ModuleName {, ModuleName}] ;
                 uses TypeName ;
                 provides TypeName with TypeName {, TypeName} ;
             RequiresModifier:
                 (one of)
                 transitive static
         
        Throws:
        ParseException
      • ModuleDeclaration

        public final ModuleDeclaration ModuleDeclaration​(ModifierHolder modifier)
                                                  throws ParseException
        https://docs.oracle.com/javase/specs/jls/se15/html/jls-7.html#jls-7.7
        
             ModuleDeclaration:
                 {Annotation} [open] module Identifier {. Identifier} { {ModuleDirective} }
         
        Throws:
        ParseException
      • jj_2_1

        private boolean jj_2_1​(int xla)
      • jj_2_2

        private boolean jj_2_2​(int xla)
      • jj_2_3

        private boolean jj_2_3​(int xla)
      • jj_2_4

        private boolean jj_2_4​(int xla)
      • jj_2_5

        private boolean jj_2_5​(int xla)
      • jj_2_6

        private boolean jj_2_6​(int xla)
      • jj_2_7

        private boolean jj_2_7​(int xla)
      • jj_2_8

        private boolean jj_2_8​(int xla)
      • jj_2_9

        private boolean jj_2_9​(int xla)
      • jj_2_10

        private boolean jj_2_10​(int xla)
      • jj_2_11

        private boolean jj_2_11​(int xla)
      • jj_2_12

        private boolean jj_2_12​(int xla)
      • jj_2_13

        private boolean jj_2_13​(int xla)
      • jj_2_14

        private boolean jj_2_14​(int xla)
      • jj_2_15

        private boolean jj_2_15​(int xla)
      • jj_2_16

        private boolean jj_2_16​(int xla)
      • jj_2_17

        private boolean jj_2_17​(int xla)
      • jj_2_18

        private boolean jj_2_18​(int xla)
      • jj_2_19

        private boolean jj_2_19​(int xla)
      • jj_2_20

        private boolean jj_2_20​(int xla)
      • jj_2_21

        private boolean jj_2_21​(int xla)
      • jj_2_22

        private boolean jj_2_22​(int xla)
      • jj_2_23

        private boolean jj_2_23​(int xla)
      • jj_2_24

        private boolean jj_2_24​(int xla)
      • jj_2_25

        private boolean jj_2_25​(int xla)
      • jj_2_26

        private boolean jj_2_26​(int xla)
      • jj_2_27

        private boolean jj_2_27​(int xla)
      • jj_2_28

        private boolean jj_2_28​(int xla)
      • jj_2_29

        private boolean jj_2_29​(int xla)
      • jj_2_30

        private boolean jj_2_30​(int xla)
      • jj_2_31

        private boolean jj_2_31​(int xla)
      • jj_2_32

        private boolean jj_2_32​(int xla)
      • jj_2_33

        private boolean jj_2_33​(int xla)
      • jj_2_34

        private boolean jj_2_34​(int xla)
      • jj_2_35

        private boolean jj_2_35​(int xla)
      • jj_2_36

        private boolean jj_2_36​(int xla)
      • jj_2_37

        private boolean jj_2_37​(int xla)
      • jj_2_38

        private boolean jj_2_38​(int xla)
      • jj_2_39

        private boolean jj_2_39​(int xla)
      • jj_2_40

        private boolean jj_2_40​(int xla)
      • jj_2_41

        private boolean jj_2_41​(int xla)
      • jj_2_42

        private boolean jj_2_42​(int xla)
      • jj_2_43

        private boolean jj_2_43​(int xla)
      • jj_2_44

        private boolean jj_2_44​(int xla)
      • jj_2_45

        private boolean jj_2_45​(int xla)
      • jj_2_46

        private boolean jj_2_46​(int xla)
      • jj_2_47

        private boolean jj_2_47​(int xla)
      • jj_2_48

        private boolean jj_2_48​(int xla)
      • jj_2_49

        private boolean jj_2_49​(int xla)
      • jj_2_50

        private boolean jj_2_50​(int xla)
      • jj_2_51

        private boolean jj_2_51​(int xla)
      • jj_2_52

        private boolean jj_2_52​(int xla)
      • jj_2_53

        private boolean jj_2_53​(int xla)
      • jj_2_54

        private boolean jj_2_54​(int xla)
      • jj_2_55

        private boolean jj_2_55​(int xla)
      • jj_2_56

        private boolean jj_2_56​(int xla)
      • jj_2_57

        private boolean jj_2_57​(int xla)
      • jj_2_58

        private boolean jj_2_58​(int xla)
      • jj_2_59

        private boolean jj_2_59​(int xla)
      • jj_2_60

        private boolean jj_2_60​(int xla)
      • jj_2_61

        private boolean jj_2_61​(int xla)
      • jj_2_62

        private boolean jj_2_62​(int xla)
      • jj_2_63

        private boolean jj_2_63​(int xla)
      • jj_2_64

        private boolean jj_2_64​(int xla)
      • jj_2_65

        private boolean jj_2_65​(int xla)
      • jj_2_66

        private boolean jj_2_66​(int xla)
      • jj_2_67

        private boolean jj_2_67​(int xla)
      • jj_2_68

        private boolean jj_2_68​(int xla)
      • jj_2_69

        private boolean jj_2_69​(int xla)
      • jj_3R_339

        private boolean jj_3R_339()
      • jj_3_46

        private boolean jj_3_46()
      • jj_3R_230

        private boolean jj_3R_230()
      • jj_3R_109

        private boolean jj_3R_109()
      • jj_3R_304

        private boolean jj_3R_304()
      • jj_3R_406

        private boolean jj_3R_406()
      • jj_3R_277

        private boolean jj_3R_277()
      • jj_3R_459

        private boolean jj_3R_459()
      • jj_3R_443

        private boolean jj_3R_443()
      • jj_3R_163

        private boolean jj_3R_163()
      • jj_3R_405

        private boolean jj_3R_405()
      • jj_3_64

        private boolean jj_3_64()
      • jj_3R_431

        private boolean jj_3R_431()
      • jj_3R_245

        private boolean jj_3R_245()
      • jj_3R_191

        private boolean jj_3R_191()
      • jj_3_4

        private boolean jj_3_4()
      • jj_3_45

        private boolean jj_3_45()
      • jj_3R_212

        private boolean jj_3R_212()
      • jj_3R_190

        private boolean jj_3R_190()
      • jj_3R_404

        private boolean jj_3R_404()
      • jj_3R_430

        private boolean jj_3R_430()
      • jj_3R_189

        private boolean jj_3R_189()
      • jj_3_44

        private boolean jj_3_44()
      • jj_3R_244

        private boolean jj_3R_244()
      • jj_3R_243

        private boolean jj_3R_243()
      • jj_3R_429

        private boolean jj_3R_429()
      • jj_3R_396

        private boolean jj_3R_396()
      • jj_3R_127

        private boolean jj_3R_127()
      • jj_3R_162

        private boolean jj_3R_162()
      • jj_3R_211

        private boolean jj_3R_211()
      • jj_3R_395

        private boolean jj_3R_395()
      • jj_3R_379

        private boolean jj_3R_379()
      • jj_3R_161

        private boolean jj_3R_161()
      • jj_3R_160

        private boolean jj_3R_160()
      • jj_3R_159

        private boolean jj_3R_159()
      • jj_3R_403

        private boolean jj_3R_403()
      • jj_3R_394

        private boolean jj_3R_394()
      • jj_3R_158

        private boolean jj_3R_158()
      • jj_3R_157

        private boolean jj_3R_157()
      • jj_3_43

        private boolean jj_3_43()
      • jj_3R_156

        private boolean jj_3R_156()
      • jj_3R_210

        private boolean jj_3R_210()
      • jj_3R_155

        private boolean jj_3R_155()
      • jj_3R_154

        private boolean jj_3R_154()
      • jj_3R_209

        private boolean jj_3R_209()
      • jj_3R_153

        private boolean jj_3R_153()
      • jj_3R_241

        private boolean jj_3R_241()
      • jj_3R_152

        private boolean jj_3R_152()
      • jj_3_42

        private boolean jj_3_42()
      • jj_3R_393

        private boolean jj_3R_393()
      • jj_3R_151

        private boolean jj_3R_151()
      • jj_3R_338

        private boolean jj_3R_338()
      • jj_3R_240

        private boolean jj_3R_240()
      • jj_3R_376

        private boolean jj_3R_376()
      • jj_3R_99

        private boolean jj_3R_99()
      • jj_3R_303

        private boolean jj_3R_303()
      • jj_3R_239

        private boolean jj_3R_239()
      • jj_3R_238

        private boolean jj_3R_238()
      • jj_3R_373

        private boolean jj_3R_373()
      • jj_3R_208

        private boolean jj_3R_208()
      • jj_3R_302

        private boolean jj_3R_302()
      • jj_3R_301

        private boolean jj_3R_301()
      • jj_3R_237

        private boolean jj_3R_237()
      • jj_3R_354

        private boolean jj_3R_354()
      • jj_3R_448

        private boolean jj_3R_448()
      • jj_3R_353

        private boolean jj_3R_353()
      • jj_3R_279

        private boolean jj_3R_279()
      • jj_3R_332

        private boolean jj_3R_332()
      • jj_3R_300

        private boolean jj_3R_300()
      • jj_3R_299

        private boolean jj_3R_299()
      • jj_3R_278

        private boolean jj_3R_278()
      • jj_3R_236

        private boolean jj_3R_236()
      • jj_3_19

        private boolean jj_3_19()
      • jj_3R_374

        private boolean jj_3R_374()
      • jj_3_32

        private boolean jj_3_32()
      • jj_3R_351

        private boolean jj_3R_351()
      • jj_3R_207

        private boolean jj_3R_207()
      • jj_3R_206

        private boolean jj_3R_206()
      • jj_3R_201

        private boolean jj_3R_201()
      • jj_3R_202

        private boolean jj_3R_202()
      • jj_3R_224

        private boolean jj_3R_224()
      • jj_3R_349

        private boolean jj_3R_349()
      • jj_3R_205

        private boolean jj_3R_205()
      • jj_3R_200

        private boolean jj_3R_200()
      • jj_3R_100

        private boolean jj_3R_100()
      • jj_3R_142

        private boolean jj_3R_142()
      • jj_3R_328

        private boolean jj_3R_328()
      • jj_3R_138

        private boolean jj_3R_138()
      • jj_3R_86

        private boolean jj_3R_86()
      • jj_3_41

        private boolean jj_3_41()
      • jj_3_63

        private boolean jj_3_63()
      • jj_3R_447

        private boolean jj_3R_447()
      • jj_3R_126

        private boolean jj_3R_126()
      • jj_3R_331

        private boolean jj_3R_331()
      • jj_3R_266

        private boolean jj_3R_266()
      • jj_3_62

        private boolean jj_3_62()
      • jj_3R_143

        private boolean jj_3R_143()
      • jj_3R_265

        private boolean jj_3R_265()
      • jj_3R_322

        private boolean jj_3R_322()
      • jj_3R_92

        private boolean jj_3R_92()
      • jj_3R_264

        private boolean jj_3R_264()
      • jj_3R_128

        private boolean jj_3R_128()
      • jj_3R_78

        private boolean jj_3R_78()
      • jj_3_40

        private boolean jj_3_40()
      • jj_3R_450

        private boolean jj_3R_450()
      • jj_3R_229

        private boolean jj_3R_229()
      • jj_3R_426

        private boolean jj_3R_426()
      • jj_3R_114

        private boolean jj_3R_114()
      • jj_3R_286

        private boolean jj_3R_286()
      • jj_3R_311

        private boolean jj_3R_311()
      • jj_3R_214

        private boolean jj_3R_214()
      • jj_3R_164

        private boolean jj_3R_164()
      • jj_3R_438

        private boolean jj_3R_438()
      • jj_3R_446

        private boolean jj_3R_446()
      • jj_3R_218

        private boolean jj_3R_218()
      • jj_3R_437

        private boolean jj_3R_437()
      • jj_3R_84

        private boolean jj_3R_84()
      • jj_3R_436

        private boolean jj_3R_436()
      • jj_3R_167

        private boolean jj_3R_167()
      • jj_3_61

        private boolean jj_3_61()
      • jj_3R_390

        private boolean jj_3R_390()
      • jj_3R_398

        private boolean jj_3R_398()
      • jj_3R_389

        private boolean jj_3R_389()
      • jj_3R_383

        private boolean jj_3R_383()
      • jj_3R_388

        private boolean jj_3R_388()
      • jj_3R_371

        private boolean jj_3R_371()
      • jj_3_39

        private boolean jj_3_39()
      • jj_3_31

        private boolean jj_3_31()
      • jj_3R_149

        private boolean jj_3R_149()
      • jj_3R_344

        private boolean jj_3R_344()
      • jj_3R_343

        private boolean jj_3R_343()
      • jj_3R_105

        private boolean jj_3R_105()
      • jj_3R_97

        private boolean jj_3R_97()
      • jj_3R_91

        private boolean jj_3R_91()
      • jj_3_55

        private boolean jj_3_55()
      • jj_3R_285

        private boolean jj_3R_285()
      • jj_3R_284

        private boolean jj_3R_284()
      • jj_3R_283

        private boolean jj_3R_283()
      • jj_3R_310

        private boolean jj_3R_310()
      • jj_3R_248

        private boolean jj_3R_248()
      • jj_3R_247

        private boolean jj_3R_247()
      • jj_3R_165

        private boolean jj_3R_165()
      • jj_3R_213

        private boolean jj_3R_213()
      • jj_3R_182

        private boolean jj_3R_182()
      • jj_3R_181

        private boolean jj_3R_181()
      • jj_3R_378

        private boolean jj_3R_378()
      • jj_3R_107

        private boolean jj_3R_107()
      • jj_3R_166

        private boolean jj_3R_166()
      • jj_3R_113

        private boolean jj_3R_113()
      • jj_3R_103

        private boolean jj_3R_103()
      • jj_3R_377

        private boolean jj_3R_377()
      • jj_3_18

        private boolean jj_3_18()
      • jj_3R_106

        private boolean jj_3R_106()
      • jj_3R_363

        private boolean jj_3R_363()
      • jj_3R_352

        private boolean jj_3R_352()
      • jj_3_38

        private boolean jj_3_38()
      • jj_3R_104

        private boolean jj_3R_104()
      • jj_3R_203

        private boolean jj_3R_203()
      • jj_3R_327

        private boolean jj_3R_327()
      • jj_3R_175

        private boolean jj_3R_175()
      • jj_3R_174

        private boolean jj_3R_174()
      • jj_3R_173

        private boolean jj_3R_173()
      • jj_3R_187

        private boolean jj_3R_187()
      • jj_3R_121

        private boolean jj_3R_121()
      • jj_3R_172

        private boolean jj_3R_172()
      • jj_3_60

        private boolean jj_3_60()
      • jj_3R_171

        private boolean jj_3R_171()
      • jj_3R_309

        private boolean jj_3R_309()
      • jj_3R_170

        private boolean jj_3R_170()
      • jj_3_37

        private boolean jj_3_37()
      • jj_3R_169

        private boolean jj_3R_169()
      • jj_3R_186

        private boolean jj_3R_186()
      • jj_3R_168

        private boolean jj_3R_168()
      • jj_3R_273

        private boolean jj_3R_273()
      • jj_3R_124

        private boolean jj_3R_124()
      • jj_3R_272

        private boolean jj_3R_272()
      • jj_3R_75

        private boolean jj_3R_75()
      • jj_3R_108

        private boolean jj_3R_108()
      • jj_3R_140

        private boolean jj_3R_140()
      • jj_3R_326

        private boolean jj_3R_326()
      • jj_3R_271

        private boolean jj_3R_271()
      • jj_3R_74

        private boolean jj_3R_74()
      • jj_3R_139

        private boolean jj_3R_139()
      • jj_3R_325

        private boolean jj_3R_325()
      • jj_3R_73

        private boolean jj_3R_73()
      • jj_3R_72

        private boolean jj_3R_72()
      • jj_3R_184

        private boolean jj_3R_184()
      • jj_3R_89

        private boolean jj_3R_89()
      • jj_3R_71

        private boolean jj_3R_71()
      • jj_3R_270

        private boolean jj_3R_270()
      • jj_3R_70

        private boolean jj_3R_70()
      • jj_3R_69

        private boolean jj_3R_69()
      • jj_3R_219

        private boolean jj_3R_219()
      • jj_3R_68

        private boolean jj_3R_68()
      • jj_3R_122

        private boolean jj_3R_122()
      • jj_3R_67

        private boolean jj_3R_67()
      • jj_3_54

        private boolean jj_3_54()
      • jj_3R_66

        private boolean jj_3R_66()
      • jj_3R_65

        private boolean jj_3R_65()
      • jj_3_53

        private boolean jj_3_53()
      • jj_3R_64

        private boolean jj_3R_64()
      • jj_3R_147

        private boolean jj_3R_147()
      • jj_3R_63

        private boolean jj_3R_63()
      • jj_3R_387

        private boolean jj_3R_387()
      • jj_3R_62

        private boolean jj_3R_62()
      • jj_3_52

        private boolean jj_3_52()
      • jj_3R_180

        private boolean jj_3R_180()
      • jj_3R_146

        private boolean jj_3R_146()
      • jj_3R_386

        private boolean jj_3R_386()
      • jj_3R_370

        private boolean jj_3R_370()
      • jj_3_59

        private boolean jj_3_59()
      • jj_3R_401

        private boolean jj_3R_401()
      • jj_3_3

        private boolean jj_3_3()
      • jj_3R_145

        private boolean jj_3R_145()
      • jj_3R_112

        private boolean jj_3R_112()
      • jj_3R_323

        private boolean jj_3R_323()
      • jj_3R_280

        private boolean jj_3R_280()
      • jj_3R_120

        private boolean jj_3R_120()
      • jj_3R_144

        private boolean jj_3R_144()
      • jj_3R_94

        private boolean jj_3R_94()
      • jj_3R_268

        private boolean jj_3R_268()
      • jj_3R_123

        private boolean jj_3R_123()
      • jj_3R_267

        private boolean jj_3R_267()
      • jj_3R_216

        private boolean jj_3R_216()
      • jj_3_58

        private boolean jj_3_58()
      • jj_3R_372

        private boolean jj_3R_372()
      • jj_3R_188

        private boolean jj_3R_188()
      • jj_3R_228

        private boolean jj_3R_228()
      • jj_3R_282

        private boolean jj_3R_282()
      • jj_3R_281

        private boolean jj_3R_281()
      • jj_3R_125

        private boolean jj_3R_125()
      • jj_3R_227

        private boolean jj_3R_227()
      • jj_3R_226

        private boolean jj_3R_226()
      • jj_3R_246

        private boolean jj_3R_246()
      • jj_3R_225

        private boolean jj_3R_225()
      • jj_3R_150

        private boolean jj_3R_150()
      • jj_3R_185

        private boolean jj_3R_185()
      • jj_3R_98

        private boolean jj_3R_98()
      • jj_3R_88

        private boolean jj_3R_88()
      • jj_3R_435

        private boolean jj_3R_435()
      • jj_3R_465

        private boolean jj_3R_465()
      • jj_3R_453

        private boolean jj_3R_453()
      • jj_3R_135

        private boolean jj_3R_135()
      • jj_3R_382

        private boolean jj_3R_382()
      • jj_3R_85

        private boolean jj_3R_85()
      • jj_3_30

        private boolean jj_3_30()
      • jj_3R_456

        private boolean jj_3R_456()
      • jj_3_29

        private boolean jj_3_29()
      • jj_3R_469

        private boolean jj_3R_469()
      • jj_3R_455

        private boolean jj_3R_455()
      • jj_3R_454

        private boolean jj_3R_454()
      • jj_3_16

        private boolean jj_3_16()
      • jj_3R_87

        private boolean jj_3R_87()
      • jj_3R_61

        private boolean jj_3R_61()
      • jj_3_15

        private boolean jj_3_15()
      • jj_3_28

        private boolean jj_3_28()
      • jj_3R_440

        private boolean jj_3R_440()
      • jj_3R_464

        private boolean jj_3R_464()
      • jj_3_14

        private boolean jj_3_14()
      • jj_3R_148

        private boolean jj_3R_148()
      • jj_3R_361

        private boolean jj_3R_361()
      • jj_3R_118

        private boolean jj_3R_118()
      • jj_3_13

        private boolean jj_3_13()
      • jj_3R_419

        private boolean jj_3R_419()
      • jj_3R_360

        private boolean jj_3R_360()
      • jj_3R_452

        private boolean jj_3R_452()
      • jj_3_12

        private boolean jj_3_12()
      • jj_3R_359

        private boolean jj_3R_359()
      • jj_3R_358

        private boolean jj_3R_358()
      • jj_3R_348

        private boolean jj_3R_348()
      • jj_3R_357

        private boolean jj_3R_357()
      • jj_3R_321

        private boolean jj_3R_321()
      • jj_3R_333

        private boolean jj_3R_333()
      • jj_3R_356

        private boolean jj_3R_356()
      • jj_3R_355

        private boolean jj_3R_355()
      • jj_3R_442

        private boolean jj_3R_442()
      • jj_3R_364

        private boolean jj_3R_364()
      • jj_3R_441

        private boolean jj_3R_441()
      • jj_3R_329

        private boolean jj_3R_329()
      • jj_3R_308

        private boolean jj_3R_308()
      • jj_3_2

        private boolean jj_3_2()
      • jj_3R_428

        private boolean jj_3R_428()
      • jj_3_17

        private boolean jj_3_17()
      • jj_3R_417

        private boolean jj_3R_417()
      • jj_3R_276

        private boolean jj_3R_276()
      • jj_3_1

        private boolean jj_3_1()
      • jj_3R_263

        private boolean jj_3R_263()
      • jj_3R_262

        private boolean jj_3R_262()
      • jj_3R_261

        private boolean jj_3R_261()
      • jj_3R_260

        private boolean jj_3R_260()
      • jj_3R_259

        private boolean jj_3R_259()
      • jj_3R_258

        private boolean jj_3R_258()
      • jj_3R_257

        private boolean jj_3R_257()
      • jj_3R_133

        private boolean jj_3R_133()
      • jj_3R_256

        private boolean jj_3R_256()
      • jj_3R_255

        private boolean jj_3R_255()
      • jj_3R_254

        private boolean jj_3R_254()
      • jj_3_27

        private boolean jj_3_27()
      • jj_3_36

        private boolean jj_3_36()
      • jj_3R_253

        private boolean jj_3R_253()
      • jj_3R_252

        private boolean jj_3R_252()
      • jj_3_35

        private boolean jj_3_35()
      • jj_3R_251

        private boolean jj_3R_251()
      • jj_3R_250

        private boolean jj_3R_250()
      • jj_3R_102

        private boolean jj_3R_102()
      • jj_3_51

        private boolean jj_3_51()
      • jj_3R_249

        private boolean jj_3R_249()
      • jj_3_26

        private boolean jj_3_26()
      • jj_3_50

        private boolean jj_3_50()
      • jj_3_34

        private boolean jj_3_34()
      • jj_3R_289

        private boolean jj_3R_289()
      • jj_3R_96

        private boolean jj_3R_96()
      • jj_3R_413

        private boolean jj_3R_413()
      • jj_3R_288

        private boolean jj_3R_288()
      • jj_3R_233

        private boolean jj_3R_233()
      • jj_3R_215

        private boolean jj_3R_215()
      • jj_3R_320

        private boolean jj_3R_320()
      • jj_3R_232

        private boolean jj_3R_232()
      • jj_3_11

        private boolean jj_3_11()
      • jj_3R_194

        private boolean jj_3R_194()
      • jj_3_69

        private boolean jj_3_69()
      • jj_3R_488

        private boolean jj_3R_488()
      • jj_3R_425

        private boolean jj_3R_425()
      • jj_3R_424

        private boolean jj_3R_424()
      • jj_3R_490

        private boolean jj_3R_490()
      • jj_3R_423

        private boolean jj_3R_423()
      • jj_3R_81

        private boolean jj_3R_81()
      • jj_3R_487

        private boolean jj_3R_487()
      • jj_3R_422

        private boolean jj_3R_422()
      • jj_3R_319

        private boolean jj_3R_319()
      • jj_3R_418

        private boolean jj_3R_418()
      • jj_3R_486

        private boolean jj_3R_486()
      • jj_3R_483

        private boolean jj_3R_483()
      • jj_3R_410

        private boolean jj_3R_410()
      • jj_3R_347

        private boolean jj_3R_347()
      • jj_3R_95

        private boolean jj_3R_95()
      • jj_3_25

        private boolean jj_3_25()
      • jj_3R_318

        private boolean jj_3R_318()
      • jj_3_9

        private boolean jj_3_9()
      • jj_3R_79

        private boolean jj_3R_79()
      • jj_3_8

        private boolean jj_3_8()
      • jj_3R_117

        private boolean jj_3R_117()
      • jj_3R_369

        private boolean jj_3R_369()
      • jj_3R_132

        private boolean jj_3R_132()
      • jj_3R_77

        private boolean jj_3R_77()
      • jj_3_7

        private boolean jj_3_7()
      • jj_3R_131

        private boolean jj_3R_131()
      • jj_3_49

        private boolean jj_3_49()
      • jj_3R_481

        private boolean jj_3R_481()
      • jj_3R_480

        private boolean jj_3R_480()
      • jj_3R_340

        private boolean jj_3R_340()
      • jj_3_6

        private boolean jj_3_6()
      • jj_3R_80

        private boolean jj_3R_80()
      • jj_3R_479

        private boolean jj_3R_479()
      • jj_3R_346

        private boolean jj_3R_346()
      • jj_3_5

        private boolean jj_3_5()
      • jj_3_33

        private boolean jj_3_33()
      • jj_3R_317

        private boolean jj_3R_317()
      • jj_3R_478

        private boolean jj_3R_478()
      • jj_3R_421

        private boolean jj_3R_421()
      • jj_3R_477

        private boolean jj_3R_477()
      • jj_3R_476

        private boolean jj_3R_476()
      • jj_3R_420

        private boolean jj_3R_420()
      • jj_3R_475

        private boolean jj_3R_475()
      • jj_3R_414

        private boolean jj_3R_414()
      • jj_3R_467

        private boolean jj_3R_467()
      • jj_3R_134

        private boolean jj_3R_134()
      • jj_3R_82

        private boolean jj_3R_82()
      • jj_3R_119

        private boolean jj_3R_119()
      • jj_3R_402

        private boolean jj_3R_402()
      • jj_3_10

        private boolean jj_3_10()
      • jj_3_48

        private boolean jj_3_48()
      • jj_3R_461

        private boolean jj_3R_461()
      • jj_3R_342

        private boolean jj_3R_342()
      • jj_3R_341

        private boolean jj_3R_341()
      • jj_3R_345

        private boolean jj_3R_345()
      • jj_3R_316

        private boolean jj_3R_316()
      • jj_3_68

        private boolean jj_3_68()
      • jj_3R_307

        private boolean jj_3R_307()
      • jj_3_24

        private boolean jj_3_24()
      • jj_3R_195

        private boolean jj_3R_195()
      • jj_3R_306

        private boolean jj_3R_306()
      • jj_3R_101

        private boolean jj_3R_101()
      • jj_3R_305

        private boolean jj_3R_305()
      • jj_3R_242

        private boolean jj_3R_242()
      • jj_3R_468

        private boolean jj_3R_468()
      • jj_3R_416

        private boolean jj_3R_416()
      • jj_3R_415

        private boolean jj_3R_415()
      • jj_3R_449

        private boolean jj_3R_449()
      • jj_3R_439

        private boolean jj_3R_439()
      • jj_3R_411

        private boolean jj_3R_411()
      • jj_3R_427

        private boolean jj_3R_427()
      • jj_3_22

        private boolean jj_3_22()
      • jj_3R_392

        private boolean jj_3R_392()
      • jj_3R_484

        private boolean jj_3R_484()
      • jj_3R_199

        private boolean jj_3R_199()
      • jj_3R_93

        private boolean jj_3R_93()
      • jj_3R_198

        private boolean jj_3R_198()
      • jj_3R_412

        private boolean jj_3R_412()
      • jj_3_23

        private boolean jj_3_23()
      • jj_3R_489

        private boolean jj_3R_489()
      • jj_3R_137

        private boolean jj_3R_137()
      • jj_3R_183

        private boolean jj_3R_183()
      • jj_3R_223

        private boolean jj_3R_223()
      • jj_3R_196

        private boolean jj_3R_196()
      • jj_3R_136

        private boolean jj_3R_136()
      • jj_3R_116

        private boolean jj_3R_116()
      • jj_3R_83

        private boolean jj_3R_83()
      • jj_3_57

        private boolean jj_3_57()
      • jj_3R_335

        private boolean jj_3R_335()
      • jj_3R_407

        private boolean jj_3R_407()
      • jj_3R_409

        private boolean jj_3R_409()
      • jj_3R_290

        private boolean jj_3R_290()
      • jj_3R_408

        private boolean jj_3R_408()
      • jj_3R_375

        private boolean jj_3R_375()
      • jj_3R_400

        private boolean jj_3R_400()
      • jj_3R_485

        private boolean jj_3R_485()
      • jj_3R_482

        private boolean jj_3R_482()
      • jj_3R_234

        private boolean jj_3R_234()
      • jj_3_21

        private boolean jj_3_21()
      • jj_3R_197

        private boolean jj_3R_197()
      • jj_3R_334

        private boolean jj_3R_334()
      • jj_3R_434

        private boolean jj_3R_434()
      • jj_3R_445

        private boolean jj_3R_445()
      • jj_3R_399

        private boolean jj_3R_399()
      • jj_3R_287

        private boolean jj_3R_287()
      • jj_3R_433

        private boolean jj_3R_433()
      • jj_3R_350

        private boolean jj_3R_350()
      • jj_3R_463

        private boolean jj_3R_463()
      • jj_3R_462

        private boolean jj_3R_462()
      • jj_3_56

        private boolean jj_3_56()
      • jj_3_67

        private boolean jj_3_67()
      • jj_3R_397

        private boolean jj_3R_397()
      • jj_3R_385

        private boolean jj_3R_385()
      • jj_3R_381

        private boolean jj_3R_381()
      • jj_3R_366

        private boolean jj_3R_366()
      • jj_3R_337

        private boolean jj_3R_337()
      • jj_3R_474

        private boolean jj_3R_474()
      • jj_3_66

        private boolean jj_3_66()
      • jj_3R_473

        private boolean jj_3R_473()
      • jj_3R_365

        private boolean jj_3R_365()
      • jj_3R_472

        private boolean jj_3R_472()
      • jj_3R_471

        private boolean jj_3R_471()
      • jj_3R_470

        private boolean jj_3R_470()
      • jj_3R_368

        private boolean jj_3R_368()
      • jj_3R_367

        private boolean jj_3R_367()
      • jj_3R_315

        private boolean jj_3R_315()
      • jj_3R_466

        private boolean jj_3R_466()
      • jj_3R_336

        private boolean jj_3R_336()
      • jj_3R_384

        private boolean jj_3R_384()
      • jj_3R_231

        private boolean jj_3R_231()
      • jj_3R_192

        private boolean jj_3R_192()
      • jj_3R_324

        private boolean jj_3R_324()
      • jj_3_20

        private boolean jj_3_20()
      • jj_3R_298

        private boolean jj_3R_298()
      • jj_3R_297

        private boolean jj_3R_297()
      • jj_3R_296

        private boolean jj_3R_296()
      • jj_3R_295

        private boolean jj_3R_295()
      • jj_3R_204

        private boolean jj_3R_204()
      • jj_3R_294

        private boolean jj_3R_294()
      • jj_3R_141

        private boolean jj_3R_141()
      • jj_3R_293

        private boolean jj_3R_293()
      • jj_3R_292

        private boolean jj_3R_292()
      • jj_3R_314

        private boolean jj_3R_314()
      • jj_3R_291

        private boolean jj_3R_291()
      • jj_3R_235

        private boolean jj_3R_235()
      • jj_3R_460

        private boolean jj_3R_460()
      • jj_3R_444

        private boolean jj_3R_444()
      • jj_3R_193

        private boolean jj_3R_193()
      • jj_3R_362

        private boolean jj_3R_362()
      • jj_3R_432

        private boolean jj_3R_432()
      • jj_3R_130

        private boolean jj_3R_130()
      • jj_3R_269

        private boolean jj_3R_269()
      • jj_3R_90

        private boolean jj_3R_90()
      • jj_3R_313

        private boolean jj_3R_313()
      • jj_3R_115

        private boolean jj_3R_115()
      • jj_3_47

        private boolean jj_3_47()
      • jj_3R_178

        private boolean jj_3R_178()
      • jj_3R_275

        private boolean jj_3R_275()
      • jj_3R_274

        private boolean jj_3R_274()
      • jj_3R_222

        private boolean jj_3R_222()
      • jj_3R_380

        private boolean jj_3R_380()
      • jj_3R_221

        private boolean jj_3R_221()
      • jj_3R_179

        private boolean jj_3R_179()
      • jj_3R_451

        private boolean jj_3R_451()
      • jj_3R_220

        private boolean jj_3R_220()
      • jj_3R_330

        private boolean jj_3R_330()
      • jj_3R_111

        private boolean jj_3R_111()
      • jj_3R_177

        private boolean jj_3R_177()
      • jj_3R_458

        private boolean jj_3R_458()
      • jj_3R_457

        private boolean jj_3R_457()
      • jj_3R_312

        private boolean jj_3R_312()
      • jj_3R_217

        private boolean jj_3R_217()
      • jj_3R_110

        private boolean jj_3R_110()
      • jj_3R_129

        private boolean jj_3R_129()
      • jj_3R_76

        private boolean jj_3R_76()
      • jj_3_65

        private boolean jj_3_65()
      • jj_3R_391

        private boolean jj_3R_391()
      • jj_3R_176

        private boolean jj_3R_176()
      • jj_la1_init_0

        private static void jj_la1_init_0()
      • jj_la1_init_1

        private static void jj_la1_init_1()
      • jj_la1_init_2

        private static void jj_la1_init_2()
      • jj_la1_init_3

        private static void jj_la1_init_3()
      • jj_la1_init_4

        private static void jj_la1_init_4()
      • ReInit

        public void ReInit​(java.lang.String s)
      • jj_scan_token

        private boolean jj_scan_token​(int kind)
      • jj_ntk_f

        private int jj_ntk_f()
      • jj_add_error_token

        private void jj_add_error_token​(int kind,
                                        int pos)
      • generateParseException

        public ParseException generateParseException()
        Generate ParseException.
      • trace_enabled

        public final boolean trace_enabled()
        Trace enabled.
      • enable_tracing

        public final void enable_tracing()
        Enable tracing.
      • disable_tracing

        public final void disable_tracing()
        Disable tracing.
      • jj_rescan_token

        private void jj_rescan_token()
      • jj_save

        private void jj_save​(int index,
                             int xla)