Namespace Switchboard
Classes
- ApplicationEnd
Provides an event that is invoked near the very end of the application, after Application.quitting and OnDestroy() of MonoBehaviours. Any scripts that are ordered to execute later than Destructor will have OnDestroy() called after this event.
- CompositionRoot
Loads the CompositionRootAsset and initializes the DependencyInjector.
- CompositionRootAsset
Represents a single, root asset file that can be loaded when the application starts, in order to enable dependency injection.
- DateTimeToTextConverter
Converts a DateTime value into a string of characters without allocating memory for garbage collection.
- DependencyInjector
Provides a base representation for a Unity asset that can activate, provide instances of types, then deactivate.
- Destructor
A MonoBehaviour that invokes a Destroyed event when OnDestroy() is called.
- ExpandableAttribute
Indicates that a serialized UnityEngine.Object field should be displayed with an expandable toggle that displays the object's properties.
- FileRemover
Provides methods for removing excess files from a directory.
- FloatFormatInfo
Provides detailed options for formatting floating-point numbers.
- FloatToTextConverter
Converts floating-point numbers into strings of characters without allocating memory for garbage collection.
- FloatToTextExtensions
Adds extension methods to float and double for converting to strings of characters.
- IInjectorExtensions
Provides extension methods for the IInjector interface.
- ILoggerExtensions
Provides extension methods for the ILogger interface that assign the LogLevel based on the method.
- InjectorLocator
A static service locator that provides an IInjector.
- IntToTextConverter
Converts integral numbers into strings of characters, without allocating memory for garbage collection.
- LogFileWriter
Writes log entries to log files.
- LoggerRoot
Represents a logger composed of other ILogger implementations, which serve as the actual targets for log output. A LoggerRoot cannot have another LoggerRoot added as a log target. Adding and removing targets are thread safe operations, but changes may not be immediate across threads. Thread safety of logging operations are left up to the target implementations of the ILogger interface.
- PathUtility
Provides utilities for working with file system paths.
- PreciseClock
Provides DateTime values that have the precision of a Stopwatch.
- StandardLogFormatter
Provides a standard implementation of the ILogFormatter interface.
- StringMaker
Represents a string of characters that can be modified without allocating memory for garbage collection.
- StringMakerILoggerExtensions
Provides extension methods for the ILogger interface to accept StringMaker messages.
- StringMakerUnityExtensions
Provides extension methods for StringMaker to append common Unity types.
- SwitchboardLogger
Provides a single, static LoggerRoot ILogger that can send log output to multiple targets.
- SwitchboardMenuOrder
Provides Switchboard's order in the asset creation menu.
- UnityLogHandler
Provides a reference to the default Unity log handler.
- UnityLogHijacker
Redirects calls to Unity log methods to an ILogger implementation instead, when assigned to UnityEngine.Debug.unityLogger.logHandler.
- UnityLogger
An implementation of ILogger that targets the UnityLogHandler.
Structs
- StringMakerHandle
Provides a readonly ref struct facade for StringMaker.
Interfaces
- IInjector
Provides a generic interface for getting an instance of a requested type.
- ILogFormatter
Provides an interface for formatting log message and exceptions.
- ILogger
Provides an interface for logging.
Enums
- DependencyInjector.State
The various states that a DependencyInjector can have while activating and deactivating.
- LogLevel
Defines the levels of significance that may be assigned to a log entry.
Delegates
- StringMaker.ForEachArrayAction<TArg>
Encapsulates a method that receives a state object of type TArg, a read-only span of characters in the current array, and boolean indicating if it is the final array.