]> granicus.if.org Git - icu/commitdiff
ICU-20693 No arbitrary ordering in path/value visitation for new API
authorDavid Beaumont <dbeaumont@google.com>
Thu, 5 Sep 2019 13:37:44 +0000 (15:37 +0200)
committerDavid Beaumont <david.beaumont+github@gmail.com>
Thu, 26 Sep 2019 05:26:45 +0000 (07:26 +0200)
tools/cldr/cldr-to-icu/src/main/java/org/unicode/icu/tool/cldrtoicu/mapper/Bcp47Mapper.java
tools/cldr/cldr-to-icu/src/main/java/org/unicode/icu/tool/cldrtoicu/mapper/BreakIteratorMapper.java
tools/cldr/cldr-to-icu/src/main/java/org/unicode/icu/tool/cldrtoicu/mapper/CollationMapper.java
tools/cldr/cldr-to-icu/src/main/java/org/unicode/icu/tool/cldrtoicu/mapper/DayPeriodsMapper.java
tools/cldr/cldr-to-icu/src/main/java/org/unicode/icu/tool/cldrtoicu/mapper/PluralRangesMapper.java
tools/cldr/cldr-to-icu/src/main/java/org/unicode/icu/tool/cldrtoicu/mapper/PluralsMapper.java
tools/cldr/cldr-to-icu/src/main/java/org/unicode/icu/tool/cldrtoicu/mapper/SupplementalMapper.java

index c8654bd32b7891bebed5fd7ad6ed681bc810cc40..1ba305ae4cc5862302d75f10b0c2ff86941d2c31 100644 (file)
@@ -7,7 +7,7 @@ import static com.google.common.base.Preconditions.checkArgument;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.base.Preconditions.checkState;
 import static org.unicode.cldr.api.AttributeKey.keyOf;
-import static org.unicode.cldr.api.CldrData.PathOrder.ARBITRARY;
+import static org.unicode.cldr.api.CldrData.PathOrder.DTD;
 import static org.unicode.cldr.api.CldrDataType.BCP47;
 
 import java.util.LinkedHashMap;
