17
17
import org .truffleruby .core .module .RubyModule ;
18
18
import org .truffleruby .language .Visibility ;
19
19
import org .truffleruby .language .arguments .RubyArguments ;
20
- import org .truffleruby .language .objects .SingletonClassNode ;
21
20
22
21
import com .oracle .truffle .api .CompilerDirectives ;
23
22
import com .oracle .truffle .api .CompilerDirectives .TruffleBoundary ;
24
23
import com .oracle .truffle .api .frame .Frame ;
24
+ import org .truffleruby .language .objects .SingletonClassNode ;
25
25
26
26
/** The set of values captured when a method is defined:
27
27
* <ul>
@@ -35,7 +35,7 @@ public class DeclarationContext {
35
35
36
36
/** @see <a href="http://yugui.jp/articles/846">http://yugui.jp/articles/846</a> */
37
37
private interface DefaultDefinee {
38
- RubyModule getModuleToDefineMethods (SingletonClassNode singletonClassNode );
38
+ RubyModule getModuleToDefineMethods ();
39
39
}
40
40
41
41
/** #instance_eval, the default definee is self.singleton_class */
@@ -46,8 +46,8 @@ public SingletonClassOfSelfDefaultDefinee(Object self) {
46
46
this .self = self ;
47
47
}
48
48
49
- public RubyModule getModuleToDefineMethods (SingletonClassNode singletonClassNode ) {
50
- return singletonClassNode .executeSingletonClass (self );
49
+ public RubyModule getModuleToDefineMethods () {
50
+ return SingletonClassNode . getUncached () .executeSingletonClass (self );
51
51
}
52
52
}
53
53
@@ -59,7 +59,7 @@ public FixedDefaultDefinee(RubyModule module) {
59
59
this .module = module ;
60
60
}
61
61
62
- public RubyModule getModuleToDefineMethods (SingletonClassNode singletonClassNode ) {
62
+ public RubyModule getModuleToDefineMethods () {
63
63
return module ;
64
64
}
65
65
}
@@ -159,9 +159,9 @@ public RubyModule[] getRefinementsFor(RubyModule module) {
159
159
}
160
160
161
161
@ TruffleBoundary
162
- public RubyModule getModuleToDefineMethods (SingletonClassNode singletonClassNode ) {
162
+ public RubyModule getModuleToDefineMethods () {
163
163
assert defaultDefinee != null : "Trying to find the default definee but this method should not have method definitions inside" ;
164
- return defaultDefinee .getModuleToDefineMethods (singletonClassNode );
164
+ return defaultDefinee .getModuleToDefineMethods ();
165
165
}
166
166
167
167
public boolean hasRefinements () {
0 commit comments