29 import java.lang.reflect.Type; |
29 import java.lang.reflect.Type; |
30 import java.util.Iterator; |
30 import java.util.Iterator; |
31 import java.util.Map; |
31 import java.util.Map; |
32 import java.util.Properties; |
32 import java.util.Properties; |
33 |
33 |
|
34 import org.graalvm.collections.EconomicMap; |
|
35 import org.graalvm.collections.MapCursor; |
34 import org.graalvm.compiler.options.Option; |
36 import org.graalvm.compiler.options.Option; |
35 import org.graalvm.compiler.options.OptionDescriptor; |
37 import org.graalvm.compiler.options.OptionDescriptor; |
36 import org.graalvm.compiler.options.OptionDescriptors; |
38 import org.graalvm.compiler.options.OptionDescriptors; |
37 import org.graalvm.compiler.options.OptionKey; |
39 import org.graalvm.compiler.options.OptionKey; |
38 import org.graalvm.compiler.options.OptionValues; |
40 import org.graalvm.compiler.options.OptionValues; |
39 import org.graalvm.util.EconomicMap; |
|
40 import org.graalvm.util.MapCursor; |
|
41 |
41 |
42 /** |
42 /** |
43 * An implementation of {@link OptionDescriptor} that uses reflection to create descriptors from a |
43 * An implementation of {@link OptionDescriptor} that uses reflection to create descriptors from a |
44 * list of field name and help text pairs. We cannot use the {@link Option} annotation as it has a |
44 * list of field name and help text pairs. We cannot use the {@link Option} annotation as it has a |
45 * {@link RetentionPolicy#SOURCE} retention policy. |
45 * {@link RetentionPolicy#SOURCE} retention policy. |