FutureOr<T>抽象

表示既可以是Future<T>也可以是T的值的类型。

此类声明是对内部未来或值泛型类型的公共代理,该泛型类型不是一个类类型。对此类的引用将解析为内部类型。

不允许任何类扩展、混合或实现FutureOr

示例

// The `Future<T>.then` function takes a callback [f] that returns either
// an `S` or a `Future<S>`.
Future<S> then<S>(FutureOr<S> f(T x), ...);

// `Completer<T>.complete` takes either a `T` or `Future<T>`.
void complete(FutureOr<T> value);

高级

FutureOr<int>类型实际上是类型intFuture<int>的“类型并”,此类型并为定义成一个方式,FutureOr<Object>既是Object的子类型也是超类型(子类型因为Object是并集中的类型之一,超类型因为Object是并集中两种类型的超类型)。这在一起意味着FutureOr<Object>等同于Object

作为推论,FutureOr<Object>等同于FutureOr<FutureOr<Object>>FutureOr<Future<Object>>等同于Future<Object>

属性

hashCode int
此对象的哈希码。
无设置器继承
runtimeType Type
对象运行时类型的表示。
无设置器继承

方法

noSuchMethod(Invocation invocation) → dynamic
在访问不存在的方法或属性时被调用。
继承
toString() String
此对象的一个字符串表示。
继承

操作符

operator ==(Object other) bool
相等操作符。
继承