• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "configuration_format_version": 3,
3  "group_id" : "com.tools.android",
4  "artifact_id" : "desugar_jdk_libs",
5  "version": "1.1.1",
6  "required_compilation_api_level": 26,
7  "synthesized_library_classes_package_prefix": "j$.",
8  "support_all_callbacks_from_library": true,
9  "common_flags": [
10    {
11      "api_level_below_or_equal": 25,
12      "wrapper_conversion": [
13        "java.time.Clock"
14      ]
15    },
16    {
17      "api_level_below_or_equal": 23,
18      "wrapper_conversion": [
19        "java.util.PrimitiveIterator$OfDouble",
20        "java.util.PrimitiveIterator$OfInt",
21        "java.util.PrimitiveIterator$OfLong",
22        "java.util.Spliterator",
23        "java.util.Spliterator$OfDouble",
24        "java.util.Spliterator$OfInt",
25        "java.util.Spliterator$OfLong",
26        "java.util.Spliterator$OfPrimitive",
27        "java.util.function.BiConsumer",
28        "java.util.function.BiFunction",
29        "java.util.function.BiPredicate",
30        "java.util.function.BinaryOperator",
31        "java.util.function.Consumer",
32        "java.util.function.DoubleBinaryOperator",
33        "java.util.function.DoubleConsumer",
34        "java.util.function.DoubleFunction",
35        "java.util.function.DoublePredicate",
36        "java.util.function.DoubleToIntFunction",
37        "java.util.function.DoubleToLongFunction",
38        "java.util.function.DoubleUnaryOperator",
39        "java.util.function.Function",
40        "java.util.function.IntBinaryOperator",
41        "java.util.function.IntConsumer",
42        "java.util.function.IntFunction",
43        "java.util.function.IntPredicate",
44        "java.util.function.IntToDoubleFunction",
45        "java.util.function.IntToLongFunction",
46        "java.util.function.IntUnaryOperator",
47        "java.util.function.LongBinaryOperator",
48        "java.util.function.LongConsumer",
49        "java.util.function.LongFunction",
50        "java.util.function.LongPredicate",
51        "java.util.function.LongToDoubleFunction",
52        "java.util.function.LongToIntFunction",
53        "java.util.function.LongUnaryOperator",
54        "java.util.function.ObjDoubleConsumer",
55        "java.util.function.ObjIntConsumer",
56        "java.util.function.ObjLongConsumer",
57        "java.util.function.Predicate",
58        "java.util.function.Supplier",
59        "java.util.function.ToDoubleFunction",
60        "java.util.function.ToIntFunction",
61        "java.util.function.ToLongFunction",
62        "java.util.function.UnaryOperator",
63        "java.util.stream.BaseStream",
64        "java.util.stream.Collector",
65        "java.util.stream.DoubleStream",
66        "java.util.stream.IntStream",
67        "java.util.stream.LongStream",
68        "java.util.stream.Stream"
69      ]
70    }
71  ],
72  "library_flags": [
73    {
74      "api_level_below_or_equal": 25,
75      "rewrite_prefix": {
76        "j$.time.": "java.time.",
77        "java.time.": "j$.time.",
78        "java.util.Desugar": "j$.util.Desugar"
79      },
80      "backport": {
81        "java.lang.Double8": "java.lang.Double",
82        "java.lang.Integer8": "java.lang.Integer",
83        "java.lang.Long8": "java.lang.Long",
84        "java.lang.Math8": "java.lang.Math"
85      },
86      "retarget_lib_member": {
87        "java.util.Date#toInstant": "java.util.DesugarDate",
88        "java.util.GregorianCalendar#toZonedDateTime": "java.util.DesugarGregorianCalendar",
89        "java.util.TimeZone#toZoneId": "java.util.DesugarTimeZone"
90      },
91      "custom_conversion": {
92        "java.time.ZonedDateTime": "java.time.TimeConversions",
93        "java.time.LocalDate": "java.time.TimeConversions",
94        "java.time.Duration": "java.time.TimeConversions",
95        "java.time.ZoneId": "java.time.TimeConversions",
96        "java.time.MonthDay": "java.time.TimeConversions",
97        "java.time.Instant": "java.time.TimeConversions"
98      }
99    },
100    {
101      "api_level_below_or_equal": 23,
102      "rewrite_prefix": {
103        "j$.util.Optional": "java.util.Optional",
104        "j$.util.LongSummaryStatistics": "java.util.LongSummaryStatistics",
105        "j$.util.IntSummaryStatistics": "java.util.IntSummaryStatistics",
106        "j$.util.DoubleSummaryStatistics": "java.util.DoubleSummaryStatistics",
107        "java.util.stream.": "j$.util.stream.",
108        "java.util.function.": "j$.util.function.",
109        "java.util.Comparators": "j$.util.Comparators",
110        "java.util.DoubleSummaryStatistics": "j$.util.DoubleSummaryStatistics",
111        "java.util.IntSummaryStatistics": "j$.util.IntSummaryStatistics",
112        "java.util.LongSummaryStatistics": "j$.util.LongSummaryStatistics",
113        "java.util.Objects": "j$.util.Objects",
114        "java.util.Optional": "j$.util.Optional",
115        "java.util.PrimitiveIterator": "j$.util.PrimitiveIterator",
116        "java.util.SortedSet$1": "j$.util.SortedSet$1",
117        "java.util.Spliterator": "j$.util.Spliterator",
118        "java.util.StringJoiner": "j$.util.StringJoiner",
119        "java.util.Tripwire": "j$.util.Tripwire",
120        "java.util.concurrent.DesugarUnsafe": "j$.util.concurrent.DesugarUnsafe",
121        "java.util.concurrent.ThreadLocalRandom": "j$.util.concurrent.ThreadLocalRandom",
122        "java.util.concurrent.atomic.DesugarAtomic": "j$.util.concurrent.atomic.DesugarAtomic"
123      },
124      "retarget_lib_member": {
125        "java.util.Arrays#stream": "java.util.DesugarArrays",
126        "java.util.Arrays#spliterator": "java.util.DesugarArrays",
127        "java.util.LinkedHashSet#spliterator": "java.util.DesugarLinkedHashSet"
128      },
129      "dont_rewrite": [
130        "java.util.Iterator#remove"
131      ],
132      "emulate_interface": {
133        "java.lang.Iterable": "j$.lang.Iterable",
134        "java.util.Map$Entry": "j$.util.Map$Entry",
135        "java.util.Collection": "j$.util.Collection",
136        "java.util.Map": "j$.util.Map",
137        "java.util.Iterator": "j$.util.Iterator",
138        "java.util.Comparator": "j$.util.Comparator",
139        "java.util.List": "j$.util.List",
140        "java.util.SortedSet": "j$.util.SortedSet",
141        "java.util.Set": "j$.util.Set",
142        "java.util.concurrent.ConcurrentMap": "j$.util.concurrent.ConcurrentMap"
143      },
144      "custom_conversion": {
145        "java.util.Optional": "java.util.OptionalConversions",
146        "java.util.OptionalDouble": "java.util.OptionalConversions",
147        "java.util.OptionalInt": "java.util.OptionalConversions",
148        "java.util.OptionalLong": "java.util.OptionalConversions",
149        "java.util.LongSummaryStatistics": "java.util.LongSummaryStatisticsConversions",
150        "java.util.IntSummaryStatistics": "java.util.IntSummaryStatisticsConversions",
151        "java.util.DoubleSummaryStatistics": "java.util.DoubleSummaryStatisticsConversions"
152      }
153    }
154  ],
155  "program_flags": [
156    {
157      "api_level_below_or_equal": 25,
158      "rewrite_prefix": {
159        "java.time.": "j$.time.",
160        "java.util.Desugar": "j$.util.Desugar"
161      },
162      "retarget_lib_member": {
163        "java.util.Calendar#toInstant": "java.util.DesugarCalendar",
164        "java.util.Date#from": "java.util.DesugarDate",
165        "java.util.Date#toInstant": "java.util.DesugarDate",
166        "java.util.GregorianCalendar#from": "java.util.DesugarGregorianCalendar",
167        "java.util.GregorianCalendar#toZonedDateTime": "java.util.DesugarGregorianCalendar",
168        "java.util.TimeZone#toZoneId": "java.util.DesugarTimeZone"
169      },
170      "custom_conversion": {
171        "java.time.ZonedDateTime": "java.time.TimeConversions",
172        "java.time.LocalDate": "java.time.TimeConversions",
173        "java.time.Duration": "java.time.TimeConversions",
174        "java.time.ZoneId": "java.time.TimeConversions",
175        "java.time.MonthDay": "java.time.TimeConversions",
176        "java.time.Instant": "java.time.TimeConversions"
177      }
178    },
179    {
180      "api_level_below_or_equal": 23,
181      "rewrite_prefix": {
182        "java.util.stream.": "j$.util.stream.",
183        "java.util.function.": "j$.util.function.",
184        "java.util.DoubleSummaryStatistics": "j$.util.DoubleSummaryStatistics",
185        "java.util.IntSummaryStatistics": "j$.util.IntSummaryStatistics",
186        "java.util.LongSummaryStatistics": "j$.util.LongSummaryStatistics",
187        "java.util.Optional": "j$.util.Optional",
188        "java.util.PrimitiveIterator": "j$.util.PrimitiveIterator",
189        "java.util.Spliterator": "j$.util.Spliterator",
190        "java.util.StringJoiner": "j$.util.StringJoiner",
191        "java.util.concurrent.ThreadLocalRandom": "j$.util.concurrent.ThreadLocalRandom",
192        "java.util.concurrent.atomic.DesugarAtomic": "j$.util.concurrent.atomic.DesugarAtomic"
193      },
194      "retarget_lib_member": {
195        "java.util.Arrays#stream": "java.util.DesugarArrays",
196        "java.util.Arrays#spliterator": "java.util.DesugarArrays",
197        "java.util.LinkedHashSet#spliterator": "java.util.DesugarLinkedHashSet",
198        "java.util.concurrent.atomic.AtomicInteger#getAndUpdate": "java.util.concurrent.atomic.DesugarAtomicInteger",
199        "java.util.concurrent.atomic.AtomicInteger#updateAndGet": "java.util.concurrent.atomic.DesugarAtomicInteger",
200        "java.util.concurrent.atomic.AtomicInteger#getAndAccumulate": "java.util.concurrent.atomic.DesugarAtomicInteger",
201        "java.util.concurrent.atomic.AtomicInteger#accumulateAndGet": "java.util.concurrent.atomic.DesugarAtomicInteger",
202        "java.util.concurrent.atomic.AtomicLong#getAndUpdate": "java.util.concurrent.atomic.DesugarAtomicLong",
203        "java.util.concurrent.atomic.AtomicLong#updateAndGet": "java.util.concurrent.atomic.DesugarAtomicLong",
204        "java.util.concurrent.atomic.AtomicLong#getAndAccumulate": "java.util.concurrent.atomic.DesugarAtomicLong",
205        "java.util.concurrent.atomic.AtomicLong#accumulateAndGet": "java.util.concurrent.atomic.DesugarAtomicLong",
206        "java.util.concurrent.atomic.AtomicReference#getAndUpdate": "java.util.concurrent.atomic.DesugarAtomicReference",
207        "java.util.concurrent.atomic.AtomicReference#updateAndGet": "java.util.concurrent.atomic.DesugarAtomicReference",
208        "java.util.concurrent.atomic.AtomicReference#getAndAccumulate": "java.util.concurrent.atomic.DesugarAtomicReference",
209        "java.util.concurrent.atomic.AtomicReference#accumulateAndGet": "java.util.concurrent.atomic.DesugarAtomicReference",
210        "java.util.Collections#synchronizedMap": "java.util.DesugarCollections",
211        "java.util.Collections#synchronizedSortedMap": "java.util.DesugarCollections"
212      },
213      "dont_rewrite": [
214        "java.util.Iterator#remove"
215      ],
216      "emulate_interface": {
217        "java.lang.Iterable": "j$.lang.Iterable",
218        "java.util.Map$Entry": "j$.util.Map$Entry",
219        "java.util.Collection": "j$.util.Collection",
220        "java.util.Map": "j$.util.Map",
221        "java.util.Iterator": "j$.util.Iterator",
222        "java.util.Comparator": "j$.util.Comparator",
223        "java.util.List": "j$.util.List",
224        "java.util.SortedSet": "j$.util.SortedSet",
225        "java.util.Set": "j$.util.Set",
226        "java.util.concurrent.ConcurrentMap": "j$.util.concurrent.ConcurrentMap"
227      },
228      "custom_conversion": {
229        "java.util.Optional": "java.util.OptionalConversions",
230        "java.util.OptionalDouble": "java.util.OptionalConversions",
231        "java.util.OptionalInt": "java.util.OptionalConversions",
232        "java.util.OptionalLong": "java.util.OptionalConversions",
233        "java.util.LongSummaryStatistics": "java.util.LongSummaryStatisticsConversions",
234        "java.util.IntSummaryStatistics": "java.util.IntSummaryStatisticsConversions",
235        "java.util.DoubleSummaryStatistics": "java.util.DoubleSummaryStatisticsConversions"
236      }
237    }
238  ],
239  "shrinker_config": [
240    "-keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); public static final !synthetic <fields>; }",
241    "-keeppackagenames j$",
242    "-keepclassmembers class j$.util.IntSummaryStatistics { long count; long sum; int min; int max; }",
243    "-keepclassmembers class j$.util.LongSummaryStatistics { long count; long sum; long min; long max; }",
244    "-keepclassmembers class j$.util.DoubleSummaryStatistics { long count; double sum; double min; double max; }",
245    "-keepattributes Signature",
246    "-keepattributes EnclosingMethod",
247    "-keepattributes InnerClasses"
248  ]
249}
250