injectium-core 0.1.1

Core implementation and utilities for injectium
Documentation

injectium-core

Crates.io Version docs.rs

Core dependency-injection container implementation for Rust.

Installation

cargo add injectium-core

Quick Start

use injectium_core::{Container, container};

// Build a container with singletons and/or factories
let c = container! {
    singletons: [
        42_u32,
        String::from("hello"),
    ],
    providers: [
        |c| format!("value is {}", c.get::<u32>()),
    ],
};

// Retrieve a singleton
assert_eq!(*c.get::<u32>(), 42);

// Resolve a factory (produces a new value each time)
assert_eq!(c.resolve::<String>(), "value is 42");

Documentation

See docs.rs for full API documentation.

License

MIT