blob: 11ae0fc09a4979a261399148e66582c8012d1fdd [file] [log] [blame]
// Copyright (c) 2011, 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.
/// @assertion new Stream()
/// @description Checks that default constructor works.
/// @author kaigorodov
import "dart:async";
class MyStreamSubscription<T> extends StreamSubscription<T> {
@override
Future<E> asFuture<E>([E? futureValue]) {
throw UnimplementedError();
}
@override
Future<void> cancel() {
throw UnimplementedError();
}
@override
void onData(void Function(T data)? handleData) {
}
@override
void onDone(void Function()? handleDone) {
}
@override
void onError(Function? handleError) {
}
@override
void pause([Future<void>? resumeSignal]) {
}
@override
void resume() {
}
@override
bool get isPaused => throw UnimplementedError();
}
class MyStream<T> extends Stream<T> {
StreamSubscription<T> listen(void onData(T event)?,
{Function? onError, void onDone()?, bool? cancelOnError})
{
return new MyStreamSubscription();
}
}
main() {
new MyStream();
}