public class Parser
extends java.lang.Object
Constructor and Description |
---|
Parser()
Creates a new Parser.
|
Parser(ParseRule aRule)
Creates a new Parser for given rule.
|
Modifier and Type | Method and Description |
---|---|
protected ParseNode |
createNode(ParseRule aRule,
Token aStartToken,
Token anEndToken)
Creates a node for given rule and start/end tokens (returns a shared node by default).
|
protected ParseRule |
createRule()
Creates the top level rule.
|
protected Tokenizer |
createTokenizer()
Creates the tokenizer instance and initializes patters from rule.
|
protected Tokenizer |
createTokenizerImpl()
Creates the tokenizer instance.
|
java.lang.CharSequence |
getInput()
Returns the current parse character input.
|
protected Token |
getLookAheadToken(int anIndex)
Returns the look ahead token at given index.
|
protected Token |
getNextToken()
Fetches and returns the next token.
|
ParseRule |
getRule()
Returns the top level rule.
|
Token |
getToken()
Returns the current token.
|
Tokenizer |
getTokenizer()
Returns the tokenizer.
|
protected int |
lookAhead(ParseRule aRule,
int aLookAhead,
int aTokenIndex,
int aPathIndex,
int aRuleIndex)
Returns a parse node if this rule matches string.
|
ParseNode |
parse()
Parses input and returns ParseNode.
|
ParseNode |
parse(java.lang.CharSequence anInput)
Parses a given input and returns ParseNode (convenience).
|
protected ParseNode |
parse(ParseRule aRule,
ParseHandler aHandler)
Returns a parse node if this rule matches string.
|
<T> T |
parseCustom(java.lang.CharSequence anInput,
java.lang.Class<T> aClass)
Parses given input and returns custom parse tree node (convenience).
|
<T> T |
parseCustom(java.lang.Class<T> aClass)
Parses input and returns custom parse tree node.
|
protected void |
parseFailed(ParseRule aRule,
ParseHandler aHandler,
ParseRule.Count aCount)
Called when parse fails.
|
Parser |
setInput(java.lang.CharSequence aSequence)
Sets the current parse string.
|
void |
setRule(ParseRule aRule)
Sets the top level rule.
|
protected void |
setTokenizer(Tokenizer aTokenizer)
Sets the tokenizer.
|
public Parser()
public Parser(ParseRule aRule)
public ParseRule getRule()
public void setRule(ParseRule aRule)
protected ParseRule createRule()
public java.lang.CharSequence getInput()
public Parser setInput(java.lang.CharSequence aSequence)
public Tokenizer getTokenizer()
protected Tokenizer createTokenizer()
protected Tokenizer createTokenizerImpl()
protected void setTokenizer(Tokenizer aTokenizer)
public Token getToken()
@Nonnull protected Token getNextToken()
protected Token getLookAheadToken(int anIndex)
public ParseNode parse()
public <T> T parseCustom(java.lang.Class<T> aClass)
protected ParseNode parse(ParseRule aRule, ParseHandler aHandler)
protected ParseNode createNode(ParseRule aRule, Token aStartToken, Token anEndToken)
protected int lookAhead(ParseRule aRule, int aLookAhead, int aTokenIndex, int aPathIndex, int aRuleIndex)
protected void parseFailed(ParseRule aRule, ParseHandler aHandler, ParseRule.Count aCount)
public ParseNode parse(java.lang.CharSequence anInput)
public <T> T parseCustom(java.lang.CharSequence anInput, java.lang.Class<T> aClass)