blob: 800a4badd48f114ccf8c8aa9a4454ba5c2487082 [file] [log] [blame]
// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'dart:async';
class TypeSafeStreamSubscription<T> implements StreamSubscription<T> {
final StreamSubscription _subscription;
bool get isPaused => _subscription.isPaused;
void onData(void handleData(T data)) {
_subscription.onData((data) => handleData(data as T));
void onError(Function handleError) {
void onDone(void handleDone()) {
void pause([Future resumeFuture]) {
void resume() {
Future cancel() => _subscription.cancel();
Future asFuture([futureValue]) => _subscription.asFuture(futureValue);