<?xml version="1.0"?>
<doc>
    <assembly>
        <name>SpicyPixel.Threading</name>
    </assembly>
    <members>
        <member name="T:SpicyPixel.Threading.FiberInstruction">
            <summary>
            Represents a fiber instruction to be processed by a 
            <see cref="T:SpicyPixel.Threading.FiberScheduler"/>.
            </summary>
            <remarks>
            Specific instructions understood by a scheduler are to be derived 
            from this abstract type.
            </remarks>
            <seealso cref="T:SpicyPixel.Threading.YieldForSeconds"/>
            <seealso cref="F:SpicyPixel.Threading.FiberInstruction.YieldToAnyFiber"/>
            <seealso cref="T:SpicyPixel.Threading.YieldToFiber"/>
            <seealso cref="T:SpicyPixel.Threading.YieldUntilComplete"/>
        </member>
        <member name="F:SpicyPixel.Threading.FiberInstruction.YieldToAnyFiber">
            <summary>
            An instruction to cause the current fiber to yield to any ready fiber.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberInstruction.Stop">
            <summary>
            An instruction to terminate execution of the current fiber.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.FiberInstruction.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberInstruction"/> class.
            </summary>
        </member>
        <member name="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler">
            <summary>
            <see cref="T:System.Threading.Tasks.TaskScheduler"/> that can execute fibers (yieldable coroutines).
            Regular non-blocking tasks can also be scheduled on a <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/>,
            but <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> have the distinct ability to yield execution.
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.Tasks.FiberTaskScheduler.CancellationToken">
            <summary>
            Gets the cancellation token set when the scheduler is destroyed.
            </summary>
            <value>
            The cancellation token.
            </value>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/> class.
            </summary>
            <remarks>
            Derived classes should invoke EnableQueueTask() in their constructor when ready to begin executing
            tasks.
            </remarks>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.#ctor(SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/> class.
            </summary>
            <remarks>
            Derived classes should invoke EnableQueueTask() in their constructor when ready to begin executing
            tasks.
            </remarks>
        </member>
        <member name="P:SpicyPixel.Threading.Tasks.FiberTaskScheduler.FiberScheduler">
            <summary>
            Gets the fiber scheduler associated with this task scheduler.
            </summary>
            <value>
            The fiber scheduler.
            </value>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.QueueTask(System.Threading.Tasks.Task)">
            <summary>
            Queues a non-blocking task.
            </summary>
            <remarks>
            If the task is queued from the scheduler thread it will begin executing to its
            first yield immediately.
            </remarks>
            <param name="task">
            The non-blocking task to queue.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.TryExecuteTaskInline(System.Threading.Tasks.Task,System.Boolean)">
            <summary>
            Tries to execute the task inline.
            </summary>
            <remarks>
            <para>
            Tasks executed on a fiber scheduler have thread affinity and must run on
            the thread the scheduler was created online. Inline execution will therefore
            fail if attempted from another thread besides the scheduler thread.
            </para>
            <para>
            A <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> cannot run inline because yieldable tasks
            can only be processed by a <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/> when queued.
            </para>
            <para>
            Because of these restrictions, only standard non-blocking actions invoked 
            on the scheduler thread are eligible for inlining.
            </para>
            </remarks>
            <returns>
            Returns <c>true</c> if the task was executed inline, <c>false</c> otherwise.
            </returns>
            <param name="task">
            The task to execute.
            </param>
            <param name="taskWasPreviouslyQueued">
            Set to <c>true</c> if the task was previously queued, <c>false</c> otherwise.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.TryDequeue(System.Threading.Tasks.Task)">
            <summary>
            Tries to dequeue a task.
            </summary>
            <remarks>
            Only delay start tasks can be dequeued. Although the Fiber scheduler does
            delay start tasks queued from a non-scheduler thread, de-queuing is not
            supported right now and so this method always returns <c>false</c>.
            </remarks>
            <returns>
            Returns <c>true</c> if the task was dequeued, <c>false</c> otherwise.
            </returns>
            <param name="task">
            The task to dequeue.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.GetScheduledTasks">
            <summary>
            For debugger support only, generates an enumerable of Task instances 
            currently queued to the scheduler waiting to be executed.
            </summary>
            <remarks>
            This is not supported and will always return null.
            </remarks>
            <returns>
            The scheduled tasks.
            </returns>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.ExecuteTask(System.Threading.Tasks.Task)">
            <summary>
            Execute the specified task as a coroutine.
            </summary>
            <param name="task">
            The task to be executed.
            </param>
            <returns>
            <see cref="T:SpicyPixel.Threading.FiberInstruction"/> or other scheduler specific instruction.
            </returns>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.ExecuteYieldableTask(SpicyPixel.Threading.Tasks.YieldableTask)">
            <summary>
            Execute the specified coroutine associated with a yieldable task.
            </summary>
            <remarks>
            Any exceptions that occur while executing the fiber will be
            associated with the specified task and rethrown by the framework.
            </remarks>
            <param name="task">
            The task associated with the executing fiber.
            </param>
            <returns>
            <see cref="T:SpicyPixel.Threading.FiberInstruction"/> or other scheduler specific instruction.
            </returns>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.Finalize">
            <summary>
            Releases unmanaged resources and performs other cleanup operations before the
            <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/> is reclaimed by garbage collection.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.Tasks.FiberTaskScheduler.isDisposed">
            <summary>
            Tracks whether the object has been disposed already
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.Dispose">
            <summary>
            Releases all resource used by the <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/> object.
            </summary>
            <remarks>
            Call the method when you are finished using the
            <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/>. The method leaves the
            <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/> in an unusable state. After calling
            the method, you must release all references to the
            <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/> so the garbage collector can reclaim the memory that
            the <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/> was occupying.
            </remarks>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskScheduler.Dispose(System.Boolean)">
            <summary>
            Dispose the scheduler.
            </summary>
            <remarks>
            When the scheduler is disposed, the <see cref="P:SpicyPixel.Threading.Tasks.FiberTaskScheduler.CancellationToken"/> is set.
            </remarks>
            <param name="disposing">
            Disposing is true when called manually,
            false when called by the finalizer.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.Tasks.YieldableTask">
            <summary>
            Yieldable task for execution on a fiber.
            </summary>
            <remarks>
            Regular non-blocking tasks can also be scheduled on a <see cref="T:SpicyPixel.Threading.Tasks.FiberTaskScheduler"/>,
            but yieldable tasks have the distinct ability to yield execution.
            </remarks>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Collections.IEnumerator)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Collections.IEnumerator,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Collections.IEnumerator,System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Collections.IEnumerator,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(SpicyPixel.Threading.FiberInstruction)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='instruction'>
            The coroutine to execute.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(SpicyPixel.Threading.FiberInstruction,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='instruction'>
            The coroutine to execute.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(SpicyPixel.Threading.FiberInstruction,System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='instruction'>
            The coroutine to execute.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(SpicyPixel.Threading.FiberInstruction,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='instruction'>
            The instruction to execute.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Func{SpicyPixel.Threading.FiberInstruction})">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Func{SpicyPixel.Threading.FiberInstruction},System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Func{SpicyPixel.Threading.FiberInstruction},System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Func{SpicyPixel.Threading.FiberInstruction},System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object,System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.YieldableTask.#ctor(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Tasks.YieldableTask"/> class.
            </summary>
            <returns>
            The task.
            </returns>
            <param name='coroutine'>
            The coroutine to execute.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.Tasks.FiberTaskExtensions">
            <summary>
            Extends the <see cref="T:System.Threading.Tasks.Task"/> and <see cref="T:System.Threading.Tasks.TaskFactory"/> classes with methods to support coroutines.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,System.Collections.IEnumerator)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='coroutine'>
            The coroutine to continue with.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,System.Collections.IEnumerator,System.Threading.Tasks.TaskContinuationOptions)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='coroutine'>
            The coroutine to continue with.
            </param>
            <param name='continuationOptions'>
            Continuation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,System.Collections.IEnumerator,System.Threading.CancellationToken)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='coroutine'>
            The coroutine to continue with.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,System.Collections.IEnumerator,System.Threading.Tasks.TaskScheduler)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='coroutine'>
            The coroutine to continue with.
            </param>
            <param name='scheduler'>
            Scheduler.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,System.Collections.IEnumerator,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='coroutine'>
            The coroutine to continue with.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
            <param name='continuationOptions'>
            Continuation options.
            </param>
            <param name='scheduler'>
            Scheduler to use when scheduling the task.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,SpicyPixel.Threading.FiberInstruction)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='instruction'>
            The instruction to continue with.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,SpicyPixel.Threading.FiberInstruction,System.Threading.Tasks.TaskContinuationOptions)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='instruction'>
            The instruction to continue with.
            </param>
            <param name='continuationOptions'>
            Continuation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,SpicyPixel.Threading.FiberInstruction,System.Threading.CancellationToken)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='instruction'>
            The instruction to continue with.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,SpicyPixel.Threading.FiberInstruction,System.Threading.Tasks.TaskScheduler)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='instruction'>
            The instruction to continue with.
            </param>
            <param name='scheduler'>
            Scheduler.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.ContinueWith(System.Threading.Tasks.Task,SpicyPixel.Threading.FiberInstruction,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
            <summary>
            Continues the task with a coroutine.
            </summary>
            <returns>
            The continued task.
            </returns>
            <param name='task'>
            Task to continue.
            </param>
            <param name='instruction'>
            The instruction to continue with.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
            <param name='continuationOptions'>
            Continuation options.
            </param>
            <param name='scheduler'>
            Scheduler to use when scheduling the task.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.StartNew(System.Threading.Tasks.TaskFactory,System.Collections.IEnumerator)">
            <summary>
            Creates a new task and starts executing it.
            </summary>
            <returns>
            The new executing task.
            </returns>
            <param name='taskFactory'>
            Task factory to start with.
            </param>
            <param name='coroutine'>
            The coroutine to start.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.StartNew(System.Threading.Tasks.TaskFactory,System.Collections.IEnumerator,System.Threading.CancellationToken)">
            <summary>
            Creates a new task and starts executing it.
            </summary>
            <returns>
            The new executing task.
            </returns>
            <param name='taskFactory'>
            Task factory to start with.
            </param>
            <param name='coroutine'>
            The coroutine to start.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.StartNew(System.Threading.Tasks.TaskFactory,System.Collections.IEnumerator,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Creates a new task and starts executing it.
            </summary>
            <returns>
            The new executing task.
            </returns>
            <param name='taskFactory'>
            Task factory to start with.
            </param>
            <param name='coroutine'>
            The coroutine to start.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.StartNew(System.Threading.Tasks.TaskFactory,System.Collections.IEnumerator,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
            <summary>
            Creates a new task and starts executing it.
            </summary>
            <returns>
            The new executing task.
            </returns>
            <param name='taskFactory'>
            Task factory to start with.
            </param>
            <param name='coroutine'>
            The coroutine to start.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
            <param name='scheduler'>
            Scheduler.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.StartNew(System.Threading.Tasks.TaskFactory,SpicyPixel.Threading.FiberInstruction)">
            <summary>
            Creates a new task and starts executing it.
            </summary>
            <returns>
            The new executing task.
            </returns>
            <param name='taskFactory'>
            Task factory to start with.
            </param>
            <param name='instruction'>
            The instruction to start.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.StartNew(System.Threading.Tasks.TaskFactory,SpicyPixel.Threading.FiberInstruction,System.Threading.CancellationToken)">
            <summary>
            Creates a new task and starts executing it.
            </summary>
            <returns>
            The new executing task.
            </returns>
            <param name='taskFactory'>
            Task factory to start with.
            </param>
            <param name='instruction'>
            The instruction to start.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.StartNew(System.Threading.Tasks.TaskFactory,SpicyPixel.Threading.FiberInstruction,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Creates a new task and starts executing it.
            </summary>
            <returns>
            The new executing task.
            </returns>
            <param name='taskFactory'>
            Task factory to start with.
            </param>
            <param name='instruction'>
            The instruction to start.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Tasks.FiberTaskExtensions.StartNew(System.Threading.Tasks.TaskFactory,SpicyPixel.Threading.FiberInstruction,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
            <summary>
            Creates a new task and starts executing it.
            </summary>
            <returns>
            The new executing task.
            </returns>
            <param name='taskFactory'>
            Task factory to start with.
            </param>
            <param name='instruction'>
            The instruction to start.
            </param>
            <param name='cancellationToken'>
            Cancellation token.
            </param>
            <param name='creationOptions'>
            Creation options.
            </param>
            <param name='scheduler'>
            Scheduler.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.Fiber">
            <summary>
            A Fiber is a lightweight means of scheduling work that enables multiple
            units of processing to execute concurrently by co-operatively
            sharing execution time on a single thread. Fibers are also known
            as "micro-threads" and can be implemented using programming language
            facilities such as "coroutines".
            </summary>
            <remarks>
            <para>
            Fibers simplify many concurrency issues generally associated with
            multithreading because a given fiber has complete control over
            when it yields execution to another fiber. A fiber does not need
            to manage resource locking or handle changing data in the same way as a 
            thread does because access to a resource is never preempted by 
            another fiber without co-operation.
            </para>
            <para>
            Fibers can improve performance in certain applications with concurrency
            requirements. Because many fibers can run on a thread, this can relieve 
            pressure on precious resources in the thread pool and reduce latency.
            Additionally, some applications have concurrent, interdependent processes 
            that naturally lend themselves to co-operative scheduling which can
            result in greater efficiency when the application manages the context
            switch instead of a pre-emptive scheduler.
            </para>
            <para>
            Fibers can also be a convenient way to express a state machine. The 
            master fiber implementing the machine can test state conditions, start 
            new fibers for state actions, yield to an action fiber until it completes,
            and then handle the transition out of the state and into a new state.
            </para>
            </remarks>
        </member>
        <member name="F:SpicyPixel.Threading.Fiber.currentFiber">
            <summary>
            The currently executing fiber on the thread.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.Fiber.nextId">
            <summary>
            The next unique identifier.
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.CurrentFiber">
            <summary>
            Gets the currently executing fiber on this thread.
            </summary>
            <value>
            The currently executing fiber on this thread.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.Factory">
            <summary>
            Gets the default factory for creating fibers.
            </summary>
            <value>The factory.</value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.Properties">
            <summary>
            Gets user-defined properties associated with the fiber.
            </summary>
            <remarks>
            Similar to thread local storage, callers may associate
            data with a fiber. A FiberStorage&lt;T&gt; class
            could retrieve data from the this property collection
            on the <see cref="P:SpicyPixel.Threading.Fiber.CurrentFiber"/>.
            
            Schedulers may also use this storage to associate
            additional data needed to perform scheduling operations.
            </remarks>
            <value>
            The properties.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.Scheduler">
            <summary>
            Gets the scheduler used to start the fiber.
            </summary>
            <value>
            The scheduler that was used to start the fiber.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.Name">
            <summary>
            Gets or sets the name.
            </summary>
            <value>
            The name.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.ResultAsObject">
            <summary>
            Gets or sets the result of the fiber's execution as an object.
            </summary>
            <value>The result of the fiber's execution as an object.</value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.IsCanceled">
            <summary>
            Gets a value indicating whether this instance is canceled.
            </summary>
            <value><c>true</c> if this instance is canceled; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.IsCompleted">
            <summary>
            Gets a value indicating whether this instance is completed.
            </summary>
            <remarks>
            "Completed" means:
             * FiberStatus.RanToCompletion
             * FiberStatus.Canceled
             * FiberStatus.Faulted
            </remarks>
            <value><c>true</c> if this instance is completed; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.IsFaulted">
            <summary>
            Gets a value indicating whether this instance is faulted.
            </summary>
            <remarks>
            See `Fiber.Exception` for the exception causing the fault.
            </remarks>
            <value><c>true</c> if this instance is faulted; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.Exception">
            <summary>
            Gets the exception that led to the Faulted state.
            </summary>
            <value>The exception.</value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.Status">
            <summary>
            Gets or sets the state of the fiber.
            </summary>
            <value>
            The state of the fiber (Unstarted, Running, Stopped).
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.Antecedent">
            <summary>
            Gets the antecedent, which is the fiber that this fiber was dependent upon
            for starting execution.
            </summary>
            <remarks>
            The antecedent provides access to a prior result through `GetAsResultObject()`.
            </remarks>
            <value>The antecedent.</value>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.CancellationToken">
            <summary>
            Gets the cancellation token for the Fiber.
            </summary>
            <remarks>
            The token is made available because coroutines don't have a convenient way
            to get at it otherwise. This way, an executing coroutine can:
            
            ```
            Fiber.CurrentFiber.CancellationToken.ThrowIfCancellationRequested();
            ```
            </remarks>
            <value>The cancellation token.</value>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.FinishCompletion">
            <summary>
            Run to finish transitioning to Completed by execution continuations.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.CancelContinuation">
            <summary>
            Called by a continuation to cancel the task and trigger other continuations.
            </summary>
            <returns><c>true</c> if this instance cancel continuation; otherwise, <c>false</c>.</returns>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.FaultContinuation(System.Exception)">
            <summary>
            Faults the continuation.
            </summary>
            <returns>The continuation.</returns>
            <param name="exception">Ex.</param>
        </member>
        <member name="P:SpicyPixel.Threading.Fiber.Id">
            <summary>
            Gets the thread unique identifier for the fiber.
            </summary>
            <value>
            The identifier.
            </value>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Collections.IEnumerator)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='coroutine'>
            A couroutine to execute on the fiber.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Collections.IEnumerator,System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='coroutine'>
            A couroutine to execute on the fiber.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Action)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Action,System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Action{System.Object},System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name='state'>
            State to pass to the action.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Action{System.Object},System.Object,System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name='state'>
            State to pass to the action.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Func{SpicyPixel.Threading.FiberInstruction})">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.FiberInstruction"/> when complete.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Func{SpicyPixel.Threading.FiberInstruction},System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.FiberInstruction"/> when complete.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.FiberInstruction"/> when complete.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.#ctor(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object,System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.FiberInstruction"/> when complete.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.Start">
            <summary>
            Start executing the fiber using the default scheduler on the thread.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.Start(SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Start executing the fiber using the specified scheduler.
            </summary>
            <remarks>
            This method is safe to call from any thread even if different
            than the scheduler execution thread.
            </remarks>
            <param name='scheduler'>
            The scheduler to start the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ThrowIfCanceled">
            <summary>
            Throws if canceled.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ThrowIfFaulted">
            <summary>
            Throws if faulted.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ThrowIfCanceledOrFaulted">
            <summary>
            Throws if canceled or faulted.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.Execute">
            <summary>
            Executes the fiber until it ends or yields.
            </summary>
            <returns>
            A fiber instruction to be processed by the scheduler.
            </returns>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(SpicyPixel.Threading.Fiber[])">
            <summary>
            Returns a fiber that waits on all fibers to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all fibers complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all fibers to complete.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(SpicyPixel.Threading.Fiber[],System.Threading.CancellationToken)">
            <summary>
            Returns a fiber that waits on all fibers to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all fibers complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all fibers to complete.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(SpicyPixel.Threading.Fiber[],System.TimeSpan)">
            <summary>
            Returns a fiber that waits on all fibers to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all fibers complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all fibers to complete.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="timeout">Timeout.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(SpicyPixel.Threading.Fiber[],System.Int32)">
            <summary>
            Returns a fiber that waits on all fibers to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all fibers complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all fibers to complete.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(SpicyPixel.Threading.Fiber[],System.Int32,System.Threading.CancellationToken)">
            <summary>
            Returns a fiber that waits on all fibers to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all fibers complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all fibers to complete.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(SpicyPixel.Threading.Fiber[],System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Returns a fiber that waits on all fibers to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all fibers complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all fibers to complete.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(System.Collections.Generic.IEnumerable{SpicyPixel.Threading.Fiber},System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Returns a fiber that waits on all fibers to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all fibers complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all fibers to complete.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(System.Threading.Tasks.Task[])">
            <summary>
            Returns a fiber that waits on all tasks to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all tasks complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all tasks to complete.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(System.Threading.Tasks.Task[],System.Threading.CancellationToken)">
            <summary>
            Returns a fiber that waits on all tasks to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all tasks complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all tasks to complete.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(System.Threading.Tasks.Task[],System.TimeSpan)">
            <summary>
            Returns a fiber that waits on all tasks to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all tasks complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all tasks to complete.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="timeout">Timeout.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(System.Threading.Tasks.Task[],System.Int32)">
            <summary>
            Returns a fiber that waits on all tasks to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all tasks complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all tasks to complete.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(System.Threading.Tasks.Task[],System.Int32,System.Threading.CancellationToken)">
            <summary>
            Returns a fiber that waits on all tasks to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all tasks complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all tasks to complete.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(System.Threading.Tasks.Task[],System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Returns a fiber that waits on all tasks to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all tasks complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all tasks to complete.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAll(System.Collections.Generic.IEnumerable{System.Threading.Tasks.Task},System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Returns a fiber that waits on all tasks to complete.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be `true` if all tasks complete
            successfully or `false` if cancelled or timeout.
            </remarks>
            <returns>A fiber that waits on all tasks to complete.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(SpicyPixel.Threading.Fiber[])">
            <summary>
            Returns a fiber that completes when any fiber finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Fiber` that completed.
            </remarks>
            <returns>A fiber that completes when any fiber finishes.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(SpicyPixel.Threading.Fiber[],System.Threading.CancellationToken)">
            <summary>
            Returns a fiber that completes when any fiber finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Fiber` that completed.
            </remarks>
            <returns>A fiber that completes when any fiber finishes.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(SpicyPixel.Threading.Fiber[],System.TimeSpan)">
            <summary>
            Returns a fiber that completes when any fiber finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Fiber` that completed.
            </remarks>
            <returns>A fiber that completes when any fiber finishes.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="timeout">Timeout.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(SpicyPixel.Threading.Fiber[],System.Int32)">
            <summary>
            Returns a fiber that completes when any fiber finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Fiber` that completed.
            </remarks>
            <returns>A fiber that completes when any fiber finishes.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(SpicyPixel.Threading.Fiber[],System.Int32,System.Threading.CancellationToken)">
            <summary>
            Returns a fiber that completes when any fiber finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Fiber` that completed.
            </remarks>
            <returns>A fiber that completes when any fiber finishes.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(SpicyPixel.Threading.Fiber[],System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Returns a fiber that completes when any fiber finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Fiber` that completed.
            </remarks>
            <returns>A fiber that completes when any fiber finishes.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(System.Collections.Generic.IEnumerable{SpicyPixel.Threading.Fiber},System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Returns a fiber that completes when any fiber finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Fiber` that completed.
            </remarks>
            <returns>A fiber that completes when any fiber finishes.</returns>
            <param name="fibers">Fibers to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(System.Threading.Tasks.Task[])">
            <summary>
            Returns a fiber that completes when any task finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Task` that completed.
            </remarks>
            <returns>A fiber that completes when any task finishes.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(System.Threading.Tasks.Task[],System.Threading.CancellationToken)">
            <summary>
            Returns a fiber that completes when any task finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Task` that completed.
            </remarks>
            <returns>A fiber that completes when any task finishes.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(System.Threading.Tasks.Task[],System.TimeSpan)">
            <summary>
            Returns a fiber that completes when any task finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Task` that completed.
            </remarks>
            <returns>A fiber that completes when any task finishes.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="timeout">Timeout.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(System.Threading.Tasks.Task[],System.Int32)">
            <summary>
            Returns a fiber that completes when any task finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Task` that completed.
            </remarks>
            <returns>A fiber that completes when any task finishes.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(System.Threading.Tasks.Task[],System.Int32,System.Threading.CancellationToken)">
            <summary>
            Returns a fiber that completes when any task finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Task` that completed.
            </remarks>
            <returns>A fiber that completes when any task finishes.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(System.Threading.Tasks.Task[],System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Returns a fiber that completes when any task finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Task` that completed.
            </remarks>
            <returns>A fiber that completes when any task finishes.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.WhenAny(System.Collections.Generic.IEnumerable{System.Threading.Tasks.Task},System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Returns a fiber that completes when any task finishes.
            </summary>
            <remarks>
            `Fiber.ResultAsObject` will be the `Task` that completed.
            </remarks>
            <returns>A fiber that completes when any task finishes.</returns>
            <param name="tasks">Tasks to wait for completion.</param>
            <param name="millisecondsTimeout">Milliseconds timeout.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.Delay(System.Int32)">
            <summary>
            Crates a Fiber that waits for a delay before completing.
            </summary>
            <param name="millisecondsDelay">Milliseconds to delay.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.Delay(System.TimeSpan)">
            <summary>
            Crates a Fiber that waits for a delay before completing.
            </summary>
            <param name="delay">Time span to delay.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.Delay(System.TimeSpan,System.Threading.CancellationToken)">
            <summary>
            Crates a Fiber that waits for a delay before completing.
            </summary>
            <param name="delay">Time span to delay.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.Delay(System.Int32,System.Threading.CancellationToken)">
            <summary>
            Crates a Fiber that waits for a delay before completing.
            </summary>
            <param name="millisecondsDelay">Milliseconds to delay.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.Delay(System.Int32,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Crates a Fiber that waits for a delay before completing.
            </summary>
            <param name="millisecondsDelay">Milliseconds to delay.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Collections.IEnumerator)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationCoroutine">Continuation coroutine.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Collections.IEnumerator,System.Threading.CancellationToken)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationCoroutine">Continuation coroutine.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Collections.IEnumerator,SpicyPixel.Threading.FiberContinuationOptions)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationCoroutine">Continuation coroutine.</param>
            <param name="continuationOptions">Continuation options.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Collections.IEnumerator,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationCoroutine">Continuation coroutine.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Collections.IEnumerator,System.Threading.CancellationToken,SpicyPixel.Threading.FiberContinuationOptions,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationCoroutine">Continuation coroutine.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="continuationOptions">Continuation options.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber})">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber},System.Threading.CancellationToken)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber},SpicyPixel.Threading.FiberContinuationOptions)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="continuationOptions">Continuation options.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber},SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber},System.Threading.CancellationToken,SpicyPixel.Threading.FiberContinuationOptions,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="continuationOptions">Continuation options.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber,System.Object},System.Object)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="state">State.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber,System.Object},System.Object,System.Threading.CancellationToken)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="state">State.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber,System.Object},System.Object,SpicyPixel.Threading.FiberContinuationOptions)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="state">State.</param>
            <param name="continuationOptions">Continuation options.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber,System.Object},System.Object,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="state">State.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.Fiber.ContinueWith(System.Action{SpicyPixel.Threading.Fiber,System.Object},System.Object,System.Threading.CancellationToken,SpicyPixel.Threading.FiberContinuationOptions,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Creates a continuation that executes asynchronously when the target fiber completes.
            </summary>
            <returns>A fiber that executes when the target fiber completes.</returns>
            <param name="continuationAction">Continuation action.</param>
            <param name="state">State.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="continuationOptions">Continuation options.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="T:SpicyPixel.Threading.IFiberScheduler">
            <summary>
            Interface used by Fiber to access protected methods of the scheduler.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.IFiberScheduler.QueueFiber(SpicyPixel.Threading.Fiber)">
            <summary>
            Queues the fiber for execution on the scheduler.
            </summary>
            <remarks>
            Fibers queued from the scheduler thread will generally be executed
            inline whenever possible on most schedulers.
            </remarks>
            <returns>
            Returns <c>true</c> if the fiber was executed inline <c>false</c> if it was queued.
            </returns>
            <param name='fiber'>
            The fiber to queue.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.SystemFiberScheduler">
            <summary>
            This class is the system default implementation of a <see cref="T:SpicyPixel.Threading.FiberScheduler"/>
            and is capable of scheduling and executing fibers on the current thread.
            </summary>
            <remarks>
            Although no fibers execute after the scheduler is shutdown, none of the
            fibers are transitioned to a <see cref="F:SpicyPixel.Threading.FiberStatus.RanToCompletion"/> state and therefore
            it's not safe for a fiber to wait on a fiber outside of its own scheduler.
            This is currently enforced by <see cref="M:SpicyPixel.Threading.FiberScheduler.ExecuteFiber(SpicyPixel.Threading.Fiber)"/> for now although it would be
            possible to support fiber waits across schedulers in the future.
            </remarks>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.StartNew">
            <summary>
            Starts a new thread, creates a scheduler, starts it running, and returns it to the calling thread.
            </summary>
            <returns>
            The scheduler from the spawned thread.
            </returns>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.StartNew(System.Threading.CancellationToken,System.Single)">
            <summary>
            Starts a new thread, creates a scheduler, starts it running, and returns it to the calling thread.
            </summary>
            <returns>
            The scheduler from the spawned thread.
            </returns>
            <param name='token'>
            A token to cancel the thread.
            </param>
            <param name='updatesPerSecond'>
            Updates to run per second.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.StartNew(SpicyPixel.Threading.Fiber)">
            <summary>
            Starts a new thread, creates a scheduler, starts it running, and returns it to the calling thread.
            </summary>
            <returns>
            The scheduler from the spawned thread.
            </returns>
            <param name='fiber'>
            A fiber to start execution from.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.StartNew(SpicyPixel.Threading.Fiber,System.Threading.CancellationToken,System.Single)">
            <summary>
            Starts a new thread, creates a scheduler, starts it running, and returns it to the calling thread.
            </summary>
            <returns>
            The scheduler from the spawned thread.
            </returns>
            <param name='fiber'>
            A fiber to start execution from.
            </param>
            <param name='updatesPerSecond'>
            Updates to run per second.
            </param>
            <param name='token'>
            A token to cancel the thread.
            </param>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.MaxStackDepth">
            <summary>
            The max stack depth before breaking out of recursion.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.stackDepthQueueFiber">
            <summary>
            Tracks the number of times QueueFiber is called to avoid
            inlining too much
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.executingFibers">
            <summary>
            Currently executing fibers
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.sleepingFibers">
            <summary>
            Fibers sleeping until a timeout
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.currentTime">
            <summary>
            The current time since the start of the run loop.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.runWaitHandle">
            <summary>
            The run wait handle is set when not running and used to coordinate Dispose and Run
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.disposeWaitHandle">
            <summary>
            Set when disposed
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.schedulerEventWaitHandle">
            <summary>
            Run() waits on this handle when it has nothing to do.
            Signaling wakes up the thread.
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.SystemFiberScheduler.RunWaitHandle">
            <summary>
            Gets the run wait handle.
            </summary>
            <remarks>
            The run wait handle is set when not running and used to coordinate Dispose and Run.
            </remarks>
            <value>
            The run wait handle.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.SystemFiberScheduler.DisposeWaitHandle">
            <summary>
            Gets the dispose wait handle.
            </summary>
            <remarks>
            Run monitors this handle for a Dispose to know when to terminate.
            </remarks>
            <value>
            The dispose wait handle.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.SystemFiberScheduler.SchedulerEventWaitHandle">
            <summary>
            Gets a wait handle which can be used to wait for a scheduler
            event to occur.
            </summary>
            <remarks>
            Scheduler events trigger this handle to be signaled.
            Events occur any time a fiber is added to an execution queue,
            whether because it is new or because it is moving from
            a wait queue to an execution queue.
            
            This handle is used to sleep in Run() when there are
            no events to process, and a scheduler with a custom
            run loop may do the same.
            </remarks>
            <value>
            The scheduler event wait handle.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.SystemFiberScheduler.ExecutingFiberCount">
            <summary>
            Gets the executing fiber count.
            </summary>
            <remarks>
            This can be used to optimize a custom run loop.
            </remarks>
            <value>
            The executing fiber count.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.SystemFiberScheduler.SleepingFiberCount">
            <summary>
            Gets the sleeping fiber count.
            </summary>
            <remarks>
            This can be used to optimize a custom run loop.
            </remarks>
            <value>
            The sleeping fiber count.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.SystemFiberScheduler.IsRunning">
            <summary>
            True if running
            </summary>
            <value>Is running.</value>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberScheduler"/> class.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.QueueFiber(SpicyPixel.Threading.Fiber)">
            <summary>
            Queues the fiber for execution on the scheduler.
            </summary>
            <remarks>
            Fibers queued from the scheduler thread will generally be executed
            inline whenever possible on most schedulers.
            </remarks>
            <param name='fiber'>
            The fiber to queue.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.QueueFiberForExecution(SpicyPixel.Threading.Fiber)">
            <summary>
            Adds a fiber to the execution queue without inlining and sets the wait handle.
            </summary>
            <param name='fiber'>
            The fiber to queue.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.QueueFiberForSleep(SpicyPixel.Threading.Fiber,System.Single)">
            <summary>
            Adds a fiber to the sleep queue and sets the wait handle.
            </summary>
            <param name='fiber'>
            The fiber to queue.
            </param>
            <param name='timeToWake'>
            The future time to wake.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.Update(System.Single)">
            <summary>
            Update the scheduler which causes all queued tasks to run
            for a cycle.
            </summary>
            <remarks>
            This method is useful when updating the scheduler manually
            with a custom run loop instead of calling <see cref="M:SpicyPixel.Threading.SystemFiberScheduler.Run(SpicyPixel.Threading.Fiber,System.Threading.CancellationToken,System.Single)"/>.
            </remarks>
            <param name='time'>
            Time in seconds since the scheduler or application began running.
            This value is used to determine when to wake sleeping fibers.
            Using float instead of TimeSpan spares the GC.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.GetNextFiberWakeTime(System.Single@)">
            <summary>
            Gets the time of the first fiber wake up.
            </summary>
            <remarks>
            This method is primarily useful when manually calling Update()
            instead of Run() to know how long the thread can sleep for.
            </remarks>
            <returns>
            True if there was a sleeping fiber, false otherwise.
            </returns>
            <param name='fiberWakeTime'>
            The time marker in seconds the first sleeping fiber needs to wake up.
            This is based on a previously passed time value to Update().
            This value may be 0 if a sleeping fiber was aborted and
            therefore an update should process immediately.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.Run(SpicyPixel.Threading.Fiber,System.Threading.CancellationToken,System.Single)">
            <summary>
            Run the blocking scheduler loop and perform the specified number of updates per second.
            </summary>
            <remarks>
            Not all schedulers support a blocking run loop that can be invoked by the caller.
            The system scheduler is designed so that a custom run loop could be implemented
            by a derived type. Everything used to execute Run() is available to a derived scheduler.
            </remarks>
            <param name='fiber'>
            The optional fiber to start execution from. If this is <c>null</c>, the loop
            will continue to execute until cancelled. Otherwise, the loop will terminate
            when the fiber terminates.
            </param>
            <param name='updatesPerSecond'>
            Updates to all fibers per second. A value of <c>0</c> (the default) will execute fibers
            any time they are ready to do work instead of waiting to execute on a specific frequency.
            </param>
            <param name='token'>
            A cancellation token that can be used to stop execution.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.ExecuteFiberInternal(SpicyPixel.Threading.Fiber)">
            <summary>
            Executes the fiber.
            </summary>
            <remarks>
            Fibers executed by this method do not belong to a queue
            and must be added to one by method end if the fiber
            execution did not complete this invocation. Otherwise,
            the fiber would fall off the scheduler.
            </remarks>
            <param name='fiber'>
            The unqueued fiber to execute.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.RemoveFiberFromQueues(SpicyPixel.Threading.Fiber)">
            <summary>
            Removes a fiber from the current queues.
            </summary>
            <remarks>
            The fiber being yielded to needs to be removed from the queues
            because it's about to be processed directly.
            </remarks>
            <param name='fiber'>
            Fiber.
            </param>
        </member>
        <member name="F:SpicyPixel.Threading.SystemFiberScheduler.isDisposed">
            <summary>
            Tracks whether the object has been disposed already
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.SystemFiberScheduler.Dispose(System.Boolean)">
            <summary>
            Dispose the scheduler.
            </summary>
            <remarks>
            When the scheduler is disposed, the <see cref="T:System.Threading.CancellationToken"/> is set.
            </remarks>
            <param name="disposing">
            Disposing is true when called manually,
            false when called by the finalizer.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.FiberScheduler">
            <summary>
            Schedules fibers for execution.
            </summary>
            <remarks>
            Schedulers are bound to the thread they are created on
            and they install a SynchronizationContext which is active during
            execution. Schedulers have an implementation specific update
            method or run loop. The interface is otherwise thin since schedulers
            are generally not intended to be used directly.
            Scheduling work is accomplished by invoking methods on
            <see cref="T:SpicyPixel.Threading.Fiber"/> or <see cref="P:SpicyPixel.Threading.FiberScheduler.SynchronizationContext"/>.
            </remarks>
        </member>
        <member name="F:SpicyPixel.Threading.FiberScheduler.currentScheduler">
            <summary>
            Default scheduler for the thread to support Fiber.Start()
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.FiberScheduler.CancellationToken">
            <summary>
            Gets the cancellation token set when the scheduler is destroyed.
            </summary>
            <value>
            The cancellation token.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.FiberScheduler.Current">
            <summary>
            Gets the default fiber scheduler for the thread.
            </summary>
            <remarks>
            Every thread has a default scheduler which Fiber.Start() uses.
            </remarks>
            <value>
            The default fiber scheduler for the thread.
            </value>
        </member>
        <member name="F:SpicyPixel.Threading.FiberScheduler.schedulerThread">
            <summary>
            The thread the scheduler was started on to know when inlining can be allowed.
            </summary>
            <value>
            The scheduler thread.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.FiberScheduler.SynchronizationContext">
            <summary>
            Gets the synchronization context to dispatch work items to the scheduler.
            </summary>
            <remarks>
            Schedulers and consumers don't need to worry about this. They are expected
            to access the sync context from within an executing fiber by using
            SynchronizationContext.Current. This is here so that Fiber.Execute() can
            automatically setup the proper context as needed.
            </remarks>
            <value>
            The synchronization context.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.FiberScheduler.SchedulerThread">
            <summary>
            Gets the thread the scheduler is running on.
            </summary>
            <value>
            The scheduler thread.
            </value>
        </member>
        <member name="P:SpicyPixel.Threading.FiberScheduler.AllowInlining">
            <summary>
            Gets or sets a value indicating whether this <see cref="T:SpicyPixel.Threading.FiberScheduler"/> allows inlining.
            </summary>
            <value>
            <c>true</c> if inlining of tasks on the scheduler thread is allowed; otherwise, <c>false</c>. Default is <c>true</c>.
            </value>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberScheduler"/> class.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.Run(SpicyPixel.Threading.Fiber)">
            <summary>
            Run the blocking scheduler loop and perform the specified number of updates per second.
            </summary>
            <remarks>
            Not all schedulers support a blocking run loop that can be invoked by the caller.
            </remarks>
            <param name='fiber'>
            The initial fiber to start on the scheduler.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.Run(SpicyPixel.Threading.Fiber,System.Threading.CancellationToken,System.Single)">
            <summary>
            Run the blocking scheduler loop and perform the specified number of updates per second.
            </summary>
            <remarks>
            Not all schedulers support a blocking run loop that can be invoked by the caller.
            </remarks>
            <param name='fiber'>
            The optional fiber to start execution from. If this is <c>null</c>, the loop
            will continue to execute until cancelled. Otherwise, the loop will terminate
            when the fiber terminates.
            </param>
            <param name='updatesPerSecond'>
            Updates to all fibers per second. A value of <c>0</c> (the default) will execute fibers
            any time they are ready to do work instead of waiting to execute on a specific frequency.
            </param>
            <param name='token'>
            A cancellation token that can be used to stop execution.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.Run">
            <summary>
            Run the blocking scheduler loop and perform the specified number of updates per second.
            </summary>
            <remarks>
            Not all schedulers support a blocking run loop that can be invoked by the caller.
            </remarks>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.Run(System.Threading.CancellationToken,System.Single)">
            <summary>
            Run the blocking scheduler loop and perform the specified number of updates per second.
            </summary>
            <remarks>
            Not all schedulers support a blocking run loop that can be invoked by the caller.
            </remarks>
            <param name='updatesPerSecond'>
            Updates to all fibers per second. A value of <c>0</c> (the default) will execute fibers
            any time they are ready to do work instead of waiting to execute on a specific frequency.
            </param>
            <param name="token">
            A cancellation token that can be used to stop execution.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.QueueFiber(SpicyPixel.Threading.Fiber)">
            <summary>
            Queues the fiber for execution on the scheduler.
            </summary>
            <remarks>
            Fibers queued from the scheduler thread will generally be executed
            inline whenever possible on most schedulers. 
            </remarks>
            <returns>
            Returns <c>true</c> if the fiber was executed inline <c>false</c> if it was queued.
            </returns>
            <param name='fiber'>
            The fiber to queue.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.ExecuteFiber(SpicyPixel.Threading.Fiber)">
            <summary>
            Executes the fiber until it ends or yields.
            </summary>
            <remarks>
            Custom schedulers will need to invoke this method in order
            to actually perform the work of the fiber and cause the correct
            state transitions to occur.
            </remarks>
            <returns>
            A fiber instruction to be processed by the scheduler.
            </returns>
            <param name='fiber'>
            The fiber to execute.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.Finalize">
            <summary>
            Releases unmanaged resources and performs other cleanup operations before the
            <see cref="T:SpicyPixel.Threading.FiberScheduler"/> is reclaimed by garbage collection.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberScheduler.isDisposed">
            <summary>
            Tracks whether the object has been disposed already
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.Dispose">
            <summary>
            Releases all resource used by the <see cref="T:SpicyPixel.Threading.FiberScheduler"/> object.
            </summary>
            <remarks>
            Call the method when you are finished using the
            <see cref="T:SpicyPixel.Threading.FiberScheduler"/>. The method leaves the
            <see cref="T:SpicyPixel.Threading.FiberScheduler"/> in an unusable state. After calling
            the method, you must release all references to the
            <see cref="T:SpicyPixel.Threading.FiberScheduler"/> so the garbage collector can reclaim the memory that
            the <see cref="T:SpicyPixel.Threading.FiberScheduler"/> was occupying.
            </remarks>
        </member>
        <member name="M:SpicyPixel.Threading.FiberScheduler.Dispose(System.Boolean)">
            <summary>
            Dispose the scheduler.
            </summary>
            <remarks>
            When the scheduler is disposed, the <see cref="P:SpicyPixel.Threading.FiberScheduler.CancellationToken"/> is set.
            </remarks>
            <param name="disposing">
            Disposing is true when called manually,
            false when called by the finalizer.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.FiberAbortException">
            <summary>
            The exception that is thrown when a call is made to the Abort method. This class cannot be inherited.
            </summary>
        </member>
        <member name="T:SpicyPixel.Threading.StopInstruction">
            <summary>
            An instruction to terminate execution of the current fiber.
            </summary>
            <remarks>
            Use <see cref="F:SpicyPixel.Threading.FiberInstruction.Stop"/> to generate one of these.
            </remarks>
        </member>
        <member name="T:SpicyPixel.Threading.YieldToAnyFiber">
            <summary>
            An instruction to yield execution to any fiber.
            </summary>
            <remarks>
            Use <see cref="F:SpicyPixel.Threading.FiberInstruction.YieldToAnyFiber"/> to generate one of these.
            </remarks>
        </member>
        <member name="T:SpicyPixel.Threading.YieldToFiber">
            <summary>
            Yield execution to a specific fiber belonging to the same
            scheduler as the current fiber.
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.YieldToFiber.Fiber">
            <summary>
            Gets the fiber to yield to.
            </summary>
            <value>
            The fiber to yield to.
            </value>
        </member>
        <member name="M:SpicyPixel.Threading.YieldToFiber.#ctor(SpicyPixel.Threading.Fiber)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.YieldToFiber"/> class.
            </summary>
            <param name='fiber'>
            The fiber to yield to.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.YieldUntilComplete">
            <summary>
            Yield execution until the watched fiber on the same scheduler is complete.
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.YieldUntilComplete.Fiber">
            <summary>
            Gets the fiber to yield to.
            </summary>
            <value>
            The fiber to yield to.
            </value>
        </member>
        <member name="M:SpicyPixel.Threading.YieldUntilComplete.#ctor(SpicyPixel.Threading.Fiber)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.YieldUntilComplete"/> class.
            </summary>
            <param name='fiber'>
            The fiber to yield to.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.YieldForSeconds">
            <summary>
            A <see cref="T:SpicyPixel.Threading.FiberInstruction"/> to pause execution
            of a fiber for the specified duration.
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.YieldForSeconds.Seconds">
            <summary>
            Gets the seconds.
            </summary>
            <value>
            The seconds to pause execution for.
            </value>
        </member>
        <member name="M:SpicyPixel.Threading.YieldForSeconds.#ctor(System.Single)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.YieldForSeconds"/> class.
            </summary>
            <param name='seconds'>
            The seconds to pause execution for.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.FiberSchedulerSynchronizationContext">
            <summary>
            Fiber scheduler synchronization context to support task
            synchronization across schedulers or other synchronization
            models.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.FiberSchedulerSynchronizationContext.#ctor(SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberSchedulerSynchronizationContext"/> class.
            </summary>
            <param name='scheduler'>
            The scheduler to send or post callbacks to.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberSchedulerSynchronizationContext.Post(System.Threading.SendOrPostCallback,System.Object)">
            <summary>
            Dispatches an asynchronous message to a synchronization context (the <see cref="T:SpicyPixel.Threading.FiberScheduler"/>).
            </summary>
            <remarks>
            The scheduler may choose to inline the callback if the Post is
            executed from the scheduler thread.
            </remarks>
            <param name='d'>
            Callback to invoke
            </param>
            <param name='state'>
            State to pass
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberSchedulerSynchronizationContext.Send(System.Threading.SendOrPostCallback,System.Object)">
            <summary>
            Dispatches an synchronous message to a synchronization context (the <see cref="T:SpicyPixel.Threading.FiberScheduler"/>).
            </summary>
            <remarks>
            The callback is always inlined if Send is executed from the
            scheduler thread regardless of any scheduler specific inline settings.
            Because inlining always occurs when on the scheduler thread, the
            caller must manage stack depth.
            </remarks>
            <param name='d'>
            Callback to invoke
            </param>
            <param name='state'>
            State to pass
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.ObjectInstruction">
            <summary>
            Wraps an object as an instruction
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.ObjectInstruction.Value">
            <summary>
            Gets the object
            </summary>
            <value>
            The object
            </value>
        </member>
        <member name="M:SpicyPixel.Threading.ObjectInstruction.#ctor(System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.ObjectInstruction"/> class.
            </summary>
            <param name='value'>
            The object.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.SystemCoroutine">
            <summary>
            This static class exposes convenience coroutines that can be
            passed to a fiber or task.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.SystemCoroutine.RepeatForIterations(System.Action{System.Int32},System.Int32)">
            <summary>
            Convenience coroutine to repeat an action for the specified number of iterations at the scheduler frequency.
            </summary>
            <returns>
            A <see cref="T:SpicyPixel.Threading.FiberInstruction"/>.
            </returns>
            <param name='action'>
            The action to execute.
            </param>
            <param name='iterations'>
            The iterations to execute for.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.FiberResult">
            <summary>
            An instruction to stop fiber execution and set a result on the fiber.
            </summary>
        </member>
        <member name="P:SpicyPixel.Threading.FiberResult.Result">
            <summary>
            Gets the result of the fiber execution.
            </summary>
            <value>The result of the fiber execution.</value>
        </member>
        <member name="M:SpicyPixel.Threading.FiberResult.#ctor(System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberResult"/> class.
            </summary>
            <param name="result">Result of the fiber execution.</param>
        </member>
        <member name="T:SpicyPixel.Threading.FiberContinuationOptions">
            <summary>
            Specifies the behavior for a fiber that is created by using the `Fiber.ContinueWith` method.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberContinuationOptions.None">
            <summary>
            When no continuation options are specified, default behavior should be used 
            to execute a continuation. The continuation runs asynchronously when the antecedent 
            completes, regardless of the antecedent's final Fiber.Status property value.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberContinuationOptions.NotOnRanToCompletion">
            <summary>
            The continuation should not be scheduled if its antecedent ran to completion. 
            An antecedent runs to completion if its Fiber.Status property upon completion 
            is FiberStatus.RanToCompletion. This option is not valid for multi-fiber continuations.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberContinuationOptions.NotOnFaulted">
            <summary>
            Specifies that the continuation should not be scheduled if its antecedent threw 
            an unhandled exception. An antecedent throws an unhandled exception if its Fiber.Status 
            property upon completion is FiberStatus.Faulted. This option is not valid for multi-fiber 
            continuations.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberContinuationOptions.NotOnCanceled">
            <summary>
            The continuation should not be scheduled if its antecedent was canceled. An antecedent 
            is canceled if its Fiber.Status property upon completion is FiberStatus.Canceled. This option 
            is not valid for multi-fiber continuations.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberContinuationOptions.OnlyOnRanToCompletion">
            <summary>
            The continuation should be scheduled only if its antecedent ran to completion. 
            An antecedent runs to completion if its Fiber.Status property upon completion is 
            FiberStatus.RanToCompletion. This option is not valid for multi-fiber continuations.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberContinuationOptions.OnlyOnFaulted">
             <summary>
             The continuation should be scheduled only if its antecedent threw an unhandled 
             exception. An antecedent throws an unhandled exception if its Fiber.Status property 
             upon completion is FiberStatus.Faulted.
            
             The OnlyOnFaulted option guarantees that the Fiber.Exception property in the antecedent 
             is not null. You can use that property to catch the exception and see which exception 
             caused the fiber to fault. If you do not access the Exception property, the exception 
             is unhandled. If you attempt to access the Result property of a fiber that has been 
             canceled or has faulted, a new exception is thrown.
            
             This option is not valid for multi-fiber continuations.
             </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberContinuationOptions.OnlyOnCanceled">
            <summary>
            Specifies that the continuation should be scheduled only if its antecedent was canceled. 
            An antecedent is canceled if its Fiber.Status property upon completion is 
            FiberStatus.Canceled. This option is not valid for multi-fiber continuations.
            </summary>
        </member>
        <member name="T:SpicyPixel.Threading.FiberStatus">
            <summary>
            Represents the current state of a fiber.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberStatus.Created">
            <summary>
            The fiber has been initialized but has not yet been scheduled.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberStatus.WaitingForActivation">
            <summary>
            The fiber is waiting to be activated and scheduled internally.
            </summary>
            <remarks>
            Generally this indicates a `ContinueWith` state because the fiber
            is not queued to the scheduler, it's waiting to activate and be
            scheduled once the antecdent fiber completes.
            </remarks>
        </member>
        <member name="F:SpicyPixel.Threading.FiberStatus.WaitingToRun">
            <summary>
            The fiber has been scheduled for execution but has not yet begun executing.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberStatus.Running">
            <summary>
            The fiber is running but has not yet completed.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberStatus.RanToCompletion">
            <summary>
            The fiber completed execution successfully.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberStatus.Canceled">
            <summary>
            The fiber acknowledged cancellation by throwing an OperationCanceledException 
            with its own CancellationToken while the token was in signaled state, or the 
            fiber's CancellationToken was already signaled before the fiber started executing.
            </summary>
        </member>
        <member name="F:SpicyPixel.Threading.FiberStatus.Faulted">
            <summary>
            The fiber completed due to an unhandled exception.
            </summary>
        </member>
        <member name="T:SpicyPixel.Threading.FiberFactory">
            <summary>
            A Fiber Factory for creating fibers with the same options.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberFactory"/> class.
            </summary>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.#ctor(System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberFactory"/> class.
            </summary>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.#ctor(SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberFactory"/> class.
            </summary>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.#ctor(SpicyPixel.Threading.FiberContinuationOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberFactory"/> class.
            </summary>
            <param name="continuationOptions">Continuation options.</param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.#ctor(System.Threading.CancellationToken,SpicyPixel.Threading.FiberContinuationOptions,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.FiberFactory"/> class.
            </summary>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="continuationOptions">Continuation options.</param>
            <param name="scheduler">Scheduler.</param>
        </member>
        <member name="P:SpicyPixel.Threading.FiberFactory.Scheduler">
            <summary>
            Gets the scheduler.
            </summary>
            <value>The scheduler.</value>
        </member>
        <member name="P:SpicyPixel.Threading.FiberFactory.ContinuationOptions">
            <summary>
            Gets the continuation options.
            </summary>
            <value>The continuation options.</value>
        </member>
        <member name="P:SpicyPixel.Threading.FiberFactory.CancellationToken">
            <summary>
            Gets the cancellation token.
            </summary>
            <value>The cancellation token.</value>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Collections.IEnumerator)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='coroutine'>
            A couroutine to execute on the fiber.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Collections.IEnumerator,System.Threading.CancellationToken)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='coroutine'>
            A couroutine to execute on the fiber.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Collections.IEnumerator,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Start executing a new fiber using the specified scheduler.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='coroutine'>
            A couroutine to execute on the fiber.
            </param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Collections.IEnumerator,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Start executing a new fiber using the specified scheduler.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='coroutine'>
            A couroutine to execute on the fiber.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Action)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Action,System.Threading.CancellationToken)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Action,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Action,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Action{System.Object},System.Object)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name='state'>
            State to pass to the action.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Action{System.Object},System.Object,System.Threading.CancellationToken)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name='state'>
            State to pass to the action.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Action{System.Object},System.Object,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name='state'>
            State to pass to the action.
            </param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Action{System.Object},System.Object,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Start executing a new fiber using the default scheduler on the thread.
            </summary>
            <returns>
            Returns a <see cref="T:SpicyPixel.Threading.Fiber"/>
            that can be yielded against to wait for the fiber to complete.
            </returns>
            <param name='action'>
            A non-blocking action to execute on the fiber.
            </param>
            <param name='state'>
            State to pass to the action.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Func{SpicyPixel.Threading.FiberInstruction})">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.Fiber"/> when complete.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Func{SpicyPixel.Threading.FiberInstruction},System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.Fiber"/> when complete.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Func{SpicyPixel.Threading.FiberInstruction},SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.Fiber"/> when complete.
            </param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Func{SpicyPixel.Threading.FiberInstruction},System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.Fiber"/> when complete.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.Fiber"/> when complete.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object,System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.Fiber"/> when complete.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.Fiber"/> when complete.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="M:SpicyPixel.Threading.FiberFactory.StartNew(System.Func{System.Object,SpicyPixel.Threading.FiberInstruction},System.Object,System.Threading.CancellationToken,SpicyPixel.Threading.FiberScheduler)">
            <summary>
            Initializes a new instance of the <see cref="T:SpicyPixel.Threading.Fiber"/> class.
            </summary>
            <param name='func'>
            A non-blocking function that returns a <see cref="T:SpicyPixel.Threading.Fiber"/> when complete.
            </param>
            <param name='state'>
            State to pass to the function.
            </param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name='scheduler'>
            A scheduler to execute the fiber on.
            </param>
        </member>
        <member name="T:SpicyPixel.Threading.ParallelOpportunistic">
            <summary>
            Opportunistically parallelize on platforms where supported.
            </summary>
            <remarks>
            Threads are not currently supported on web platforms, though it would
            be possible to create a native plugin that leverages web workers.
            
            ```c
            #include &lt;emscripten.h&gt;
            
            extern "C"
            {
                void process (char* input)
                {
                    worker_handle ai_worker = emscripten_create_worker ("worker.js");
                    emscripten_call_worker (ai_worker, "start", input, strlen (input) + 1, workerCallback, (void*)0);
                }
            }
            ```
            </remarks>
        </member>
        <member name="P:SpicyPixel.Threading.ParallelOpportunistic.SupportsParallelism">
            <summary>
            Gets or sets whether parallelism is supported.
            </summary>
            <value>The platform supports parallelism.</value>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.For(System.Int32,System.Int32,System.Action{System.Int32})">
            <summary>
            Parallel for loop.
            </summary>
            <param name="fromInclusive">From inclusive.</param>
            <param name="toExclusive">To exclusive.</param>
            <param name="body">Body.</param>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.For(System.Int32,System.Int32,System.Action{System.Int32,System.Threading.Tasks.ParallelLoopState})">
            <summary>
            Parallel for loop.
            </summary>
            <param name="fromInclusive">From inclusive.</param>
            <param name="toExclusive">To exclusive.</param>
            <param name="body">Body.</param>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.For(System.Int32,System.Int32,System.Threading.Tasks.ParallelOptions,System.Action{System.Int32})">
            <summary>
            Parallel for loop.
            </summary>
            <param name="fromInclusive">From inclusive.</param>
            <param name="toExclusive">To exclusive.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="body">Body.</param>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.For(System.Int32,System.Int32,System.Threading.Tasks.ParallelOptions,System.Action{System.Int32,System.Threading.Tasks.ParallelLoopState})">
            <summary>
            Parallel for loop.
            </summary>
            <param name="fromInclusive">From inclusive.</param>
            <param name="toExclusive">To exclusive.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="body">Body.</param>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.For``1(System.Int32,System.Int32,System.Func{``0},System.Func{System.Int32,System.Threading.Tasks.ParallelLoopState,``0,``0},System.Action{``0})">
            <summary>
            Parallel for loop.
            </summary>
            <param name="fromInclusive">From inclusive.</param>
            <param name="toExclusive">To exclusive.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TLocal">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.For``1(System.Int32,System.Int32,System.Threading.Tasks.ParallelOptions,System.Func{``0},System.Func{System.Int32,System.Threading.Tasks.ParallelLoopState,``0,``0},System.Action{``0})">
            <summary>
            Parallel for loop.
            </summary>
            <param name="fromInclusive">From inclusive.</param>
            <param name="toExclusive">To exclusive.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TLocal">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Concurrent.Partitioner{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Concurrent.OrderablePartitioner{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Concurrent.Partitioner{``0},System.Action{``0})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0,System.Threading.Tasks.ParallelLoopState})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Concurrent.OrderablePartitioner{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Concurrent.Partitioner{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``1(System.Collections.Concurrent.Partitioner{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0,System.Threading.Tasks.ParallelLoopState})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="body">Body.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``2(System.Collections.Generic.IEnumerable{``0},System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Action{``1})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
            <typeparam name="TLocal">The 2nd type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``2(System.Collections.Generic.IEnumerable{``0},System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Action{``1})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
            <typeparam name="TLocal">The 2nd type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``2(System.Collections.Concurrent.OrderablePartitioner{``0},System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Action{``1})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
            <typeparam name="TLocal">The 2nd type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``2(System.Collections.Concurrent.Partitioner{``0},System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Action{``1})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
            <typeparam name="TLocal">The 2nd type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``2(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Action{``1})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
            <typeparam name="TLocal">The 2nd type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``2(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Action{``1})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
            <typeparam name="TLocal">The 2nd type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``2(System.Collections.Concurrent.Partitioner{``0},System.Threading.Tasks.ParallelOptions,System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Action{``1})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
            <typeparam name="TLocal">The 2nd type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.ForEach``2(System.Collections.Concurrent.OrderablePartitioner{``0},System.Threading.Tasks.ParallelOptions,System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Action{``1})">
            <summary>
            Parallel for each loop.
            </summary>
            <returns>Loop result.</returns>
            <param name="source">Source.</param>
            <param name="parallelOptions">Parallel options.</param>
            <param name="localInit">Local init.</param>
            <param name="body">Body.</param>
            <param name="localFinally">Local finally.</param>
            <typeparam name="TSource">The 1st type parameter.</typeparam>
            <typeparam name="TLocal">The 2nd type parameter.</typeparam>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.Invoke(System.Action[])">
            <summary>
            Invoke the specified actions.
            </summary>
            <param name="actions">Actions.</param>
        </member>
        <member name="M:SpicyPixel.Threading.ParallelOpportunistic.Invoke(System.Threading.Tasks.ParallelOptions,System.Action[])">
            <summary>
            Invoke the specified actions.
            </summary>
            <param name="parallelOptions">Parallel options.</param>
            <param name="actions">Actions.</param>
        </member>
    </members>
</doc>
