116
116
import org .truffleruby .language .literal .IntegerFixnumLiteralNode ;
117
117
import org .truffleruby .language .literal .LongFixnumLiteralNode ;
118
118
import org .truffleruby .language .literal .NilLiteralNode ;
119
+ import org .truffleruby .language .literal .ObjectClassLiteralNode ;
119
120
import org .truffleruby .language .literal .ObjectLiteralNode ;
121
+ import org .truffleruby .language .literal .RangeClassLiteralNode ;
120
122
import org .truffleruby .language .literal .StringLiteralNode ;
123
+ import org .truffleruby .language .literal .TruffleInternalModuleLiteralNode ;
124
+ import org .truffleruby .language .literal .TruffleKernelOperationsModuleLiteralNode ;
121
125
import org .truffleruby .language .locals .DeclarationFlipFlopStateNode ;
122
126
import org .truffleruby .language .locals .FlipFlopNode ;
123
127
import org .truffleruby .language .locals .FlipFlopStateNode ;
@@ -775,7 +779,7 @@ public RubyNode visitCaseNode(CaseParseNode node) {
775
779
method = "===" ;
776
780
arguments = new RubyNode []{ NodeUtil .cloneNode (readTemp ) };
777
781
} else {
778
- receiver = new ObjectLiteralNode ( context . getCoreLibrary (). truffleInternalModule );
782
+ receiver = new TruffleInternalModuleLiteralNode ( );
779
783
receiver .unsafeSetSourceSection (sourceSection );
780
784
method = "when_splat" ;
781
785
arguments = new RubyNode []{ rubyExpression , NodeUtil .cloneNode (readTemp ) };
@@ -984,7 +988,7 @@ public RubyNode visitColon3Node(Colon3ParseNode node) {
984
988
final SourceIndexLength sourceSection = node .getPosition ();
985
989
final String name = node .getName ();
986
990
987
- final ObjectLiteralNode root = new ObjectLiteralNode ( context . getCoreLibrary (). objectClass );
991
+ final ObjectClassLiteralNode root = new ObjectClassLiteralNode ( );
988
992
root .unsafeSetSourceSection (sourceSection );
989
993
990
994
final RubyNode ret = new ReadConstantNode (root , name );
@@ -1001,7 +1005,7 @@ private RubyNode translateCPath(SourceIndexLength sourceSection, Colon3ParseNode
1001
1005
} else if (node instanceof Colon2ConstParseNode ) { // A::B
1002
1006
ret = ((Colon2ConstParseNode ) node ).getLeftNode ().accept (this );
1003
1007
} else { // Colon3ParseNode: on top-level (Object)
1004
- ret = new ObjectLiteralNode ( context . getCoreLibrary (). objectClass );
1008
+ ret = new ObjectClassLiteralNode ( );
1005
1009
ret .unsafeSetSourceSection (sourceSection );
1006
1010
}
1007
1011
@@ -1035,7 +1039,7 @@ public RubyNode visitConstDeclNode(ConstDeclParseNode node) {
1035
1039
constNode = ((Colon2ParseNode ) constNode ).getLeftNode (); // Misleading doc, we only want the defined part.
1036
1040
moduleNode = constNode .accept (this );
1037
1041
} else if (constNode instanceof Colon3ParseNode ) {
1038
- moduleNode = new ObjectLiteralNode ( context . getCoreLibrary (). objectClass );
1042
+ moduleNode = new ObjectClassLiteralNode ( );
1039
1043
} else {
1040
1044
throw CompilerDirectives .shouldNotReachHere ();
1041
1045
}
@@ -1298,7 +1302,7 @@ public RubyNode visitDotNode(DotParseNode node) {
1298
1302
final SourceIndexLength sourceSection = node .getPosition ();
1299
1303
final RubyNode begin = node .getBeginNode ().accept (this );
1300
1304
final RubyNode end = node .getEndNode ().accept (this );
1301
- final RubyNode rangeClass = new ObjectLiteralNode ( context . getCoreLibrary (). rangeClass );
1305
+ final RubyNode rangeClass = new RangeClassLiteralNode ( );
1302
1306
final RubyNode isExclusive = new ObjectLiteralNode (node .isExclusive ());
1303
1307
1304
1308
final RubyNode ret = RangeNodesFactory .NewNodeFactory .create (rangeClass , begin , end , isExclusive );
@@ -2665,8 +2669,7 @@ public RubyNode visitPostExeNode(PostExeParseNode node) {
2665
2669
position ,
2666
2670
new TruffleFragmentParseNode (
2667
2671
position ,
2668
- new ObjectLiteralNode (
2669
- context .getCoreLibrary ().truffleKernelOperationsModule )),
2672
+ new TruffleKernelOperationsModuleLiteralNode ()),
2670
2673
"at_exit" ,
2671
2674
new ArrayParseNode (position , new TrueParseNode (position )),
2672
2675
new IterParseNode (position , node .getArgsNode (), scope , node .getBodyNode ())),
@@ -2706,7 +2709,7 @@ public RubyNode visitBigRationalNode(BigRationalParseNode node) {
2706
2709
private RubyNode translateRationalComplex (SourceIndexLength sourceSection , String name , RubyNode a , RubyNode b ) {
2707
2710
// Translate as Rational.convert(a, b) # ignoring visibility
2708
2711
2709
- final RubyNode moduleNode = new ObjectLiteralNode ( context . getCoreLibrary (). objectClass );
2712
+ final RubyNode moduleNode = new ObjectClassLiteralNode ( );
2710
2713
ReadConstantNode receiver = new ReadConstantNode (moduleNode , name );
2711
2714
RubyNode [] arguments = new RubyNode []{ a , b };
2712
2715
RubyCallNodeParameters parameters = new RubyCallNodeParameters (
0 commit comments