25
25
*/
26
26
package com .oracle .graal .python .builtins .objects .str ;
27
27
28
+ import static com .oracle .graal .python .nodes .BuiltinNames .ENCODE ;
29
+ import static com .oracle .graal .python .nodes .BuiltinNames .FORMAT ;
30
+ import static com .oracle .graal .python .nodes .BuiltinNames .FORMAT_MAP ;
31
+ import static com .oracle .graal .python .nodes .ErrorMessages .ENCODER_RETURNED_P_INSTEAD_OF_BYTES ;
32
+ import static com .oracle .graal .python .nodes .ErrorMessages .OBJ_NOT_SUBSCRIPTABLE ;
33
+ import static com .oracle .graal .python .nodes .ErrorMessages .TAKES_EXACTLY_S_ARGUMENTS_D_GIVEN ;
28
34
import static com .oracle .graal .python .nodes .SpecialMethodNames .__ADD__ ;
29
35
import static com .oracle .graal .python .nodes .SpecialMethodNames .__CONTAINS__ ;
30
36
import static com .oracle .graal .python .nodes .SpecialMethodNames .__EQ__ ;
83
89
import com .oracle .graal .python .builtins .objects .common .SequenceNodesFactory .GetObjectArrayNodeGen ;
84
90
import com .oracle .graal .python .builtins .objects .common .SequenceStorageNodes ;
85
91
import com .oracle .graal .python .builtins .objects .dict .PDict ;
92
+ import com .oracle .graal .python .builtins .objects .function .PKeyword ;
86
93
import com .oracle .graal .python .builtins .objects .iterator .PStringIterator ;
87
94
import com .oracle .graal .python .builtins .objects .list .ListBuiltins .ListReverseNode ;
88
95
import com .oracle .graal .python .builtins .objects .list .PList ;
100
107
import com .oracle .graal .python .builtins .objects .tuple .PTuple ;
101
108
import com .oracle .graal .python .builtins .objects .tuple .TupleBuiltins ;
102
109
import com .oracle .graal .python .builtins .objects .type .TypeNodes .IsSameTypeNode ;
103
- import com .oracle .graal .python .builtins .objects .function .PKeyword ;
104
- import com .oracle .graal .python .builtins .objects .object .PythonObjectLibrary ;
110
+ import com .oracle .graal .python .lib .PyMappingCheckNode ;
105
111
import com .oracle .graal .python .lib .PyNumberAsSizeNode ;
106
112
import com .oracle .graal .python .lib .PyObjectHashNode ;
107
- import static com .oracle .graal .python .nodes .BuiltinNames .ENCODE ;
108
- import static com .oracle .graal .python .nodes .BuiltinNames .FORMAT ;
109
- import static com .oracle .graal .python .nodes .BuiltinNames .FORMAT_MAP ;
110
113
import com .oracle .graal .python .nodes .ErrorMessages ;
111
- import static com .oracle .graal .python .nodes .ErrorMessages .ENCODER_RETURNED_P_INSTEAD_OF_BYTES ;
112
- import static com .oracle .graal .python .nodes .ErrorMessages .OBJ_NOT_SUBSCRIPTABLE ;
113
- import static com .oracle .graal .python .nodes .ErrorMessages .TAKES_EXACTLY_S_ARGUMENTS_D_GIVEN ;
114
114
import com .oracle .graal .python .nodes .PGuards ;
115
115
import com .oracle .graal .python .nodes .PRaiseNode ;
116
116
import com .oracle .graal .python .nodes .SpecialMethodNames ;
@@ -270,11 +270,11 @@ protected ArgumentClinicProvider getArgumentClinic() {
270
270
return StringBuiltinsClinicProviders .FormatMapNodeClinicProviderGen .INSTANCE ;
271
271
}
272
272
273
- @ Specialization (guards = "lib.isMapping (mapping)" , limit = "1" )
273
+ @ Specialization (guards = "checkMapping.execute (mapping)" , limit = "1" )
274
274
String format (VirtualFrame frame , String self , Object mapping ,
275
275
@ Cached BuiltinFunctions .FormatNode format ,
276
276
@ Cached OperatorModuleBuiltins .GetItemNode getItem ,
277
- @ SuppressWarnings ("unused" ) @ CachedLibrary ( "mapping" ) PythonObjectLibrary lib ) {
277
+ @ SuppressWarnings ("unused" ) @ Cached PyMappingCheckNode checkMapping ) {
278
278
279
279
TemplateFormatter template = new TemplateFormatter (self );
280
280
@@ -289,9 +289,9 @@ String format(VirtualFrame frame, String self, Object mapping,
289
289
}
290
290
291
291
@ SuppressWarnings ("unused" )
292
- @ Specialization (guards = {"!lib.isMapping (obj)" , "!isNone(obj)" }, limit = "1" )
292
+ @ Specialization (guards = {"!checkMapping.execute (obj)" , "!isNone(obj)" }, limit = "1" )
293
293
String format (String self , Object obj ,
294
- @ SuppressWarnings ("unused" ) @ CachedLibrary ( "obj" ) PythonObjectLibrary lib ) {
294
+ @ SuppressWarnings ("unused" ) @ Cached PyMappingCheckNode checkMapping ) {
295
295
throw raise (TypeError , OBJ_NOT_SUBSCRIPTABLE , obj );
296
296
}
297
297
0 commit comments