Skip to content

Commit 8692783

Browse files
committed
Update StringOperations.getString usages to RubyString#getJavaString()
1 parent a623554 commit 8692783

28 files changed

+69
-86
lines changed

src/main/java/org/truffleruby/cext/CExtNodes.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1142,7 +1142,7 @@ protected Object debug(Object... objects) {
11421142

11431143
representation = RopeOperations.decodeRope(rope) + " (" + builder.toString() + ")";
11441144
} else if (RubyGuards.isRubyValue(object)) {
1145-
representation = object.toString() + " (" + StringOperations.getString(callToS(object)) + ")";
1145+
representation = object.toString() + " (" + callToS(object).getJavaString() + ")";
11461146
} else {
11471147
representation = object.toString();
11481148
}

src/main/java/org/truffleruby/core/TruffleSystemNodes.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@
5959
import org.truffleruby.core.rope.CodeRange;
6060
import org.truffleruby.core.string.RubyString;
6161
import org.truffleruby.core.string.StringNodes;
62-
import org.truffleruby.core.string.StringOperations;
6362
import org.truffleruby.core.symbol.RubySymbol;
6463
import org.truffleruby.interop.FromJavaStringNode;
6564
import org.truffleruby.interop.ToJavaStringNode;
@@ -131,7 +130,7 @@ public abstract static class SetTruffleWorkingDirNode extends PrimitiveArrayArgu
131130
@TruffleBoundary
132131
@Specialization
133132
protected Object setTruffleWorkingDir(RubyString dir) {
134-
TruffleFile truffleFile = getContext().getEnv().getPublicTruffleFile(StringOperations.getString(dir));
133+
TruffleFile truffleFile = getContext().getEnv().getPublicTruffleFile(dir.getJavaString());
135134
final TruffleFile canonicalFile;
136135
try {
137136
canonicalFile = truffleFile.getCanonicalFile();
@@ -154,7 +153,7 @@ public abstract static class GetJavaPropertyNode extends CoreMethodArrayArgument
154153

155154
@Specialization
156155
protected Object getJavaProperty(RubyString property) {
157-
String value = getProperty(StringOperations.getString(property));
156+
String value = getProperty(property.getJavaString());
158157
if (value == null) {
159158
return nil;
160159
} else {
@@ -211,13 +210,13 @@ public abstract static class LogNode extends CoreMethodArrayArgumentsNode {
211210
protected Object logCached(RubySymbol level, RubyString message,
212211
@Cached("level") RubySymbol cachedLevel,
213212
@Cached("getLevel(cachedLevel)") Level javaLevel) {
214-
log(javaLevel, StringOperations.getString(message));
213+
log(javaLevel, message.getJavaString());
215214
return nil;
216215
}
217216

218217
@Specialization(replaces = "logCached")
219218
protected Object log(RubySymbol level, RubyString message) {
220-
log(getLevel(level), StringOperations.getString(message));
219+
log(getLevel(level), message.getJavaString());
221220
return nil;
222221
}
223222

@@ -246,7 +245,7 @@ public abstract static class SetProcessTitleNode extends PrimitiveArrayArguments
246245
@Specialization
247246
protected RubyString setProcessTitle(RubyString name) {
248247
if (TruffleOptions.AOT) {
249-
ProcessProperties.setArgumentVectorProgramName(StringOperations.getString(name));
248+
ProcessProperties.setArgumentVectorProgramName(name.getJavaString());
250249
} else {
251250
// already checked in the caller
252251
throw CompilerDirectives.shouldNotReachHere();

src/main/java/org/truffleruby/core/VMPrimitiveNodes.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,6 @@
6262
import org.truffleruby.core.rope.CodeRange;
6363
import org.truffleruby.core.string.RubyString;
6464
import org.truffleruby.core.string.StringNodes.MakeStringNode;
65-
import org.truffleruby.core.string.StringOperations;
6665
import org.truffleruby.core.thread.RubyThread;
6766
import org.truffleruby.core.thread.ThreadManager;
6867
import org.truffleruby.language.RubyDynamicObject;
@@ -234,8 +233,8 @@ public static abstract class VMWatchSignalNode extends PrimitiveArrayArgumentsNo
234233
@TruffleBoundary
235234
@Specialization
236235
protected boolean restoreDefault(RubyString signalString, RubyString action) {
237-
final String actionString = StringOperations.getString(action);
238-
final String signalName = StringOperations.getString(signalString);
236+
final String actionString = action.getJavaString();
237+
final String signalName = signalString.getJavaString();
239238

240239
switch (actionString) {
241240
case "DEFAULT":
@@ -259,7 +258,7 @@ protected boolean watchSignalProc(RubyString signalString, RubyProc action) {
259258

260259
final RubyContext context = getContext();
261260

262-
String signalName = StringOperations.getString(signalString);
261+
String signalName = signalString.getJavaString();
263262
return registerHandler(signalName, signal -> {
264263
if (context.getOptions().SINGLE_THREADED) {
265264
RubyLanguage.LOGGER.severe(
@@ -378,7 +377,7 @@ public abstract static class VMGetConfigItemNode extends PrimitiveArrayArguments
378377
@TruffleBoundary
379378
@Specialization
380379
protected Object get(RubyString key) {
381-
final Object value = getContext().getNativeConfiguration().get(StringOperations.getString(key));
380+
final Object value = getContext().getNativeConfiguration().get(key.getJavaString());
382381

383382
if (value == null) {
384383
return nil;
@@ -399,7 +398,7 @@ protected Object getSection(RubyString section, RubyProc block,
399398
@Cached YieldNode yieldNode) {
400399
for (Entry<String, Object> entry : getContext()
401400
.getNativeConfiguration()
402-
.getSection(StringOperations.getString(section))) {
401+
.getSection(section.getJavaString())) {
403402
final RubyString key = makeStringNode
404403
.executeMake(entry.getKey(), UTF8Encoding.INSTANCE, CodeRange.CR_7BIT);
405404
yieldNode.executeDispatch(block, key, entry.getValue());

src/main/java/org/truffleruby/core/cast/NameToJavaStringNode.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ protected String nameToJavaString(Object object,
9191
}
9292

9393
if (RubyGuards.isRubyString(coerced)) {
94-
return StringOperations.getString((RubyString) coerced);
94+
return ((RubyString) coerced).getJavaString();
9595
} else {
9696
errorProfile.enter();
9797
throw new RaiseException(context, context.getCoreExceptions().typeErrorBadCoercion(

src/main/java/org/truffleruby/core/encoding/EncodingNodes.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@
4444
import org.truffleruby.core.rope.RopeOperations;
4545
import org.truffleruby.core.string.RubyString;
4646
import org.truffleruby.core.string.StringNodes.MakeStringNode;
47-
import org.truffleruby.core.string.StringOperations;
4847
import org.truffleruby.core.symbol.RubySymbol;
4948
import org.truffleruby.language.Nil;
5049
import org.truffleruby.language.RubyContextNode;
@@ -565,7 +564,7 @@ public abstract static class GetDefaultEncodingNode extends PrimitiveArrayArgume
565564
@TruffleBoundary
566565
@Specialization
567566
protected Object getDefaultEncoding(RubyString name) {
568-
final Encoding encoding = getEncoding(StringOperations.getString(name));
567+
final Encoding encoding = getEncoding(name.getJavaString());
569568
if (encoding == null) {
570569
return nil;
571570
} else {
@@ -629,7 +628,7 @@ public static abstract class EncodingFindIndexNode extends PrimitiveArrayArgumen
629628

630629
@Specialization
631630
protected int encodingFindIndex(RubyString nameObject) {
632-
final String name = StringOperations.getString(nameObject);
631+
final String name = nameObject.getJavaString();
633632
final RubyEncoding encodingObject = getContext().getEncodingManager().getRubyEncoding(name);
634633
return encodingObject != null ? encodingObject.encoding.getIndex() : -1;
635634
}
@@ -696,7 +695,7 @@ public static abstract class EncodingReplicateNode extends EncodingCreationNode
696695

697696
@Specialization
698697
protected RubyArray encodingReplicate(RubyEncoding object, RubyString nameObject) {
699-
final String name = StringOperations.getString(nameObject);
698+
final String name = nameObject.getJavaString();
700699
final Encoding encoding = object.encoding;
701700

702701
final RubyEncoding newEncoding = replicate(name, encoding);
@@ -715,7 +714,7 @@ public static abstract class DummyEncodingeNode extends EncodingCreationNode {
715714

716715
@Specialization
717716
protected RubyArray createDummyEncoding(RubyString nameObject) {
718-
final String name = StringOperations.getString(nameObject);
717+
final String name = nameObject.getJavaString();
719718

720719
final RubyEncoding newEncoding = createDummy(name);
721720
return setIndexOrRaiseError(name, newEncoding);

src/main/java/org/truffleruby/core/exception/CoreExceptions.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ public RubyException argumentErrorWrongArgumentType(Object object, String expect
198198
@TruffleBoundary
199199
public RubyException argumentErrorInvalidStringToInteger(RubyString object, Node currentNode) {
200200
// TODO (nirvdrum 19-Apr-18): Guard against String#inspect being redefined to return something other than a String.
201-
final String formattedObject = StringOperations.getString((RubyString) context.send(object, "inspect"));
201+
final String formattedObject = ((RubyString) context.send(object, "inspect")).getJavaString();
202202
return argumentError(StringUtils.format("invalid value for Integer(): %s", formattedObject), currentNode);
203203
}
204204

@@ -578,7 +578,7 @@ public RubyException typeError(String message, Node currentNode, Throwable javaT
578578
@TruffleBoundary
579579
public RubyException typeErrorUnsupportedTypeException(UnsupportedTypeException exception, Node currentNode) {
580580
RubyArray rubyArray = createArray(context, exception.getSuppliedValues());
581-
String formattedValues = StringOperations.getString((RubyString) context.send(rubyArray, "inspect"));
581+
String formattedValues = ((RubyString) context.send(rubyArray, "inspect")).getJavaString();
582582
return typeError("unsupported type " + formattedValues, currentNode);
583583
}
584584

src/main/java/org/truffleruby/core/exception/ExceptionOperations.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
import org.truffleruby.core.module.ModuleFields;
1616
import org.truffleruby.core.proc.RubyProc;
1717
import org.truffleruby.core.string.RubyString;
18-
import org.truffleruby.core.string.StringOperations;
1918
import org.truffleruby.core.thread.ThreadNodes.ThreadGetExceptionNode;
2019
import org.truffleruby.language.Nil;
2120
import org.truffleruby.language.RubyGuards;
@@ -47,7 +46,7 @@ private static String messageFieldToString(RubyContext context, RubyException ex
4746
final ModuleFields exceptionClass = exception.getLogicalClass().fields;
4847
return exceptionClass.getName(); // What Exception#message would return if no message is set
4948
} else if (RubyGuards.isRubyString(message)) {
50-
return StringOperations.getString((RubyString) message);
49+
return ((RubyString) message).getJavaString();
5150
} else {
5251
return message.toString();
5352
}
@@ -58,7 +57,7 @@ public static String messageToString(RubyContext context, RubyException exceptio
5857
try {
5958
final Object messageObject = context.send(exception, "message");
6059
if (RubyGuards.isRubyString(messageObject)) {
61-
return StringOperations.getString((RubyString) messageObject);
60+
return ((RubyString) messageObject).getJavaString();
6261
}
6362
} catch (Throwable e) {
6463
// Fall back to the internal message field

src/main/java/org/truffleruby/core/kernel/KernelNodes.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,7 @@ public abstract static class FindFileNode extends PrimitiveArrayArgumentsNode {
261261
protected Object findFile(RubyString featureString,
262262
@Cached BranchProfile notFoundProfile,
263263
@Cached MakeStringNode makeStringNode) {
264-
String feature = StringOperations.getString(featureString);
264+
String feature = featureString.getJavaString();
265265
return findFileString(feature, notFoundProfile, makeStringNode);
266266
}
267267

@@ -287,7 +287,7 @@ public abstract static class GetCallerPathNode extends PrimitiveArrayArgumentsNo
287287
@TruffleBoundary
288288
protected RubyString getCallerPath(RubyString feature,
289289
@Cached MakeStringNode makeStringNode) {
290-
final String featureString = StringOperations.getString(feature);
290+
final String featureString = feature.getJavaString();
291291
final String featurePath;
292292
if (new File(featureString).isAbsolute()) {
293293
featurePath = featureString;
@@ -329,7 +329,7 @@ public abstract static class LoadFeatureNode extends PrimitiveArrayArgumentsNode
329329

330330
@Specialization
331331
protected boolean loadFeature(RubyString featureString, RubyString expandedPathString) {
332-
return requireNode.executeRequire(StringOperations.getString(featureString), expandedPathString);
332+
return requireNode.executeRequire(featureString.getJavaString(), expandedPathString);
333333
}
334334

335335
}

src/main/java/org/truffleruby/core/kernel/TruffleKernelNodes.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import org.truffleruby.core.module.RubyModule;
2626
import org.truffleruby.core.string.RubyString;
2727
import org.truffleruby.core.proc.RubyProc;
28-
import org.truffleruby.core.string.StringOperations;
2928
import org.truffleruby.core.symbol.RubySymbol;
3029
import org.truffleruby.core.binding.RubyBinding;
3130
import org.truffleruby.language.RubyNode;
@@ -79,7 +78,7 @@ protected RubyNode coerceToBoolean(RubyNode inherit) {
7978
@Specialization
8079
protected boolean load(RubyString file, boolean wrap,
8180
@Cached IndirectCallNode callNode) {
82-
final String feature = StringOperations.getString(file);
81+
final String feature = file.getJavaString();
8382
final RubySource source;
8483
try {
8584
final FileLoader fileLoader = new FileLoader(getContext());

src/main/java/org/truffleruby/core/module/ModuleNodes.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -596,7 +596,7 @@ protected Object isAutoloadSymbol(RubyModule module, RubySymbol name) {
596596

597597
@Specialization
598598
protected Object isAutoloadString(RubyModule module, RubyString name) {
599-
return isAutoload(module, StringOperations.getString(name));
599+
return isAutoload(module, name.getJavaString());
600600
}
601601

602602
private Object isAutoload(RubyModule module, String name) {
@@ -646,7 +646,7 @@ protected Object classEval(
646646
NotProvided line,
647647
NotProvided block,
648648
@Cached IndirectCallNode callNode) {
649-
return classEvalSource(frame, module, code, StringOperations.getString(file), callNode);
649+
return classEvalSource(frame, module, code, file.getJavaString(), callNode);
650650
}
651651

652652
@Specialization
@@ -662,7 +662,7 @@ protected Object classEval(
662662
frame,
663663
module,
664664
code,
665-
StringOperations.getString(file),
665+
file.getJavaString(),
666666
line);
667667
return deferredCall.call(callNode);
668668
}
@@ -688,7 +688,7 @@ protected Object classEval(
688688
NotProvided line,
689689
NotProvided block,
690690
@Cached IndirectCallNode callNode) {
691-
return classEvalSource(frame, module, code, StringOperations.getString(toStr(frame, file)), callNode);
691+
return classEvalSource(frame, module, code, toStr(frame, file).getJavaString(), callNode);
692692
}
693693

694694
private Object classEvalSource(VirtualFrame frame, RubyModule module, RubyString code, String file,
@@ -973,7 +973,7 @@ protected Object getConstantNoInherit(RubyModule module, RubySymbol name, boolea
973973
limit = "getLimit()")
974974
protected Object getConstantStringCached(RubyModule module, RubyString name, boolean inherit,
975975
@Cached("privatizeRope(name)") Rope cachedRope,
976-
@Cached("getString(name)") String cachedString,
976+
@Cached("name.getJavaString()") String cachedString,
977977
@Cached RopeNodes.EqualNode equalNode,
978978
@Cached("isScoped(cachedString)") boolean scoped) {
979979
return getConstant(module, cachedString);
@@ -983,12 +983,12 @@ protected Object getConstantStringCached(RubyModule module, RubyString name, boo
983983
guards = { "inherit", "!isScoped(name)" },
984984
replaces = "getConstantStringCached")
985985
protected Object getConstantString(RubyModule module, RubyString name, boolean inherit) {
986-
return getConstant(module, StringOperations.getString(name));
986+
return getConstant(module, name.getJavaString());
987987
}
988988

989989
@Specialization(guards = { "!inherit", "!isScoped(name)" })
990990
protected Object getConstantNoInheritString(RubyModule module, RubyString name, boolean inherit) {
991-
return getConstantNoInherit(module, StringOperations.getString(name));
991+
return getConstantNoInherit(module, name.getJavaString());
992992
}
993993

994994
// Scoped String
@@ -1015,7 +1015,7 @@ private RubyConstant lookupConstantNoInherit(LexicalScope lexicalScope, RubyModu
10151015
@TruffleBoundary
10161016
boolean isScoped(RubyString name) {
10171017
// TODO (eregon, 27 May 2015): Any way to make this efficient?
1018-
return StringOperations.getString(name).contains("::");
1018+
return name.getJavaString().contains("::");
10191019
}
10201020

10211021
boolean isScoped(String name) {
@@ -1932,7 +1932,7 @@ protected RubyString toS(RubyModule module) {
19321932
}
19331933
final Object inspectResult = callRbInspect
19341934
.call(coreLibrary().truffleTypeModule, "rb_inspect", attached);
1935-
attachedName = StringOperations.getString((RubyString) inspectResult);
1935+
attachedName = ((RubyString) inspectResult).getJavaString();
19361936
}
19371937
moduleName = "#<Class:" + attachedName + ">";
19381938
} else if (fields.isRefinement()) {

0 commit comments

Comments
 (0)