Package com.ibm.icu.impl.number.parse
Class ValidationMatcher
- java.lang.Object
-
- com.ibm.icu.impl.number.parse.ValidationMatcher
-
- All Implemented Interfaces:
NumberParseMatcher
- Direct Known Subclasses:
MultiplierParseHandler
,RequireAffixValidator
,RequireCurrencyValidator
,RequireDecimalSeparatorValidator
,RequireNumberValidator
public abstract class ValidationMatcher extends java.lang.Object implements NumberParseMatcher
A Matcher used only for post-process validation, not for consuming characters at runtime.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.ibm.icu.impl.number.parse.NumberParseMatcher
NumberParseMatcher.Flexible
-
-
Constructor Summary
Constructors Constructor Description ValidationMatcher()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
match(StringSegment segment, ParsedNumber result)
Runs this matcher starting at the beginning of the given StringSegment.boolean
smokeTest(StringSegment segment)
Performs a fast "smoke check" for whether or not this matcher could possibly match against the given string segment.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.ibm.icu.impl.number.parse.NumberParseMatcher
postProcess
-
-
-
-
Method Detail
-
match
public boolean match(StringSegment segment, ParsedNumber result)
Description copied from interface:NumberParseMatcher
Runs this matcher starting at the beginning of the given StringSegment. If this matcher finds something interesting in the StringSegment, it should update the offset of the StringSegment corresponding to how many chars were matched.- Specified by:
match
in interfaceNumberParseMatcher
- Parameters:
segment
- 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.- Returns:
- Whether this matcher thinks there may be more interesting chars beyond the end of the string segment.
-
smokeTest
public boolean smokeTest(StringSegment segment)
Description copied from interface:NumberParseMatcher
Performs a fast "smoke check" for whether or not this matcher could possibly match against the given string segment. The test should be as fast as possible but also as restrictive as possible. For example, matchers can maintain a UnicodeSet of all code points that count possibly start a match. Matchers should use theStringSegment.startsWith(int)
method in order to correctly handle case folding.- Specified by:
smokeTest
in interfaceNumberParseMatcher
- Parameters:
segment
- The segment to check against.- Returns:
- true if the matcher might be able to match against this segment; false if it definitely will not be able to match.
-
-