@@ -1349,24 +1349,21 @@ protected Object write(Object receiver, Object identifier, Object value,
1349
1349
}
1350
1350
}
1351
1351
1352
- @ GenerateUncached
1353
- @ GenerateNodeFactory
1354
1352
@ CoreMethod (names = "write_member_without_conversion" , onSingleton = true , required = 3 )
1355
- @ NodeChild (value = "argumentNodes" , type = RubyNode [].class )
1356
- public abstract static class WriteMemberWithoutConversionNode extends RubySourceNode {
1353
+ public abstract static class InteropWriteMemberWithoutConversionNode extends CoreMethodArrayArgumentsNode {
1357
1354
1358
- public static WriteMemberWithoutConversionNode create () {
1359
- return InteropNodesFactory .WriteMemberWithoutConversionNodeFactory .create (null );
1355
+ @ Specialization
1356
+ protected Object write (Object receiver , Object identifier , Object value ,
1357
+ @ Cached WriteMemberWithoutConversionNode writeMemberWithoutConversionNode ) {
1358
+ return writeMemberWithoutConversionNode .execute (receiver , identifier , value );
1360
1359
}
1360
+ }
1361
1361
1362
- public static WriteMemberWithoutConversionNode create (RubyNode [] argumentNodes ) {
1363
- return InteropNodesFactory .WriteMemberWithoutConversionNodeFactory .create (argumentNodes );
1364
- }
1362
+ @ GenerateUncached
1363
+ public abstract static class WriteMemberWithoutConversionNode extends RubyBaseNode {
1365
1364
1366
1365
public abstract Object execute (Object receiver , Object identifier , Object value );
1367
1366
1368
- abstract RubyNode [] getArgumentNodes ();
1369
-
1370
1367
@ Specialization (limit = "getInteropCacheLimit()" )
1371
1368
protected Object write (Object receiver , Object identifier , Object value ,
1372
1369
@ CachedLibrary ("receiver" ) InteropLibrary receivers ,
@@ -1381,12 +1378,6 @@ protected Object write(Object receiver, Object identifier, Object value,
1381
1378
1382
1379
return value ;
1383
1380
}
1384
-
1385
- @ Override
1386
- public RubyNode cloneUninitialized () {
1387
- return create (cloneUninitialized (getArgumentNodes ())).copyFlags (this );
1388
- }
1389
-
1390
1381
}
1391
1382
1392
1383
@ CoreMethod (names = "remove_member" , onSingleton = true , required = 2 )
0 commit comments