public class AffixMatcher extends Object implements NumberParseMatcher
NumberParseMatcher.Flexible| Modifier and Type | Field and Description |
|---|---|
static Comparator<AffixMatcher> |
COMPARATOR
Comparator for two AffixMatcher instances which prioritizes longer prefixes followed by longer
suffixes, ensuring that the longest prefix/suffix pair is always chosen.
|
| Modifier and Type | Method and Description |
|---|---|
static void |
createMatchers(AffixPatternProvider patternInfo,
NumberParserImpl output,
AffixTokenMatcherFactory factory,
IgnorablesMatcher ignorables,
int parseFlags) |
boolean |
equals(Object _other) |
int |
hashCode() |
boolean |
match(StringSegment segment,
ParsedNumber result)
Runs this matcher starting at the beginning of the given StringSegment.
|
void |
postProcess(ParsedNumber result)
Method called at the end of a parse, after all matchers have failed to consume any more chars.
|
boolean |
smokeTest(StringSegment segment)
Performs a fast "smoke check" for whether or not this matcher could possibly match against the
given string segment.
|
String |
toString() |
public static final Comparator<AffixMatcher> COMPARATOR
public static void createMatchers(AffixPatternProvider patternInfo, NumberParserImpl output, AffixTokenMatcherFactory factory, IgnorablesMatcher ignorables, int parseFlags)
public boolean match(StringSegment segment, ParsedNumber result)
NumberParseMatchermatch in interface NumberParseMatchersegment - The StringSegment to match against. Matches always start at the beginning of the
segment. The segment is guaranteed to contain at least one char.result - The data structure to store results if the match succeeds.public boolean smokeTest(StringSegment segment)
NumberParseMatcherStringSegment.startsWith(int) method in order to correctly
handle case folding.smokeTest in interface NumberParseMatchersegment - The segment to check against.public void postProcess(ParsedNumber result)
NumberParseMatcherpostProcess in interface NumberParseMatcherresult - The data structure to store results.