loop method

Stream<String> loop()

Runs a shell prompt in a loop.

Implementation

Stream<String> loop() {
  // ignore: close_sinks
  final controller = StreamController<String>();
  late void Function() doRead;
  doRead = () {
    if (_stop) {
      _stop = false;
    } else {
      DCPrompter(console: console, message: message,).prompt().then(
        (final it) {
          controller.add(it);
          Future<void>(doRead);
        },
      );
    }
  };
  Future<void>(doRead);
  return controller.stream;
}