@@ -88,7 +88,7 @@ public final class Bcp47Mapper {
     @VisibleForTesting // It's easier to supply a fake data instance than a fake supplier.
     static ImmutableList<IcuData> process(CldrData cldrData) {
         Bcp47Visitor visitor = new Bcp47Visitor();
-        cldrData.accept(ARBITRARY, visitor);
+        cldrData.accept(DTD, visitor);
         visitor.addKeyMapValues();
         return ImmutableList.of(visitor.keyTypeData.icuData, visitor.tzData.icuData);
     }
index a016cd238de1c91f080e2c36ee1e7e208da03c13..fc6fe5984ae6fd1ae1ba79905237f32e97d2c0eb 100644 (file)
@@ -3,7 +3,6 @@
 package org.unicode.icu.tool.cldrtoicu.mapper;
 
 import static org.unicode.cldr.api.AttributeKey.keyOf;
-import static org.unicode.cldr.api.CldrData.PathOrder.ARBITRARY;
 import static org.unicode.cldr.api.CldrData.PathOrder.DTD;
 import static org.unicode.cldr.api.CldrDataSupplier.CldrResolution.UNRESOLVED;
 
@@ -68,7 +67,7 @@ public final class BreakIteratorMapper {
     @VisibleForTesting // It's easier to supply a fake data instance than a fake supplier.
     static IcuData process(String localeId, CldrData cldrData, Optional<CldrData> icuSpecialData) {
         BreakIteratorMapper mapper = new BreakIteratorMapper(localeId);
-        icuSpecialData.ifPresent(s -> s.accept(ARBITRARY, mapper::addSpecials));
+        icuSpecialData.ifPresent(s -> s.accept(DTD, mapper::addSpecials));
         cldrData.accept(DTD, mapper::addSuppression);
         return mapper.icuData;
     }
index 2de90b1236015c5d9371b8be7f0deada18a9631f..385cadd3cbd305499b77305c6dd6c00993a28036 100644 (file)
@@ -4,7 +4,7 @@ package org.unicode.icu.tool.cldrtoicu.mapper;
 
 import static com.google.common.base.Preconditions.checkArgument;
 import static org.unicode.cldr.api.AttributeKey.keyOf;
-import static org.unicode.cldr.api.CldrData.PathOrder.ARBITRARY;
+import static org.unicode.cldr.api.CldrData.PathOrder.DTD;
 import static org.unicode.cldr.api.CldrDataSupplier.CldrResolution.UNRESOLVED;
 
 import java.util.Optional;
@@ -75,8 +75,8 @@ public final class CollationMapper {
     @VisibleForTesting // It's easier to supply a fake data instance than a fake supplier.
     static IcuData process(String localeId, CldrData cldrData, Optional<CldrData> icuSpecialData) {
         CollationVisitor visitor = new CollationVisitor(localeId);
-        icuSpecialData.ifPresent(s -> s.accept(ARBITRARY, visitor));
-        cldrData.accept(ARBITRARY, visitor);
+        icuSpecialData.ifPresent(s -> s.accept(DTD, visitor));
+        cldrData.accept(DTD, visitor);
         return visitor.icuData;
     }
 
index e09fe5f141bee287048fd850a1d888fb0a8525d8..ef0e2966c329b7e75102b5236002cc5fc609d5d5 100644 (file)
@@ -3,7 +3,7 @@
 package org.unicode.icu.tool.cldrtoicu.mapper;
 
 import static org.unicode.cldr.api.AttributeKey.keyOf;
-import static org.unicode.cldr.api.CldrData.PathOrder.ARBITRARY;
+import static org.unicode.cldr.api.CldrData.PathOrder.NESTED_GROUPING;
 import static org.unicode.cldr.api.CldrDataType.SUPPLEMENTAL;
 
 import java.util.Optional;
@@ -54,7 +54,7 @@ public final class DayPeriodsMapper {
     @VisibleForTesting // It's easier to supply a fake data instance than a fake supplier.
     static IcuData process(CldrData data) {
         RuleSetVisitor mapper = new RuleSetVisitor();
-        data.accept(ARBITRARY, mapper);
+        data.accept(NESTED_GROUPING, mapper);
         return mapper.icuData;
     }
 
index 2bed54a01c606dbd7980e08f371be17d426986ed..c811a8e1c39797dc637146b28ebf3d86028c05be 100644 (file)
@@ -4,7 +4,7 @@ package org.unicode.icu.tool.cldrtoicu.mapper;
 
 import static com.google.common.base.Preconditions.checkState;
 import static org.unicode.cldr.api.AttributeKey.keyOf;
-import static org.unicode.cldr.api.CldrData.PathOrder.ARBITRARY;
+import static org.unicode.cldr.api.CldrData.PathOrder.NESTED_GROUPING;
 import static org.unicode.cldr.api.CldrDataType.SUPPLEMENTAL;
 
 import org.unicode.cldr.api.AttributeKey;
@@ -59,7 +59,7 @@ public final class PluralRangesMapper {
     @VisibleForTesting // It's easier to supply a fake data instance than a fake supplier.
     static IcuData process(CldrData data) {
         PluralRangesVisitor visitor = new PluralRangesVisitor();
-        data.accept(ARBITRARY, visitor);
+        data.accept(NESTED_GROUPING, visitor);
         return visitor.icuData;
     }
 
index 4e125c4e387520c1a15f9b60c3b7bb0a050c70e3..dd5178177090312ebca15962dd92b1274c3f2d7a 100644 (file)
@@ -5,7 +5,7 @@ package org.unicode.icu.tool.cldrtoicu.mapper;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.base.Preconditions.checkState;
 import static org.unicode.cldr.api.AttributeKey.keyOf;
-import static org.unicode.cldr.api.CldrData.PathOrder.ARBITRARY;
+import static org.unicode.cldr.api.CldrData.PathOrder.NESTED_GROUPING;
 import static org.unicode.cldr.api.CldrDataType.SUPPLEMENTAL;
 
 import java.util.ArrayList;
@@ -65,8 +65,8 @@ public final class PluralsMapper {
         // affects the set indices we generate during processing. Ideally this would all be immune
         // to ordering (or just enforce DTD ordering) but right now it's very dependent on
         // mimicking the order of the existing code to get identical output.
-        data.accept(ARBITRARY, visitor.setType("cardinal"));
-        data.accept(ARBITRARY, visitor.setType("ordinal"));
+        data.accept(NESTED_GROUPING, visitor.setType("cardinal"));
+        data.accept(NESTED_GROUPING, visitor.setType("ordinal"));
         return visitor.icuData;
     }
 
index c8b81007702c18befe6e33260635e815506c7653..ae6f12c3ee895fec3b97ed114059b5b5fb930ae0 100644 (file)
@@ -53,8 +53,8 @@ public final class SupplementalMapper extends AbstractPathValueMapper {
 
     @Override
     void addResults() {
-        // DTD and NESTED_GROUPING order differ because of how the magic <FIFO> label works (it
-        // basically enforces "encounter order" onto things in unlabeled sequences, which matches
+        // NESTED_GROUPING and DTD order differ because of how the magic <FIFO> label works (it
+        // basically enforces "encounter order" onto things in unlabelled sequences, which matches
         // the old behaviour). If it wouldn't break anything, it might be worth moving to DTD order
         // to remove any lingering implicit dependencies on the CLDR data behaviour.
         getCldrData().accept(NESTED_GROUPING, this::visit);