Skip to content

Commit 1d923d5

Browse files
committed
All specializations of inlined nodes are static
1 parent dc0023e commit 1d923d5

File tree

2 files changed

+15
-15
lines changed

2 files changed

+15
-15
lines changed

src/main/java/org/truffleruby/language/objects/ForeignClassNode.java

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
@ReportPolymorphism
3232
@GenerateUncached
3333
@GenerateCached(false)
34-
@GenerateInline(inlineByDefault = true)
34+
@GenerateInline
3535
public abstract class ForeignClassNode extends RubyBaseNode {
3636

3737
// Specs for traits are in
@@ -75,21 +75,21 @@ boolean isSet(int traits) {
7575
public abstract RubyClass execute(Node node, Object value);
7676

7777
@Specialization(guards = "getTraits(object, interop) == cachedTraits", limit = "getInteropCacheLimit()")
78-
protected RubyClass cached(Object object,
78+
protected static RubyClass cached(Node node, Object object,
7979
@CachedLibrary("object") InteropLibrary interop,
8080
@Cached("getTraits(object, interop)") int cachedTraits) {
8181
assert RubyGuards.isForeignObject(object);
82-
return classForTraits(cachedTraits);
82+
return classForTraits(node, cachedTraits);
8383
}
8484

8585
@Specialization(replaces = "cached", limit = "getInteropCacheLimit()")
86-
protected RubyClass uncached(Object object,
86+
protected static RubyClass uncached(Node node, Object object,
8787
@CachedLibrary("object") InteropLibrary interop) {
8888
assert RubyGuards.isForeignObject(object);
89-
return classForTraits(getTraits(object, interop));
89+
return classForTraits(node, getTraits(object, interop));
9090
}
9191

92-
protected int getTraits(Object object, InteropLibrary interop) {
92+
protected static int getTraits(Object object, InteropLibrary interop) {
9393
return (interop.hasHashEntries(object) ? Trait.HASH.bit : 0) +
9494
(interop.hasArrayElements(object) ? Trait.ARRAY.bit : 0) +
9595
(interop.isException(object) ? Trait.EXCEPTION.bit : 0) +
@@ -104,25 +104,25 @@ protected int getTraits(Object object, InteropLibrary interop) {
104104
(interop.isString(object) ? Trait.STRING.bit : 0);
105105
}
106106

107-
private RubyClass classForTraits(int traits) {
108-
RubyClass rubyClass = coreLibrary().polyglotForeignClasses[traits];
107+
private static RubyClass classForTraits(Node node, int traits) {
108+
RubyClass rubyClass = coreLibrary(node).polyglotForeignClasses[traits];
109109
if (rubyClass == null) {
110110
CompilerDirectives.transferToInterpreterAndInvalidate();
111-
rubyClass = resolvePolyglotForeignClass(traits);
112-
coreLibrary().polyglotForeignClasses[traits] = rubyClass;
111+
rubyClass = resolvePolyglotForeignClass(node, traits);
112+
coreLibrary(node).polyglotForeignClasses[traits] = rubyClass;
113113
}
114114
return rubyClass;
115115
}
116116

117-
private RubyClass resolvePolyglotForeignClass(int traits) {
117+
private static RubyClass resolvePolyglotForeignClass(Node node, int traits) {
118118
final ArrayList<RubySymbol> traitsList = new ArrayList<>();
119119
for (Trait trait : Trait.VALUES) {
120120
if (trait.isSet(traits)) {
121-
traitsList.add(getSymbol(trait.name));
121+
traitsList.add(getSymbol(node, trait.name));
122122
}
123123
}
124124
final Object[] traitSymbols = traitsList.toArray();
125-
return (RubyClass) DispatchNode.getUncached().call(coreLibrary().truffleInteropOperationsModule,
125+
return (RubyClass) DispatchNode.getUncached().call(coreLibrary(node).truffleInteropOperationsModule,
126126
"resolve_polyglot_class", traitSymbols);
127127
}
128128
}

src/main/java/org/truffleruby/language/objects/MetaClassNode.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,14 @@ public final RubyClass executeCached(Object value) {
4444
@Specialization(
4545
guards = { "isSingleContext()", "object == cachedObject", "metaClass.isSingleton" },
4646
limit = "1")
47-
protected RubyClass singleton(RubyDynamicObject object,
47+
protected static RubyClass singleton(Node node, RubyDynamicObject object,
4848
@Cached("object") RubyDynamicObject cachedObject,
4949
@Cached("object.getMetaClass()") RubyClass metaClass) {
5050
return metaClass;
5151
}
5252

5353
@Specialization(replaces = "singleton")
54-
protected RubyClass object(RubyDynamicObject object) {
54+
protected static RubyClass object(RubyDynamicObject object) {
5555
return object.getMetaClass();
5656
}
5757

0 commit comments

Comments
 (0)