Skip to content

Commit 1501c40

Browse files
committed
return qualified names for builtin types
1 parent ae46be0 commit 1501c40

File tree

3 files changed

+13
-3
lines changed

3 files changed

+13
-3
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/PythonBuiltinClassType.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,13 +194,19 @@ public enum PythonBuiltinClassType implements LazyPythonClass {
194194
private final String name;
195195
private final Shape instanceShape;
196196
private final String publicInModule;
197+
private final String qualifiedName;
197198

198199
// initialized in static constructor
199200
@CompilationFinal private PythonBuiltinClassType base;
200201

201202
PythonBuiltinClassType(String name, String publicInModule) {
202203
this.name = name;
203204
this.publicInModule = publicInModule;
205+
if (publicInModule != null && publicInModule != BuiltinNames.BUILTINS) {
206+
qualifiedName = publicInModule + "." + name;
207+
} else {
208+
qualifiedName = name;
209+
}
204210
this.instanceShape = com.oracle.graal.python.builtins.objects.object.PythonObject.freshShape(this);
205211
}
206212

@@ -213,6 +219,10 @@ public String getName() {
213219
return name;
214220
}
215221

222+
public String getQualifiedName() {
223+
return qualifiedName;
224+
}
225+
216226
public PythonBuiltinClassType getBase() {
217227
return base;
218228
}

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/type/PythonBuiltinClass.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public final class PythonBuiltinClass extends PythonManagedClass {
3939
private final PythonBuiltinClassType type;
4040

4141
public PythonBuiltinClass(PythonBuiltinClassType builtinClass, PythonAbstractClass base) {
42-
super(PythonBuiltinClassType.PythonClass, builtinClass.getName(), base);
42+
super(PythonBuiltinClassType.PythonClass, builtinClass.getQualifiedName(), base);
4343
this.type = builtinClass;
4444
}
4545

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/type/TypeBuiltins.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,9 @@
7676
import com.oracle.graal.python.builtins.objects.mappingproxy.PMappingproxy;
7777
import com.oracle.graal.python.builtins.objects.object.PythonObject;
7878
import com.oracle.graal.python.builtins.objects.object.PythonObjectLibrary;
79+
import com.oracle.graal.python.builtins.objects.type.TypeBuiltinsFactory.CallNodeFactory;
7980
import com.oracle.graal.python.builtins.objects.type.TypeNodes.GetMroNode;
8081
import com.oracle.graal.python.builtins.objects.type.TypeNodes.GetSubclassesNode;
81-
import com.oracle.graal.python.builtins.objects.type.TypeBuiltinsFactory.CallNodeFactory;
8282
import com.oracle.graal.python.builtins.objects.type.TypeNodesFactory.IsSameTypeNodeGen;
8383
import com.oracle.graal.python.nodes.BuiltinNames;
8484
import com.oracle.graal.python.nodes.PGuards;
@@ -809,7 +809,7 @@ private static Object getModuleName(String fqname) {
809809
abstract static class QualNameNode extends AbstractSlotNode {
810810
@Specialization(guards = "isNoValue(value)")
811811
String getName(PythonBuiltinClassType cls, @SuppressWarnings("unused") PNone value) {
812-
return cls.getName();
812+
return cls.getQualifiedName();
813813
}
814814

815815
@Specialization(guards = "isNoValue(value)")

0 commit comments

Comments
 (0)