]> granicus.if.org Git - icu/commitdiff
ICU-13177 Minor parse-debugging changes.
authorShane Carr <shane@unicode.org>
Tue, 2 May 2017 00:10:45 +0000 (00:10 +0000)
committerShane Carr <shane@unicode.org>
Tue, 2 May 2017 00:10:45 +0000 (00:10 +0000)
X-SVN-Rev: 40095

icu4j/main/classes/core/src/com/ibm/icu/impl/number/Parse.java
icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java

index 7ca7d9fe608d18abbf410b038d65450c7cad8d53..a7fc7131edede7e390a6f03939511006e453ef87 100644 (file)
@@ -777,6 +777,29 @@ public class Parse {
       assert i >= 0 && i < length;
       return items[i];
     }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append("<ParseState mode:");
+        sb.append(mode);
+        sb.append(" caseSensitive:");
+        sb.append(caseSensitive);
+        sb.append(" parseCurrency:");
+        sb.append(parseCurrency);
+        sb.append(" groupingMode:");
+        sb.append(groupingMode);
+        sb.append(" decimalCps:");
+        sb.append((char)decimalCp1);
+        sb.append((char)decimalCp2);
+        sb.append(" groupingCps:");
+        sb.append((char)groupingCp1);
+        sb.append((char)groupingCp2);
+        sb.append(" affixes:");
+        sb.append(affixHolders);
+        sb.append(">");
+        return sb.toString();
+    }
   }
 
   /**
@@ -1122,7 +1145,7 @@ public class Parse {
     if (DEBUGGING) {
       System.out.println("Parsing: " + input);
       System.out.println(properties);
-      System.out.println(state.affixHolders);
+      System.out.println(state);
     }
 
     // Start walking through the string, one codepoint at a time. Backtracking is not allowed. This
index 17e0b9779c5e0131e433fceb3a8133ec13c7d13c..fee4bcc6229938fd8a74d78178e2fb37fa3ebf86 100644 (file)
@@ -815,6 +815,7 @@ public class DecimalFormat extends NumberFormat {
   @Override
   public CurrencyAmount parseCurrency(CharSequence text, ParsePosition parsePosition) {
     try {
+      // TODO(sffc): Make this thread-safe
       CurrencyAmount result = Parse.parseCurrency(text, parsePosition, properties, symbols);
       if (result == null) return null;
       Number number = result.getNumber();