Package org.eclipse.jface.text.rules
Class WordRule
- java.lang.Object
-
- org.eclipse.jface.text.rules.WordRule
-
- All Implemented Interfaces:
IRule
public class WordRule extends Object implements IRule
An implementation ofIRule
capable of detecting words. A word rule also allows to associate a token to a word. 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 rule uses a word detector to determine what a word is.- See Also:
IWordDetector
-
-
Field Summary
Fields Modifier and Type Field 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<String,IToken>
fWords
The table of predefined words and token for this rule.protected static int
UNDEFINED
Internal setting for the un-initialized column constraint.
-
Constructor Summary
Constructors Constructor 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.WordRule(IWordDetector detector, IToken defaultToken, boolean ignoreCase)
Creates a rule which, with the help of a word detector, will return the token associated with the detected word.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method 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.
-
-
-
Field Detail
-
UNDEFINED
protected static final int UNDEFINED
Internal setting for the un-initialized column constraint.- See Also:
- Constant Field Values
-
fDetector
protected IWordDetector fDetector
The word detector used by this rule.
-
fDefaultToken
protected IToken fDefaultToken
The default token to be returned on success and if nothing else has been specified.
-
fColumn
protected int fColumn
The column constraint.
-
-
Constructor Detail
-
WordRule
public WordRule(IWordDetector detector)
Creates a rule which, with the help of an word detector, will return the token associated with the detected word. If no token has been associated, the scanner will be rolled back and an undefined token will be returned in order to allow any subsequent rules to analyze the characters.- Parameters:
detector
- the word detector to be used by this rule, may not benull
- See Also:
addWord(String, IToken)
-
WordRule
public 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. If no token has been associated, the specified default token will be returned.- Parameters:
detector
- the word detector to be used by this rule, may not benull
defaultToken
- the default token to be returned on success if nothing else is specified, may not benull
- See Also:
addWord(String, IToken)
-
WordRule
public WordRule(IWordDetector detector, IToken defaultToken, boolean ignoreCase)
Creates a rule which, with the help of a word detector, will return the token associated with the detected word. If no token has been associated, the specified default token will be returned.- Parameters:
detector
- the word detector to be used by this rule, may not benull
defaultToken
- the default token to be returned on success if nothing else is specified, may not benull
ignoreCase
- the case sensitivity associated with this rule- Since:
- 3.3
- See Also:
addWord(String, IToken)
-
-
Method Detail
-
addWord
public void addWord(String word, IToken token)
Adds a word and the token to be returned if it is detected.- Parameters:
word
- the word this rule will search for, may not benull
token
- the token to be returned if the word has been found, may not benull
-
setColumnConstraint
public void setColumnConstraint(int column)
Sets a column constraint for this rule. If set, the rule's token will only be returned if the pattern is detected starting at the specified column. If the column is smaller then 0, the column constraint is considered removed.- Parameters:
column
- the column in which the pattern starts
-
evaluate
public IToken evaluate(ICharacterScanner scanner)
Description copied from interface:IRule
Evaluates the rule by examining the characters available from the provided character scanner. The token returned by this rule returnstrue
when callingisUndefined
, if the text that the rule investigated does not match the rule's requirements
-
unreadBuffer
protected void unreadBuffer(ICharacterScanner scanner)
Returns the characters in the buffer to the scanner.- Parameters:
scanner
- the scanner to be used
-
-