Class SmartCoroutine<TValue>
Inheritance
System.Object
SmartCoroutine<TValue>
Namespace: Edgar.Unity
Assembly: cs.temp.dll.dll
Syntax
public class SmartCoroutine<TValue>
Type Parameters
| Name | Description |
|---|---|
| TValue |
Constructors
SmartCoroutine(IEnumerator, Boolean)
Initialize the smart coroutine with another coroutine.
Declaration
public SmartCoroutine(IEnumerator coroutine, bool throwImmediately = false)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.IEnumerator | coroutine | Coroutine that should be wrapped in the smart coroutine. |
| System.Boolean | throwImmediately | Whether to throw immediately if an exception is encountered. |
Properties
Coroutine
Coroutine that wraps the smart coroutine. Must be set manually after calling StartCoroutine(coroutineObject.InternalCoroutine).
Declaration
public Coroutine Coroutine { get; set; }
Property Value
| Type | Description |
|---|---|
| Coroutine |
Exception
Exception that was thrown during execution, null if there was no exception.
Declaration
public Exception Exception { get; }
Property Value
| Type | Description |
|---|---|
| Exception |
InternalCoroutine
Actual logic of the coroutine.
Declaration
public IEnumerator InternalCoroutine { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.IEnumerator |
IsFinished
Whether the coroutine has already finished.
Declaration
public bool IsFinished { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsSuccessful
Whether there was an exception or not.
Declaration
public bool IsSuccessful { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Value
Value that was returned from the coroutine. If no value was returned, default value is returned by this property.
Declaration
public TValue Value { get; }
Property Value
| Type | Description |
|---|---|
| TValue |
Methods
ThrowIfNotSuccessful()
Rethrow the exception if there was any.
Declaration
public void ThrowIfNotSuccessful()