Crate dilib

source · []
Expand description

../README.md

Re-exports

pub use macros::*;

Modules

A global instance of Container.

A lazy evaluated cell.

procedural macros of dilib.

Macros

Helper macro to bind a trait to it’s implementation in a Container as scoped.

Helper macro to bind a trait to it’s implementation in a Container as a singleton.

Helper macro to get an implementation of a trait in a Container.

Returns a scoped value from the global Container or None if is not in the container.

Helper macro to get the implementation of a trait in a Container as scoped.

Returns a singleton value from the global Container or None if is not in the container.

Helper macro to get the implementation of a trait in a Container as a singleton.

Returns a value from the Container or None if is not in the container.

Structs

Represents a store to register and retrieve objects.

Represents an unique key for value provider.

Enums

Provides a Container value.

Represents the type of the provider.

Represents a value from a Container.

Represents an Scoped provider which provide a new instance each time.

Provides a singleton value.

Traits

A trait for constructing a type getting the dependencies from a Container.

Type Definitions

A convenient singleton type.

Attribute Macros

Marks a function or static variable as a library/executable constructor. This uses OS-specific linker sections to call a specific function at load time.

Marks a function as a library/executable destructor. This uses OS-specific linker sections to call a specific function at termination time.

Derive Macros

Provides an implementation of the Inject trait for the given type.