Skip to content

Commit 4615320

Browse files
committed
add generator.__repr__
1 parent b72eb7c commit 4615320

File tree

1 file changed

+12
-0
lines changed
  • graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/generator

1 file changed

+12
-0
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/generator/GeneratorBuiltins.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727

2828
import static com.oracle.graal.python.nodes.SpecialMethodNames.__ITER__;
2929
import static com.oracle.graal.python.nodes.SpecialMethodNames.__NEXT__;
30+
import static com.oracle.graal.python.nodes.SpecialMethodNames.__REPR__;
3031
import static com.oracle.graal.python.runtime.exception.PythonErrorType.StopIteration;
3132
import static com.oracle.graal.python.runtime.exception.PythonErrorType.TypeError;
3233

@@ -52,6 +53,7 @@
5253
import com.oracle.truffle.api.CallTarget;
5354
import com.oracle.truffle.api.RootCallTarget;
5455
import com.oracle.truffle.api.Truffle;
56+
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
5557
import com.oracle.truffle.api.dsl.Cached;
5658
import com.oracle.truffle.api.dsl.GenerateNodeFactory;
5759
import com.oracle.truffle.api.dsl.NodeFactory;
@@ -220,4 +222,14 @@ Object getCode(PGenerator self,
220222
return code;
221223
}
222224
}
225+
226+
@Builtin(name = __REPR__, fixedNumOfPositionalArgs = 1)
227+
@GenerateNodeFactory
228+
abstract static class ReprNode extends PythonUnaryBuiltinNode {
229+
@Specialization
230+
@TruffleBoundary
231+
String repr(PGenerator self) {
232+
return self.toString();
233+
}
234+
}
223235
}

0 commit comments

Comments
 (0)