From 6ecb5efc597d646cdc8f5b9ef2c9288f954ba1bd Mon Sep 17 00:00:00 2001 From: Markus Scherer Date: Tue, 26 Apr 2011 06:03:21 +0000 Subject: [PATCH] ICU-8491 remove Utility.skipWhitespace(c) X-SVN-Rev: 29899 --- .../core/src/com/ibm/icu/impl/Utility.java | 48 ++----------------- .../com/ibm/icu/impl/data/ResourceReader.java | 4 +- .../com/ibm/icu/impl/data/TokenIterator.java | 2 +- .../com/ibm/icu/text/ChineseDateFormat.java | 6 +-- .../core/src/com/ibm/icu/text/UnicodeSet.java | 10 ++-- .../ibm/icu/text/TransliteratorIDParser.java | 9 ++-- 6 files changed, 20 insertions(+), 59 deletions(-) diff --git a/icu4j/main/classes/core/src/com/ibm/icu/impl/Utility.java b/icu4j/main/classes/core/src/com/ibm/icu/impl/Utility.java index 705e51c5538..31085bc0e7f 100644 --- a/icu4j/main/classes/core/src/com/ibm/icu/impl/Utility.java +++ b/icu4j/main/classes/core/src/com/ibm/icu/impl/Utility.java @@ -1097,46 +1097,6 @@ public final class Utility { return -1; } - /** - * Skip over a sequence of zero or more white space characters - * at pos. Return the index of the first non-white-space character - * at or after pos, or str.length(), if there is none. - */ - public static int skipWhitespace(String str, int pos) { - while (pos < str.length()) { - int c = Character.codePointAt(str, pos); - if (!PatternProps.isWhiteSpace(c)) { - break; - } - pos += UTF16.getCharCount(c); - } - return pos; - } - - /** - * Skip over a sequence of zero or more white space characters - * at pos[0], advancing it. - */ - public static void skipWhitespace(String str, int[] pos) { - pos[0] = skipWhitespace(str, pos[0]); - } - - /** - * Remove all Pattern_White_Space from a string. - */ - public static String deletePatternWhiteSpace(String str) { - StringBuilder buf = new StringBuilder(); - for (int i=0; i, Compa // Skip over trailing whitespace if ((options & IGNORE_SPACE) != 0) { - i = Utility.skipWhitespace(pattern, i); + i = PatternProps.skipWhiteSpace(pattern, i); } if (i != pattern.length()) { @@ -3325,7 +3325,7 @@ public class UnicodeSet extends UnicodeFilter implements Iterable, Compa if (p == UProperty.CANONICAL_COMBINING_CLASS || p == UProperty.LEAD_CANONICAL_COMBINING_CLASS || p == UProperty.TRAIL_CANONICAL_COMBINING_CLASS) { - v = Integer.parseInt(Utility.deletePatternWhiteSpace(valueAlias)); + v = Integer.parseInt(PatternProps.trimWhiteSpace(valueAlias)); // If the resultant set is empty then the numeric value // was invalid. //mustNotBeEmpty = true; @@ -3341,7 +3341,7 @@ public class UnicodeSet extends UnicodeFilter implements Iterable, Compa switch (p) { case UProperty.NUMERIC_VALUE: { - double value = Double.parseDouble(Utility.deletePatternWhiteSpace(valueAlias)); + double value = Double.parseDouble(PatternProps.trimWhiteSpace(valueAlias)); applyFilter(new NumericValueFilter(value), UCharacterProperty.SRC_CHAR); return this; } @@ -3504,7 +3504,7 @@ public class UnicodeSet extends UnicodeFilter implements Iterable, Compa // Look for an opening [:, [:^, \p, or \P if (pattern.regionMatches(pos, "[:", 0, 2)) { posix = true; - pos = Utility.skipWhitespace(pattern, pos+2); + pos = PatternProps.skipWhiteSpace(pattern, (pos+2)); if (pos < pattern.length() && pattern.charAt(pos) == '^') { ++pos; invert = true; @@ -3514,7 +3514,7 @@ public class UnicodeSet extends UnicodeFilter implements Iterable, Compa char c = pattern.charAt(pos+1); invert = (c == 'P'); isName = (c == 'N'); - pos = Utility.skipWhitespace(pattern, pos+2); + pos = PatternProps.skipWhiteSpace(pattern, (pos+2)); if (pos == pattern.length() || pattern.charAt(pos++) != '{') { // Syntax error; "\p" or "\P" not followed by "{" return null; diff --git a/icu4j/main/classes/translit/src/com/ibm/icu/text/TransliteratorIDParser.java b/icu4j/main/classes/translit/src/com/ibm/icu/text/TransliteratorIDParser.java index 8490b7b4ea6..057b5fef7d6 100644 --- a/icu4j/main/classes/translit/src/com/ibm/icu/text/TransliteratorIDParser.java +++ b/icu4j/main/classes/translit/src/com/ibm/icu/text/TransliteratorIDParser.java @@ -1,6 +1,6 @@ /* ********************************************************************** -* Copyright (c) 2002-2010, International Business Machines Corporation +* Copyright (c) 2002-2011, International Business Machines Corporation * and others. All Rights Reserved. ********************************************************************** * Date Name Description @@ -17,6 +17,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import com.ibm.icu.impl.PatternProps; import com.ibm.icu.impl.Utility; import com.ibm.icu.util.CaseInsensitiveString; @@ -276,7 +277,7 @@ class TransliteratorIDParser { } } - Utility.skipWhitespace(id, pos); + pos[0] = PatternProps.skipWhiteSpace(id, pos[0]); if (UnicodeSet.resemblesPattern(id, pos[0])) { ParsePosition ppos = new ParsePosition(pos[0]); @@ -409,7 +410,7 @@ class TransliteratorIDParser { } // Trailing unparsed text is a syntax error - Utility.skipWhitespace(id, pos[0]); + pos[0] = PatternProps.skipWhiteSpace(id, pos[0]); if (pos[0] != id.length()) { return false; } @@ -601,7 +602,7 @@ class TransliteratorIDParser { // pass: a filter, a delimiter character (either '-' or '/'), // or a spec (source, target, or variant). for (;;) { - Utility.skipWhitespace(id, pos); + pos[0] = PatternProps.skipWhiteSpace(id, pos[0]); if (pos[0] == id.length()) { break; }