@@ -98,7 +98,6 @@ public class CoreLibrary {
98
98
private final DynamicObjectFactory arrayFactory ;
99
99
private final DynamicObject basicObjectClass ;
100
100
private final DynamicObjectFactory bignumFactory ;
101
- private final DynamicObject bindingClass ;
102
101
private final DynamicObjectFactory bindingFactory ;
103
102
private final DynamicObject classClass ;
104
103
private final DynamicObject complexClass ;
@@ -109,7 +108,6 @@ public class CoreLibrary {
109
108
private final DynamicObject encodingErrorClass ;
110
109
private final DynamicObject exceptionClass ;
111
110
private final DynamicObject falseClass ;
112
- private final DynamicObject fiberClass ;
113
111
private final DynamicObjectFactory fiberFactory ;
114
112
private final DynamicObject floatClass ;
115
113
private final DynamicObject floatDomainErrorClass ;
@@ -123,7 +121,6 @@ public class CoreLibrary {
123
121
private final DynamicObject loadErrorClass ;
124
122
private final DynamicObject localJumpErrorClass ;
125
123
private final DynamicObject matchDataClass ;
126
- private final DynamicObjectFactory matchDataFactory ;
127
124
private final DynamicObject moduleClass ;
128
125
private final DynamicObject nameErrorClass ;
129
126
private final DynamicObjectFactory nameErrorFactory ;
@@ -143,7 +140,6 @@ public class CoreLibrary {
143
140
private final DynamicObjectFactory longRangeFactory ;
144
141
private final DynamicObject rangeErrorClass ;
145
142
private final DynamicObject rationalClass ;
146
- private final DynamicObject regexpClass ;
147
143
private final DynamicObjectFactory regexpFactory ;
148
144
private final DynamicObject regexpErrorClass ;
149
145
private final DynamicObject graalErrorClass ;
@@ -161,11 +157,7 @@ public class CoreLibrary {
161
157
private final DynamicObject systemExitClass ;
162
158
private final DynamicObject threadClass ;
163
159
private final DynamicObjectFactory threadFactory ;
164
- private final DynamicObject threadBacktraceClass ;
165
- private final DynamicObject threadBacktraceLocationClass ;
166
160
private final DynamicObjectFactory threadBacktraceLocationFactory ;
167
- private final DynamicObject timeClass ;
168
- private final DynamicObjectFactory timeFactory ;
169
161
private final DynamicObject trueClass ;
170
162
private final DynamicObject typeErrorClass ;
171
163
private final DynamicObject zeroDivisionErrorClass ;
@@ -189,31 +181,22 @@ public class CoreLibrary {
189
181
private final DynamicObject bigDecimalOperationsModule ;
190
182
private final DynamicObject encodingCompatibilityErrorClass ;
191
183
private final DynamicObject encodingUndefinedConversionErrorClass ;
192
- private final DynamicObject methodClass ;
193
184
private final DynamicObjectFactory methodFactory ;
194
- private final DynamicObject unboundMethodClass ;
195
185
private final DynamicObjectFactory unboundMethodFactory ;
196
- private final DynamicObject byteArrayClass ;
197
186
private final DynamicObjectFactory byteArrayFactory ;
198
187
private final DynamicObject fiberErrorClass ;
199
188
private final DynamicObject threadErrorClass ;
200
189
private final DynamicObject objectSpaceModule ;
201
- private final DynamicObject randomizerClass ;
202
190
private final DynamicObjectFactory randomizerFactory ;
203
- private final DynamicObject atomicReferenceClass ;
204
- private final DynamicObject handleClass ;
205
191
private final DynamicObjectFactory handleFactory ;
206
192
private final DynamicObject ioClass ;
207
- private final DynamicObject stopIterationClass ;
208
193
private final DynamicObject closedQueueErrorClass ;
209
194
private final DynamicObject warningModule ;
210
195
211
196
private final DynamicObject argv ;
212
197
private final GlobalVariables globalVariables ;
213
198
private final DynamicObject mainObject ;
214
199
private final DynamicObject nil ;
215
- private final Object supportUndefined ;
216
- private final DynamicObject digestClass ;
217
200
private final DynamicObjectFactory digestFactory ;
218
201
private final DynamicObject structClass ;
219
202
@@ -377,7 +360,7 @@ public CoreLibrary(RubyContext context) {
377
360
// StandardError > IndexError
378
361
indexErrorClass = defineClass (standardErrorClass , "IndexError" );
379
362
keyErrorClass = defineClass (indexErrorClass , "KeyError" );
380
- stopIterationClass = defineClass (indexErrorClass , "StopIteration" );
363
+ DynamicObject stopIterationClass = defineClass (indexErrorClass , "StopIteration" );
381
364
closedQueueErrorClass = defineClass (stopIterationClass , "ClosedQueueError" );
382
365
383
366
// StandardError > IOError
@@ -432,7 +415,7 @@ public CoreLibrary(RubyContext context) {
432
415
arrayClass = defineClass ("Array" );
433
416
arrayFactory = Layouts .ARRAY .createArrayShape (arrayClass , arrayClass );
434
417
Layouts .CLASS .setInstanceFactoryUnsafe (arrayClass , arrayFactory );
435
- bindingClass = defineClass ("Binding" );
418
+ DynamicObject bindingClass = defineClass ("Binding" );
436
419
bindingFactory = Layouts .BINDING .createBindingShape (bindingClass , bindingClass );
437
420
Layouts .CLASS .setInstanceFactoryUnsafe (bindingClass , bindingFactory );
438
421
defineClass ("Data" ); // Needed by Socket::Ifaddr and defined in core MRI
@@ -441,7 +424,7 @@ public CoreLibrary(RubyContext context) {
441
424
encodingFactory = Layouts .ENCODING .createEncodingShape (encodingClass , encodingClass );
442
425
Layouts .CLASS .setInstanceFactoryUnsafe (encodingClass , encodingFactory );
443
426
falseClass = defineClass ("FalseClass" );
444
- fiberClass = defineClass ("Fiber" );
427
+ DynamicObject fiberClass = defineClass ("Fiber" );
445
428
fiberFactory = Layouts .FIBER .createFiberShape (fiberClass , fiberClass );
446
429
Layouts .CLASS .setInstanceFactoryUnsafe (fiberClass , fiberFactory );
447
430
defineModule ("FileTest" );
@@ -454,9 +437,9 @@ public CoreLibrary(RubyContext context) {
454
437
}
455
438
Layouts .CLASS .setInstanceFactoryUnsafe (hashClass , hashFactory );
456
439
matchDataClass = defineClass ("MatchData" );
457
- matchDataFactory = Layouts .MATCH_DATA .createMatchDataShape (matchDataClass , matchDataClass );
440
+ DynamicObjectFactory matchDataFactory = Layouts .MATCH_DATA .createMatchDataShape (matchDataClass , matchDataClass );
458
441
Layouts .CLASS .setInstanceFactoryUnsafe (matchDataClass , matchDataFactory );
459
- methodClass = defineClass ("Method" );
442
+ DynamicObject methodClass = defineClass ("Method" );
460
443
methodFactory = Layouts .METHOD .createMethodShape (methodClass , methodClass );
461
444
Layouts .CLASS .setInstanceFactoryUnsafe (methodClass , methodFactory );
462
445
final DynamicObject mutexClass = defineClass ("Mutex" );
@@ -480,7 +463,7 @@ public CoreLibrary(RubyContext context) {
480
463
Layouts .OBJECT_RANGE .createObjectRangeShape (rangeClass , rangeClass ));
481
464
intRangeFactory = Layouts .INT_RANGE .createIntRangeShape (rangeClass , rangeClass );
482
465
longRangeFactory = Layouts .LONG_RANGE .createLongRangeShape (rangeClass , rangeClass );
483
- regexpClass = defineClass ("Regexp" );
466
+ DynamicObject regexpClass = defineClass ("Regexp" );
484
467
regexpFactory = Layouts .REGEXP .createRegexpShape (regexpClass , regexpClass );
485
468
Layouts .CLASS .setInstanceFactoryUnsafe (regexpClass , regexpFactory );
486
469
stringClass = defineClass ("String" );
@@ -495,16 +478,16 @@ public CoreLibrary(RubyContext context) {
495
478
threadFactory = Layouts .THREAD .createThreadShape (threadClass , threadClass );
496
479
Layouts .CLASS .setInstanceFactoryUnsafe (threadClass , threadFactory );
497
480
498
- threadBacktraceClass = defineClass (threadClass , objectClass , "Backtrace" );
499
- threadBacktraceLocationClass = defineClass (threadBacktraceClass , objectClass , "Location" );
481
+ DynamicObject threadBacktraceClass = defineClass (threadClass , objectClass , "Backtrace" );
482
+ DynamicObject threadBacktraceLocationClass = defineClass (threadBacktraceClass , objectClass , "Location" );
500
483
threadBacktraceLocationFactory = ThreadBacktraceLocationLayoutImpl .INSTANCE
501
484
.createThreadBacktraceLocationShape (threadBacktraceLocationClass , threadBacktraceLocationClass );
502
485
Layouts .CLASS .setInstanceFactoryUnsafe (threadBacktraceLocationClass , threadBacktraceLocationFactory );
503
- timeClass = defineClass ("Time" );
504
- timeFactory = Layouts .TIME .createTimeShape (timeClass , timeClass );
486
+ DynamicObject timeClass = defineClass ("Time" );
487
+ DynamicObjectFactory timeFactory = Layouts .TIME .createTimeShape (timeClass , timeClass );
505
488
Layouts .CLASS .setInstanceFactoryUnsafe (timeClass , timeFactory );
506
489
trueClass = defineClass ("TrueClass" );
507
- unboundMethodClass = defineClass ("UnboundMethod" );
490
+ DynamicObject unboundMethodClass = defineClass ("UnboundMethod" );
508
491
unboundMethodFactory = Layouts .UNBOUND_METHOD .createUnboundMethodShape (unboundMethodClass , unboundMethodClass );
509
492
Layouts .CLASS .setInstanceFactoryUnsafe (unboundMethodClass , unboundMethodFactory );
510
493
ioClass = defineClass ("IO" );
@@ -546,7 +529,7 @@ public CoreLibrary(RubyContext context) {
546
529
.createEncodingConverterShape (encodingConverterClass , encodingConverterClass ));
547
530
548
531
final DynamicObject truffleRubyModule = defineModule ("TruffleRuby" );
549
- atomicReferenceClass = defineClass (truffleRubyModule , objectClass , "AtomicReference" );
532
+ DynamicObject atomicReferenceClass = defineClass (truffleRubyModule , objectClass , "AtomicReference" );
550
533
Layouts .CLASS .setInstanceFactoryUnsafe (
551
534
atomicReferenceClass ,
552
535
Layouts .ATOMIC_REFERENCE .createAtomicReferenceShape (atomicReferenceClass , atomicReferenceClass ));
@@ -574,7 +557,7 @@ public CoreLibrary(RubyContext context) {
574
557
defineModule (truffleModule , "ReadlineHistory" );
575
558
truffleThreadOperationsModule = defineModule (truffleModule , "ThreadOperations" );
576
559
defineModule (truffleModule , "WeakRefOperations" );
577
- handleClass = defineClass (truffleModule , objectClass , "Handle" );
560
+ DynamicObject handleClass = defineClass (truffleModule , objectClass , "Handle" );
578
561
handleFactory = Layouts .HANDLE .createHandleShape (handleClass , handleClass );
579
562
Layouts .CLASS .setInstanceFactoryUnsafe (handleClass , handleFactory );
580
563
defineModule ("Polyglot" );
@@ -596,18 +579,18 @@ public CoreLibrary(RubyContext context) {
596
579
597
580
truffleTypeModule = defineModule (truffleModule , "Type" );
598
581
599
- byteArrayClass = defineClass (truffleModule , objectClass , "ByteArray" );
582
+ DynamicObject byteArrayClass = defineClass (truffleModule , objectClass , "ByteArray" );
600
583
byteArrayFactory = Layouts .BYTE_ARRAY .createByteArrayShape (byteArrayClass , byteArrayClass );
601
584
Layouts .CLASS .setInstanceFactoryUnsafe (byteArrayClass , byteArrayFactory );
602
585
defineClass (truffleModule , objectClass , "StringData" );
603
586
defineClass (encodingClass , objectClass , "Transcoding" );
604
- randomizerClass = defineClass (truffleModule , objectClass , "Randomizer" );
587
+ DynamicObject randomizerClass = defineClass (truffleModule , objectClass , "Randomizer" );
605
588
randomizerFactory = Layouts .RANDOMIZER .createRandomizerShape (randomizerClass , randomizerClass );
606
589
Layouts .CLASS .setInstanceFactoryUnsafe (randomizerClass , randomizerFactory );
607
590
608
591
// Standard library
609
592
610
- digestClass = defineClass (truffleModule , basicObjectClass , "Digest" );
593
+ DynamicObject digestClass = defineClass (truffleModule , basicObjectClass , "Digest" );
611
594
digestFactory = Layouts .DIGEST .createDigestShape (digestClass , digestClass );
612
595
Layouts .CLASS .setInstanceFactoryUnsafe (digestClass , digestFactory );
613
596
@@ -621,7 +604,6 @@ public CoreLibrary(RubyContext context) {
621
604
nil = nilFactory .newInstance ();
622
605
emptyDescriptor = new FrameDescriptor (nil );
623
606
argv = Layouts .ARRAY .createArray (arrayFactory , ArrayStrategy .NULL_ARRAY_STORE , 0 );
624
- supportUndefined = NotProvided .INSTANCE ;
625
607
626
608
globalVariables = new GlobalVariables (nil );
627
609
@@ -772,7 +754,7 @@ private void initializeConstants() {
772
754
773
755
setConstant (objectClass , "ARGV" , argv );
774
756
775
- setConstant (truffleModule , "UNDEFINED" , supportUndefined );
757
+ setConstant (truffleModule , "UNDEFINED" , NotProvided . INSTANCE );
776
758
777
759
setConstant (encodingConverterClass , "INVALID_MASK" , EConvFlags .INVALID_MASK );
778
760
setConstant (encodingConverterClass , "INVALID_REPLACE" , EConvFlags .INVALID_REPLACE );
0 commit comments