public class WordRule extends Object implements IRule
IRule
capable of detecting words
Word rules also allow for the association of tokens with specific words.
That is, not only can the rule be used to provide tokens for exact matches,
but also for the generalized notion of a word in the context in which it is used.
A word rules uses a word detector to determine what a word is.IWordDetector
Modifier and Type | Field and Description |
---|---|
protected int |
fColumn
The column constraint
|
protected IToken |
fDefaultToken
The default token to be returned on success and if nothing else has been specified.
|
protected IWordDetector |
fDetector
The word detector used by this rule
|
protected Map |
fWords
The table of predefined words and token for this rule
|
protected static int |
UNDEFINED
Internal setting for the un-initialized column constraint
|
Constructor and Description |
---|
WordRule(IWordDetector detector)
Creates a rule which, with the help of an word detector, will return the token
associated with the detected word.
|
WordRule(IWordDetector detector,
IToken defaultToken)
Creates a rule which, with the help of a word detector, will return the token
associated with the detected word.
|
Modifier and Type | Method and Description |
---|---|
void |
addWord(String word,
IToken token)
Adds a word and the token to be returned if it is detected.
|
IToken |
evaluate(ICharacterScanner scanner)
Evaluates the rule by examining the characters available from
the provided character scanner.
|
void |
setColumnConstraint(int column)
Sets a column constraint for this rule.
|
protected void |
unreadBuffer(ICharacterScanner scanner)
Returns the characters in the buffer to the scanner.
|
protected static final int UNDEFINED
protected IWordDetector fDetector
protected IToken fDefaultToken
protected int fColumn
protected Map fWords
public WordRule(IWordDetector detector)
detector
- the word detector to be used by this rule, may not be null
addWord(String, IToken)
public WordRule(IWordDetector detector, IToken defaultToken)
detector
- the word detector to be used by this rule, may not be null
defaultToken
- the default token to be returned on success
if nothing else is specified, may not be null
addWord(String, IToken)
public void addWord(String word, IToken token)
word
- the word this rule will search for, may not be null
token
- the token to be returned if the word has been found, may not be null
public void setColumnConstraint(int column)
column
- the column in which the pattern startspublic IToken evaluate(ICharacterScanner scanner)
IRule
true
when calling isUndefined
,
if the text that the rule investigated does not match the rule's requirementsprotected void unreadBuffer(ICharacterScanner scanner)
scanner
- the scanner to be usedGuidelines for using Eclipse APIs. Copyright (c) IBM Corp. and others 2000, 2006. All rights reserved.