Search Results for

    Show / Hide Table of Contents

    Class DeferredStream<TDelta, TResult>

    • Lazy stream wrapper: does not run async preparation until enumeration actually starts.
    • Factory is executed at most once; concurrent enumerators will await the same init task.
    • Cancellation token passed to GetAsyncEnumerator is used for factory + inner enumerator.
    Inheritance
    object
    DeferredStream<TDelta, TResult>
    Implements
    IStream<TDelta, TResult>
    IUniTaskAsyncEnumerable<StreamEvent<TDelta, TResult>>
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Glitch9.IO.Networking.RESTApi
    Assembly: Glitch9.IO.dll
    Syntax
    public sealed class DeferredStream<TDelta, TResult> : IStream<TDelta, TResult>, IUniTaskAsyncEnumerable<StreamEvent<TDelta, TResult>> where TResult : IResult
    Type Parameters
    Name Description
    TDelta
    TResult

    Constructors

    | Edit this page View Source

    DeferredStream(Func<CancellationToken, UniTask<IStream<TDelta, TResult>>>)

    Declaration
    public DeferredStream(Func<CancellationToken, UniTask<IStream<TDelta, TResult>>> factory)
    Parameters
    Type Name Description
    Func<CancellationToken, UniTask<IStream<TDelta, TResult>>> factory

    Methods

    | Edit this page View Source

    GetAsyncEnumerator(CancellationToken)

    Declaration
    public IUniTaskAsyncEnumerator<StreamEvent<TDelta, TResult>> GetAsyncEnumerator(CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    CancellationToken cancellationToken
    Returns
    Type Description
    IUniTaskAsyncEnumerator<StreamEvent<TDelta, TResult>>

    Implements

    IStream<TDelta, TResult>
    Cysharp.Threading.Tasks.IUniTaskAsyncEnumerable<T>

    Extension Methods

    UpcastingExtensions.Upcast<TDelta, TResult>(IUniTaskAsyncEnumerable<StreamEvent<TDelta, TResult>>)
    ArrayExtensions.ToArrayOrEmpty<T>(T)
    ArrayExtensions.ToArrayOrNull<T>(T)
    EventExtensions.ToDelta<T>(T, string, int, string, bool)
    EventExtensions.ToDone<T>(T, string, int, string)
    EventExtensions.ToEvent<T>(T)
    EventExtensions.UpcastDelta<T1, T2>(T1, string, int, string, bool)
    FallbackExtensions.IsOr<TParent, TChild>(TParent, TChild)
    ResponseCastingExtensions.GetResult<T>(T)
    SystemExtensions.GetName(object)
    • Edit this page
    • View Source
    In this article
    Back to top AI DevKit Documentation