1 /* GENERATED SOURCE. DO NOT MODIFY. */ 2 // © 2017 and later: Unicode, Inc. and others. 3 // License & terms of use: http://www.unicode.org/copyright.html#License 4 package ohos.global.icu.impl.number.parse; 5 6 /** 7 * @author sffc 8 * @hide exposed on OHOS 9 * 10 */ 11 public class RequireDecimalSeparatorValidator extends ValidationMatcher { 12 13 private static final RequireDecimalSeparatorValidator A = new RequireDecimalSeparatorValidator(true); 14 private static final RequireDecimalSeparatorValidator B = new RequireDecimalSeparatorValidator(false); 15 16 private final boolean patternHasDecimalSeparator; 17 getInstance(boolean patternHasDecimalSeparator)18 public static RequireDecimalSeparatorValidator getInstance(boolean patternHasDecimalSeparator) { 19 return patternHasDecimalSeparator ? A : B; 20 } 21 RequireDecimalSeparatorValidator(boolean patternHasDecimalSeparator)22 private RequireDecimalSeparatorValidator(boolean patternHasDecimalSeparator) { 23 this.patternHasDecimalSeparator = patternHasDecimalSeparator; 24 } 25 26 @Override postProcess(ParsedNumber result)27 public void postProcess(ParsedNumber result) { 28 boolean parseHasDecimalSeparator = 0 != (result.flags & ParsedNumber.FLAG_HAS_DECIMAL_SEPARATOR); 29 if (parseHasDecimalSeparator != patternHasDecimalSeparator) { 30 result.flags |= ParsedNumber.FLAG_FAIL; 31 } 32 } 33 34 @Override toString()35 public String toString() { 36 return "<RequireDecimalSeparator>"; 37 } 38 } 39