コンテンツにスキップ

TaskBuilder<T> クラス

Taskの完了状態が変化するたびに、指定されたBuilderで直下のWidgetを再構築します。

名前空間: FloatSoda.Widgets
アセンブリ: FloatSoda.dll

public record TaskBuilder<T> : StatefulWidget<TaskBuilder<T>>, IEquatable<Widget>, IEquatable<StatefulWidget<TaskBuilder<T>>>, IEquatable<TaskBuilder<T>>

T

Taskが返す値の型。

object ← Widget ← StatefulWidget<TaskBuilder<T>> ← TaskBuilder<T>

IEquatable<Widget>, IEquatable<StatefulWidget<TaskBuilder<T>>>, IEquatable<TaskBuilder<T>>

StatefulWidget<TaskBuilder<T>>.CreateElement(), StatefulWidget<TaskBuilder<T>>.CreateState(), Widget.Key, Widget.CanUpdate(Widget, Widget), Widget.CreateElement(), Widget.GetHashCode(), object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.MemberwiseClone(), object.ReferenceEquals(object?, object?), object.ToString()

TaskはこのWidgetより前のライフサイクルで作成し、同じ非同期処理には同じTaskインスタンスを渡してください。 Build中にTaskを作成すると、親の再構築ごとに処理が再開されます。

Taskの現在の状態から、直下に配置するWidgetを構築する処理を取得します。

public required TaskWidgetBuilder<T> Builder { get; init; }

TaskWidgetBuilder<T>

ArgumentNullException

nullが指定されました。

InitialDataが明示的に指定されたかどうかを取得します。

public bool HasInitialData { get; }

bool

値型のTでは既定値と未指定を区別できないため、指定の有無を別に保持します。

Taskが完了する前にSnapshotへ設定する初期値を取得します。

public T? InitialData { get; init; }

T?

指定した場合、Taskの完了前でもHasDataがtrueになります。

監視するTaskを取得します。Taskを監視しない場合はnullです。

public Task<T>? Task { get; init; }

Task<T>?

このウィジェットに関連付ける新しい状態オブジェクトを生成します。

public override State<TaskBuilder<T>> CreateState()

State<TaskBuilder<T>>

Elementがツリーから恒久的に外れるまで保持する新しい状態オブジェクト。