This repository has been archived by the owner on Oct 20, 2023. It is now read-only.
v0.8.0
Pre-release
Pre-release
0.8.0 (06 April 2019)
Features:
- Added support for open generics. Just register a dependency as
config.Register(typeof(IOpenGeneric<>), typeof(OpenGeneric<>))
and Singularity will try map the generic parameters when requesting a instance. - Added support for IEnumerable. Just request a
IEnumerable<T>
and you will get all the registered instances forT
. This is lazy so these instances are not created until you start enumerating the enumerable. - Added support for scopes
Improvements
- Improved performance:
- Dependency lookup now uses a extremely fast lock free custom dictionary
- More efficient expression trees are now being generated resulting in faster delegates
- Now uses FastExpression compiler to generate even more optimized delegates
- Container startup is alot faster now by avoiding some unnecessary compilations of a expression tree