blob: 875cdac37ba69cb4061b344da1a1ad0a8b7edcee [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 '../../stream_channel.dart';
/// A wrapper that coerces the generic type of the channel returned by an inner
/// transformer to `S`.
class TypeSafeStreamChannelTransformer<S, T>
implements StreamChannelTransformer<S, T> {
final StreamChannelTransformer _inner;
TypeSafeStreamChannelTransformer(this._inner);
@override
StreamChannel<S> bind(StreamChannel<T> channel) =>
_inner.bind(channel).cast();
}