| OLD | NEW |
| 1 part of dart.convert; | 1 part of dart.convert; |
| 2 | 2 typedef void _ChunkedConversionCallback<T>(T accumulated); |
| 3 typedef void _ChunkedConversionCallback<T>(T accumulated); | 3 abstract class ChunkedConversionSink<T> implements Sink<T> {ChunkedConversionSi
nk(); |
| 4 abstract class ChunkedConversionSink<T> implements Sink<T> { | 4 factory ChunkedConversionSink.withCallback(void callback(List<T> accumulated))
= _SimpleCallbackSink; |
| 5 ChunkedConversionSink(); | 5 void add(T chunk); |
| 6 factory ChunkedConversionSink.withCallback( | 6 void close(); |
| 7 void callback(List<T> accumulated)) = _SimpleCallbackSink; | |
| 8 void add(T chunk); | |
| 9 void close(); | |
| 10 } | 7 } |
| 11 class _SimpleCallbackSink<T> extends ChunkedConversionSink<T> { | 8 class _SimpleCallbackSink<T> extends ChunkedConversionSink<T> {final _ChunkedCo
nversionCallback<List<T>> _callback; |
| 12 final _ChunkedConversionCallback<List<T>> _callback; | 9 final List<T> _accumulated = <T> []; |
| 13 final List<T> _accumulated = <T>[]; | 10 _SimpleCallbackSink(this._callback); |
| 14 _SimpleCallbackSink(this._callback); | 11 void add(T chunk) { |
| 15 void add(T chunk) { | 12 _accumulated.add(chunk); |
| 16 _accumulated.add(chunk); | |
| 17 } | |
| 18 void close() { | |
| 19 _callback(_accumulated); | |
| 20 } | |
| 21 } | 13 } |
| 22 class _EventSinkAdapter<T> implements ChunkedConversionSink<T> { | 14 void close() { |
| 23 final EventSink<T> _sink; | 15 _callback(_accumulated); |
| 24 _EventSinkAdapter(this._sink); | |
| 25 void add(T data) => _sink.add(data); | |
| 26 void close() => _sink.close(); | |
| 27 } | 16 } |
| 28 class _ConverterStreamEventSink<S, T> implements EventSink<S> { | |
| 29 final EventSink<T> _eventSink; | |
| 30 ChunkedConversionSink _chunkedSink; | |
| 31 _ConverterStreamEventSink(Converter converter, EventSink<T> sink) | |
| 32 : this._eventSink = sink, | |
| 33 _chunkedSink = converter.startChunkedConversion(sink); | |
| 34 void add(S o) => _chunkedSink.add(o); | |
| 35 void addError(Object error, [StackTrace stackTrace]) { | |
| 36 _eventSink.addError(error, stackTrace); | |
| 37 } | |
| 38 void close() => _chunkedSink.close(); | |
| 39 } | 17 } |
| 18 class _EventSinkAdapter<T> implements ChunkedConversionSink<T> {final EventSink
<T> _sink; |
| 19 _EventSinkAdapter(this._sink); |
| 20 void add(T data) => _sink.add(data); |
| 21 void close() => _sink.close(); |
| 22 } |
| 23 class _ConverterStreamEventSink<S, T> implements EventSink<S> {final EventSink<
T> _eventSink; |
| 24 ChunkedConversionSink _chunkedSink; |
| 25 _ConverterStreamEventSink(Converter converter, EventSink<T> sink) : this._event
Sink = sink, _chunkedSink = converter.startChunkedConversion(sink); |
| 26 void add(S o) => _chunkedSink.add(o); |
| 27 void addError(Object error, [StackTrace stackTrace]) { |
| 28 _eventSink.addError(error, stackTrace); |
| 29 } |
| 30 void close() => _chunkedSink.close(); |
| 31 } |
| OLD | NEW |