2 releases
1.0.0-alpha.1 | Jul 16, 2023 |
---|
#2457 in Rust patterns
8KB
101 lines
YaDI
Yet another dependency injection framework for writing applications with the Rust programming language. It is:
- Reliable
- Fast
- Easy-to-use
🚨 Not implemented! 🚨
yadi
has to be considered as a DRAFT project. Its API is unstable, most features are not implemented.
Please DO NOT use it in your projects until v1.0.0 release.
Stay tuned!
Overview
yadi
is a dependency injection framework for writing applications with
the Rust programming language. At a high level, it provides a few major components:
- A read-only container a.k.a ServiceLocator.
- A builder for this container a.k.a ServiceLocatorBuilder.
- Some helper structs, enums and types (Tag, Error, Result, etc.)
These components are used to compose the framework for building a loose coupled and high cohesive application.
Example
A basic application with yadi
More examples can be found here. For a larger "real world" example, see the flc repository.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.