Class StandardParser

    • Field Detail

      • debugParser

        private static boolean debugParser
        Parser debugging flag. When debug is active, javacc Parser will contain (among other things) a trace_call() method. So we use the presence of this method to initialize our flag.
      • macroNames

        private java.util.Map macroNames
        Keep track of defined macros, used for escape processing
      • currentTemplate

        public Template currentTemplate
        Current template we are parsing. Passed to us in parse()
      • strictEscape

        public boolean strictEscape
        Set to true if the property RuntimeConstants.RUNTIME_REFERENCES_STRICT_ESCAPE is set to true
      • hyphenAllowedInIdentifiers

        public boolean hyphenAllowedInIdentifiers
        Set to true if the propoerty RuntimeConstants.PARSER_HYPHEN_ALLOWED is set to true
      • log

        private org.slf4j.Logger log
      • dollar

        private char dollar
      • hash

        private char hash
      • at

        private char at
      • asterisk

        private char asterisk
      • 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_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_enabled

        private boolean trace_enabled
    • Constructor Detail

      • StandardParser

        public StandardParser​(RuntimeServices rs)
        This constructor was added to allow the re-use of parsers. The normal constructor takes a single argument which an InputStream. This simply creates a re-usable parser object, we satisfy the requirement of an InputStream by using a newline character as an input stream.
      • StandardParser

        public StandardParser​(CharStream stream)
        Constructor with user supplied CharStream.
    • Method Detail

      • trace

        public static void trace​(java.lang.String message)
        Our own trace method. Use sparsingly in production, since each and every call will introduce an execution branch and slow down parsing.
      • parse

        public SimpleNode parse​(java.io.Reader reader,
                                Template t)
                         throws ParseException
        This was also added to allow parsers to be re-usable. Normal JavaCC use entails passing an input stream to the constructor and the parsing process is carried out once. We want to be able to re-use parsers: we do this by adding this method and re-initializing the lexer with the new stream that we want parsed.
        Specified by:
        parse in interface Parser
        Throws:
        ParseException
      • getDirective

        public Directive getDirective​(java.lang.String directive)
        This method gets a Directive from the directives Hashtable
        Specified by:
        getDirective in interface Parser
      • isDirective

        public boolean isDirective​(java.lang.String directive)
        This method finds out of the directive exists in the directives Map.
        Specified by:
        isDirective in interface Parser
      • escapedDirective

        private java.lang.String escapedDirective​(java.lang.String strImage)
        Produces a processed output for an escaped control or pluggable directive
      • isLeftParenthesis

        private boolean isLeftParenthesis()
        Check whether there is a left parenthesis with leading optional whitespaces. This method is used in the semantic look ahead of Directive method. This is done in code instead of as a production for simplicity and efficiency.
      • isRightParenthesis

        private boolean isRightParenthesis()
        Check whether there is a right parenthesis with leading optional whitespaces. This method is used in the semantic look ahead of Directive method. This is done in code instead of as a production for simplicity and efficiency.
      • isAssignment

        private boolean isAssignment()
        We use this method in a lookahead to determine if we are in a macro default value assignment. The standard lookahead is not smart enough. here we look for the equals after the reference.
      • dollar

        public char dollar()
        Specified by:
        dollar in interface Parser
      • hash

        public char hash()
        Specified by:
        hash in interface Parser
      • at

        public char at()
        Specified by:
        at in interface Parser
      • asterisk

        public char asterisk()
        Specified by:
        asterisk in interface Parser
      • process

        public final SimpleNode process()
                                 throws ParseException
        This method is what starts the whole parsing process. After the parsing is complete and the template has been turned into an AST, this method returns the root of AST which can subsequently be traversed by a visitor which implements the StandardParserVisitor interface which is generated automatically by JavaCC
        Throws:
        ParseException
      • Statement

        public final boolean Statement​(boolean afterNewline)
                                throws ParseException
        These are the types of statements that are acceptable in Velocity templates.
        Throws:
        ParseException
      • EscapedDirective

        public final void EscapedDirective()
                                    throws ParseException
        used to separate the notion of a valid directive that has been escaped, versus something that looks like a directive and is just schmoo. This is important to do as a separate production that creates a node, because we want this, in either case, to stop the further parsing of the Directive() tree.
        Throws:
        ParseException
      • Escape

        public final void Escape()
                          throws ParseException
        Used to catch and process escape sequences in grammatical constructs as escapes outside of VTL are just characters. Right now we have both this and the EscapeDirective() construction because in the EscapeDirective() case, we want to suck in the #<directive> and here we don't. We just want the escapes to render correctly
        Throws:
        ParseException
      • Identifier

        public final void Identifier()
                              throws ParseException
        This method corresponds to variable references in Velocity templates. The following are examples of variable references that may be found in a template: $foo $bar
        Throws:
        ParseException
      • DirectiveArg

        public final int DirectiveArg()
                               throws ParseException
        Supports the arguments for the Pluggable Directives
        Throws:
        ParseException
      • Directive

        public final boolean Directive​(boolean afterNewline)
                                throws ParseException
        Supports the Pluggable Directives #foo( arg+ )
        Returns:
        true if ends with a newline
        Throws:
        ParseException
      • Map

        public final void Map()
                       throws ParseException
        for creating a map in a #set #set($foo = {$foo : $bar, $blargh : $thingy})
        Throws:
        ParseException
      • IntegerRange

        public final void IntegerRange()
                                throws ParseException
        supports the [n..m] vector generator for use in the #foreach() to generate measured ranges w/o needing explicit support from the app/servlet
        Throws:
        ParseException
      • IndexParameter

        public final void IndexParameter()
                                  throws ParseException
        A Simplified parameter more suitable for an index position: $foo[$index]
        Throws:
        ParseException
      • Parameter

        public final void Parameter()
                             throws ParseException
        This method has yet to be fully implemented but will allow arbitrarily nested method calls
        Throws:
        ParseException
      • Method

        public final void Method()
                          throws ParseException
        This method has yet to be fully implemented but will allow arbitrarily nested method calls
        Throws:
        ParseException
      • Text

        public final boolean Text()
                           throws ParseException
        This method is responsible for allowing all non-grammar text to pass through unscathed.
        Returns:
        true if last read token was a newline
        Throws:
        ParseException
      • SetDirective

        public final boolean SetDirective​(boolean afterNewline)
                                   throws ParseException
        Currently support both types of set : #set( expr ) #set expr
        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_3_19

        private boolean jj_3_19()
      • jj_3R_Directive_1891_13_55

        private boolean jj_3R_Directive_1891_13_55()
      • jj_3R_Directive_1885_15_54

        private boolean jj_3R_Directive_1885_15_54()
      • jj_3_6

        private boolean jj_3_6()
      • jj_3_18

        private boolean jj_3_18()
      • jj_3R_Reference_2178_71_126

        private boolean jj_3R_Reference_2178_71_126()
      • jj_3R_null_2137_107_62

        private boolean jj_3R_null_2137_107_62()
      • jj_3R_Reference_2172_71_125

        private boolean jj_3R_Reference_2172_71_125()
      • jj_3R_Reference_2178_55_65

        private boolean jj_3R_Reference_2178_55_65()
      • jj_3R_null_2513_103_69

        private boolean jj_3R_null_2513_103_69()
      • jj_3R_Reference_2172_55_63

        private boolean jj_3R_Reference_2172_55_63()
      • jj_3R_Reference_2177_47_111

        private boolean jj_3R_Reference_2177_47_111()
      • jj_3R_null_1742_95_53

        private boolean jj_3R_null_1742_95_53()
      • jj_3R_null_2137_83_61

        private boolean jj_3R_null_2137_83_61()
      • jj_3R_Reference_2171_45_100

        private boolean jj_3R_Reference_2171_45_100()
      • jj_3_17

        private boolean jj_3_17()
      • jj_3R_null_2513_79_68

        private boolean jj_3R_null_2513_79_68()
      • jj_3R_null_2137_69_60

        private boolean jj_3R_null_2137_69_60()
      • jj_3_15

        private boolean jj_3_15()
      • jj_3R_Method_2155_43_137

        private boolean jj_3R_Method_2155_43_137()
      • jj_3R_null_1742_72_52

        private boolean jj_3R_null_1742_72_52()
      • jj_3R_False_2191_5_108

        private boolean jj_3R_False_2191_5_108()
      • jj_3R_null_2513_65_67

        private boolean jj_3R_null_2513_65_67()
      • jj_3R_True_2186_5_107

        private boolean jj_3R_True_2186_5_107()
      • jj_3R_Reference_2179_12_112

        private boolean jj_3R_Reference_2179_12_112()
      • jj_3_16

        private boolean jj_3_16()
      • jj_3R_Map_2083_103_127

        private boolean jj_3R_Map_2083_103_127()
      • jj_3R_null_1742_58_51

        private boolean jj_3R_null_1742_58_51()
      • jj_3_14

        private boolean jj_3_14()
      • jj_3R_Method_2155_28_99

        private boolean jj_3R_Method_2155_28_99()
      • jj_3R_Reference_2175_7_71

        private boolean jj_3R_Reference_2175_7_71()
      • jj_3R_Reference_2170_7_70

        private boolean jj_3R_Reference_2170_7_70()
      • jj_3R_null_2137_36_59

        private boolean jj_3R_null_2137_36_59()
      • jj_3R_Reference_2166_7_47

        private boolean jj_3R_Reference_2166_7_47()
      • jj_3R_Index_2161_4_110

        private boolean jj_3R_Index_2161_4_110()
      • jj_3R_null_2513_32_66

        private boolean jj_3R_null_2513_32_66()
      • jj_3_13

        private boolean jj_3_13()
      • jj_3R_Method_2155_4_64

        private boolean jj_3R_Method_2155_4_64()
      • jj_3R_DirectiveAssign_1770_5_76

        private boolean jj_3R_DirectiveAssign_1770_5_76()
      • jj_3R_null_1742_29_50

        private boolean jj_3R_null_1742_29_50()
      • jj_3R_Parameter_2143_11_96

        private boolean jj_3R_Parameter_2143_11_96()
      • jj_3R_Parameter_2142_11_95

        private boolean jj_3R_Parameter_2142_11_95()
      • jj_3R_Parameter_2141_11_94

        private boolean jj_3R_Parameter_2141_11_94()
      • jj_3R_Parameter_2140_11_93

        private boolean jj_3R_Parameter_2140_11_93()
      • jj_3R_Parameter_2145_6_97

        private boolean jj_3R_Parameter_2145_6_97()
      • jj_3R_IntegerRange_2107_44_117

        private boolean jj_3R_IntegerRange_2107_44_117()
      • jj_3R_DirectiveArg_1762_5_86

        private boolean jj_3R_DirectiveArg_1762_5_86()
      • jj_3R_Parameter_2139_11_92

        private boolean jj_3R_Parameter_2139_11_92()
      • jj_3R_Parameter_2138_11_91

        private boolean jj_3R_Parameter_2138_11_91()
      • jj_3_24

        private boolean jj_3_24()
      • jj_3R_Parameter_2137_11_90

        private boolean jj_3R_Parameter_2137_11_90()
      • jj_3R_Parameter_2136_11_89

        private boolean jj_3R_Parameter_2136_11_89()
      • jj_3R_DirectiveArg_1758_5_85

        private boolean jj_3R_DirectiveArg_1758_5_85()
      • jj_3R_PrimaryExpression_2521_7_173

        private boolean jj_3R_PrimaryExpression_2521_7_173()
      • jj_3R_Parameter_2135_9_88

        private boolean jj_3R_Parameter_2135_9_88()
      • jj_3R_PrimaryExpression_2519_7_172

        private boolean jj_3R_PrimaryExpression_2519_7_172()
      • jj_3R_PrimaryExpression_2518_7_171

        private boolean jj_3R_PrimaryExpression_2518_7_171()
      • jj_3R_DirectiveArg_1754_5_84

        private boolean jj_3R_DirectiveArg_1754_5_84()
      • jj_3_5

        private boolean jj_3_5()
      • jj_3R_PrimaryExpression_2517_7_170

        private boolean jj_3R_PrimaryExpression_2517_7_170()
      • jj_3R_PrimaryExpression_2516_7_169

        private boolean jj_3R_PrimaryExpression_2516_7_169()
      • jj_3R_PrimaryExpression_2515_7_168

        private boolean jj_3R_PrimaryExpression_2515_7_168()
      • jj_3R_Parameter_2133_6_87

        private boolean jj_3R_Parameter_2133_6_87()
      • jj_3R_PrimaryExpression_2514_7_167

        private boolean jj_3R_PrimaryExpression_2514_7_167()
      • jj_3R_DirectiveArg_1750_5_83

        private boolean jj_3R_DirectiveArg_1750_5_83()
      • jj_3R_Parameter_2133_5_58

        private boolean jj_3R_Parameter_2133_5_58()
      • jj_3R_PrimaryExpression_2513_7_166

        private boolean jj_3R_PrimaryExpression_2513_7_166()
      • jj_3R_PrimaryExpression_2512_7_165

        private boolean jj_3R_PrimaryExpression_2512_7_165()
      • jj_3R_PrimaryExpression_2511_7_164

        private boolean jj_3R_PrimaryExpression_2511_7_164()
      • jj_3R_DirectiveArg_1746_5_82

        private boolean jj_3R_DirectiveArg_1746_5_82()
      • jj_3R_PrimaryExpression_2510_6_163

        private boolean jj_3R_PrimaryExpression_2510_6_163()
      • jj_3R_PrimaryExpression_2508_7_162

        private boolean jj_3R_PrimaryExpression_2508_7_162()
      • jj_3R_PrimaryExpression_2508_5_158

        private boolean jj_3R_PrimaryExpression_2508_5_158()
      • jj_3R_UnaryExpression_2502_11_154

        private boolean jj_3R_UnaryExpression_2502_11_154()
      • jj_3R_DirectiveArg_1742_5_81

        private boolean jj_3R_DirectiveArg_1742_5_81()
      • jj_3R_UnaryExpression_2501_10_153

        private boolean jj_3R_UnaryExpression_2501_10_153()
      • jj_3R_UnaryExpression_2500_11_152

        private boolean jj_3R_UnaryExpression_2500_11_152()
      • jj_3R_IntegerRange_2108_20_119

        private boolean jj_3R_IntegerRange_2108_20_119()
      • jj_3R_IndexParameter_2122_6_134

        private boolean jj_3R_IndexParameter_2122_6_134()
      • jj_3R_IntegerRange_2106_21_115

        private boolean jj_3R_IntegerRange_2106_21_115()
      • jj_3R_ObjectArray_2094_32_129

        private boolean jj_3R_ObjectArray_2094_32_129()
      • jj_3R_IndexParameter_2118_6_133

        private boolean jj_3R_IndexParameter_2118_6_133()
      • jj_3R_DirectiveArg_1735_5_80

        private boolean jj_3R_DirectiveArg_1735_5_80()
      • jj_3R_IndexParameter_2118_5_131

        private boolean jj_3R_IndexParameter_2118_5_131()
      • jj_3R_MultiplicativeExpression_2492_13_161

        private boolean jj_3R_MultiplicativeExpression_2492_13_161()
      • jj_3R_IntegerRange_2105_17_113

        private boolean jj_3R_IntegerRange_2105_17_113()
      • jj_3R_UnaryExpression_2498_7_151

        private boolean jj_3R_UnaryExpression_2498_7_151()
      • jj_3R_MultiplicativeExpression_2491_13_160

        private boolean jj_3R_MultiplicativeExpression_2491_13_160()
      • jj_3R_MultiplicativeExpression_2490_13_159

        private boolean jj_3R_MultiplicativeExpression_2490_13_159()
      • jj_3R_MultiplicativeExpression_2490_13_155

        private boolean jj_3R_MultiplicativeExpression_2490_13_155()
      • jj_3R_UnaryExpression_2498_5_145

        private boolean jj_3R_UnaryExpression_2498_5_145()
      • jj_3R_DirectiveArg_1730_5_79

        private boolean jj_3R_DirectiveArg_1730_5_79()
      • jj_3R_IntegerRange_2109_6_120

        private boolean jj_3R_IntegerRange_2109_6_120()
      • jj_3R_DirectiveArg_1726_5_78

        private boolean jj_3R_DirectiveArg_1726_5_78()
      • jj_3R_IntegerRange_2108_6_118

        private boolean jj_3R_IntegerRange_2108_6_118()
      • jj_3R_IntegerRange_2106_7_114

        private boolean jj_3R_IntegerRange_2106_7_114()
      • jj_3R_IntegerRange_2107_6_116

        private boolean jj_3R_IntegerRange_2107_6_116()
      • jj_3R_ObjectArray_2094_18_123

        private boolean jj_3R_ObjectArray_2094_18_123()
      • jj_3R_DirectiveArg_1722_5_77

        private boolean jj_3R_DirectiveArg_1722_5_77()
      • jj_3R_DirectiveArg_1722_5_56

        private boolean jj_3R_DirectiveArg_1722_5_56()
      • jj_3R_IntegerRange_2105_5_103

        private boolean jj_3R_IntegerRange_2105_5_103()
      • jj_3R_MultiplicativeExpression_2488_5_141

        private boolean jj_3R_MultiplicativeExpression_2488_5_141()
      • jj_3R_AdditiveExpression_2482_9_157

        private boolean jj_3R_AdditiveExpression_2482_9_157()
      • jj_3R_AdditiveExpression_2481_9_156

        private boolean jj_3R_AdditiveExpression_2481_9_156()
      • jj_3R_AdditiveExpression_2481_9_146

        private boolean jj_3R_AdditiveExpression_2481_9_146()
      • jj_3R_Word_1714_5_101

        private boolean jj_3R_Word_1714_5_101()
      • jj_3R_null_2083_19_57

        private boolean jj_3R_null_2083_19_57()
      • jj_3R_AdditiveExpression_2479_5_139

        private boolean jj_3R_AdditiveExpression_2479_5_139()
      • jj_3_12

        private boolean jj_3_12()
      • jj_3R_ObjectArray_2094_5_106

        private boolean jj_3R_ObjectArray_2094_5_106()
      • jj_3R_RelationalExpression_2473_9_150

        private boolean jj_3R_RelationalExpression_2473_9_150()
      • jj_3R_RelationalExpression_2472_9_149

        private boolean jj_3R_RelationalExpression_2472_9_149()
      • jj_3R_Identifier_1709_5_98

        private boolean jj_3R_Identifier_1709_5_98()
      • jj_3R_RelationalExpression_2471_9_148

        private boolean jj_3R_RelationalExpression_2471_9_148()
      • jj_3R_RelationalExpression_2470_9_142

        private boolean jj_3R_RelationalExpression_2470_9_142()
      • jj_3R_RelationalExpression_2470_9_147

        private boolean jj_3R_RelationalExpression_2470_9_147()
      • jj_3R_Map_2085_9_128

        private boolean jj_3R_Map_2085_9_128()
      • jj_3R_Map_2085_7_122

        private boolean jj_3R_Map_2085_7_122()
      • jj_3R_Map_2083_7_121

        private boolean jj_3R_Map_2083_7_121()
      • jj_3R_RelationalExpression_2468_5_136

        private boolean jj_3R_RelationalExpression_2468_5_136()
      • jj_3R_EqualityExpression_2462_8_144

        private boolean jj_3R_EqualityExpression_2462_8_144()
      • jj_3R_Map_2081_5_105

        private boolean jj_3R_Map_2081_5_105()
      • jj_3R_EqualityExpression_2461_8_140

        private boolean jj_3R_EqualityExpression_2461_8_140()
      • jj_3R_EqualityExpression_2461_8_143

        private boolean jj_3R_EqualityExpression_2461_8_143()
      • jj_3R_StringLiteral_1693_5_102

        private boolean jj_3R_StringLiteral_1693_5_102()
      • jj_3R_EqualityExpression_2459_5_132

        private boolean jj_3R_EqualityExpression_2459_5_132()
      • jj_3R_IntegerLiteral_1688_6_75

        private boolean jj_3R_IntegerLiteral_1688_6_75()
      • jj_3R_ConditionalAndExpression_2454_5_138

        private boolean jj_3R_ConditionalAndExpression_2454_5_138()
      • jj_3R_ConditionalAndExpression_2453_3_130

        private boolean jj_3R_ConditionalAndExpression_2453_3_130()
      • jj_3R_FloatingPointLiteral_1683_5_104

        private boolean jj_3R_FloatingPointLiteral_1683_5_104()
      • jj_3R_ConditionalOrExpression_2447_6_135

        private boolean jj_3R_ConditionalOrExpression_2447_6_135()
      • jj_3R_ConditionalOrExpression_2446_3_124

        private boolean jj_3R_ConditionalOrExpression_2446_3_124()
      • jj_3R_Comment_1673_5_74

        private boolean jj_3R_Comment_1673_5_74()
      • jj_3R_Comment_1672_5_73

        private boolean jj_3R_Comment_1672_5_73()
      • jj_3R_Comment_1671_2_72

        private boolean jj_3R_Comment_1671_2_72()
      • jj_3R_Comment_1671_2_48

        private boolean jj_3R_Comment_1671_2_48()
      • jj_3R_Expression_2434_1_109

        private boolean jj_3R_Expression_2434_1_109()
      • jj_3_11

        private boolean jj_3_11()
      • jj_3_23

        private boolean jj_3_23()
      • jj_3_10

        private boolean jj_3_10()
      • jj_3_4

        private boolean jj_3_4()
      • jj_3_9

        private boolean jj_3_9()
      • jj_3_22

        private boolean jj_3_22()
      • jj_3_8

        private boolean jj_3_8()
      • jj_3R_EndingZeroWidthWhitespace_1591_5_49

        private boolean jj_3R_EndingZeroWidthWhitespace_1591_5_49()
      • jj_3_3

        private boolean jj_3_3()
      • jj_3_2

        private boolean jj_3_2()
      • jj_3_1

        private boolean jj_3_1()
      • jj_3_21

        private boolean jj_3_21()
      • jj_3_7

        private boolean jj_3_7()
      • jj_3_20

        private boolean jj_3_20()
      • 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_scan_token

        private boolean jj_scan_token​(int kind)
      • getNextToken

        public final Token getNextToken()
        Get the next Token.
      • getToken

        public final Token getToken​(int index)
        Get the specific Token.
        Specified by:
        getToken in interface Parser
      • 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)