Stdin mock used during reevaluation (undo) so raw_inputs don't have to be reentered
| 236 | |
| 237 | |
| 238 | class ReevaluateFakeStdin: |
| 239 | """Stdin mock used during reevaluation (undo) so raw_inputs don't have to |
| 240 | be reentered""" |
| 241 | |
| 242 | def __init__(self, fakestdin: FakeStdin, repl: "BaseRepl"): |
| 243 | self.fakestdin = fakestdin |
| 244 | self.repl = repl |
| 245 | self.readline_results = fakestdin.readline_results[:] |
| 246 | |
| 247 | def readline(self): |
| 248 | if self.readline_results: |
| 249 | value = self.readline_results.pop(0) |
| 250 | else: |
| 251 | value = "no saved input available" |
| 252 | self.repl.send_to_stdouterr(value) |
| 253 | return value |
| 254 | |
| 255 | |
| 256 | class ImportLoader: |