Skip to content

Commit 1e45a23

Browse files
committed
Remove single usage of RubyOptionTypes.parseValue()
1 parent 6e28086 commit 1e45a23

File tree

4 files changed

+5
-45
lines changed

4 files changed

+5
-45
lines changed

src/launcher/java/org/truffleruby/launcher/CommandLineOptions.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,6 @@ public <T> void setOption(OptionDescriptor descriptor, T value) {
8181
setOptionRaw(descriptor, RubyOptionTypes.valueToString(value));
8282
}
8383

84-
public <T> T getOption(OptionDescriptor descriptor) {
85-
return RubyOptionTypes.parseValue(descriptor, getOptionRaw(descriptor));
86-
}
87-
8884
public <T> void appendOptionValue(OptionDescriptor descriptor, String newValue) {
8985
final OptionType<?> type = descriptor.getKey().getType();
9086

@@ -105,7 +101,7 @@ private void setOptionRaw(OptionDescriptor descriptor, String value) {
105101
options.put(descriptor.getName(), value);
106102
}
107103

108-
private <T> String getOptionRaw(OptionDescriptor descriptor) {
104+
public String getOptionRaw(OptionDescriptor descriptor) {
109105
return options.getOrDefault(
110106
descriptor.getName(),
111107
RubyOptionTypes.valueToString(descriptor.getKey().getDefaultValue()));

src/launcher/java/org/truffleruby/launcher/CommandLineParser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ private boolean endOfInterpreterArguments() {
101101
}
102102

103103
private void processArgv() {
104-
boolean argvGlobalsOn = config.getOption(OptionsCatalog.ARGV_GLOBALS);
104+
boolean argvGlobalsOn = config.getOptionRaw(OptionsCatalog.ARGV_GLOBALS).equals("true");
105105
ArrayList<String> arglist = new ArrayList<>();
106106
for (; argumentIndex < arguments.size(); argumentIndex++) {
107107
String arg = getCurrentArgument();

src/main/java/org/truffleruby/RubyContext.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -376,9 +376,10 @@ private Options createOptions(TruffleLanguage.Env env, LanguageOptions languageO
376376
if (options.OPTIONS_LOG && RubyLanguage.LOGGER.isLoggable(Level.CONFIG)) {
377377
for (OptionDescriptor descriptor : OptionsCatalog.allDescriptors()) {
378378
assert descriptor.getName().startsWith(TruffleRuby.LANGUAGE_ID);
379-
final String xName = descriptor.getName().substring(TruffleRuby.LANGUAGE_ID.length() + 1);
379+
final String optionName = descriptor.getName().substring(TruffleRuby.LANGUAGE_ID.length() + 1);
380380
RubyLanguage.LOGGER.config(
381-
"option " + xName + "=" + RubyOptionTypes.valueToString(options.fromDescriptor(descriptor)));
381+
"option " + optionName + "=" +
382+
RubyOptionTypes.valueToString(options.fromDescriptor(descriptor)));
382383
}
383384
}
384385

src/shared/java/org/truffleruby/shared/options/RubyOptionTypes.java

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -9,46 +9,9 @@
99
*/
1010
package org.truffleruby.shared.options;
1111

12-
import java.util.Collection;
13-
14-
import org.graalvm.options.OptionDescriptor;
1512

1613
public class RubyOptionTypes {
1714

18-
@SuppressWarnings("unchecked")
19-
public static <T> T parseValue(OptionDescriptor descriptor, Object value) {
20-
if (value == null) {
21-
return (T) descriptor.getKey().getDefaultValue();
22-
}
23-
24-
if (value instanceof String) {
25-
try {
26-
return (T) descriptor.getKey().getType().convert((String) value);
27-
} catch (IllegalArgumentException e) {
28-
throw new OptionTypeException(descriptor.getName(), (String) value);
29-
}
30-
} else if (value instanceof Boolean) {
31-
return (T) value;
32-
} else if (value instanceof Integer) {
33-
return (T) value;
34-
} else if (value instanceof Enum<?>) {
35-
return (T) value;
36-
} else if (value instanceof String[]) {
37-
return (T) value;
38-
} else if (value instanceof Collection<?>) {
39-
final Collection<?> collection = (Collection<?>) value;
40-
final String[] strings = new String[collection.size()];
41-
int n = 0;
42-
for (Object item : collection) {
43-
strings[n] = item.toString();
44-
n++;
45-
}
46-
return (T) strings;
47-
} else {
48-
throw new OptionTypeException(descriptor.getName(), value.toString());
49-
}
50-
}
51-
5215
public static String valueToString(Object value) {
5316
if (value == null) {
5417
return "null";

0 commit comments

Comments
 (0)