in lib/src/io.dart [16:57]
Future<void> formatStdin(
FormatterOptions options, List<int>? selection, String name) async {
var selectionStart = 0;
var selectionLength = 0;
if (selection != null) {
selectionStart = selection[0];
selectionLength = selection[1];
}
var completer = Completer<void>();
var input = StringBuffer();
stdin.transform(Utf8Decoder()).listen(input.write, onDone: () {
var formatter = DartFormatter(
indent: options.indent,
pageWidth: options.pageWidth,
fixes: options.fixes);
try {
options.beforeFile(null, name);
var source = SourceCode(input.toString(),
uri: name,
selectionStart: selectionStart,
selectionLength: selectionLength);
var output = formatter.formatSource(source);
options.afterFile(null, name, output,
changed: source.text != output.text);
} on FormatterException catch (err) {
stderr.writeln(err.message());
exitCode = 65; // sysexits.h: EX_DATAERR
} catch (err, stack) {
stderr.writeln('''Hit a bug in the formatter when formatting stdin.
Please report at: github.com/dart-lang/dart_style/issues
$err
$stack''');
exitCode = 70; // sysexits.h: EX_SOFTWARE
}
completer.complete();
});
return completer.future;
}