Package org.antlr.v4.runtime
Class Recognizer<Symbol,ATNInterpreter extends ATNSimulator>
- java.lang.Object
-
- org.antlr.v4.runtime.Recognizer<Symbol,ATNInterpreter>
-
public abstract class Recognizer<Symbol,ATNInterpreter extends ATNSimulator> extends Object
-
-
Field Summary
Fields Modifier and Type Field Description protected ATNInterpreter
_interp
static int
EOF
-
Constructor Summary
Constructors Constructor Description Recognizer()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
action(RuleContext _localctx, int ruleIndex, int actionIndex)
void
addErrorListener(ANTLRErrorListener listener)
abstract ATN
getATN()
Get theATN
used by the recognizer for prediction.String
getErrorHeader(RecognitionException e)
What is the error header, normally line/character position information?ANTLRErrorListener
getErrorListenerDispatch()
List<? extends ANTLRErrorListener>
getErrorListeners()
abstract String
getGrammarFileName()
For debugging and other purposes, might want the grammar name.abstract IntStream
getInputStream()
ATNInterpreter
getInterpreter()
Get the ATN interpreter used by the recognizer for prediction.ParseInfo
getParseInfo()
If profiling during the parse/lex, this will return DecisionInfo records for each decision in recognizer in a ParseInfo object.Map<String,Integer>
getRuleIndexMap()
Get a map from rule names to rule indexes.abstract String[]
getRuleNames()
String
getSerializedATN()
If this recognizer was generated, it will have a serialized ATN representation of the grammar.int
getState()
String
getTokenErrorDisplay(Token t)
Deprecated.This method is not called by the ANTLR 4 Runtime.abstract TokenFactory<?>
getTokenFactory()
abstract String[]
getTokenNames()
Deprecated.UsegetVocabulary()
instead.int
getTokenType(String tokenName)
Map<String,Integer>
getTokenTypeMap()
Get a map from token names to token types.Vocabulary
getVocabulary()
Get the vocabulary used by the recognizer.boolean
precpred(RuleContext localctx, int precedence)
void
removeErrorListener(ANTLRErrorListener listener)
void
removeErrorListeners()
boolean
sempred(RuleContext _localctx, int ruleIndex, int actionIndex)
abstract void
setInputStream(IntStream input)
void
setInterpreter(ATNInterpreter interpreter)
Set the ATN interpreter used by the recognizer for prediction.void
setState(int atnState)
Indicate that the recognizer has changed internal state that is consistent with the ATN state passed in.abstract void
setTokenFactory(TokenFactory<?> input)
-
-
-
Field Detail
-
EOF
public static final int EOF
- See Also:
- Constant Field Values
-
_interp
protected ATNInterpreter extends ATNSimulator _interp
-
-
Method Detail
-
getTokenNames
@Deprecated public abstract String[] getTokenNames()
Deprecated.UsegetVocabulary()
instead.Used to print out token names like ID during debugging and error reporting. The generated parsers implement a method that overrides this to point to their String[] tokenNames.
-
getRuleNames
public abstract String[] getRuleNames()
-
getVocabulary
public Vocabulary getVocabulary()
Get the vocabulary used by the recognizer.- Returns:
- A
Vocabulary
instance providing information about the vocabulary used by the grammar.
-
getTokenTypeMap
public Map<String,Integer> getTokenTypeMap()
Get a map from token names to token types.Used for XPath and tree pattern compilation.
-
getRuleIndexMap
public Map<String,Integer> getRuleIndexMap()
Get a map from rule names to rule indexes.Used for XPath and tree pattern compilation.
-
getTokenType
public int getTokenType(String tokenName)
-
getSerializedATN
public String getSerializedATN()
If this recognizer was generated, it will have a serialized ATN representation of the grammar.For interpreters, we don't know their serialized ATN despite having created the interpreter from it.
-
getGrammarFileName
public abstract String getGrammarFileName()
For debugging and other purposes, might want the grammar name. Have ANTLR generate an implementation for this method.
-
getATN
public abstract ATN getATN()
Get theATN
used by the recognizer for prediction.- Returns:
- The
ATN
used by the recognizer for prediction.
-
getInterpreter
public ATNInterpreter getInterpreter()
Get the ATN interpreter used by the recognizer for prediction.- Returns:
- The ATN interpreter used by the recognizer for prediction.
-
getParseInfo
public ParseInfo getParseInfo()
If profiling during the parse/lex, this will return DecisionInfo records for each decision in recognizer in a ParseInfo object.- Since:
- 4.3
-
setInterpreter
public void setInterpreter(ATNInterpreter interpreter)
Set the ATN interpreter used by the recognizer for prediction.- Parameters:
interpreter
- The ATN interpreter used by the recognizer for prediction.
-
getErrorHeader
public String getErrorHeader(RecognitionException e)
What is the error header, normally line/character position information?
-
getTokenErrorDisplay
@Deprecated public String getTokenErrorDisplay(Token t)
Deprecated.This method is not called by the ANTLR 4 Runtime. Specific implementations ofANTLRErrorStrategy
may provide a similar feature when necessary. For example, seeDefaultErrorStrategy.getTokenErrorDisplay(org.antlr.v4.runtime.Token)
.How should a token be displayed in an error message? The default is to display just the text, but during development you might want to have a lot of information spit out. Override in that case to use t.toString() (which, for CommonToken, dumps everything about the token). This is better than forcing you to override a method in your token objects because you don't have to go modify your lexer so that it creates a new Java type.
-
addErrorListener
public void addErrorListener(ANTLRErrorListener listener)
- Throws:
NullPointerException
- iflistener
isnull
.
-
removeErrorListener
public void removeErrorListener(ANTLRErrorListener listener)
-
removeErrorListeners
public void removeErrorListeners()
-
getErrorListeners
public List<? extends ANTLRErrorListener> getErrorListeners()
-
getErrorListenerDispatch
public ANTLRErrorListener getErrorListenerDispatch()
-
sempred
public boolean sempred(RuleContext _localctx, int ruleIndex, int actionIndex)
-
precpred
public boolean precpred(RuleContext localctx, int precedence)
-
action
public void action(RuleContext _localctx, int ruleIndex, int actionIndex)
-
getState
public final int getState()
-
setState
public final void setState(int atnState)
Indicate that the recognizer has changed internal state that is consistent with the ATN state passed in. This way we always know where we are in the ATN as the parser goes along. The rule context objects form a stack that lets us see the stack of invoking rules. Combine this and we have complete ATN configuration information.
-
getInputStream
public abstract IntStream getInputStream()
-
setInputStream
public abstract void setInputStream(IntStream input)
-
getTokenFactory
public abstract TokenFactory<?> getTokenFactory()
-
setTokenFactory
public abstract void setTokenFactory(TokenFactory<?> input)
-
-