Stone.js API
    Preparing search index...

    Class representing a Factory.

    The Factory class extends the ResolverBinding class, providing a mechanism to resolve a new instance each time the binding is resolved. This ensures that a fresh instance is created with each call to the resolve method.

    Mr. Stone evensstone@gmail.com

    Type Parameters

    • V extends BindingValue

      The type of value that this binding holds.

    Hierarchy (View Summary)

    Index
    resolved: boolean

    Whether the value has been resolved at least once.

    Tracked explicitly (not inferred from value !== undefined) so a binding whose resolved value is legitimately undefined is still considered resolved — preserving the singleton guarantee and avoiding repeated resolver side effects.

    resolver: Resolver<V>

    The resolver function used to provide the binding value.

    This function will be called when the value is needed, allowing for lazy instantiation and dependency resolution. It should return an instance of type V.

    value?: V

    The value held by the binding.

    This value is resolved at runtime, either directly or through a resolver function.

    • Check if the value has been resolved.

      Returns boolean

      A boolean indicating whether the value has been resolved.

    • Resolve and return the value of the binding.

      Each time this method is called, a new value is resolved using the resolver function. This is intended for cases where a fresh instance is required for each resolution, such as factories or transient dependencies.

      Parameters

      • container: IContainer

        The container to resolve dependencies from.

      Returns V

      The resolved value of the binding.

      ContainerError if the value cannot be resolved.