Skip to content

Commit f8ad125

Browse files
committed
set super class for BufferedReader
1 parent 03ad6e0 commit f8ad125

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/modules/io/IOModuleBuiltins.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@
4747
import com.oracle.graal.python.builtins.Builtin;
4848
import com.oracle.graal.python.builtins.CoreFunctions;
4949
import com.oracle.graal.python.builtins.PythonBuiltins;
50+
import com.oracle.graal.python.builtins.objects.module.PythonModule;
51+
import com.oracle.graal.python.builtins.objects.type.PythonAbstractClass;
5052
import com.oracle.graal.python.nodes.function.PythonBuiltinBaseNode;
5153
import com.oracle.graal.python.nodes.function.PythonBuiltinNode;
5254
import com.oracle.graal.python.runtime.PythonCore;
@@ -69,6 +71,14 @@ public void initialize(PythonCore core) {
6971
builtinConstants.put("DEFAULT_BUFFER_SIZE", DEFAULT_BUFFER_SIZE);
7072
}
7173

74+
@Override
75+
public void postInitialize(PythonCore core) {
76+
super.postInitialize(core);
77+
PythonModule ioModule = core.lookupBuiltinModule("_io");
78+
PythonAbstractClass bufferediobase = (PythonAbstractClass) ioModule.getAttribute("BufferedIOBase");
79+
core.lookupType(PBufferedReader).setSuperClass(bufferediobase);
80+
}
81+
7282
@Builtin(name = "BufferedReader", minNumOfPositionalArgs = 1, takesVarArgs = true, takesVarKeywordArgs = true, constructsClass = PBufferedReader)
7383
@GenerateNodeFactory
7484
public abstract static class BufferedReaderNode extends PythonBuiltinNode {

0 commit comments

Comments
 (0)