# LoadableStatus

> Describes the current loading phase of a Loadable<T> after Loadable<T>.Load or Loadable<T>.LoadAsync is used.

## Definition

* **Type:** Enum
* **Namespace:** [Unity.Loading](/engine/6000.6/script-reference/unity/loading.md)
* **Assembly:** UnityEngine.ContentLoadModule

```csharp
public enum LoadableStatus
```

## Remarks

Query [Loadable\<T>.Status](/engine/6000.6/script-reference/unity/loading/loadable1/status.md) to drive UI or to assert that a load finished before reading [Loadable\<T>.Target](/engine/6000.6/script-reference/unity/loading/loadable1/target.md). [LoadableStatus.Failed](/engine/6000.6/script-reference/unity/loading/loadablestatus/failed.md) indicates the asynchronous load completed without a usable object. This often occurs due to missing built content.

## Examples

```csharp
using System.Threading.Tasks;
using Unity.Loading;
using UnityEngine;

namespace BuildDocExamples
{
    public class Loadable_LoadAndReleaseExample
    {
        public class HatPicker : MonoBehaviour
        {
            public Loadable<GameObject> hatPrefab;

            public void EquipDefault()
            {
                hatPrefab.Load();
                Instantiate(hatPrefab.Target);
            }
        }

        // Example showing async loading with status check
        public async Task LoadAsyncExample(Loadable<Texture2D> myLoadable)
        {
            await myLoadable.LoadAsync();
            if (myLoadable.Status == LoadableStatus.Loaded)
            {
                // Use myLoadable.Target
                Debug.Log($"Loaded: {myLoadable.Target.name}");
            }
            else
            {
                Debug.LogWarning($"Texture2D myLoadable failed to load. Loadable : {myLoadable.ToString()}");
            }
            myLoadable.Release();
        }
    }
}
```

## Fields

| Value                                                                              | Description                                   |
| ---------------------------------------------------------------------------------- | --------------------------------------------- |
| [Failed](/engine/6000.6/script-reference/unity/loading/loadablestatus/failed.md)   | The loading operation completed but failed.   |
| [Loaded](/engine/6000.6/script-reference/unity/loading/loadablestatus/loaded.md)   | The loading operation completed successfully. |
| [Loading](/engine/6000.6/script-reference/unity/loading/loadablestatus/loading.md) | The loading operation has begun.              |
| [None](/engine/6000.6/script-reference/unity/loading/loadablestatus/none.md)       | The Loadable has not begun loading.           |
