@@ -77,10 +77,10 @@ void doList(VirtualFrame frame, PList object, Object key, Object value,
7777 }
7878
7979 @ InliningCutoff
80- @ Specialization
81- void doWithFrame (VirtualFrame frame , Object primary , Object index , Object value ,
80+ @ Specialization ( replaces = "doList" )
81+ void doWithFrame (Frame frame , Object primary , Object index , Object value ,
8282 @ Cached GetClassNode getClassNode ,
83- @ Cached ("create( SetItem) " ) LookupSpecialMethodSlotNode lookupSetitem ,
83+ @ Cached (parameters = " SetItem" ) LookupSpecialMethodSlotNode lookupSetitem ,
8484 @ Cached PRaiseNode raise ,
8585 @ Cached CallTernaryMethodNode callSetitem ) {
8686 Object setitem = lookupSetitem .execute (frame , getClassNode .execute (primary ), primary );
@@ -90,20 +90,6 @@ void doWithFrame(VirtualFrame frame, Object primary, Object index, Object value,
9090 callSetitem .execute (frame , setitem , primary , index , value );
9191 }
9292
93- @ InliningCutoff
94- @ Specialization (replaces = {"doWithFrame" , "doList" })
95- void doGeneric (Object primary , Object index , Object value ,
96- @ Cached GetClassNode getClassNode ,
97- @ Cached (parameters = "SetItem" ) LookupCallableSlotInMRONode lookupSetitem ,
98- @ Cached PRaiseNode raise ,
99- @ Cached CallTernaryMethodNode callSetitem ) {
100- Object setitem = lookupSetitem .execute (getClassNode .execute (primary ));
101- if (setitem == PNone .NO_VALUE ) {
102- throw raise .raise (TypeError , ErrorMessages .P_OBJ_DOES_NOT_SUPPORT_ITEM_ASSIGMENT , primary );
103- }
104- callSetitem .execute (null , setitem , primary , index , value );
105- }
106-
10793 public static PyObjectSetItem create () {
10894 return PyObjectSetItemNodeGen .create ();
10995 }
0 commit comments