Skip to content

Commit 0426a7d

Browse files
committed
Adapt PyObjectFunctionStr for 3.8
1 parent f14382d commit 0426a7d

File tree

1 file changed

+16
-17
lines changed

1 file changed

+16
-17
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/lib/PyObjectFunctionStr.java

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,8 @@
4040
*/
4141
package com.oracle.graal.python.lib;
4242

43-
import static com.oracle.graal.python.nodes.SpecialAttributeNames.__MODULE__;
44-
import static com.oracle.graal.python.nodes.SpecialAttributeNames.__QUALNAME__;
43+
import static com.oracle.graal.python.nodes.SpecialAttributeNames.__NAME__;
4544

46-
import com.oracle.graal.python.builtins.objects.PNone;
4745
import com.oracle.graal.python.builtins.objects.str.PString;
4846
import com.oracle.graal.python.nodes.PNodeWithContext;
4947
import com.oracle.truffle.api.dsl.Cached;
@@ -62,21 +60,22 @@ public abstract class PyObjectFunctionStr extends PNodeWithContext {
6260

6361
@Specialization
6462
String str(VirtualFrame frame, Object function,
65-
@Cached PyObjectLookupAttr lookupQualname,
66-
@Cached PyObjectLookupAttr lookupModule,
63+
@Cached PyObjectLookupAttr lookupName,
6764
@Cached PyObjectStrAsJavaStringNode asStr) {
68-
Object qualname = lookupQualname.execute(frame, function, __QUALNAME__);
69-
if (qualname == PNone.NO_VALUE) {
70-
return asStr.execute(function);
71-
}
72-
Object module = lookupModule.execute(frame, function, __MODULE__);
73-
if (!(module instanceof PNone)) {
74-
String moduleStr = asStr.execute(frame, module);
75-
if (!"builtins".equals(moduleStr)) {
76-
return PString.cat(moduleStr, ".", asStr.execute(frame, qualname), "()");
77-
}
78-
}
79-
return PString.cat(asStr.execute(frame, qualname), "()");
65+
return PString.cat(asStr.execute(lookupName.execute(frame, function, __NAME__)), "()");
66+
// The following code is for 3.11
67+
// Object qualname = lookupQualname.execute(frame, function, __QUALNAME__);
68+
// if (qualname == PNone.NO_VALUE) {
69+
// return asStr.execute(function);
70+
// }
71+
// Object module = lookupModule.execute(frame, function, __MODULE__);
72+
// if (!(module instanceof PNone)) {
73+
// String moduleStr = asStr.execute(frame, module);
74+
// if (!"builtins".equals(moduleStr)) {
75+
// return PString.cat(moduleStr, ".", asStr.execute(frame, qualname), "()");
76+
// }
77+
// }
78+
// return PString.cat(asStr.execute(frame, qualname), "()");
8079
}
8180

8281
public static PyObjectFunctionStr create() {

0 commit comments

Comments
 (0)