55
55
56
56
import java .util .List ;
57
57
58
+ import com .oracle .graal .python .annotations .ArgumentClinic ;
58
59
import com .oracle .graal .python .builtins .Builtin ;
59
60
import com .oracle .graal .python .builtins .CoreFunctions ;
60
61
import com .oracle .graal .python .builtins .PythonBuiltinClassType ;
66
67
import com .oracle .graal .python .builtins .objects .common .HashingStorageLibrary ;
67
68
import com .oracle .graal .python .builtins .objects .common .PHashingCollection ;
68
69
import com .oracle .graal .python .builtins .objects .dict .PDict ;
70
+ import com .oracle .graal .python .builtins .objects .module .ModuleBuiltinsClinicProviders .ModuleNodeClinicProviderGen ;
69
71
import com .oracle .graal .python .builtins .objects .object .ObjectBuiltins ;
70
72
import com .oracle .graal .python .builtins .objects .object .PythonObjectLibrary ;
71
73
import com .oracle .graal .python .nodes .ErrorMessages ;
75
77
import com .oracle .graal .python .nodes .call .CallNode ;
76
78
import com .oracle .graal .python .nodes .expression .CoerceToBooleanNode ;
77
79
import com .oracle .graal .python .nodes .function .PythonBuiltinBaseNode ;
78
- import com .oracle .graal .python .nodes .function .PythonBuiltinNode ;
79
80
import com .oracle .graal .python .nodes .function .builtins .PythonBinaryBuiltinNode ;
81
+ import com .oracle .graal .python .nodes .function .builtins .PythonClinicBuiltinNode ;
80
82
import com .oracle .graal .python .nodes .function .builtins .PythonUnaryBuiltinNode ;
83
+ import com .oracle .graal .python .nodes .function .builtins .clinic .ArgumentClinicProvider ;
81
84
import com .oracle .graal .python .nodes .object .IsBuiltinClassProfile ;
82
- import com .oracle .graal .python .nodes .truffle .PythonArithmeticTypes ;
83
85
import com .oracle .graal .python .nodes .util .CannotCastException ;
84
86
import com .oracle .graal .python .nodes .util .CastToJavaStringNode ;
85
87
import com .oracle .graal .python .runtime .exception .PException ;
90
92
import com .oracle .truffle .api .dsl .GenerateNodeFactory ;
91
93
import com .oracle .truffle .api .dsl .NodeFactory ;
92
94
import com .oracle .truffle .api .dsl .Specialization ;
93
- import com .oracle .truffle .api .dsl .TypeSystemReference ;
94
95
import com .oracle .truffle .api .frame .VirtualFrame ;
95
96
import com .oracle .truffle .api .interop .UnsupportedMessageException ;
96
97
import com .oracle .truffle .api .library .CachedLibrary ;
@@ -108,8 +109,13 @@ protected List<? extends NodeFactory<? extends PythonBuiltinBaseNode>> getNodeFa
108
109
109
110
@ Builtin (name = __INIT__ , minNumOfPositionalArgs = 2 , declaresExplicitSelf = true , parameterNames = {"self" , "name" , "doc" })
110
111
@ GenerateNodeFactory
111
- @ TypeSystemReference (PythonArithmeticTypes .class )
112
- public abstract static class ModuleNode extends PythonBuiltinNode {
112
+ @ ArgumentClinic (name = "name" , conversion = ArgumentClinic .ClinicConversion .String )
113
+ public abstract static class ModuleNode extends PythonClinicBuiltinNode {
114
+ @ Override
115
+ protected ArgumentClinicProvider getArgumentClinic () {
116
+ return ModuleNodeClinicProviderGen .INSTANCE ;
117
+ }
118
+
113
119
@ Specialization (limit = "1" )
114
120
public PNone module (PythonModule self , String name , Object doc ,
115
121
@ Cached WriteAttributeToObjectNode writeName ,
0 commit comments