Package eu.bandm.tools.lexic
Class LookaheadTokenFilter<D,T,L>
java.lang.Object
eu.bandm.tools.lexic.LookaheadTokenProcessor<D,T,L>
eu.bandm.tools.lexic.LookaheadTokenFilter<D,T,L>
- Type Parameters:
D
- the type of source document identifiersT
- the type of token types
- All Implemented Interfaces:
LookaheadTokenSource<D,
,T, L> Supplier<Token<D,
T>>
- Direct Known Subclasses:
TokenFilter
Abstract base class for token processors that filter out certain
tokens. Tokens from the given input token source are either
forwarded or discarded, depending on a variety of criteria.
-
Field Summary
Fields inherited from class eu.bandm.tools.lexic.LookaheadTokenProcessor
input
-
Constructor Summary
ModifierConstructorDescriptionprotected
LookaheadTokenFilter
(LookaheadTokenSource<D, T, L> input, Predicate<? super Token<D, T>> acceptable) Creates a new instance. -
Method Summary
Modifier and TypeMethodDescriptionstatic <D,
T, L> LookaheadTokenFilter<D, T, L> discard
(LookaheadTokenSource<D, T, L> input, Predicate<? super Token<D, T>> pred) Returns a token filter that forwards those tokens from a given input source that do not match a given predicate.static <D,
T, L> LookaheadTokenFilter<D, T, L> forward
(LookaheadTokenSource<D, T, L> input, Predicate<? super Token<D, T>> pred) Returns a token filter that forwards those tokens from a given input source that match a given predicate.get()
static <D,
T, L> LookaheadTokenFilter<D, T, L> removeTypes
(LookaheadTokenSource<D, T, L> input, Set<? extends T> types) Returns a secondary token source that forwards all tokens from a given token source that have none of the given types.Methods inherited from class eu.bandm.tools.lexic.LookaheadTokenProcessor
relinquishLookahead, takeOverLookahead
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface eu.bandm.tools.lexic.LookaheadTokenSource
forgetLookahead, removeTypes, removeTypes
-
Constructor Details
-
Method Details
-
get
This implementation returns the next acceptable token from the input source; intervening tokens may be discarded silently.
-
forward
public static <D,T, LookaheadTokenFilter<D,L> T, forwardL> (LookaheadTokenSource<D, T, L> input, Predicate<? super Token<D, T>> pred) Returns a token filter that forwards those tokens from a given input source that match a given predicate.- Type Parameters:
D
- the type of source document identifiersT
- the type of token types- Parameters:
input
- the input token sourcepred
- the predicate to match- Returns:
- a token filter that forwards those tokens from the given input source that match the given predicate
-
discard
public static <D,T, LookaheadTokenFilter<D,L> T, discardL> (LookaheadTokenSource<D, T, L> input, Predicate<? super Token<D, T>> pred) Returns a token filter that forwards those tokens from a given input source that do not match a given predicate.- Type Parameters:
D
- the type of source document identifiersT
- the type of token types- Parameters:
input
- the input token sourcepred
- the predicate not to match- Returns:
- a token filter that forwards those tokens from the given input source that do not match the given predicate
-
removeTypes
public static <D,T, LookaheadTokenFilter<D,L> T, removeTypesL> (LookaheadTokenSource<D, T, L> input, Set<? extends T> types) Returns a secondary token source that forwards all tokens from a given token source that have none of the given types.- Type Parameters:
D
- the type of source document identifiersT
- the type of token types- Parameters:
input
- the input token sourcetypes
- the types of tokens to remove- Returns:
- a token source that forwards all tokens from the given token source that have none of the given types
-