Namespace Scylla.Core.Util.Addressables
Classes
AddressableException
The exception thrown when an Addressables operation fails within the Scylla Addressables utility layer. Extends Exception with a structured ErrorCode and an optional Address so that callers can distinguish failure modes (e.g., asset not found vs. network error vs. cancelled) and identify which asset key triggered the failure.
AddressableExtensions
Provides extension methods for Unity Addressables types that enable a fluent, readable API
for chaining completion callbacks, converting handles to Unity's Awaitable pattern,
and loading assets directly from AssetReference or string address values.
AddressableSettings
Configures the behavior of Addressables operations performed by ScyllaAddressables. Controls timeout durations, retry attempts, diagnostic warnings, asset tracking, and failure-cleanup policy.
ScyllaAddressables
Provides a unified, opinionated API for Unity's Addressables system, covering the full lifecycle of addressable assets: loading, instantiation, scene management, dependency downloading, catalog updates, memory release, and RAII-style managed wrappers.
Structs
AddressableProgress
An immutable snapshot of the progress state for an in-flight Addressables operation.
Used as the report value type for IProgress<AddressableProgress> callbacks
supplied to loading, downloading, and batch operations in
ScyllaAddressables.
AddressableResult
Represents the outcome of a void Addressables operation - one that loads, releases, unloads, or downloads content without returning a usable asset value. Carries either a success indicator or a structured error comprising an ErrorCode, human-readable ErrorMessage, and optional Exception.
AddressableResult<T>
Represents the outcome of an Addressables operation that returns an asset or other
typed value. On success, Value holds the loaded asset; on failure,
the value is default(T) and error details are available through
ErrorCode, ErrorMessage, and Exception.
ManagedAddressableList<T>
A value-type RAII wrapper that holds a batch of loaded Addressable assets and automatically
releases the underlying AsyncOperationHandle when the wrapper is disposed, ensuring that
all assets in the batch have their Addressables reference count decremented simultaneously.
ManagedAddressable<T>
A value-type RAII wrapper that holds a loaded Addressable asset and automatically releases the
underlying AsyncOperationHandle when the wrapper is disposed, ensuring that the
Addressables reference count is always properly decremented.
Enums
AddressableErrorCode
Specifies structured error codes that categorize the type of failure encountered during an Addressables operation. Each code maps to a distinct failure mode so that calling code can implement targeted error handling (e.g., retry on NetworkError, alert the user on AssetNotFound, or abort silently on OperationCancelled).