diff --git a/README.md b/README.md index 7ca8ffa07..fd6e42173 100644 --- a/README.md +++ b/README.md @@ -264,6 +264,7 @@ dotnet run - [OnNewInstance hint](readme/onnewinstance-hint.md) - [ToString hint](readme/tostring-hint.md) - [Tracking disposable instances](readme/tracking-disposable-instances.md) +- [Tracking disposable instances per a composition root](readme/tracking-disposable-instances-per-a-composition-root.md) - [Check for a root](readme/check-for-a-root.md) ### Advanced - [Composition root kinds](readme/composition-root-kinds.md) diff --git a/readme/ArrayDetails.md b/readme/ArrayDetails.md index 5d3a8e707..1b56880b7 100644 --- a/readme/ArrayDetails.md +++ b/readme/ArrayDetails.md @@ -88,16 +88,16 @@ classDiagram ```c# partial class Array { - private readonly Array _rootM03D15di; + private readonly Array _rootM03D17di; public Array() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Array(Array baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public partial Pure.DI.Benchmarks.Model.CompositionRoot PureDIByCR() @@ -107,20 +107,20 @@ partial class Array public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -132,10 +132,10 @@ partial class Array public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -224,25 +224,25 @@ partial class Array " Array ..> CompositionRoot : CompositionRoot PureDIByCR()"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Array() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Array composite) { @@ -255,7 +255,7 @@ partial class Array } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.Benchmarks.Model.CompositionRoot Resolve(Array composition) { diff --git a/readme/EnumDetails.md b/readme/EnumDetails.md index 84d79f3d7..f0596e184 100644 --- a/readme/EnumDetails.md +++ b/readme/EnumDetails.md @@ -88,48 +88,48 @@ classDiagram ```c# partial class Enum { - private readonly Enum _rootM03D15di; + private readonly Enum _rootM03D17di; public Enum() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Enum(Enum baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public partial Pure.DI.Benchmarks.Model.CompositionRoot PureDIByCR() { [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)0x200)] - System.Collections.Generic.IEnumerable LocalperBlockM03D15di10_IEnumerable() + System.Collections.Generic.IEnumerable LocalperBlockM03D17di10_IEnumerable() { yield return new Pure.DI.Benchmarks.Model.Service3(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); yield return new Pure.DI.Benchmarks.Model.Service3v2(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); yield return new Pure.DI.Benchmarks.Model.Service3v3(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); yield return new Pure.DI.Benchmarks.Model.Service3v4(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); } - var perBlockM03D15di10_IEnumerable = LocalperBlockM03D15di10_IEnumerable(); - return new Pure.DI.Benchmarks.Model.CompositionRoot(new Pure.DI.Benchmarks.Model.Service1(new Pure.DI.Benchmarks.Model.Service2Enum(perBlockM03D15di10_IEnumerable)), new Pure.DI.Benchmarks.Model.Service2Enum(perBlockM03D15di10_IEnumerable), new Pure.DI.Benchmarks.Model.Service2Enum(perBlockM03D15di10_IEnumerable), new Pure.DI.Benchmarks.Model.Service2Enum(perBlockM03D15di10_IEnumerable), new Pure.DI.Benchmarks.Model.Service3(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()), new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); + System.Collections.Generic.IEnumerable perBlockM03D17di10_IEnumerable = LocalperBlockM03D17di10_IEnumerable(); + return new Pure.DI.Benchmarks.Model.CompositionRoot(new Pure.DI.Benchmarks.Model.Service1(new Pure.DI.Benchmarks.Model.Service2Enum(perBlockM03D17di10_IEnumerable)), new Pure.DI.Benchmarks.Model.Service2Enum(perBlockM03D17di10_IEnumerable), new Pure.DI.Benchmarks.Model.Service2Enum(perBlockM03D17di10_IEnumerable), new Pure.DI.Benchmarks.Model.Service2Enum(perBlockM03D17di10_IEnumerable), new Pure.DI.Benchmarks.Model.Service3(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()), new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -141,10 +141,10 @@ partial class Enum public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -233,25 +233,25 @@ partial class Enum " Enum ..> CompositionRoot : CompositionRoot PureDIByCR()"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Enum() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Enum composite) { @@ -264,7 +264,7 @@ partial class Enum } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.Benchmarks.Model.CompositionRoot Resolve(Enum composition) { diff --git a/readme/FuncDetails.md b/readme/FuncDetails.md index 5ee791488..f9e0aea02 100644 --- a/readme/FuncDetails.md +++ b/readme/FuncDetails.md @@ -67,46 +67,46 @@ classDiagram ```c# partial class Func { - private readonly Func _rootM03D15di; + private readonly Func _rootM03D17di; public Func() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Func(Func baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public partial Pure.DI.Benchmarks.Model.CompositionRoot PureDIByCR() { - System.Func perBlockM03D15di10_Func = new Func( + System.Func perBlockM03D17di10_Func = new Func( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - var value_M03D15di1 = new Pure.DI.Benchmarks.Model.Service3(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); - return value_M03D15di1; + var value_M03D17di1 = new Pure.DI.Benchmarks.Model.Service3(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); + return value_M03D17di1; }); - return new Pure.DI.Benchmarks.Model.CompositionRoot(new Pure.DI.Benchmarks.Model.Service1(new Pure.DI.Benchmarks.Model.Service2Func(perBlockM03D15di10_Func)), new Pure.DI.Benchmarks.Model.Service2Func(perBlockM03D15di10_Func), new Pure.DI.Benchmarks.Model.Service2Func(perBlockM03D15di10_Func), new Pure.DI.Benchmarks.Model.Service2Func(perBlockM03D15di10_Func), new Pure.DI.Benchmarks.Model.Service3(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()), new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); + return new Pure.DI.Benchmarks.Model.CompositionRoot(new Pure.DI.Benchmarks.Model.Service1(new Pure.DI.Benchmarks.Model.Service2Func(perBlockM03D17di10_Func)), new Pure.DI.Benchmarks.Model.Service2Func(perBlockM03D17di10_Func), new Pure.DI.Benchmarks.Model.Service2Func(perBlockM03D17di10_Func), new Pure.DI.Benchmarks.Model.Service2Func(perBlockM03D17di10_Func), new Pure.DI.Benchmarks.Model.Service3(new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()), new Pure.DI.Benchmarks.Model.Service4(), new Pure.DI.Benchmarks.Model.Service4()); } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -118,10 +118,10 @@ partial class Func public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -189,25 +189,25 @@ partial class Func " FuncᐸIService3ᐳ *-- Service3 : IService3"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Func() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Func composite) { @@ -220,7 +220,7 @@ partial class Func } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.Benchmarks.Model.CompositionRoot Resolve(Func composition) { diff --git a/readme/SingletonDetails.md b/readme/SingletonDetails.md index 5ece970b7..034c36631 100644 --- a/readme/SingletonDetails.md +++ b/readme/SingletonDetails.md @@ -69,49 +69,49 @@ classDiagram ```c# partial class Singleton { - private readonly Singleton _rootM03D15di; - private Pure.DI.Benchmarks.Model.Service1 _scopedM03D15di35_Service1; - private Pure.DI.Benchmarks.Model.Service4 _scopedM03D15di38_Service4; + private readonly Singleton _rootM03D17di; + private Pure.DI.Benchmarks.Model.Service1 _scopedM03D17di35_Service1; + private Pure.DI.Benchmarks.Model.Service4 _scopedM03D17di38_Service4; public Singleton() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Singleton(Singleton baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public partial Pure.DI.Benchmarks.Model.CompositionRoot PureDIByCR() { - if (ReferenceEquals(_scopedM03D15di38_Service4, null)) + if (ReferenceEquals(_scopedM03D17di38_Service4, null)) { - _scopedM03D15di38_Service4 = new Pure.DI.Benchmarks.Model.Service4(); + _scopedM03D17di38_Service4 = new Pure.DI.Benchmarks.Model.Service4(); } - if (ReferenceEquals(_scopedM03D15di35_Service1, null)) + if (ReferenceEquals(_scopedM03D17di35_Service1, null)) { - _scopedM03D15di35_Service1 = new Pure.DI.Benchmarks.Model.Service1(new Pure.DI.Benchmarks.Model.Service2(new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4))); + _scopedM03D17di35_Service1 = new Pure.DI.Benchmarks.Model.Service1(new Pure.DI.Benchmarks.Model.Service2(new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4))); } - return new Pure.DI.Benchmarks.Model.CompositionRoot(_scopedM03D15di35_Service1, new Pure.DI.Benchmarks.Model.Service2(new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4)), new Pure.DI.Benchmarks.Model.Service2(new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4)), new Pure.DI.Benchmarks.Model.Service2(new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4)), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D15di38_Service4, _scopedM03D15di38_Service4), _scopedM03D15di38_Service4, _scopedM03D15di38_Service4); + return new Pure.DI.Benchmarks.Model.CompositionRoot(_scopedM03D17di35_Service1, new Pure.DI.Benchmarks.Model.Service2(new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4)), new Pure.DI.Benchmarks.Model.Service2(new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4)), new Pure.DI.Benchmarks.Model.Service2(new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4)), new Pure.DI.Benchmarks.Model.Service3(_scopedM03D17di38_Service4, _scopedM03D17di38_Service4), _scopedM03D17di38_Service4, _scopedM03D17di38_Service4); } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -123,10 +123,10 @@ partial class Singleton public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -196,25 +196,25 @@ partial class Singleton " Singleton ..> CompositionRoot : CompositionRoot PureDIByCR()"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Singleton() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Singleton composite) { @@ -227,7 +227,7 @@ partial class Singleton } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.Benchmarks.Model.CompositionRoot Resolve(Singleton composition) { diff --git a/readme/TransientDetails.md b/readme/TransientDetails.md index 677b7bf38..caae5a72f 100644 --- a/readme/TransientDetails.md +++ b/readme/TransientDetails.md @@ -69,16 +69,16 @@ classDiagram ```c# partial class Transient { - private readonly Transient _rootM03D15di; + private readonly Transient _rootM03D17di; public Transient() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Transient(Transient baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public partial Pure.DI.Benchmarks.Model.CompositionRoot PureDIByCR() @@ -88,20 +88,20 @@ partial class Transient public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -113,10 +113,10 @@ partial class Transient public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -186,25 +186,25 @@ partial class Transient " Transient ..> CompositionRoot : CompositionRoot PureDIByCR()"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Transient() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.Benchmarks.Model.CompositionRoot), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Transient composite) { @@ -217,7 +217,7 @@ partial class Transient } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.Benchmarks.Model.CompositionRoot Resolve(Transient composition) { diff --git a/readme/a-few-partial-classes.md b/readme/a-few-partial-classes.md index e09248ac8..53918d5fa 100644 --- a/readme/a-few-partial-classes.md +++ b/readme/a-few-partial-classes.md @@ -79,16 +79,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Advanced.SeveralPartialClassesScenario.IService Root @@ -101,20 +101,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -126,10 +126,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -168,25 +168,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.SeveralPartialClassesScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.SeveralPartialClassesScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -199,7 +199,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.SeveralPartialClassesScenario.IService Resolve(Composition composition) { diff --git a/readme/advanced-interception.md b/readme/advanced-interception.md index 875d20a25..6b1ffa624 100644 --- a/readme/advanced-interception.md +++ b/readme/advanced-interception.md @@ -147,16 +147,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Interception.AdvancedInterceptionScenario.IService Root @@ -169,20 +169,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -194,10 +194,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -238,25 +238,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Interception.AdvancedInterceptionScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Interception.AdvancedInterceptionScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -269,7 +269,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Interception.AdvancedInterceptionScenario.IService Resolve(Composition composition) { diff --git a/readme/arguments.md b/readme/arguments.md index 584b21c2a..3cb62cbb3 100644 --- a/readme/arguments.md +++ b/readme/arguments.md @@ -92,53 +92,53 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly int _argM03D15di_id; - private readonly string _argM03D15di_serviceName; + private readonly Composition _rootM03D17di; + private readonly int _argM03D17di_id; + private readonly string _argM03D17di_serviceName; public Composition(int id, string serviceName) { - _rootM03D15di = this; + _rootM03D17di = this; if (ReferenceEquals(serviceName, null)) { throw new global::System.ArgumentNullException("serviceName"); } - _argM03D15di_id = id; - _argM03D15di_serviceName = serviceName; + _argM03D17di_id = id; + _argM03D17di_serviceName = serviceName; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _argM03D15di_id = baseComposition._argM03D15di_id; - _argM03D15di_serviceName = baseComposition._argM03D15di_serviceName; + _rootM03D17di = baseComposition._rootM03D17di; + _argM03D17di_id = baseComposition._argM03D17di_id; + _argM03D17di_serviceName = baseComposition._argM03D17di_serviceName; } public Pure.DI.UsageTests.Basics.ArgumentsScenario.IService Root { get { - return new Pure.DI.UsageTests.Basics.ArgumentsScenario.Service(_argM03D15di_serviceName, new Pure.DI.UsageTests.Basics.ArgumentsScenario.Dependency(_argM03D15di_id)); + return new Pure.DI.UsageTests.Basics.ArgumentsScenario.Service(_argM03D17di_serviceName, new Pure.DI.UsageTests.Basics.ArgumentsScenario.Dependency(_argM03D17di_id)); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -150,10 +150,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -196,25 +196,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.ArgumentsScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.ArgumentsScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -227,7 +227,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.ArgumentsScenario.IService Resolve(Composition composition) { diff --git a/readme/array.md b/readme/array.md index 62792923d..71f846d3e 100644 --- a/readme/array.md +++ b/readme/array.md @@ -104,16 +104,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.ArrayScenario.IService Root @@ -126,20 +126,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -151,10 +151,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -200,25 +200,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ArrayScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ArrayScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -231,7 +231,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.ArrayScenario.IService Resolve(Composition composition) { diff --git a/readme/async-enumerable.md b/readme/async-enumerable.md index 03d8f5d7b..e32528d39 100644 --- a/readme/async-enumerable.md +++ b/readme/async-enumerable.md @@ -87,16 +87,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.AsyncEnumerableScenario.IService Root @@ -104,32 +104,32 @@ partial class Composition get { [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)0x200)] - async System.Collections.Generic.IAsyncEnumerable LocaltransientM03D15di1_IAsyncEnumerable() + async System.Collections.Generic.IAsyncEnumerable LocaltransientM03D17di1_IAsyncEnumerable() { yield return new Pure.DI.UsageTests.BCL.AsyncEnumerableScenario.AbcDependency(); yield return new Pure.DI.UsageTests.BCL.AsyncEnumerableScenario.XyzDependency(); } - var transientM03D15di1_IAsyncEnumerable = LocaltransientM03D15di1_IAsyncEnumerable(); - return new Pure.DI.UsageTests.BCL.AsyncEnumerableScenario.Service(transientM03D15di1_IAsyncEnumerable); + System.Collections.Generic.IAsyncEnumerable transientM03D17di1_IAsyncEnumerable = LocaltransientM03D17di1_IAsyncEnumerable(); + return new Pure.DI.UsageTests.BCL.AsyncEnumerableScenario.Service(transientM03D17di1_IAsyncEnumerable); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -141,10 +141,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -190,25 +190,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.AsyncEnumerableScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.AsyncEnumerableScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -221,7 +221,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.AsyncEnumerableScenario.IService Resolve(Composition composition) { diff --git a/readme/auto-bindings.md b/readme/auto-bindings.md index 413be6efc..715ba4863 100644 --- a/readme/auto-bindings.md +++ b/readme/auto-bindings.md @@ -50,16 +50,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.AutoBindingsScenario.Service MyService diff --git a/readme/auto-scoped.md b/readme/auto-scoped.md index c5d601238..d1406157e 100644 --- a/readme/auto-scoped.md +++ b/readme/auto-scoped.md @@ -105,37 +105,37 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Dependency _scopedM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Dependency _scopedM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } private Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Service SessionRoot { get { - if (ReferenceEquals(_scopedM03D15di34_Dependency, null)) + if (ReferenceEquals(_scopedM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_scopedM03D15di34_Dependency, null)) + if (ReferenceEquals(_scopedM03D17di34_Dependency, null)) { - _scopedM03D15di34_Dependency = new Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Dependency(); + _scopedM03D17di34_Dependency = new Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Dependency(); } } } - return new Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Service(_scopedM03D15di34_Dependency); + return new Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Service(_scopedM03D17di34_Dependency); } } @@ -143,42 +143,42 @@ partial class Composition { get { - var perResolveM03D15di39_Func = default(System.Func); - perResolveM03D15di39_Func = new global::System.Func( + var perResolveM03D17di39_Func = default(System.Func); + perResolveM03D17di39_Func = new global::System.Func( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - var transientM03D15di2_Composition = this; - Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.IService transientM03D15di1_IService; + Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Composition transientM03D17di2_Composition = this; + Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.IService transientM03D17di1_IService; { - var baseComposition_M03D15di2 = transientM03D15di2_Composition; + var baseComposition_M03D17di2 = transientM03D17di2_Composition; // Creates a session - var session_M03D15di3 = new Composition(baseComposition_M03D15di2); - transientM03D15di1_IService = session_M03D15di3.SessionRoot; + var session_M03D17di3 = new Composition(baseComposition_M03D17di2); + transientM03D17di1_IService = session_M03D17di3.SessionRoot; } - var factory_M03D15di1 = transientM03D15di1_IService; - return factory_M03D15di1; + var factory_M03D17di1 = transientM03D17di1_IService; + return factory_M03D17di1; }); - return new Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Program(perResolveM03D15di39_Func); + return new Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Program(perResolveM03D17di39_Func); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -190,10 +190,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -239,28 +239,28 @@ partial class Composition " FuncᐸIServiceᐳ *-- IService : IService"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Service), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Program), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Service), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Program), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -273,7 +273,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Service Resolve(Composition composition) { @@ -291,7 +291,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.AutoScopedScenario.Program Resolve(Composition composition) { diff --git a/readme/check-for-a-root.md b/readme/check-for-a-root.md index a06d60765..c6bdf4014 100644 --- a/readme/check-for-a-root.md +++ b/readme/check-for-a-root.md @@ -64,7 +64,7 @@ Composition.HasRoot(typeof(IComparable)).ShouldBeFalse(); classDiagram class Composition { +IService Root - -IDependency RootM03D15di0001 + -IDependency RootM03D17di0001 + T ResolveᐸTᐳ() + T ResolveᐸTᐳ(object? tag) + object Resolve(Type type) @@ -86,7 +86,7 @@ classDiagram <> } Service *-- Dependency : "MyDep" IDependency - Composition ..> Dependency : IDependency RootM03D15di0001 + Composition ..> Dependency : IDependency RootM03D17di0001 Composition ..> Service : IService Root ``` @@ -98,16 +98,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Hints.CheckForRootScenario.IService Root @@ -121,7 +121,7 @@ partial class Composition } } - public Pure.DI.UsageTests.Hints.CheckForRootScenario.IDependency RootM03D15di0001 + public Pure.DI.UsageTests.Hints.CheckForRootScenario.IDependency RootM03D17di0001 { get { @@ -131,20 +131,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -156,10 +156,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -175,7 +175,7 @@ partial class Composition "classDiagram\n" + " class Composition {\n" + " +IService Root\n" + - " -IDependency RootM03D15di0001\n" + + " -IDependency RootM03D17di0001\n" + " + T ResolveᐸTᐳ()\n" + " + T ResolveᐸTᐳ(object? tag)\n" + " + object Resolve(Type type)\n" + @@ -197,36 +197,36 @@ partial class Composition " <>\n" + " }\n" + " Service *-- Dependency : \"MyDep\" IDependency\n" + - " Composition ..> Dependency : IDependency RootM03D15di0001\n" + + " Composition ..> Dependency : IDependency RootM03D17di0001\n" + " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; private static partial void OnNewRoot(global::Pure.DI.IResolver resolver, string name, object? tag, global::Pure.DI.Lifetime lifetime); static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - OnNewRoot(valResolverM03D15di_0000, "Root", null, Pure.DI.Lifetime.Transient); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - OnNewRoot(valResolverM03D15di_0001, "RootM03D15di0001", "MyDep", Pure.DI.Lifetime.Transient); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + OnNewRoot(valResolverM03D17di_0000, "Root", null, Pure.DI.Lifetime.Transient); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + OnNewRoot(valResolverM03D17di_0001, "RootM03D17di0001", "MyDep", Pure.DI.Lifetime.Transient); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.CheckForRootScenario.IService), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.CheckForRootScenario.IDependency), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.CheckForRootScenario.IService), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.CheckForRootScenario.IDependency), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -239,7 +239,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Hints.CheckForRootScenario.IService Resolve(Composition composition) { @@ -257,7 +257,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Hints.CheckForRootScenario.IDependency Resolve(Composition composition) { @@ -269,7 +269,7 @@ partial class Composition switch (tag) { case "MyDep": - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.Hints.CheckForRootScenario.IDependency."); } diff --git a/readme/complex-generics.md b/readme/complex-generics.md index 4231bb631..2c77cb220 100644 --- a/readme/complex-generics.md +++ b/readme/complex-generics.md @@ -108,16 +108,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Generics.ComplexGenericsScenario.Program Root @@ -130,20 +130,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -155,10 +155,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -209,25 +209,25 @@ partial class Composition " ServiceᐸStringˏInt32ˏListᐸStringᐳˏDictionaryᐸStringˏInt32ᐳᐳ *-- DependencyStructᐸInt32ᐳ : \"value type\" IDependencyᐸInt32ᐳ"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di>.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di>.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Generics.ComplexGenericsScenario.Program), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Generics.ComplexGenericsScenario.Program), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -240,7 +240,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver> + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver> { public Pure.DI.UsageTests.Generics.ComplexGenericsScenario.Program Resolve(Composition composition) { diff --git a/readme/composition-root-kinds.md b/readme/composition-root-kinds.md index 2f51521bb..edfdcdfb5 100644 --- a/readme/composition-root-kinds.md +++ b/readme/composition-root-kinds.md @@ -87,16 +87,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } private partial Pure.DI.UsageTests.Advanced.CompositionRootKindsScenario.IService GetRoot() @@ -119,20 +119,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -144,10 +144,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -194,28 +194,28 @@ partial class Composition " Composition ..> Dependency : IDependency Dependency"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.CompositionRootKindsScenario.IService), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.CompositionRootKindsScenario.IDependency), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.CompositionRootKindsScenario.IService), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.CompositionRootKindsScenario.IDependency), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -228,7 +228,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.CompositionRootKindsScenario.IService Resolve(Composition composition) { @@ -248,7 +248,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.CompositionRootKindsScenario.IDependency Resolve(Composition composition) { diff --git a/readme/composition-roots.md b/readme/composition-roots.md index 6bdfc3054..44aeb0eda 100644 --- a/readme/composition-roots.md +++ b/readme/composition-roots.md @@ -71,7 +71,7 @@ classDiagram class Composition { +IService MyRoot +IService SomeOtherService - -IDependency RootM03D15di0003 + -IDependency RootM03D17di0003 + T ResolveᐸTᐳ() + T ResolveᐸTᐳ(object? tag) + object Resolve(Type type) @@ -98,7 +98,7 @@ classDiagram Service *-- Dependency : IDependency Composition ..> OtherService : IService SomeOtherService Composition ..> Service : IService MyRoot - Composition ..> Dependency : IDependency RootM03D15di0003 + Composition ..> Dependency : IDependency RootM03D17di0003 ``` @@ -109,16 +109,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.CompositionRootsScenario.IService MyRoot @@ -137,7 +137,7 @@ partial class Composition } } - public Pure.DI.UsageTests.Basics.CompositionRootsScenario.IDependency RootM03D15di0003 + public Pure.DI.UsageTests.Basics.CompositionRootsScenario.IDependency RootM03D17di0003 { get { @@ -147,20 +147,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -172,10 +172,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -192,7 +192,7 @@ partial class Composition " class Composition {\n" + " +IService MyRoot\n" + " +IService SomeOtherService\n" + - " -IDependency RootM03D15di0003\n" + + " -IDependency RootM03D17di0003\n" + " + T ResolveᐸTᐳ()\n" + " + T ResolveᐸTᐳ(object? tag)\n" + " + object Resolve(Type type)\n" + @@ -219,31 +219,31 @@ partial class Composition " Service *-- Dependency : IDependency\n" + " Composition ..> OtherService : IService SomeOtherService\n" + " Composition ..> Service : IService MyRoot\n" + - " Composition ..> Dependency : IDependency RootM03D15di0003"; + " Composition ..> Dependency : IDependency RootM03D17di0003"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.CompositionRootsScenario.IService), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.CompositionRootsScenario.IDependency), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.CompositionRootsScenario.IService), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.CompositionRootsScenario.IDependency), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -256,7 +256,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.CompositionRootsScenario.IService Resolve(Composition composition) { @@ -276,11 +276,11 @@ partial class Composition } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.CompositionRootsScenario.IDependency Resolve(Composition composition) { - return composition.RootM03D15di0003; + return composition.RootM03D17di0003; } public Pure.DI.UsageTests.Basics.CompositionRootsScenario.IDependency ResolveByTag(Composition composition, object tag) @@ -288,7 +288,7 @@ partial class Composition switch (tag) { case null: - return composition.RootM03D15di0003; + return composition.RootM03D17di0003; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.Basics.CompositionRootsScenario.IDependency."); } diff --git a/readme/constructor-ordinal-attribute.md b/readme/constructor-ordinal-attribute.md index afd29978c..f0c0ec3d1 100644 --- a/readme/constructor-ordinal-attribute.md +++ b/readme/constructor-ordinal-attribute.md @@ -71,50 +71,50 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly string _argM03D15di_serviceName; + private readonly Composition _rootM03D17di; + private readonly string _argM03D17di_serviceName; public Composition(string serviceName) { - _rootM03D15di = this; + _rootM03D17di = this; if (ReferenceEquals(serviceName, null)) { throw new global::System.ArgumentNullException("serviceName"); } - _argM03D15di_serviceName = serviceName; + _argM03D17di_serviceName = serviceName; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _argM03D15di_serviceName = baseComposition._argM03D15di_serviceName; + _rootM03D17di = baseComposition._rootM03D17di; + _argM03D17di_serviceName = baseComposition._argM03D17di_serviceName; } public Pure.DI.UsageTests.Attributes.ConstructorOrdinalAttributeScenario.IService Root { get { - return new Pure.DI.UsageTests.Attributes.ConstructorOrdinalAttributeScenario.Service(_argM03D15di_serviceName); + return new Pure.DI.UsageTests.Attributes.ConstructorOrdinalAttributeScenario.Service(_argM03D17di_serviceName); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -126,10 +126,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -162,25 +162,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Attributes.ConstructorOrdinalAttributeScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Attributes.ConstructorOrdinalAttributeScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -193,7 +193,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Attributes.ConstructorOrdinalAttributeScenario.IService Resolve(Composition composition) { diff --git a/readme/custom-attributes.md b/readme/custom-attributes.md index e009bef6c..6466e24a3 100644 --- a/readme/custom-attributes.md +++ b/readme/custom-attributes.md @@ -87,48 +87,48 @@ classDiagram ```c# partial class PersonComposition { - private readonly PersonComposition _rootM03D15di; - private readonly int _argM03D15di_personId; + private readonly PersonComposition _rootM03D17di; + private readonly int _argM03D17di_personId; public PersonComposition(int personId) { - _rootM03D15di = this; - _argM03D15di_personId = personId; + _rootM03D17di = this; + _argM03D17di_personId = personId; } internal PersonComposition(PersonComposition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _argM03D15di_personId = baseComposition._argM03D15di_personId; + _rootM03D17di = baseComposition._rootM03D17di; + _argM03D17di_personId = baseComposition._argM03D17di_personId; } public Pure.DI.UsageTests.Attributes.CustomAttributesScenario.IPerson Person { get { - string transientM03D15di1_String = "Nik"; - var transientM03D15di0_Person = new Pure.DI.UsageTests.Attributes.CustomAttributesScenario.Person(transientM03D15di1_String); - transientM03D15di0_Person.Id = _argM03D15di_personId; - return transientM03D15di0_Person; + string transientM03D17di1_String = "Nik"; + Pure.DI.UsageTests.Attributes.CustomAttributesScenario.Person transientM03D17di0_Person = new Pure.DI.UsageTests.Attributes.CustomAttributesScenario.Person(transientM03D17di1_String); + transientM03D17di0_Person.Id = _argM03D17di_personId; + return transientM03D17di0_Person; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -140,10 +140,10 @@ partial class PersonComposition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -179,25 +179,25 @@ partial class PersonComposition " PersonComposition ..> Person : IPerson Person"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static PersonComposition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Attributes.CustomAttributesScenario.IPerson), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Attributes.CustomAttributesScenario.IPerson), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(PersonComposition composite) { @@ -210,7 +210,7 @@ partial class PersonComposition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Attributes.CustomAttributesScenario.IPerson Resolve(PersonComposition composition) { diff --git a/readme/decorator.md b/readme/decorator.md index 704875e8f..ee164b2c2 100644 --- a/readme/decorator.md +++ b/readme/decorator.md @@ -64,16 +64,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Interception.DecoratorScenario.IService Root @@ -86,20 +86,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -111,10 +111,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -150,25 +150,25 @@ partial class Composition " Composition ..> GreetingService : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Interception.DecoratorScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Interception.DecoratorScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -181,7 +181,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Interception.DecoratorScenario.IService Resolve(Composition composition) { diff --git a/readme/default-lifetime.md b/readme/default-lifetime.md index 25a0edd4e..2b93ee453 100644 --- a/readme/default-lifetime.md +++ b/readme/default-lifetime.md @@ -77,63 +77,63 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.Service _singletonM03D15di35_Service; - private Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.Dependency _singletonM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.Service _singletonM03D17di35_Service; + private Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.Dependency _singletonM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.IService Root { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_Service, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_Service, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_Service, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_Service, null)) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } - _singletonM03D15di35_Service = new Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.Service(_singletonM03D15di34_Dependency, _rootM03D15di._singletonM03D15di34_Dependency); - _rootM03D15di._singletonM03D15di35_Service = _singletonM03D15di35_Service; + _singletonM03D17di35_Service = new Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.Service(_singletonM03D17di34_Dependency, _rootM03D17di._singletonM03D17di34_Dependency); + _rootM03D17di._singletonM03D17di35_Service = _singletonM03D17di35_Service; } } } - return _rootM03D15di._singletonM03D15di35_Service; + return _rootM03D17di._singletonM03D17di35_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -145,10 +145,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -188,25 +188,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -219,7 +219,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.DefaultLifetimeScenario.IService Resolve(Composition composition) { diff --git a/readme/default-values.md b/readme/default-values.md index 890d03bf3..43b51a62c 100644 --- a/readme/default-values.md +++ b/readme/default-values.md @@ -70,16 +70,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.DefaultValuesScenario.IService Root @@ -95,20 +95,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -120,10 +120,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -163,25 +163,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.DefaultValuesScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.DefaultValuesScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -194,7 +194,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.DefaultValuesScenario.IService Resolve(Composition composition) { diff --git a/readme/dependent-compositions.md b/readme/dependent-compositions.md index 95db3ba68..5efbe7ce1 100644 --- a/readme/dependent-compositions.md +++ b/readme/dependent-compositions.md @@ -89,16 +89,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.IService Root @@ -111,20 +111,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -136,10 +136,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -178,25 +178,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -209,7 +209,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.IService Resolve(Composition composition) { @@ -237,16 +237,16 @@ partial class Composition ```c# partial class OtherComposition { - private readonly OtherComposition _rootM03D15di; + private readonly OtherComposition _rootM03D17di; public OtherComposition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal OtherComposition(OtherComposition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.IService Root @@ -267,20 +267,20 @@ partial class OtherComposition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -292,10 +292,10 @@ partial class OtherComposition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -340,28 +340,28 @@ partial class OtherComposition " OtherComposition ..> Program : Program Program"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static OtherComposition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.IService), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.Program), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.IService), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.Program), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(OtherComposition composite) { @@ -374,7 +374,7 @@ partial class OtherComposition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.IService Resolve(OtherComposition composition) { @@ -392,7 +392,7 @@ partial class OtherComposition } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.DependentCompositionsScenario.Program Resolve(OtherComposition composition) { diff --git a/readme/disposable-singleton.md b/readme/disposable-singleton.md index d31ae23fa..f59f3bd66 100644 --- a/readme/disposable-singleton.md +++ b/readme/disposable-singleton.md @@ -83,61 +83,61 @@ classDiagram ```c# partial class Composition: global::System.IDisposable { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private readonly global::System.IDisposable[] _disposablesM03D15di; - private int _disposeIndexM03D15di; - private Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.Dependency _singletonM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private readonly global::System.IDisposable[] _disposablesM03D17di; + private int _disposeIndexM03D17di; + private Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.Dependency _singletonM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); - _disposablesM03D15di = new global::System.IDisposable[1]; + _rootM03D17di = this; + _lockM03D17di = new object(); + _disposablesM03D17di = new global::System.IDisposable[1]; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.IService Root { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; - _rootM03D15di._disposablesM03D15di[_rootM03D15di._disposeIndexM03D15di++] = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; + _rootM03D17di._disposablesM03D17di[_rootM03D17di._disposeIndexM03D17di++] = _singletonM03D17di34_Dependency; } } } - return new Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.Service(_rootM03D15di._singletonM03D15di34_Dependency); + return new Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.Service(_rootM03D17di._singletonM03D17di34_Dependency); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -149,10 +149,10 @@ partial class Composition: global::System.IDisposable public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -165,11 +165,11 @@ partial class Composition: global::System.IDisposable public void Dispose() { - lock (_lockM03D15di) + lock (_lockM03D17di) { - while (_disposeIndexM03D15di > 0) + while (_disposeIndexM03D17di > 0) { - var disposableInstance = _disposablesM03D15di[--_disposeIndexM03D15di]; + var disposableInstance = _disposablesM03D17di[--_disposeIndexM03D17di]; try { disposableInstance.Dispose(); @@ -180,7 +180,7 @@ partial class Composition: global::System.IDisposable } } - _singletonM03D15di34_Dependency = null; + _singletonM03D17di34_Dependency = null; } } @@ -216,25 +216,25 @@ partial class Composition: global::System.IDisposable " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -247,7 +247,7 @@ partial class Composition: global::System.IDisposable } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.DisposableSingletonScenario.IService Resolve(Composition composition) { diff --git a/readme/enumerable-generics.md b/readme/enumerable-generics.md index bbd59457d..23ab90188 100644 --- a/readme/enumerable-generics.md +++ b/readme/enumerable-generics.md @@ -109,16 +109,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.IService IntRoot @@ -126,13 +126,13 @@ partial class Composition get { [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)0x200)] - System.Collections.Generic.IEnumerable> LocalperBlockM03D15di1_IEnumerable() + System.Collections.Generic.IEnumerable> LocalperBlockM03D17di1_IEnumerable() { yield return new Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.AbcDependency(); yield return new Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.XyzDependency(); } - var perBlockM03D15di1_IEnumerable = LocalperBlockM03D15di1_IEnumerable(); - return new Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.Service(perBlockM03D15di1_IEnumerable); + System.Collections.Generic.IEnumerable> perBlockM03D17di1_IEnumerable = LocalperBlockM03D17di1_IEnumerable(); + return new Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.Service(perBlockM03D17di1_IEnumerable); } } @@ -141,32 +141,32 @@ partial class Composition get { [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)0x200)] - System.Collections.Generic.IEnumerable> LocalperBlockM03D15di1_IEnumerable() + System.Collections.Generic.IEnumerable> LocalperBlockM03D17di1_IEnumerable() { yield return new Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.AbcDependency(); yield return new Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.XyzDependency(); } - var perBlockM03D15di1_IEnumerable = LocalperBlockM03D15di1_IEnumerable(); - return new Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.Service(perBlockM03D15di1_IEnumerable); + System.Collections.Generic.IEnumerable> perBlockM03D17di1_IEnumerable = LocalperBlockM03D17di1_IEnumerable(); + return new Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.Service(perBlockM03D17di1_IEnumerable); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -178,10 +178,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -251,28 +251,28 @@ partial class Composition " ServiceᐸStringᐳ o-- \"PerBlock\" IEnumerableᐸIDependencyᐸStringᐳᐳ : IEnumerableᐸIDependencyᐸStringᐳᐳ"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di>.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di>.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di>.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di>.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.IService), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.IService), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.IService), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.IService), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -285,7 +285,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver> + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver> { public Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.IService Resolve(Composition composition) { @@ -303,7 +303,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver> + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver> { public Pure.DI.UsageTests.BCL.EnumerableGenericsScenario.IService Resolve(Composition composition) { diff --git a/readme/enumerable.md b/readme/enumerable.md index e736f3366..234ba915d 100644 --- a/readme/enumerable.md +++ b/readme/enumerable.md @@ -79,16 +79,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.EnumerableScenario.IService Root @@ -96,32 +96,32 @@ partial class Composition get { [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)0x200)] - System.Collections.Generic.IEnumerable LocalperBlockM03D15di1_IEnumerable() + System.Collections.Generic.IEnumerable LocalperBlockM03D17di1_IEnumerable() { yield return new Pure.DI.UsageTests.BCL.EnumerableScenario.AbcDependency(); yield return new Pure.DI.UsageTests.BCL.EnumerableScenario.XyzDependency(); } - var perBlockM03D15di1_IEnumerable = LocalperBlockM03D15di1_IEnumerable(); - return new Pure.DI.UsageTests.BCL.EnumerableScenario.Service(perBlockM03D15di1_IEnumerable); + System.Collections.Generic.IEnumerable perBlockM03D17di1_IEnumerable = LocalperBlockM03D17di1_IEnumerable(); + return new Pure.DI.UsageTests.BCL.EnumerableScenario.Service(perBlockM03D17di1_IEnumerable); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -133,10 +133,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -182,25 +182,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.EnumerableScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.EnumerableScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -213,7 +213,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.EnumerableScenario.IService Resolve(Composition composition) { diff --git a/readme/factory.md b/readme/factory.md index 013aec155..788a7e41f 100644 --- a/readme/factory.md +++ b/readme/factory.md @@ -81,48 +81,48 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.FactoryScenario.IService Root { get { - Pure.DI.UsageTests.Basics.FactoryScenario.Dependency transientM03D15di1_Dependency; + Pure.DI.UsageTests.Basics.FactoryScenario.Dependency transientM03D17di1_Dependency; { - var dependency_M03D15di1 = new Dependency(DateTimeOffset.Now); - dependency_M03D15di1.Initialize(); - transientM03D15di1_Dependency = dependency_M03D15di1; + var dependency_M03D17di1 = new Dependency(DateTimeOffset.Now); + dependency_M03D17di1.Initialize(); + transientM03D17di1_Dependency = dependency_M03D17di1; } - return new Pure.DI.UsageTests.Basics.FactoryScenario.Service(transientM03D15di1_Dependency); + return new Pure.DI.UsageTests.Basics.FactoryScenario.Service(transientM03D17di1_Dependency); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -134,10 +134,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -174,25 +174,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.FactoryScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.FactoryScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -205,7 +205,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.FactoryScenario.IService Resolve(Composition composition) { diff --git a/readme/field-injection.md b/readme/field-injection.md index aada9d698..5bd1877fc 100644 --- a/readme/field-injection.md +++ b/readme/field-injection.md @@ -70,44 +70,44 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.FieldInjectionScenario.IService Root { get { - var transientM03D15di0_Service = new Pure.DI.UsageTests.Basics.FieldInjectionScenario.Service(); - transientM03D15di0_Service.DependencyVal = new Pure.DI.UsageTests.Basics.FieldInjectionScenario.Dependency(); - return transientM03D15di0_Service; + Pure.DI.UsageTests.Basics.FieldInjectionScenario.Service transientM03D17di0_Service = new Pure.DI.UsageTests.Basics.FieldInjectionScenario.Service(); + transientM03D17di0_Service.DependencyVal = new Pure.DI.UsageTests.Basics.FieldInjectionScenario.Dependency(); + return transientM03D17di0_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -119,10 +119,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -162,25 +162,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.FieldInjectionScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.FieldInjectionScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -193,7 +193,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.FieldInjectionScenario.IService Resolve(Composition composition) { diff --git a/readme/func-with-arguments.md b/readme/func-with-arguments.md index e2bf268bb..ba0762e4a 100644 --- a/readme/func-with-arguments.md +++ b/readme/func-with-arguments.md @@ -107,63 +107,63 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.Clock _singletonM03D15di34_Clock; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.Clock _singletonM03D17di34_Clock; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.IService Root { get { - System.Func transientM03D15di1_Func = dependencyId => + System.Func transientM03D17di1_Func = dependencyId => { - int transientM03D15di3_Int32 = dependencyId; - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Clock, null)) + int transientM03D17di3_Int32 = dependencyId; + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Clock, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Clock, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Clock, null)) { - _singletonM03D15di34_Clock = new Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.Clock(); - _rootM03D15di._singletonM03D15di34_Clock = _singletonM03D15di34_Clock; + _singletonM03D17di34_Clock = new Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.Clock(); + _rootM03D17di._singletonM03D17di34_Clock = _singletonM03D17di34_Clock; } } } - var dependency_M03D15di1 = new Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.Dependency(_rootM03D15di._singletonM03D15di34_Clock, transientM03D15di3_Int32); - return dependency_M03D15di1; + var dependency_M03D17di1 = new Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.Dependency(_rootM03D17di._singletonM03D17di34_Clock, transientM03D17di3_Int32); + return dependency_M03D17di1; }; - return new Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.Service(transientM03D15di1_Func); + return new Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.Service(transientM03D17di1_Func); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -175,10 +175,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -225,25 +225,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -256,7 +256,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.FuncWithArgumentsScenario.IService Resolve(Composition composition) { diff --git a/readme/func.md b/readme/func.md index fd760117f..3c8a68498 100644 --- a/readme/func.md +++ b/readme/func.md @@ -74,53 +74,53 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.BCL.FuncScenario.IService Root { get { - var perResolveM03D15di36_Func = default(System.Func); - perResolveM03D15di36_Func = new global::System.Func( + var perResolveM03D17di36_Func = default(System.Func); + perResolveM03D17di36_Func = new global::System.Func( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - var factory_M03D15di1 = new Pure.DI.UsageTests.BCL.FuncScenario.Dependency(); - return factory_M03D15di1; + var factory_M03D17di1 = new Pure.DI.UsageTests.BCL.FuncScenario.Dependency(); + return factory_M03D17di1; }); - return new Pure.DI.UsageTests.BCL.FuncScenario.Service(perResolveM03D15di36_Func); + return new Pure.DI.UsageTests.BCL.FuncScenario.Service(perResolveM03D17di36_Func); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -132,10 +132,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -176,25 +176,25 @@ partial class Composition " FuncᐸIDependencyᐳ *-- Dependency : IDependency"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.FuncScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.FuncScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -207,7 +207,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.FuncScenario.IService Resolve(Composition composition) { diff --git a/readme/generic-composition-roots-with-constraints.md b/readme/generic-composition-roots-with-constraints.md index fca458d34..4a5c842bc 100644 --- a/readme/generic-composition-roots-with-constraints.md +++ b/readme/generic-composition-roots-with-constraints.md @@ -97,16 +97,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Generics.GenericCompositionRootsWithConstraintsScenario.IService GetMyRoot() @@ -119,22 +119,22 @@ partial class Composition public Pure.DI.UsageTests.Generics.GenericCompositionRootsWithConstraintsScenario.IService GetOtherService() where T: System.IDisposable { - Pure.DI.UsageTests.Generics.GenericCompositionRootsWithConstraintsScenario.OtherService transientM03D15di0_OtherService; + Pure.DI.UsageTests.Generics.GenericCompositionRootsWithConstraintsScenario.OtherService transientM03D17di0_OtherService; { - var dependency_M03D15di1 = new Pure.DI.UsageTests.Generics.GenericCompositionRootsWithConstraintsScenario.Dependency(); - transientM03D15di0_OtherService = new OtherService(dependency_M03D15di1); + var dependency_M03D17di1 = new Pure.DI.UsageTests.Generics.GenericCompositionRootsWithConstraintsScenario.Dependency(); + transientM03D17di0_OtherService = new OtherService(dependency_M03D17di1); } - return transientM03D15di0_OtherService; + return transientM03D17di0_OtherService; } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) @@ -185,9 +185,9 @@ partial class Composition } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { diff --git a/readme/generic-composition-roots.md b/readme/generic-composition-roots.md index 5204cc93f..61f30f744 100644 --- a/readme/generic-composition-roots.md +++ b/readme/generic-composition-roots.md @@ -91,16 +91,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Generics.GenericsCompositionRootsScenario.IService GetMyRoot() @@ -110,22 +110,22 @@ partial class Composition public Pure.DI.UsageTests.Generics.GenericsCompositionRootsScenario.IService GetOtherService() { - Pure.DI.UsageTests.Generics.GenericsCompositionRootsScenario.OtherService transientM03D15di0_OtherService; + Pure.DI.UsageTests.Generics.GenericsCompositionRootsScenario.OtherService transientM03D17di0_OtherService; { - var dependency_M03D15di1 = new Pure.DI.UsageTests.Generics.GenericsCompositionRootsScenario.Dependency(); - transientM03D15di0_OtherService = new OtherService(dependency_M03D15di1); + var dependency_M03D17di1 = new Pure.DI.UsageTests.Generics.GenericsCompositionRootsScenario.Dependency(); + transientM03D17di0_OtherService = new OtherService(dependency_M03D17di1); } - return transientM03D15di0_OtherService; + return transientM03D17di0_OtherService; } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) @@ -173,9 +173,9 @@ partial class Composition } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { diff --git a/readme/generics.md b/readme/generics.md index 9b7b7b3f4..151a78c90 100644 --- a/readme/generics.md +++ b/readme/generics.md @@ -93,16 +93,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Generics.GenericsScenario.IService Root @@ -115,20 +115,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -140,10 +140,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -190,25 +190,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Generics.GenericsScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Generics.GenericsScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -221,7 +221,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Generics.GenericsScenario.IService Resolve(Composition composition) { diff --git a/readme/injection.md b/readme/injection.md index bfd77cc31..221cc7745 100644 --- a/readme/injection.md +++ b/readme/injection.md @@ -71,47 +71,47 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.InjectionScenario.IService Root { get { - Pure.DI.UsageTests.Basics.InjectionScenario.Service transientM03D15di0_Service; + Pure.DI.UsageTests.Basics.InjectionScenario.Service transientM03D17di0_Service; { - var dependency_M03D15di1 = new Pure.DI.UsageTests.Basics.InjectionScenario.Dependency(); - transientM03D15di0_Service = new Service(dependency_M03D15di1); + var dependency_M03D17di1 = new Pure.DI.UsageTests.Basics.InjectionScenario.Dependency(); + transientM03D17di0_Service = new Service(dependency_M03D17di1); } - return transientM03D15di0_Service; + return transientM03D17di0_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -123,10 +123,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -163,25 +163,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.InjectionScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.InjectionScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -194,7 +194,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.InjectionScenario.IService Resolve(Composition composition) { diff --git a/readme/injections-of-abstractions.md b/readme/injections-of-abstractions.md index ab65e4ea5..a3349f297 100644 --- a/readme/injections-of-abstractions.md +++ b/readme/injections-of-abstractions.md @@ -78,16 +78,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.InjectionsOfAbstractionsScenario.Program Root diff --git a/readme/instance-initialization.md b/readme/instance-initialization.md index a11e86175..a6b8f503f 100644 --- a/readme/instance-initialization.md +++ b/readme/instance-initialization.md @@ -87,56 +87,56 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly string _argM03D15di_serviceName; + private readonly Composition _rootM03D17di; + private readonly string _argM03D17di_serviceName; public Composition(string serviceName) { - _rootM03D15di = this; + _rootM03D17di = this; if (ReferenceEquals(serviceName, null)) { throw new global::System.ArgumentNullException("serviceName"); } - _argM03D15di_serviceName = serviceName; + _argM03D17di_serviceName = serviceName; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _argM03D15di_serviceName = baseComposition._argM03D15di_serviceName; + _rootM03D17di = baseComposition._rootM03D17di; + _argM03D17di_serviceName = baseComposition._argM03D17di_serviceName; } public Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.IService Root { get { - Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.Service transientM03D15di0_Service; + Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.Service transientM03D17di0_Service; { - var service_M03D15di1 = new Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.Service(_argM03D15di_serviceName, new Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.Dependency()); - service_M03D15di1.Initialize(); - transientM03D15di0_Service = service_M03D15di1; + var service_M03D17di1 = new Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.Service(_argM03D17di_serviceName, new Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.Dependency()); + service_M03D17di1.Initialize(); + transientM03D17di0_Service = service_M03D17di1; } - return transientM03D15di0_Service; + return transientM03D17di0_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -148,10 +148,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -188,25 +188,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -219,7 +219,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.InstanceInitializationScenario.IService Resolve(Composition composition) { diff --git a/readme/interception.md b/readme/interception.md index 9301ffdbe..3cb0d0311 100644 --- a/readme/interception.md +++ b/readme/interception.md @@ -83,16 +83,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Interception.InterceptionScenario.IService Root @@ -105,20 +105,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -130,10 +130,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -166,25 +166,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Interception.InterceptionScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Interception.InterceptionScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -197,7 +197,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Interception.InterceptionScenario.IService Resolve(Composition composition) { diff --git a/readme/keyed-service-provider.md b/readme/keyed-service-provider.md index d29c64265..35192677f 100644 --- a/readme/keyed-service-provider.md +++ b/readme/keyed-service-provider.md @@ -50,8 +50,8 @@ service.Dependency.ShouldBe(dependency); ```mermaid classDiagram class Composition { - -IDependency RootM03D15di0001 - -IService RootM03D15di0002 + -IDependency RootM03D17di0001 + -IService RootM03D17di0002 + T ResolveᐸTᐳ() + T ResolveᐸTᐳ(object? tag) + object GetService(Type type) @@ -72,8 +72,8 @@ classDiagram <> } Service o-- "Singleton" Dependency : "Dependency Key" IDependency - Composition ..> Dependency : IDependency RootM03D15di0001 - Composition ..> Service : IService RootM03D15di0002 + Composition ..> Dependency : IDependency RootM03D17di0001 + Composition ..> Service : IService RootM03D17di0002 ``` @@ -84,76 +84,76 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.Dependency _singletonM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.Dependency _singletonM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } - public Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IDependency RootM03D15di0001 + public Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IDependency RootM03D17di0001 { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - return _rootM03D15di._singletonM03D15di34_Dependency; + return _rootM03D17di._singletonM03D17di34_Dependency; } } - public Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IService RootM03D15di0002 + public Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IService RootM03D17di0002 { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - return new Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.Service(_rootM03D15di._singletonM03D15di34_Dependency); + return new Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.Service(_rootM03D17di._singletonM03D17di34_Dependency); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object GetService(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -165,10 +165,10 @@ partial class Composition public object GetRequiredKeyedService(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -183,8 +183,8 @@ partial class Composition return "classDiagram\n" + " class Composition {\n" + - " -IDependency RootM03D15di0001\n" + - " -IService RootM03D15di0002\n" + + " -IDependency RootM03D17di0001\n" + + " -IService RootM03D17di0002\n" + " + T ResolveᐸTᐳ()\n" + " + T ResolveᐸTᐳ(object? tag)\n" + " + object GetService(Type type)\n" + @@ -205,32 +205,32 @@ partial class Composition " <>\n" + " }\n" + " Service o-- \"Singleton\" Dependency : \"Dependency Key\" IDependency\n" + - " Composition ..> Dependency : IDependency RootM03D15di0001\n" + - " Composition ..> Service : IService RootM03D15di0002"; + " Composition ..> Dependency : IDependency RootM03D17di0001\n" + + " Composition ..> Service : IService RootM03D17di0002"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IDependency), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IService), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IDependency), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IService), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -243,7 +243,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IDependency Resolve(Composition composition) { @@ -255,13 +255,13 @@ partial class Composition switch (tag) { case "Dependency Key": - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IDependency."); } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IService Resolve(Composition composition) { @@ -273,7 +273,7 @@ partial class Composition switch (tag) { case "Service Key": - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.BCL.KeyedServiceProviderScenario.IService."); } diff --git a/readme/lazy.md b/readme/lazy.md index 76d5a4012..94ffd0ad0 100644 --- a/readme/lazy.md +++ b/readme/lazy.md @@ -68,58 +68,58 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.BCL.LazyScenario.IService Root { get { - var perResolveM03D15di37_Func = default(System.Func); - perResolveM03D15di37_Func = new global::System.Func( + var perResolveM03D17di37_Func = default(System.Func); + perResolveM03D17di37_Func = new global::System.Func( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - var factory_M03D15di1 = new Pure.DI.UsageTests.BCL.LazyScenario.Dependency(); - return factory_M03D15di1; + var factory_M03D17di1 = new Pure.DI.UsageTests.BCL.LazyScenario.Dependency(); + return factory_M03D17di1; }); - System.Lazy transientM03D15di1_Lazy; + System.Lazy transientM03D17di1_Lazy; { - var factory_M03D15di2 = perResolveM03D15di37_Func; - transientM03D15di1_Lazy = new global::System.Lazy(factory_M03D15di2, true); + var factory_M03D17di2 = perResolveM03D17di37_Func; + transientM03D17di1_Lazy = new global::System.Lazy(factory_M03D17di2, true); } - return new Pure.DI.UsageTests.BCL.LazyScenario.Service(transientM03D15di1_Lazy); + return new Pure.DI.UsageTests.BCL.LazyScenario.Service(transientM03D17di1_Lazy); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -131,10 +131,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -177,25 +177,25 @@ partial class Composition " FuncᐸIDependencyᐳ *-- Dependency : IDependency"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.LazyScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.LazyScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -208,7 +208,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.LazyScenario.IService Resolve(Composition composition) { diff --git a/readme/manually-started-tasks.md b/readme/manually-started-tasks.md index 3647ffa4f..a82995c70 100644 --- a/readme/manually-started-tasks.md +++ b/readme/manually-started-tasks.md @@ -109,38 +109,38 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.BCL.ManualTaskScenario.IService GetRoot(System.Threading.CancellationToken cancellationToken) { - var perResolveM03D15di39_Func = default(System.Func); - perResolveM03D15di39_Func = new global::System.Func( + var perResolveM03D17di39_Func = default(System.Func); + perResolveM03D17di39_Func = new global::System.Func( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - var factory_M03D15di1 = new Pure.DI.UsageTests.BCL.ManualTaskScenario.Dependency(); - return factory_M03D15di1; + var factory_M03D17di1 = new Pure.DI.UsageTests.BCL.ManualTaskScenario.Dependency(); + return factory_M03D17di1; }); - System.Threading.Tasks.Task transientM03D15di1_Task; + System.Threading.Tasks.Task transientM03D17di1_Task; { - var factory_M03D15di2 = perResolveM03D15di39_Func; - var cancellationToken_M03D15di3 = cancellationToken; - transientM03D15di1_Task = new Task(factory_M03D15di2, cancellationToken_M03D15di3); + var factory_M03D17di2 = perResolveM03D17di39_Func; + var cancellationToken_M03D17di3 = cancellationToken; + transientM03D17di1_Task = new Task(factory_M03D17di2, cancellationToken_M03D17di3); } - return new Pure.DI.UsageTests.BCL.ManualTaskScenario.Service(transientM03D15di1_Task); + return new Pure.DI.UsageTests.BCL.ManualTaskScenario.Service(transientM03D17di1_Task); } public override string ToString() diff --git a/readme/member-ordinal-attribute.md b/readme/member-ordinal-attribute.md index cb3b0d3dc..474e9a016 100644 --- a/readme/member-ordinal-attribute.md +++ b/readme/member-ordinal-attribute.md @@ -97,60 +97,60 @@ classDiagram ```c# partial class PersonComposition { - private readonly PersonComposition _rootM03D15di; - private readonly int _argM03D15di_personId; - private readonly string _argM03D15di_personName; - private readonly System.DateTime _argM03D15di_personBirthday; + private readonly PersonComposition _rootM03D17di; + private readonly int _argM03D17di_personId; + private readonly string _argM03D17di_personName; + private readonly System.DateTime _argM03D17di_personBirthday; public PersonComposition(int personId, string personName, System.DateTime personBirthday) { - _rootM03D15di = this; + _rootM03D17di = this; if (ReferenceEquals(personName, null)) { throw new global::System.ArgumentNullException("personName"); } - _argM03D15di_personId = personId; - _argM03D15di_personName = personName; - _argM03D15di_personBirthday = personBirthday; + _argM03D17di_personId = personId; + _argM03D17di_personName = personName; + _argM03D17di_personBirthday = personBirthday; } internal PersonComposition(PersonComposition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _argM03D15di_personId = baseComposition._argM03D15di_personId; - _argM03D15di_personName = baseComposition._argM03D15di_personName; - _argM03D15di_personBirthday = baseComposition._argM03D15di_personBirthday; + _rootM03D17di = baseComposition._rootM03D17di; + _argM03D17di_personId = baseComposition._argM03D17di_personId; + _argM03D17di_personName = baseComposition._argM03D17di_personName; + _argM03D17di_personBirthday = baseComposition._argM03D17di_personBirthday; } public Pure.DI.UsageTests.Attributes.MemberOrdinalAttributeScenario.IPerson Person { get { - var transientM03D15di0_Person = new Pure.DI.UsageTests.Attributes.MemberOrdinalAttributeScenario.Person(); - transientM03D15di0_Person.Id = _argM03D15di_personId; - transientM03D15di0_Person.FirstName = _argM03D15di_personName; - transientM03D15di0_Person.Birthday = _argM03D15di_personBirthday; - return transientM03D15di0_Person; + Pure.DI.UsageTests.Attributes.MemberOrdinalAttributeScenario.Person transientM03D17di0_Person = new Pure.DI.UsageTests.Attributes.MemberOrdinalAttributeScenario.Person(); + transientM03D17di0_Person.Id = _argM03D17di_personId; + transientM03D17di0_Person.FirstName = _argM03D17di_personName; + transientM03D17di0_Person.Birthday = _argM03D17di_personBirthday; + return transientM03D17di0_Person; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -162,10 +162,10 @@ partial class PersonComposition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -205,25 +205,25 @@ partial class PersonComposition " PersonComposition ..> Person : IPerson Person"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static PersonComposition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Attributes.MemberOrdinalAttributeScenario.IPerson), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Attributes.MemberOrdinalAttributeScenario.IPerson), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(PersonComposition composite) { @@ -236,7 +236,7 @@ partial class PersonComposition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Attributes.MemberOrdinalAttributeScenario.IPerson Resolve(PersonComposition composition) { diff --git a/readme/method-injection.md b/readme/method-injection.md index c9cfbc8da..d57b168f3 100644 --- a/readme/method-injection.md +++ b/readme/method-injection.md @@ -71,44 +71,44 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.MethodInjectionScenario.IService Root { get { - var transientM03D15di0_Service = new Pure.DI.UsageTests.Basics.MethodInjectionScenario.Service(); - transientM03D15di0_Service.SetDependency(new Pure.DI.UsageTests.Basics.MethodInjectionScenario.Dependency()); - return transientM03D15di0_Service; + Pure.DI.UsageTests.Basics.MethodInjectionScenario.Service transientM03D17di0_Service = new Pure.DI.UsageTests.Basics.MethodInjectionScenario.Service(); + transientM03D17di0_Service.SetDependency(new Pure.DI.UsageTests.Basics.MethodInjectionScenario.Dependency()); + return transientM03D17di0_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -120,10 +120,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -163,25 +163,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.MethodInjectionScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.MethodInjectionScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -194,7 +194,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.MethodInjectionScenario.IService Resolve(Composition composition) { diff --git a/readme/multi-contract-bindings.md b/readme/multi-contract-bindings.md index f9c230c04..959e0bf4d 100644 --- a/readme/multi-contract-bindings.md +++ b/readme/multi-contract-bindings.md @@ -71,16 +71,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.MultiContractBindingsScenario.IService Root @@ -93,20 +93,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -118,10 +118,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -165,25 +165,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.MultiContractBindingsScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.MultiContractBindingsScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -196,7 +196,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.MultiContractBindingsScenario.IService Resolve(Composition composition) { diff --git a/readme/oncannotresolve-hint.md b/readme/oncannotresolve-hint.md index d6778e3f4..f3c9e68cd 100644 --- a/readme/oncannotresolve-hint.md +++ b/readme/oncannotresolve-hint.md @@ -96,43 +96,43 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Hints.OnCannotResolveHintScenario.IService Root { get { - var transientM03D15di2_String = OnCannotResolve(null, Pure.DI.Lifetime.Transient); - return new Pure.DI.UsageTests.Hints.OnCannotResolveHintScenario.Service(new Pure.DI.UsageTests.Hints.OnCannotResolveHintScenario.Dependency(transientM03D15di2_String)); + string transientM03D17di2_String = OnCannotResolve(null, Pure.DI.Lifetime.Transient); + return new Pure.DI.UsageTests.Hints.OnCannotResolveHintScenario.Service(new Pure.DI.UsageTests.Hints.OnCannotResolveHintScenario.Dependency(transientM03D17di2_String)); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -144,10 +144,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -190,25 +190,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.OnCannotResolveHintScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.OnCannotResolveHintScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -221,7 +221,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Hints.OnCannotResolveHintScenario.IService Resolve(Composition composition) { diff --git a/readme/ondependencyinjection-hint.md b/readme/ondependencyinjection-hint.md index dc348844d..eb2917af5 100644 --- a/readme/ondependencyinjection-hint.md +++ b/readme/ondependencyinjection-hint.md @@ -93,16 +93,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Hints.OnDependencyInjectionHintScenario.IService Root @@ -115,20 +115,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -140,10 +140,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -184,25 +184,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.OnDependencyInjectionHintScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.OnDependencyInjectionHintScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -215,7 +215,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Hints.OnDependencyInjectionHintScenario.IService Resolve(Composition composition) { diff --git a/readme/onnewinstance-hint.md b/readme/onnewinstance-hint.md index fb7553a09..fe4bee28c 100644 --- a/readme/onnewinstance-hint.md +++ b/readme/onnewinstance-hint.md @@ -95,63 +95,63 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Dependency _singletonM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Dependency _singletonM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.IService Root { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Dependency _singletonM03D15di34_DependencyTemp; - _singletonM03D15di34_DependencyTemp = new Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Dependency(); - OnNewInstance(ref _singletonM03D15di34_DependencyTemp, null, Pure.DI.Lifetime.Singleton); + Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Dependency _singletonM03D17di34_DependencyTemp; + _singletonM03D17di34_DependencyTemp = new Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Dependency(); + OnNewInstance(ref _singletonM03D17di34_DependencyTemp, null, Pure.DI.Lifetime.Singleton); global::System.Threading.Thread.MemoryBarrier(); - _singletonM03D15di34_Dependency = _singletonM03D15di34_DependencyTemp; - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = _singletonM03D17di34_DependencyTemp; + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - var transientM03D15di0_Service = new Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Service(_rootM03D15di._singletonM03D15di34_Dependency); - OnNewInstance(ref transientM03D15di0_Service, null, Pure.DI.Lifetime.Transient); - return transientM03D15di0_Service; + Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Service transientM03D17di0_Service = new Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.Service(_rootM03D17di._singletonM03D17di34_Dependency); + OnNewInstance(ref transientM03D17di0_Service, null, Pure.DI.Lifetime.Transient); + return transientM03D17di0_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -163,10 +163,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -207,25 +207,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -238,7 +238,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Hints.OnNewInstanceHintScenario.IService Resolve(Composition composition) { diff --git a/readme/overriding-the-bcl-binding.md b/readme/overriding-the-bcl-binding.md index b6fff7629..6d18b95eb 100644 --- a/readme/overriding-the-bcl-binding.md +++ b/readme/overriding-the-bcl-binding.md @@ -70,48 +70,48 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.OverridingBclBindingScenario.IService Root { get { - Pure.DI.UsageTests.BCL.OverridingBclBindingScenario.IDependency[] transientM03D15di1_ = new IDependency[] + Pure.DI.UsageTests.BCL.OverridingBclBindingScenario.IDependency[] transientM03D17di1_ = new IDependency[] { new AbcDependency(), new XyzDependency(), new AbcDependency() }; - return new Pure.DI.UsageTests.BCL.OverridingBclBindingScenario.Service(transientM03D15di1_); + return new Pure.DI.UsageTests.BCL.OverridingBclBindingScenario.Service(transientM03D17di1_); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -123,10 +123,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -159,25 +159,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.OverridingBclBindingScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.OverridingBclBindingScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -190,7 +190,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.OverridingBclBindingScenario.IService Resolve(Composition composition) { diff --git a/readme/partial-class.md b/readme/partial-class.md index 7f3427b80..b463706a0 100644 --- a/readme/partial-class.md +++ b/readme/partial-class.md @@ -104,45 +104,45 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } internal Pure.DI.UsageTests.Advanced.PartialClassScenario.Service Root { get { - long transientM03D15di5_Int64 = GenerateId(); - long transientM03D15di4_Int64 = GenerateId(); - string transientM03D15di1_String = $"{_serviceName}_{GenerateId()}"; - return new Pure.DI.UsageTests.Advanced.PartialClassScenario.Service(transientM03D15di1_String, new Pure.DI.UsageTests.Advanced.PartialClassScenario.Dependency(transientM03D15di5_Int64), new Pure.DI.UsageTests.Advanced.PartialClassScenario.Dependency(transientM03D15di4_Int64)); + long transientM03D17di5_Int64 = GenerateId(); + long transientM03D17di4_Int64 = GenerateId(); + string transientM03D17di1_String = $"{_serviceName}_{GenerateId()}"; + return new Pure.DI.UsageTests.Advanced.PartialClassScenario.Service(transientM03D17di1_String, new Pure.DI.UsageTests.Advanced.PartialClassScenario.Dependency(transientM03D17di5_Int64), new Pure.DI.UsageTests.Advanced.PartialClassScenario.Dependency(transientM03D17di4_Int64)); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -154,10 +154,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -197,25 +197,25 @@ partial class Composition " Composition ..> Service : Service Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.PartialClassScenario.Service), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.PartialClassScenario.Service), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -228,7 +228,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.PartialClassScenario.Service Resolve(Composition composition) { diff --git a/readme/perblock.md b/readme/perblock.md index d0650055d..3ee0f1a4a 100644 --- a/readme/perblock.md +++ b/readme/perblock.md @@ -83,60 +83,60 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Service Root { get { - var perResolveM03D15di40_Func = default(System.Func<(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep4)>); - perResolveM03D15di40_Func = new global::System.Func<(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep4)>( + var perResolveM03D17di40_Func = default(System.Func<(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep4)>); + perResolveM03D17di40_Func = new global::System.Func<(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep4)>( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - var perBlockM03D15di4_Dependency = new Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Dependency(); - var factory_M03D15di1 = (perBlockM03D15di4_Dependency, perBlockM03D15di4_Dependency); - return factory_M03D15di1; + Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Dependency perBlockM03D17di4_Dependency = new Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Dependency(); + var factory_M03D17di1 = (perBlockM03D17di4_Dependency, perBlockM03D17di4_Dependency); + return factory_M03D17di1; }); - System.Lazy<(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep4)> transientM03D15di2_Lazy; + System.Lazy<(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep4)> transientM03D17di2_Lazy; { - var factory_M03D15di2 = perResolveM03D15di40_Func; - transientM03D15di2_Lazy = new global::System.Lazy<(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep4)>(factory_M03D15di2, true); + var factory_M03D17di2 = perResolveM03D17di40_Func; + transientM03D17di2_Lazy = new global::System.Lazy<(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerBlockScenario.IDependency dep4)>(factory_M03D17di2, true); } - var perBlockM03D15di1_Dependency = new Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Dependency(); - return new Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Service(perBlockM03D15di1_Dependency, perBlockM03D15di1_Dependency, transientM03D15di2_Lazy); + Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Dependency perBlockM03D17di1_Dependency = new Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Dependency(); + return new Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Service(perBlockM03D17di1_Dependency, perBlockM03D17di1_Dependency, transientM03D17di2_Lazy); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -148,10 +148,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -197,25 +197,25 @@ partial class Composition " FuncᐸValueTupleᐸIDependencyˏIDependencyᐳᐳ *-- ValueTupleᐸIDependencyˏIDependencyᐳ : ValueTupleᐸIDependencyˏIDependencyᐳ"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Service), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Service), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -228,7 +228,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.PerBlockScenario.Service Resolve(Composition composition) { diff --git a/readme/perresolve.md b/readme/perresolve.md index 6c638bee1..bc38fb3a4 100644 --- a/readme/perresolve.md +++ b/readme/perresolve.md @@ -83,79 +83,79 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Service Root { get { - var perResolveM03D15di34_Dependency = default(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Dependency); - var perResolveM03D15di40_Func = default(System.Func<(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep4)>); - perResolveM03D15di40_Func = new global::System.Func<(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep4)>( + var perResolveM03D17di34_Dependency = default(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Dependency); + var perResolveM03D17di40_Func = default(System.Func<(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep4)>); + perResolveM03D17di40_Func = new global::System.Func<(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep4)>( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - if (ReferenceEquals(perResolveM03D15di34_Dependency, null)) + if (ReferenceEquals(perResolveM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(perResolveM03D15di34_Dependency, null)) + if (ReferenceEquals(perResolveM03D17di34_Dependency, null)) { - perResolveM03D15di34_Dependency = new Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Dependency(); + perResolveM03D17di34_Dependency = new Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Dependency(); } } } - var factory_M03D15di1 = (perResolveM03D15di34_Dependency, perResolveM03D15di34_Dependency); - return factory_M03D15di1; + var factory_M03D17di1 = (perResolveM03D17di34_Dependency, perResolveM03D17di34_Dependency); + return factory_M03D17di1; }); - System.Lazy<(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep4)> transientM03D15di1_Lazy; + System.Lazy<(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep4)> transientM03D17di1_Lazy; { - var factory_M03D15di2 = perResolveM03D15di40_Func; - transientM03D15di1_Lazy = new global::System.Lazy<(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep4)>(factory_M03D15di2, true); + var factory_M03D17di2 = perResolveM03D17di40_Func; + transientM03D17di1_Lazy = new global::System.Lazy<(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep3, Pure.DI.UsageTests.Lifetimes.PerResolveScenario.IDependency dep4)>(factory_M03D17di2, true); } - if (ReferenceEquals(perResolveM03D15di34_Dependency, null)) + if (ReferenceEquals(perResolveM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(perResolveM03D15di34_Dependency, null)) + if (ReferenceEquals(perResolveM03D17di34_Dependency, null)) { - perResolveM03D15di34_Dependency = new Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Dependency(); + perResolveM03D17di34_Dependency = new Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Dependency(); } } } - return new Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Service(perResolveM03D15di34_Dependency, perResolveM03D15di34_Dependency, transientM03D15di1_Lazy); + return new Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Service(perResolveM03D17di34_Dependency, perResolveM03D17di34_Dependency, transientM03D17di1_Lazy); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -167,10 +167,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -216,25 +216,25 @@ partial class Composition " FuncᐸValueTupleᐸIDependencyˏIDependencyᐳᐳ *-- ValueTupleᐸIDependencyˏIDependencyᐳ : ValueTupleᐸIDependencyˏIDependencyᐳ"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Service), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Service), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -247,7 +247,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.PerResolveScenario.Service Resolve(Composition composition) { diff --git a/readme/property-injection.md b/readme/property-injection.md index a1ee2f3e8..ee8577d97 100644 --- a/readme/property-injection.md +++ b/readme/property-injection.md @@ -68,44 +68,44 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.PropertyInjectionScenario.IService Root { get { - var transientM03D15di0_Service = new Pure.DI.UsageTests.Basics.PropertyInjectionScenario.Service(); - transientM03D15di0_Service.Dependency = new Pure.DI.UsageTests.Basics.PropertyInjectionScenario.Dependency(); - return transientM03D15di0_Service; + Pure.DI.UsageTests.Basics.PropertyInjectionScenario.Service transientM03D17di0_Service = new Pure.DI.UsageTests.Basics.PropertyInjectionScenario.Service(); + transientM03D17di0_Service.Dependency = new Pure.DI.UsageTests.Basics.PropertyInjectionScenario.Dependency(); + return transientM03D17di0_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -117,10 +117,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -160,25 +160,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.PropertyInjectionScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.PropertyInjectionScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -191,7 +191,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.PropertyInjectionScenario.IService Resolve(Composition composition) { diff --git a/readme/required-properties-or-fields.md b/readme/required-properties-or-fields.md index 32124349a..990848e5b 100644 --- a/readme/required-properties-or-fields.md +++ b/readme/required-properties-or-fields.md @@ -78,24 +78,24 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly string _argM03D15di_name; + private readonly Composition _rootM03D17di; + private readonly string _argM03D17di_name; public Composition(string name) { - _rootM03D15di = this; + _rootM03D17di = this; if (ReferenceEquals(name, null)) { throw new global::System.ArgumentNullException("name"); } - _argM03D15di_name = name; + _argM03D17di_name = name; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _argM03D15di_name = baseComposition._argM03D15di_name; + _rootM03D17di = baseComposition._rootM03D17di; + _argM03D17di_name = baseComposition._argM03D17di_name; } public Pure.DI.UsageTests.Basics.RequiredPropertiesOrFieldsScenario.IService Root @@ -104,7 +104,7 @@ partial class Composition { return new Pure.DI.UsageTests.Basics.RequiredPropertiesOrFieldsScenario.Service() { - ServiceNameField = _argM03D15di_name, + ServiceNameField = _argM03D17di_name, Dependency = new Pure.DI.UsageTests.Basics.RequiredPropertiesOrFieldsScenario.Dependency() }; } @@ -112,20 +112,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -137,10 +137,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -183,25 +183,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.RequiredPropertiesOrFieldsScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.RequiredPropertiesOrFieldsScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -214,7 +214,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.RequiredPropertiesOrFieldsScenario.IService Resolve(Composition composition) { diff --git a/readme/resolve-hint.md b/readme/resolve-hint.md index d5ad9999e..f40aafa39 100644 --- a/readme/resolve-hint.md +++ b/readme/resolve-hint.md @@ -64,16 +64,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Hints.ResolveHintScenario.IDependency DependencyRoot diff --git a/readme/resolve-methods.md b/readme/resolve-methods.md index 038292740..83cd30b34 100644 --- a/readme/resolve-methods.md +++ b/readme/resolve-methods.md @@ -46,8 +46,8 @@ var otherService2 = composition.Resolve(typeof(IService),"Other"); classDiagram class Composition { +IService OtherService - -IDependency RootM03D15di0001 - -IService RootM03D15di0002 + -IDependency RootM03D17di0001 + -IService RootM03D17di0002 + T ResolveᐸTᐳ() + T ResolveᐸTᐳ(object? tag) + object Resolve(Type type) @@ -72,8 +72,8 @@ classDiagram <> } Service *-- Dependency : IDependency - Composition ..> Dependency : IDependency RootM03D15di0001 - Composition ..> Service : IService RootM03D15di0002 + Composition ..> Dependency : IDependency RootM03D17di0001 + Composition ..> Service : IService RootM03D17di0002 Composition ..> OtherService : IService OtherService ``` @@ -85,16 +85,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.ResolveScenario.IService OtherService @@ -105,7 +105,7 @@ partial class Composition } } - public Pure.DI.UsageTests.Basics.ResolveScenario.IDependency RootM03D15di0001 + public Pure.DI.UsageTests.Basics.ResolveScenario.IDependency RootM03D17di0001 { get { @@ -113,7 +113,7 @@ partial class Composition } } - public Pure.DI.UsageTests.Basics.ResolveScenario.IService RootM03D15di0002 + public Pure.DI.UsageTests.Basics.ResolveScenario.IService RootM03D17di0002 { get { @@ -123,20 +123,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -148,10 +148,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -167,8 +167,8 @@ partial class Composition "classDiagram\n" + " class Composition {\n" + " +IService OtherService\n" + - " -IDependency RootM03D15di0001\n" + - " -IService RootM03D15di0002\n" + + " -IDependency RootM03D17di0001\n" + + " -IService RootM03D17di0002\n" + " + T ResolveᐸTᐳ()\n" + " + T ResolveᐸTᐳ(object? tag)\n" + " + object Resolve(Type type)\n" + @@ -193,33 +193,33 @@ partial class Composition " <>\n" + " }\n" + " Service *-- Dependency : IDependency\n" + - " Composition ..> Dependency : IDependency RootM03D15di0001\n" + - " Composition ..> Service : IService RootM03D15di0002\n" + + " Composition ..> Dependency : IDependency RootM03D17di0001\n" + + " Composition ..> Service : IService RootM03D17di0002\n" + " Composition ..> OtherService : IService OtherService"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.ResolveScenario.IService), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.ResolveScenario.IDependency), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.ResolveScenario.IService), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.ResolveScenario.IDependency), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -232,11 +232,11 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.ResolveScenario.IService Resolve(Composition composition) { - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } public Pure.DI.UsageTests.Basics.ResolveScenario.IService ResolveByTag(Composition composition, object tag) @@ -246,17 +246,17 @@ partial class Composition case "Other": return composition.OtherService; case null: - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.Basics.ResolveScenario.IService."); } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.ResolveScenario.IDependency Resolve(Composition composition) { - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } public Pure.DI.UsageTests.Basics.ResolveScenario.IDependency ResolveByTag(Composition composition, object tag) @@ -264,7 +264,7 @@ partial class Composition switch (tag) { case null: - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.Basics.ResolveScenario.IDependency."); } diff --git a/readme/root-arguments.md b/readme/root-arguments.md index 8f05ab153..b766377a0 100644 --- a/readme/root-arguments.md +++ b/readme/root-arguments.md @@ -98,16 +98,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.RootArgumentsScenario.IService CreateService(int id, string dependencyName, string serviceName) diff --git a/readme/scope.md b/readme/scope.md index 34db4c6ef..a66c84551 100644 --- a/readme/scope.md +++ b/readme/scope.md @@ -128,42 +128,42 @@ classDiagram ```c# partial class Composition: global::System.IDisposable { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private readonly global::System.IDisposable[] _disposablesM03D15di; - private int _disposeIndexM03D15di; - private Pure.DI.UsageTests.Lifetimes.ScopeScenario.Dependency _scopedM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private readonly global::System.IDisposable[] _disposablesM03D17di; + private int _disposeIndexM03D17di; + private Pure.DI.UsageTests.Lifetimes.ScopeScenario.Dependency _scopedM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); - _disposablesM03D15di = new global::System.IDisposable[1]; + _rootM03D17di = this; + _lockM03D17di = new object(); + _disposablesM03D17di = new global::System.IDisposable[1]; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; - _disposablesM03D15di = new global::System.IDisposable[1]; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; + _disposablesM03D17di = new global::System.IDisposable[1]; } public Pure.DI.UsageTests.Lifetimes.ScopeScenario.IService SessionRoot { get { - if (ReferenceEquals(_scopedM03D15di34_Dependency, null)) + if (ReferenceEquals(_scopedM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_scopedM03D15di34_Dependency, null)) + if (ReferenceEquals(_scopedM03D17di34_Dependency, null)) { - _scopedM03D15di34_Dependency = new Pure.DI.UsageTests.Lifetimes.ScopeScenario.Dependency(); - _disposablesM03D15di[_disposeIndexM03D15di++] = _scopedM03D15di34_Dependency; + _scopedM03D17di34_Dependency = new Pure.DI.UsageTests.Lifetimes.ScopeScenario.Dependency(); + _disposablesM03D17di[_disposeIndexM03D17di++] = _scopedM03D17di34_Dependency; } } } - return new Pure.DI.UsageTests.Lifetimes.ScopeScenario.Service(_scopedM03D15di34_Dependency); + return new Pure.DI.UsageTests.Lifetimes.ScopeScenario.Service(_scopedM03D17di34_Dependency); } } @@ -171,35 +171,35 @@ partial class Composition: global::System.IDisposable { get { - var perResolveM03D15di40_Func = default(System.Func); - perResolveM03D15di40_Func = new global::System.Func( + var perResolveM03D17di40_Func = default(System.Func); + perResolveM03D17di40_Func = new global::System.Func( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - var transientM03D15di2_Composition = this; - var factory_M03D15di1 = new Pure.DI.UsageTests.Lifetimes.ScopeScenario.Session(transientM03D15di2_Composition); - return factory_M03D15di1; + Pure.DI.UsageTests.Lifetimes.ScopeScenario.Composition transientM03D17di2_Composition = this; + var factory_M03D17di1 = new Pure.DI.UsageTests.Lifetimes.ScopeScenario.Session(transientM03D17di2_Composition); + return factory_M03D17di1; }); - return new Pure.DI.UsageTests.Lifetimes.ScopeScenario.Program(perResolveM03D15di40_Func); + return new Pure.DI.UsageTests.Lifetimes.ScopeScenario.Program(perResolveM03D17di40_Func); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -211,10 +211,10 @@ partial class Composition: global::System.IDisposable public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -227,11 +227,11 @@ partial class Composition: global::System.IDisposable public void Dispose() { - lock (_lockM03D15di) + lock (_lockM03D17di) { - while (_disposeIndexM03D15di > 0) + while (_disposeIndexM03D17di > 0) { - var disposableInstance = _disposablesM03D15di[--_disposeIndexM03D15di]; + var disposableInstance = _disposablesM03D17di[--_disposeIndexM03D17di]; try { disposableInstance.Dispose(); @@ -242,7 +242,7 @@ partial class Composition: global::System.IDisposable } } - _scopedM03D15di34_Dependency = null; + _scopedM03D17di34_Dependency = null; } } @@ -291,28 +291,28 @@ partial class Composition: global::System.IDisposable " FuncᐸSessionᐳ *-- Session : Session"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.ScopeScenario.IService), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.ScopeScenario.Program), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.ScopeScenario.IService), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.ScopeScenario.Program), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -325,7 +325,7 @@ partial class Composition: global::System.IDisposable } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.ScopeScenario.IService Resolve(Composition composition) { @@ -343,7 +343,7 @@ partial class Composition: global::System.IDisposable } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.ScopeScenario.Program Resolve(Composition composition) { diff --git a/readme/service-collection.md b/readme/service-collection.md index 40cb7adbb..4ebcf55cc 100644 --- a/readme/service-collection.md +++ b/readme/service-collection.md @@ -47,8 +47,8 @@ service.Dependency.ShouldBe(dependency); ```mermaid classDiagram class Composition { - -IDependency RootM03D15di0001 - -IService RootM03D15di0002 + -IDependency RootM03D17di0001 + -IService RootM03D17di0002 + T ResolveᐸTᐳ() + T ResolveᐸTᐳ(object? tag) + object Resolve(Type type) @@ -69,8 +69,8 @@ classDiagram <> } Service o-- "Singleton" Dependency : "Dependency Key" IDependency - Composition ..> Dependency : IDependency RootM03D15di0001 - Composition ..> Service : IService RootM03D15di0002 + Composition ..> Dependency : IDependency RootM03D17di0001 + Composition ..> Service : IService RootM03D17di0002 ``` @@ -81,76 +81,76 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.BCL.ServiceCollectionScenario.Dependency _singletonM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.BCL.ServiceCollectionScenario.Dependency _singletonM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } - public Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IDependency RootM03D15di0001 + public Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IDependency RootM03D17di0001 { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceCollectionScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceCollectionScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - return _rootM03D15di._singletonM03D15di34_Dependency; + return _rootM03D17di._singletonM03D17di34_Dependency; } } - public Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IService RootM03D15di0002 + public Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IService RootM03D17di0002 { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceCollectionScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceCollectionScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - return new Pure.DI.UsageTests.BCL.ServiceCollectionScenario.Service(_rootM03D15di._singletonM03D15di34_Dependency); + return new Pure.DI.UsageTests.BCL.ServiceCollectionScenario.Service(_rootM03D17di._singletonM03D17di34_Dependency); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -162,10 +162,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -180,8 +180,8 @@ partial class Composition return "classDiagram\n" + " class Composition {\n" + - " -IDependency RootM03D15di0001\n" + - " -IService RootM03D15di0002\n" + + " -IDependency RootM03D17di0001\n" + + " -IService RootM03D17di0002\n" + " + T ResolveᐸTᐳ()\n" + " + T ResolveᐸTᐳ(object? tag)\n" + " + object Resolve(Type type)\n" + @@ -202,34 +202,34 @@ partial class Composition " <>\n" + " }\n" + " Service o-- \"Singleton\" Dependency : \"Dependency Key\" IDependency\n" + - " Composition ..> Dependency : IDependency RootM03D15di0001\n" + - " Composition ..> Service : IService RootM03D15di0002"; + " Composition ..> Dependency : IDependency RootM03D17di0001\n" + + " Composition ..> Service : IService RootM03D17di0002"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - OnNewRoot(valResolverM03D15di_0000, "RootM03D15di0001", "Dependency Key", Pure.DI.Lifetime.Singleton); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - OnNewRoot(valResolverM03D15di_0001, "RootM03D15di0002", null, Pure.DI.Lifetime.Transient); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + OnNewRoot(valResolverM03D17di_0000, "RootM03D17di0001", "Dependency Key", Pure.DI.Lifetime.Singleton); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + OnNewRoot(valResolverM03D17di_0001, "RootM03D17di0002", null, Pure.DI.Lifetime.Transient); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IDependency), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IService), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IDependency), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IService), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -242,7 +242,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IDependency Resolve(Composition composition) { @@ -254,17 +254,17 @@ partial class Composition switch (tag) { case "Dependency Key": - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IDependency."); } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IService Resolve(Composition composition) { - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } public Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IService ResolveByTag(Composition composition, object tag) @@ -272,7 +272,7 @@ partial class Composition switch (tag) { case null: - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.BCL.ServiceCollectionScenario.IService."); } diff --git a/readme/service-provider-with-scope.md b/readme/service-provider-with-scope.md index b6e814e26..a58f94df1 100644 --- a/readme/service-provider-with-scope.md +++ b/readme/service-provider-with-scope.md @@ -73,8 +73,8 @@ dependency1.ShouldBe(dependency2); ```mermaid classDiagram class Composition { - -IDependency RootM03D15di0001 - -IService RootM03D15di0002 + -IDependency RootM03D17di0001 + -IService RootM03D17di0002 + T ResolveᐸTᐳ() + T ResolveᐸTᐳ(object? tag) + object GetService(Type type) @@ -96,8 +96,8 @@ classDiagram <> } Service o-- "Singleton" Dependency : IDependency - Composition ..> Dependency : IDependency RootM03D15di0001 - Composition ..> Service : IService RootM03D15di0002 + Composition ..> Dependency : IDependency RootM03D17di0001 + Composition ..> Service : IService RootM03D17di0002 ``` @@ -108,86 +108,86 @@ classDiagram ```c# partial class Composition: global::System.IDisposable { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private readonly global::System.IDisposable[] _disposablesM03D15di; - private int _disposeIndexM03D15di; - private Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Dependency _singletonM03D15di34_Dependency; - private Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Service _scopedM03D15di35_Service; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private readonly global::System.IDisposable[] _disposablesM03D17di; + private int _disposeIndexM03D17di; + private Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Dependency _singletonM03D17di34_Dependency; + private Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Service _scopedM03D17di35_Service; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); - _disposablesM03D15di = new global::System.IDisposable[1]; + _rootM03D17di = this; + _lockM03D17di = new object(); + _disposablesM03D17di = new global::System.IDisposable[1]; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; - _disposablesM03D15di = new global::System.IDisposable[1]; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; + _disposablesM03D17di = new global::System.IDisposable[1]; } - public Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IDependency RootM03D15di0001 + public Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IDependency RootM03D17di0001 { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - return _rootM03D15di._singletonM03D15di34_Dependency; + return _rootM03D17di._singletonM03D17di34_Dependency; } } - public Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IService RootM03D15di0002 + public Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IService RootM03D17di0002 { get { - if (ReferenceEquals(_scopedM03D15di35_Service, null)) + if (ReferenceEquals(_scopedM03D17di35_Service, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_scopedM03D15di35_Service, null)) + if (ReferenceEquals(_scopedM03D17di35_Service, null)) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } - _scopedM03D15di35_Service = new Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Service(_rootM03D15di._singletonM03D15di34_Dependency); - _disposablesM03D15di[_disposeIndexM03D15di++] = _scopedM03D15di35_Service; + _scopedM03D17di35_Service = new Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.Service(_rootM03D17di._singletonM03D17di34_Dependency); + _disposablesM03D17di[_disposeIndexM03D17di++] = _scopedM03D17di35_Service; } } } - return _scopedM03D15di35_Service; + return _scopedM03D17di35_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object GetService(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -199,10 +199,10 @@ partial class Composition: global::System.IDisposable public object GetRequiredKeyedService(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -215,11 +215,11 @@ partial class Composition: global::System.IDisposable public void Dispose() { - lock (_lockM03D15di) + lock (_lockM03D17di) { - while (_disposeIndexM03D15di > 0) + while (_disposeIndexM03D17di > 0) { - var disposableInstance = _disposablesM03D15di[--_disposeIndexM03D15di]; + var disposableInstance = _disposablesM03D17di[--_disposeIndexM03D17di]; try { disposableInstance.Dispose(); @@ -230,8 +230,8 @@ partial class Composition: global::System.IDisposable } } - _singletonM03D15di34_Dependency = null; - _scopedM03D15di35_Service = null; + _singletonM03D17di34_Dependency = null; + _scopedM03D17di35_Service = null; } } @@ -242,8 +242,8 @@ partial class Composition: global::System.IDisposable return "classDiagram\n" + " class Composition {\n" + - " -IDependency RootM03D15di0001\n" + - " -IService RootM03D15di0002\n" + + " -IDependency RootM03D17di0001\n" + + " -IService RootM03D17di0002\n" + " + T ResolveᐸTᐳ()\n" + " + T ResolveᐸTᐳ(object? tag)\n" + " + object GetService(Type type)\n" + @@ -265,32 +265,32 @@ partial class Composition: global::System.IDisposable " <>\n" + " }\n" + " Service o-- \"Singleton\" Dependency : IDependency\n" + - " Composition ..> Dependency : IDependency RootM03D15di0001\n" + - " Composition ..> Service : IService RootM03D15di0002"; + " Composition ..> Dependency : IDependency RootM03D17di0001\n" + + " Composition ..> Service : IService RootM03D17di0002"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IDependency), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IService), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IDependency), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IService), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -303,11 +303,11 @@ partial class Composition: global::System.IDisposable } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IDependency Resolve(Composition composition) { - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } public Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IDependency ResolveByTag(Composition composition, object tag) @@ -315,17 +315,17 @@ partial class Composition: global::System.IDisposable switch (tag) { case null: - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IDependency."); } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IService Resolve(Composition composition) { - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } public Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IService ResolveByTag(Composition composition, object tag) @@ -333,7 +333,7 @@ partial class Composition: global::System.IDisposable switch (tag) { case null: - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.BCL.ServiceProviderWithScopeScenario.IService."); } diff --git a/readme/service-provider.md b/readme/service-provider.md index f0fac3f4b..1421cc97c 100644 --- a/readme/service-provider.md +++ b/readme/service-provider.md @@ -45,8 +45,8 @@ service.Dependency.ShouldBe(dependency); ```mermaid classDiagram class Composition { - -IDependency RootM03D15di0001 - -IService RootM03D15di0002 + -IDependency RootM03D17di0001 + -IService RootM03D17di0002 + T ResolveᐸTᐳ() + T ResolveᐸTᐳ(object? tag) + object GetService(Type type) @@ -67,8 +67,8 @@ classDiagram <> } Service o-- "Singleton" Dependency : IDependency - Composition ..> Dependency : IDependency RootM03D15di0001 - Composition ..> Service : IService RootM03D15di0002 + Composition ..> Dependency : IDependency RootM03D17di0001 + Composition ..> Service : IService RootM03D17di0002 ``` @@ -79,76 +79,76 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.BCL.ServiceProviderScenario.Dependency _singletonM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.BCL.ServiceProviderScenario.Dependency _singletonM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } - public Pure.DI.UsageTests.BCL.ServiceProviderScenario.IDependency RootM03D15di0001 + public Pure.DI.UsageTests.BCL.ServiceProviderScenario.IDependency RootM03D17di0001 { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceProviderScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceProviderScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - return _rootM03D15di._singletonM03D15di34_Dependency; + return _rootM03D17di._singletonM03D17di34_Dependency; } } - public Pure.DI.UsageTests.BCL.ServiceProviderScenario.IService RootM03D15di0002 + public Pure.DI.UsageTests.BCL.ServiceProviderScenario.IService RootM03D17di0002 { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceProviderScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.BCL.ServiceProviderScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - return new Pure.DI.UsageTests.BCL.ServiceProviderScenario.Service(_rootM03D15di._singletonM03D15di34_Dependency); + return new Pure.DI.UsageTests.BCL.ServiceProviderScenario.Service(_rootM03D17di._singletonM03D17di34_Dependency); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object GetService(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -160,10 +160,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -178,8 +178,8 @@ partial class Composition return "classDiagram\n" + " class Composition {\n" + - " -IDependency RootM03D15di0001\n" + - " -IService RootM03D15di0002\n" + + " -IDependency RootM03D17di0001\n" + + " -IService RootM03D17di0002\n" + " + T ResolveᐸTᐳ()\n" + " + T ResolveᐸTᐳ(object? tag)\n" + " + object GetService(Type type)\n" + @@ -200,32 +200,32 @@ partial class Composition " <>\n" + " }\n" + " Service o-- \"Singleton\" Dependency : IDependency\n" + - " Composition ..> Dependency : IDependency RootM03D15di0001\n" + - " Composition ..> Service : IService RootM03D15di0002"; + " Composition ..> Dependency : IDependency RootM03D17di0001\n" + + " Composition ..> Service : IService RootM03D17di0002"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceProviderScenario.IDependency), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceProviderScenario.IService), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceProviderScenario.IDependency), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ServiceProviderScenario.IService), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -238,11 +238,11 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.ServiceProviderScenario.IDependency Resolve(Composition composition) { - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } public Pure.DI.UsageTests.BCL.ServiceProviderScenario.IDependency ResolveByTag(Composition composition, object tag) @@ -250,17 +250,17 @@ partial class Composition switch (tag) { case null: - return composition.RootM03D15di0001; + return composition.RootM03D17di0001; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.BCL.ServiceProviderScenario.IDependency."); } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.ServiceProviderScenario.IService Resolve(Composition composition) { - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } public Pure.DI.UsageTests.BCL.ServiceProviderScenario.IService ResolveByTag(Composition composition, object tag) @@ -268,7 +268,7 @@ partial class Composition switch (tag) { case null: - return composition.RootM03D15di0002; + return composition.RootM03D17di0002; } throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type Pure.DI.UsageTests.BCL.ServiceProviderScenario.IService."); } diff --git a/readme/simplified-binding.md b/readme/simplified-binding.md index a36843cf0..c2a24825e 100644 --- a/readme/simplified-binding.md +++ b/readme/simplified-binding.md @@ -87,24 +87,24 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.SimplifiedBindingScenario.Service MyService { get { - var perBlockM03D15di1_Dependency = new Pure.DI.UsageTests.Basics.SimplifiedBindingScenario.Dependency(); - return new Pure.DI.UsageTests.Basics.SimplifiedBindingScenario.Service(perBlockM03D15di1_Dependency, perBlockM03D15di1_Dependency, perBlockM03D15di1_Dependency); + Pure.DI.UsageTests.Basics.SimplifiedBindingScenario.Dependency perBlockM03D17di1_Dependency = new Pure.DI.UsageTests.Basics.SimplifiedBindingScenario.Dependency(); + return new Pure.DI.UsageTests.Basics.SimplifiedBindingScenario.Service(perBlockM03D17di1_Dependency, perBlockM03D17di1_Dependency, perBlockM03D17di1_Dependency); } } diff --git a/readme/singleton.md b/readme/singleton.md index 357d24e0f..f10b0ca73 100644 --- a/readme/singleton.md +++ b/readme/singleton.md @@ -76,57 +76,57 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.Lifetimes.SingletonScenario.Dependency _singletonM03D15di34_Dependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.Lifetimes.SingletonScenario.Dependency _singletonM03D17di34_Dependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.Lifetimes.SingletonScenario.IService Root { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di34_Dependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di34_Dependency, null)) { - _singletonM03D15di34_Dependency = new Pure.DI.UsageTests.Lifetimes.SingletonScenario.Dependency(); - _rootM03D15di._singletonM03D15di34_Dependency = _singletonM03D15di34_Dependency; + _singletonM03D17di34_Dependency = new Pure.DI.UsageTests.Lifetimes.SingletonScenario.Dependency(); + _rootM03D17di._singletonM03D17di34_Dependency = _singletonM03D17di34_Dependency; } } } - return new Pure.DI.UsageTests.Lifetimes.SingletonScenario.Service(_singletonM03D15di34_Dependency, _rootM03D15di._singletonM03D15di34_Dependency); + return new Pure.DI.UsageTests.Lifetimes.SingletonScenario.Service(_singletonM03D17di34_Dependency, _rootM03D17di._singletonM03D17di34_Dependency); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -138,10 +138,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -181,25 +181,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.SingletonScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.SingletonScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -212,7 +212,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.SingletonScenario.IService Resolve(Composition composition) { diff --git a/readme/span-and-readonlyspan.md b/readme/span-and-readonlyspan.md index 342f7bd44..d0275753c 100644 --- a/readme/span-and-readonlyspan.md +++ b/readme/span-and-readonlyspan.md @@ -78,48 +78,48 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.SpanScenario.IService Root { get { - System.ReadOnlySpan transientM03D15di1_ReadOnlySpan = stackalloc Pure.DI.UsageTests.BCL.SpanScenario.Dependency[3] + System.ReadOnlySpan transientM03D17di1_ReadOnlySpan = stackalloc Pure.DI.UsageTests.BCL.SpanScenario.Dependency[3] { new Pure.DI.UsageTests.BCL.SpanScenario.Dependency(), new Pure.DI.UsageTests.BCL.SpanScenario.Dependency(), new Pure.DI.UsageTests.BCL.SpanScenario.Dependency() }; - return new Pure.DI.UsageTests.BCL.SpanScenario.Service(transientM03D15di1_ReadOnlySpan); + return new Pure.DI.UsageTests.BCL.SpanScenario.Service(transientM03D17di1_ReadOnlySpan); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -131,10 +131,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -173,25 +173,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.SpanScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.SpanScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -204,7 +204,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.SpanScenario.IService Resolve(Composition composition) { diff --git a/readme/tag-attribute.md b/readme/tag-attribute.md index 3d322600d..0613c4b32 100644 --- a/readme/tag-attribute.md +++ b/readme/tag-attribute.md @@ -86,16 +86,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Basics.TagAttributeScenario.IService Root @@ -108,20 +108,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -133,10 +133,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -180,25 +180,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.TagAttributeScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.TagAttributeScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -211,7 +211,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.TagAttributeScenario.IService Resolve(Composition composition) { diff --git a/readme/tag-type.md b/readme/tag-type.md index c60c2bfac..bca948b9e 100644 --- a/readme/tag-type.md +++ b/readme/tag-type.md @@ -99,38 +99,38 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.Advanced.TagTypeScenario.XyzDependency _singletonM03D15di35_XyzDependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.Advanced.TagTypeScenario.XyzDependency _singletonM03D17di35_XyzDependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.Advanced.TagTypeScenario.IDependency XyzRoot { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_XyzDependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_XyzDependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_XyzDependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_XyzDependency, null)) { - _singletonM03D15di35_XyzDependency = new Pure.DI.UsageTests.Advanced.TagTypeScenario.XyzDependency(); - _rootM03D15di._singletonM03D15di35_XyzDependency = _singletonM03D15di35_XyzDependency; + _singletonM03D17di35_XyzDependency = new Pure.DI.UsageTests.Advanced.TagTypeScenario.XyzDependency(); + _rootM03D17di._singletonM03D17di35_XyzDependency = _singletonM03D17di35_XyzDependency; } } } - return _rootM03D15di._singletonM03D15di35_XyzDependency; + return _rootM03D17di._singletonM03D17di35_XyzDependency; } } @@ -138,37 +138,37 @@ partial class Composition { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_XyzDependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_XyzDependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_XyzDependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_XyzDependency, null)) { - _singletonM03D15di35_XyzDependency = new Pure.DI.UsageTests.Advanced.TagTypeScenario.XyzDependency(); - _rootM03D15di._singletonM03D15di35_XyzDependency = _singletonM03D15di35_XyzDependency; + _singletonM03D17di35_XyzDependency = new Pure.DI.UsageTests.Advanced.TagTypeScenario.XyzDependency(); + _rootM03D17di._singletonM03D17di35_XyzDependency = _singletonM03D17di35_XyzDependency; } } } - return new Pure.DI.UsageTests.Advanced.TagTypeScenario.Service(new Pure.DI.UsageTests.Advanced.TagTypeScenario.AbcDependency(), _rootM03D15di._singletonM03D15di35_XyzDependency, new Pure.DI.UsageTests.Advanced.TagTypeScenario.AbcDependency()); + return new Pure.DI.UsageTests.Advanced.TagTypeScenario.Service(new Pure.DI.UsageTests.Advanced.TagTypeScenario.AbcDependency(), _rootM03D17di._singletonM03D17di35_XyzDependency, new Pure.DI.UsageTests.Advanced.TagTypeScenario.AbcDependency()); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -180,10 +180,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -231,28 +231,28 @@ partial class Composition " Composition ..> XyzDependency : IDependency XyzRoot"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.TagTypeScenario.IDependency), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.TagTypeScenario.IService), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.TagTypeScenario.IDependency), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.TagTypeScenario.IService), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -265,7 +265,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.TagTypeScenario.IDependency Resolve(Composition composition) { @@ -282,7 +282,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Advanced.TagTypeScenario.IService Resolve(Composition composition) { diff --git a/readme/tag-unique.md b/readme/tag-unique.md index 1da01dda4..10798c749 100644 --- a/readme/tag-unique.md +++ b/readme/tag-unique.md @@ -46,11 +46,11 @@ classDiagram + object Resolve(Type type, object? tag) } class IEnumerableᐸIDependencyᐸStringᐳᐳ - AbcDependencyᐸStringᐳ --|> IDependencyᐸStringᐳ : c02dd8a7-5139-421c-a8ad-fb133aa6addb + AbcDependencyᐸStringᐳ --|> IDependencyᐸStringᐳ : 16e12d33-c99c-48ed-a87d-df2ef404d031 class AbcDependencyᐸStringᐳ { +AbcDependency() } - XyzDependencyᐸStringᐳ --|> IDependencyᐸStringᐳ : 913734db-e379-4b2a-9790-085181e1d6c5 + XyzDependencyᐸStringᐳ --|> IDependencyᐸStringᐳ : 366091bb-5db5-4259-9637-fd5fb7a97653 class XyzDependencyᐸStringᐳ { +XyzDependency() } @@ -64,8 +64,8 @@ classDiagram class IServiceᐸStringᐳ { <> } - IEnumerableᐸIDependencyᐸStringᐳᐳ *-- AbcDependencyᐸStringᐳ : c02dd8a7-5139-421c-a8ad-fb133aa6addb IDependencyᐸStringᐳ - IEnumerableᐸIDependencyᐸStringᐳᐳ *-- XyzDependencyᐸStringᐳ : 913734db-e379-4b2a-9790-085181e1d6c5 IDependencyᐸStringᐳ + IEnumerableᐸIDependencyᐸStringᐳᐳ *-- AbcDependencyᐸStringᐳ : 16e12d33-c99c-48ed-a87d-df2ef404d031 IDependencyᐸStringᐳ + IEnumerableᐸIDependencyᐸStringᐳᐳ *-- XyzDependencyᐸStringᐳ : 366091bb-5db5-4259-9637-fd5fb7a97653 IDependencyᐸStringᐳ Composition ..> ServiceᐸStringᐳ : IServiceᐸStringᐳ Root ServiceᐸStringᐳ o-- "PerBlock" IEnumerableᐸIDependencyᐸStringᐳᐳ : IEnumerableᐸIDependencyᐸStringᐳᐳ ``` @@ -78,16 +78,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Advanced.TagUniqueScenario.IService Root @@ -95,32 +95,32 @@ partial class Composition get { [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)0x200)] - System.Collections.Generic.IEnumerable> LocalperBlockM03D15di1_IEnumerable() + System.Collections.Generic.IEnumerable> LocalperBlockM03D17di1_IEnumerable() { yield return new Pure.DI.UsageTests.Advanced.TagUniqueScenario.AbcDependency(); yield return new Pure.DI.UsageTests.Advanced.TagUniqueScenario.XyzDependency(); } - var perBlockM03D15di1_IEnumerable = LocalperBlockM03D15di1_IEnumerable(); - return new Pure.DI.UsageTests.Advanced.TagUniqueScenario.Service(perBlockM03D15di1_IEnumerable); + System.Collections.Generic.IEnumerable> perBlockM03D17di1_IEnumerable = LocalperBlockM03D17di1_IEnumerable(); + return new Pure.DI.UsageTests.Advanced.TagUniqueScenario.Service(perBlockM03D17di1_IEnumerable); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -132,10 +132,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -157,11 +157,11 @@ partial class Composition " + object Resolve(Type type, object? tag)\n" + " }\n" + " class IEnumerableᐸIDependencyᐸStringᐳᐳ\n" + - " AbcDependencyᐸStringᐳ --|> IDependencyᐸStringᐳ : c02dd8a7-5139-421c-a8ad-fb133aa6addb \n" + + " AbcDependencyᐸStringᐳ --|> IDependencyᐸStringᐳ : 16e12d33-c99c-48ed-a87d-df2ef404d031 \n" + " class AbcDependencyᐸStringᐳ {\n" + " +AbcDependency()\n" + " }\n" + - " XyzDependencyᐸStringᐳ --|> IDependencyᐸStringᐳ : 913734db-e379-4b2a-9790-085181e1d6c5 \n" + + " XyzDependencyᐸStringᐳ --|> IDependencyᐸStringᐳ : 366091bb-5db5-4259-9637-fd5fb7a97653 \n" + " class XyzDependencyᐸStringᐳ {\n" + " +XyzDependency()\n" + " }\n" + @@ -175,31 +175,31 @@ partial class Composition " class IServiceᐸStringᐳ {\n" + " <>\n" + " }\n" + - " IEnumerableᐸIDependencyᐸStringᐳᐳ *-- AbcDependencyᐸStringᐳ : c02dd8a7-5139-421c-a8ad-fb133aa6addb IDependencyᐸStringᐳ\n" + - " IEnumerableᐸIDependencyᐸStringᐳᐳ *-- XyzDependencyᐸStringᐳ : 913734db-e379-4b2a-9790-085181e1d6c5 IDependencyᐸStringᐳ\n" + + " IEnumerableᐸIDependencyᐸStringᐳᐳ *-- AbcDependencyᐸStringᐳ : 16e12d33-c99c-48ed-a87d-df2ef404d031 IDependencyᐸStringᐳ\n" + + " IEnumerableᐸIDependencyᐸStringᐳᐳ *-- XyzDependencyᐸStringᐳ : 366091bb-5db5-4259-9637-fd5fb7a97653 IDependencyᐸStringᐳ\n" + " Composition ..> ServiceᐸStringᐳ : IServiceᐸStringᐳ Root\n" + " ServiceᐸStringᐳ o-- \"PerBlock\" IEnumerableᐸIDependencyᐸStringᐳᐳ : IEnumerableᐸIDependencyᐸStringᐳᐳ"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di>.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di>.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.TagUniqueScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Advanced.TagUniqueScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -212,7 +212,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver> + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver> { public Pure.DI.UsageTests.Advanced.TagUniqueScenario.IService Resolve(Composition composition) { diff --git a/readme/tags.md b/readme/tags.md index 26f133367..fecdaa430 100644 --- a/readme/tags.md +++ b/readme/tags.md @@ -101,38 +101,38 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; - private Pure.DI.UsageTests.Basics.TagsScenario.XyzDependency _singletonM03D15di35_XyzDependency; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; + private Pure.DI.UsageTests.Basics.TagsScenario.XyzDependency _singletonM03D17di35_XyzDependency; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.Basics.TagsScenario.IDependency XyzRoot { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_XyzDependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_XyzDependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_XyzDependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_XyzDependency, null)) { - _singletonM03D15di35_XyzDependency = new Pure.DI.UsageTests.Basics.TagsScenario.XyzDependency(); - _rootM03D15di._singletonM03D15di35_XyzDependency = _singletonM03D15di35_XyzDependency; + _singletonM03D17di35_XyzDependency = new Pure.DI.UsageTests.Basics.TagsScenario.XyzDependency(); + _rootM03D17di._singletonM03D17di35_XyzDependency = _singletonM03D17di35_XyzDependency; } } } - return _rootM03D15di._singletonM03D15di35_XyzDependency; + return _rootM03D17di._singletonM03D17di35_XyzDependency; } } @@ -140,37 +140,37 @@ partial class Composition { get { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_XyzDependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_XyzDependency, null)) { - lock (_lockM03D15di) + lock (_lockM03D17di) { - if (ReferenceEquals(_rootM03D15di._singletonM03D15di35_XyzDependency, null)) + if (ReferenceEquals(_rootM03D17di._singletonM03D17di35_XyzDependency, null)) { - _singletonM03D15di35_XyzDependency = new Pure.DI.UsageTests.Basics.TagsScenario.XyzDependency(); - _rootM03D15di._singletonM03D15di35_XyzDependency = _singletonM03D15di35_XyzDependency; + _singletonM03D17di35_XyzDependency = new Pure.DI.UsageTests.Basics.TagsScenario.XyzDependency(); + _rootM03D17di._singletonM03D17di35_XyzDependency = _singletonM03D17di35_XyzDependency; } } } - return new Pure.DI.UsageTests.Basics.TagsScenario.Service(new Pure.DI.UsageTests.Basics.TagsScenario.AbcDependency(), _rootM03D15di._singletonM03D15di35_XyzDependency, new Pure.DI.UsageTests.Basics.TagsScenario.AbcDependency()); + return new Pure.DI.UsageTests.Basics.TagsScenario.Service(new Pure.DI.UsageTests.Basics.TagsScenario.AbcDependency(), _rootM03D17di._singletonM03D17di35_XyzDependency, new Pure.DI.UsageTests.Basics.TagsScenario.AbcDependency()); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -182,10 +182,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 4)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -233,28 +233,28 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - var valResolverM03D15di_0001 = new ResolverM03D15di_0001(); - ResolverM03D15di.Value = valResolverM03D15di_0001; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + var valResolverM03D17di_0001 = new ResolverM03D17di_0001(); + ResolverM03D17di.Value = valResolverM03D17di_0001; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 4, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[2] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.TagsScenario.IDependency), valResolverM03D15di_0000) - ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.TagsScenario.IService), valResolverM03D15di_0001) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.TagsScenario.IDependency), valResolverM03D17di_0000) + ,new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Basics.TagsScenario.IService), valResolverM03D17di_0001) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -267,7 +267,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.TagsScenario.IDependency Resolve(Composition composition) { @@ -285,7 +285,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0001: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0001: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Basics.TagsScenario.IService Resolve(Composition composition) { diff --git a/readme/task.md b/readme/task.md index b642dc686..befebb312 100644 --- a/readme/task.md +++ b/readme/task.md @@ -107,49 +107,49 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; - private readonly object _lockM03D15di; + private readonly Composition _rootM03D17di; + private readonly object _lockM03D17di; public Composition() { - _rootM03D15di = this; - _lockM03D15di = new object(); + _rootM03D17di = this; + _lockM03D17di = new object(); } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; - _lockM03D15di = _rootM03D15di._lockM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; + _lockM03D17di = _rootM03D17di._lockM03D17di; } public Pure.DI.UsageTests.BCL.TaskScenario.IService GetRoot(System.Threading.CancellationToken cancellationToken) { - var perResolveM03D15di39_Func = default(System.Func); - System.Threading.Tasks.TaskScheduler transientM03D15di5_TaskScheduler = TaskScheduler.Current; - System.Threading.Tasks.TaskContinuationOptions transientM03D15di4_TaskContinuationOptions = global::System.Threading.Tasks.TaskContinuationOptions.None; - System.Threading.Tasks.TaskCreationOptions transientM03D15di3_TaskCreationOptions = global::System.Threading.Tasks.TaskCreationOptions.None; - System.Threading.Tasks.TaskFactory perBlockM03D15di2_TaskFactory; + var perResolveM03D17di39_Func = default(System.Func); + System.Threading.Tasks.TaskScheduler transientM03D17di5_TaskScheduler = TaskScheduler.Current; + System.Threading.Tasks.TaskContinuationOptions transientM03D17di4_TaskContinuationOptions = global::System.Threading.Tasks.TaskContinuationOptions.None; + System.Threading.Tasks.TaskCreationOptions transientM03D17di3_TaskCreationOptions = global::System.Threading.Tasks.TaskCreationOptions.None; + System.Threading.Tasks.TaskFactory perBlockM03D17di2_TaskFactory; { - var cancellationToken_M03D15di1 = cancellationToken; - var taskCreationOptions_M03D15di2 = transientM03D15di3_TaskCreationOptions; - var taskContinuationOptions_M03D15di3 = transientM03D15di4_TaskContinuationOptions; - var taskScheduler_M03D15di4 = transientM03D15di5_TaskScheduler; - perBlockM03D15di2_TaskFactory = new global::System.Threading.Tasks.TaskFactory(cancellationToken_M03D15di1, taskCreationOptions_M03D15di2, taskContinuationOptions_M03D15di3, taskScheduler_M03D15di4); + var cancellationToken_M03D17di1 = cancellationToken; + var taskCreationOptions_M03D17di2 = transientM03D17di3_TaskCreationOptions; + var taskContinuationOptions_M03D17di3 = transientM03D17di4_TaskContinuationOptions; + var taskScheduler_M03D17di4 = transientM03D17di5_TaskScheduler; + perBlockM03D17di2_TaskFactory = new global::System.Threading.Tasks.TaskFactory(cancellationToken_M03D17di1, taskCreationOptions_M03D17di2, taskContinuationOptions_M03D17di3, taskScheduler_M03D17di4); } - perResolveM03D15di39_Func = new global::System.Func( + perResolveM03D17di39_Func = new global::System.Func( [global::System.Runtime.CompilerServices.MethodImpl((global::System.Runtime.CompilerServices.MethodImplOptions)768)] () => { - var factory_M03D15di5 = new Pure.DI.UsageTests.BCL.TaskScenario.Dependency(); - return factory_M03D15di5; + var factory_M03D17di5 = new Pure.DI.UsageTests.BCL.TaskScenario.Dependency(); + return factory_M03D17di5; }); - System.Threading.Tasks.Task transientM03D15di1_Task; + System.Threading.Tasks.Task transientM03D17di1_Task; { - var factory_M03D15di6 = perResolveM03D15di39_Func; - var taskFactory_M03D15di7 = perBlockM03D15di2_TaskFactory; - transientM03D15di1_Task = taskFactory_M03D15di7.StartNew(factory_M03D15di6); + var factory_M03D17di6 = perResolveM03D17di39_Func; + var taskFactory_M03D17di7 = perBlockM03D17di2_TaskFactory; + transientM03D17di1_Task = taskFactory_M03D17di7.StartNew(factory_M03D17di6); } - return new Pure.DI.UsageTests.BCL.TaskScenario.Service(transientM03D15di1_Task); + return new Pure.DI.UsageTests.BCL.TaskScenario.Service(transientM03D17di1_Task); } public override string ToString() diff --git a/readme/threadsafe-hint.md b/readme/threadsafe-hint.md index 0d1f605d1..f8864e7ca 100644 --- a/readme/threadsafe-hint.md +++ b/readme/threadsafe-hint.md @@ -65,16 +65,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Hints.ThreadSafeHintScenario.IService Root @@ -87,20 +87,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -112,10 +112,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -154,25 +154,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.ThreadSafeHintScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.ThreadSafeHintScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -185,7 +185,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Hints.ThreadSafeHintScenario.IService Resolve(Composition composition) { diff --git a/readme/tostring-hint.md b/readme/tostring-hint.md index e15d7b46e..c82898177 100644 --- a/readme/tostring-hint.md +++ b/readme/tostring-hint.md @@ -63,16 +63,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Hints.ToStringHintScenario.IService MyService @@ -85,20 +85,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -110,10 +110,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -152,25 +152,25 @@ partial class Composition " Composition ..> Service : IService MyService"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.ToStringHintScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.ToStringHintScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -183,7 +183,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Hints.ToStringHintScenario.IService Resolve(Composition composition) { diff --git a/readme/tracking-disposable-instances-per-a-composition-root.md b/readme/tracking-disposable-instances-per-a-composition-root.md new file mode 100644 index 000000000..7c72c855b --- /dev/null +++ b/readme/tracking-disposable-instances-per-a-composition-root.md @@ -0,0 +1,320 @@ +#### Tracking disposable instances per a composition root + +[![CSharp](https://img.shields.io/badge/C%23-code-blue.svg)](../tests/Pure.DI.UsageTests/Hints/TrackingDisposableInstances2Scenario.cs) + +```c# +interface IDependency +{ + bool IsDisposed { get; } +} + +class Dependency : IDependency, IDisposable +{ + public bool IsDisposed { get; private set; } + + public void Dispose() => IsDisposed = true; +} + +interface IService +{ + public IDependency Dependency { get; } +} + +class Service(IDependency dependency) : IService +{ + public IDependency Dependency { get; } = dependency; +} + +internal static class Disposables +{ + public static readonly IDisposable Empty = new EmptyDisposable(); + + public static IDisposable Combine(this Stack disposables) => + new CombinedDisposable(disposables); + + private class EmptyDisposable : IDisposable + { + public void Dispose() { } + } + + private class CombinedDisposable(Stack disposables) + : IDisposable + { + public void Dispose() + { + while (disposables.TryPop(out var disposable)) + { + disposable.Dispose(); + } + } + } +} + +partial class Composition +{ + private readonly ConcurrentDictionary> _disposables = new(); + + private void Setup() => + DI.Setup(nameof(Composition)) + // Specifies to call a partial method + // named OnNewInstance when an instance is created + .Hint(Hint.OnNewInstance, "On") + + // Specifies to call the partial method + // only for instances with lifetime + // Transient, PerResolve and PerBlock + .Hint( + Hint.OnNewInstanceLifetimeRegularExpression, + "Transient|PerResolve|PerBlock") + + .Bind().To() + .Bind().To() + .Bind().To(_ => + _disposables.TryRemove(Environment.CurrentManagedThreadId, out var disposables) + ? disposables.Combine() + : Disposables.Empty) + + .Root<(IService service, IDisposable combinedDisposables)>("Root"); + + partial void OnNewInstance( + ref T value, + object? tag, + Lifetime lifetime) + { + if (value is IDisposable disposable) + { + var disposables = _disposables.GetOrAdd( + Environment.CurrentManagedThreadId, + _ => new Stack()); + + disposables.Push(disposable); + } + } +} + +var composition = new Composition(); +var root1 = composition.Root; +var root2 = composition.Root; + +root1.combinedDisposables.Dispose(); + +// Checks that the disposable instances +// associated with root1 have been disposed of +root1.service.Dependency.IsDisposed.ShouldBeTrue(); + +// Checks that the disposable instances +// associated with root2 have not been disposed of +root2.service.Dependency.IsDisposed.ShouldBeFalse(); +``` + +
+Class Diagram + +```mermaid +classDiagram + class Composition { + +ValueTupleᐸIServiceˏIDisposableᐳ Root + + T ResolveᐸTᐳ() + + T ResolveᐸTᐳ(object? tag) + + object Resolve(Type type) + + object Resolve(Type type, object? tag) + } + class ValueTupleᐸIServiceˏIDisposableᐳ { + +ValueTuple(IService item1, IDisposable item2) + } + class IDisposable + Dependency --|> IDependency : + class Dependency { + +Dependency() + } + Service --|> IService : + class Service { + +Service(IDependency dependency) + } + class IDependency { + <> + } + class IService { + <> + } + ValueTupleᐸIServiceˏIDisposableᐳ *-- Service : IService + ValueTupleᐸIServiceˏIDisposableᐳ *-- IDisposable : IDisposable + Service *-- Dependency : IDependency + Composition ..> ValueTupleᐸIServiceˏIDisposableᐳ : ValueTupleᐸIServiceˏIDisposableᐳ Root +``` + +
+ +
+Pure.DI-generated partial class Composition
+ +```c# +partial class Composition +{ + private readonly Composition _rootM03D17di; + + public Composition() + { + _rootM03D17di = this; + } + + internal Composition(Composition baseComposition) + { + _rootM03D17di = baseComposition._rootM03D17di; + } + + public (Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.IService service, System.IDisposable combinedDisposables) Root + { + get + { + Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.Dependency transientM03D17di3_Dependency = new Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.Dependency(); + OnNewInstance(ref transientM03D17di3_Dependency, null, Pure.DI.Lifetime.Transient); + System.IDisposable transientM03D17di2_IDisposable = _disposables.TryRemove(Environment.CurrentManagedThreadId, out var disposables_M03D17di1) ? disposables_M03D17di1.Combine() : Disposables.Empty; + OnNewInstance(ref transientM03D17di2_IDisposable, null, Pure.DI.Lifetime.Transient); + Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.Service transientM03D17di1_Service = new Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.Service(transientM03D17di3_Dependency); + OnNewInstance(ref transientM03D17di1_Service, null, Pure.DI.Lifetime.Transient); + (Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.IService service, System.IDisposable combinedDisposables) transientM03D17di0_ValueTuple = (transientM03D17di1_Service, transientM03D17di2_IDisposable); + OnNewInstance<(Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.IService service, System.IDisposable combinedDisposables)>(ref transientM03D17di0_ValueTuple, null, Pure.DI.Lifetime.Transient); + return transientM03D17di0_ValueTuple; + } + } + + public T Resolve() + { + return ResolverM03D17di.Value.Resolve(this); + } + + public T Resolve(object? tag) + { + return ResolverM03D17di.Value.ResolveByTag(this, tag); + } + + public object Resolve(global::System.Type type) + { + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; + do { + ref var pair = ref _bucketsM03D17di[index]; + if (ReferenceEquals(pair.Key, type)) + { + return pair.Value.Resolve(this); + } + } while (++index < finish); + + throw new global::System.InvalidOperationException($"Cannot resolve composition root of type {type}."); + } + + public object Resolve(global::System.Type type, object? tag) + { + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; + do { + ref var pair = ref _bucketsM03D17di[index]; + if (ReferenceEquals(pair.Key, type)) + { + return pair.Value.ResolveByTag(this, tag); + } + } while (++index < finish); + + throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type {type}."); + } + + partial void OnNewInstance(ref T value, object? tag, global::Pure.DI.Lifetime lifetime); + + public override string ToString() + { + return + "classDiagram\n" + + " class Composition {\n" + + " +ValueTupleᐸIServiceˏIDisposableᐳ Root\n" + + " + T ResolveᐸTᐳ()\n" + + " + T ResolveᐸTᐳ(object? tag)\n" + + " + object Resolve(Type type)\n" + + " + object Resolve(Type type, object? tag)\n" + + " }\n" + + " class ValueTupleᐸIServiceˏIDisposableᐳ {\n" + + " +ValueTuple(IService item1, IDisposable item2)\n" + + " }\n" + + " class IDisposable\n" + + " Dependency --|> IDependency : \n" + + " class Dependency {\n" + + " +Dependency()\n" + + " }\n" + + " Service --|> IService : \n" + + " class Service {\n" + + " +Service(IDependency dependency)\n" + + " }\n" + + " class IDependency {\n" + + " <>\n" + + " }\n" + + " class IService {\n" + + " <>\n" + + " }\n" + + " ValueTupleᐸIServiceˏIDisposableᐳ *-- Service : IService\n" + + " ValueTupleᐸIServiceˏIDisposableᐳ *-- IDisposable : IDisposable\n" + + " Service *-- Dependency : IDependency\n" + + " Composition ..> ValueTupleᐸIServiceˏIDisposableᐳ : ValueTupleᐸIServiceˏIDisposableᐳ Root"; + } + + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; + + static Composition() + { + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di<(Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.IService service, System.IDisposable combinedDisposables)>.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( + 1, + out _bucketSizeM03D17di, + new global::Pure.DI.Pair>[1] + { + new global::Pure.DI.Pair>(typeof((Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.IService service, System.IDisposable combinedDisposables)), valResolverM03D17di_0000) + }); + } + + private sealed class ResolverM03D17di: global::Pure.DI.IResolver + { + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); + + public T Resolve(Composition composite) + { + throw new global::System.InvalidOperationException($"Cannot resolve composition root of type {typeof(T)}."); + } + + public T ResolveByTag(Composition composite, object tag) + { + throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type {typeof(T)}."); + } + } + + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver, global::Pure.DI.IResolver + { + public (Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.IService service, System.IDisposable combinedDisposables) Resolve(Composition composition) + { + return composition.Root; + } + + public (Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.IService service, System.IDisposable combinedDisposables) ResolveByTag(Composition composition, object tag) + { + switch (tag) + { + case null: + return composition.Root; + } + throw new global::System.InvalidOperationException($"Cannot resolve composition root \"{tag}\" of type (Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario.IService service, System.IDisposable combinedDisposables)."); + } + object global::Pure.DI.IResolver.Resolve(Composition composition) + { + return Resolve(composition); + } + + object global::Pure.DI.IResolver.ResolveByTag(Composition composition, object tag) + { + return ResolveByTag(composition, tag); + } + } +} +``` + +
+ diff --git a/readme/tracking-disposable-instances.md b/readme/tracking-disposable-instances.md index 345158bcd..719a534d3 100644 --- a/readme/tracking-disposable-instances.md +++ b/readme/tracking-disposable-instances.md @@ -118,46 +118,46 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.IService Root { get { - var transientM03D15di1_Dependency = new Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.Dependency(); - OnNewInstance(ref transientM03D15di1_Dependency, null, Pure.DI.Lifetime.Transient); - var transientM03D15di0_Service = new Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.Service(transientM03D15di1_Dependency); - OnNewInstance(ref transientM03D15di0_Service, null, Pure.DI.Lifetime.Transient); - return transientM03D15di0_Service; + Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.Dependency transientM03D17di1_Dependency = new Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.Dependency(); + OnNewInstance(ref transientM03D17di1_Dependency, null, Pure.DI.Lifetime.Transient); + Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.Service transientM03D17di0_Service = new Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.Service(transientM03D17di1_Dependency); + OnNewInstance(ref transientM03D17di0_Service, null, Pure.DI.Lifetime.Transient); + return transientM03D17di0_Service; } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -169,10 +169,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -213,25 +213,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -244,7 +244,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Hints.TrackingDisposableInstancesScenario.IService Resolve(Composition composition) { diff --git a/readme/transient.md b/readme/transient.md index 04298f74e..7ca5d70c7 100644 --- a/readme/transient.md +++ b/readme/transient.md @@ -76,16 +76,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Lifetimes.TransientScenario.IService Root @@ -98,20 +98,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -123,10 +123,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -166,25 +166,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.TransientScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Lifetimes.TransientScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -197,7 +197,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Lifetimes.TransientScenario.IService Resolve(Composition composition) { diff --git a/readme/tuple.md b/readme/tuple.md index 105c4d074..3328a1a2d 100644 --- a/readme/tuple.md +++ b/readme/tuple.md @@ -74,43 +74,43 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.TupleScenario.IService Root { get { - Pure.DI.UsageTests.BCL.TupleScenario.Point transientM03D15di2_Point = new Point(7, 9); - return new Pure.DI.UsageTests.BCL.TupleScenario.Service((transientM03D15di2_Point, new Pure.DI.UsageTests.BCL.TupleScenario.Dependency())); + Pure.DI.UsageTests.BCL.TupleScenario.Point transientM03D17di2_Point = new Point(7, 9); + return new Pure.DI.UsageTests.BCL.TupleScenario.Service((transientM03D17di2_Point, new Pure.DI.UsageTests.BCL.TupleScenario.Dependency())); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -122,10 +122,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -170,25 +170,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.TupleScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.TupleScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -201,7 +201,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.TupleScenario.IService Resolve(Composition composition) { diff --git a/readme/type-attribute.md b/readme/type-attribute.md index dbe7c08c0..f633fae38 100644 --- a/readme/type-attribute.md +++ b/readme/type-attribute.md @@ -77,16 +77,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.Attributes.TypeAttributeScenario.IService Root @@ -99,20 +99,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -124,10 +124,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -166,25 +166,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Attributes.TypeAttributeScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.Attributes.TypeAttributeScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -197,7 +197,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.Attributes.TypeAttributeScenario.IService Resolve(Composition composition) { diff --git a/readme/valuetask.md b/readme/valuetask.md index cd4f52671..842dccc21 100644 --- a/readme/valuetask.md +++ b/readme/valuetask.md @@ -76,47 +76,47 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.ValueTaskScenario.IService Root { get { - System.Threading.Tasks.ValueTask transientM03D15di1_ValueTask; + System.Threading.Tasks.ValueTask transientM03D17di1_ValueTask; { - var value_M03D15di1 = new Pure.DI.UsageTests.BCL.ValueTaskScenario.Dependency(); - transientM03D15di1_ValueTask = new global::System.Threading.Tasks.ValueTask(value_M03D15di1); + var value_M03D17di1 = new Pure.DI.UsageTests.BCL.ValueTaskScenario.Dependency(); + transientM03D17di1_ValueTask = new global::System.Threading.Tasks.ValueTask(value_M03D17di1); } - return new Pure.DI.UsageTests.BCL.ValueTaskScenario.Service(transientM03D15di1_ValueTask); + return new Pure.DI.UsageTests.BCL.ValueTaskScenario.Service(transientM03D17di1_ValueTask); } } public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -128,10 +128,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -172,25 +172,25 @@ partial class Composition " ValueTaskᐸIDependencyᐳ *-- Dependency : IDependency"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ValueTaskScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.ValueTaskScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -203,7 +203,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.ValueTaskScenario.IService Resolve(Composition composition) { diff --git a/readme/weak-reference.md b/readme/weak-reference.md index ed2ad9889..86e040c70 100644 --- a/readme/weak-reference.md +++ b/readme/weak-reference.md @@ -67,16 +67,16 @@ classDiagram ```c# partial class Composition { - private readonly Composition _rootM03D15di; + private readonly Composition _rootM03D17di; public Composition() { - _rootM03D15di = this; + _rootM03D17di = this; } internal Composition(Composition baseComposition) { - _rootM03D15di = baseComposition._rootM03D15di; + _rootM03D17di = baseComposition._rootM03D17di; } public Pure.DI.UsageTests.BCL.WeakReferenceScenario.IService Root @@ -89,20 +89,20 @@ partial class Composition public T Resolve() { - return ResolverM03D15di.Value.Resolve(this); + return ResolverM03D17di.Value.Resolve(this); } public T Resolve(object? tag) { - return ResolverM03D15di.Value.ResolveByTag(this, tag); + return ResolverM03D17di.Value.ResolveByTag(this, tag); } public object Resolve(global::System.Type type) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.Resolve(this); @@ -114,10 +114,10 @@ partial class Composition public object Resolve(global::System.Type type, object? tag) { - var index = (int)(_bucketSizeM03D15di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); - var finish = index + _bucketSizeM03D15di; + var index = (int)(_bucketSizeM03D17di * ((uint)global::System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(type) % 1)); + var finish = index + _bucketSizeM03D17di; do { - ref var pair = ref _bucketsM03D15di[index]; + ref var pair = ref _bucketsM03D17di[index]; if (ReferenceEquals(pair.Key, type)) { return pair.Value.ResolveByTag(this, tag); @@ -160,25 +160,25 @@ partial class Composition " Composition ..> Service : IService Root"; } - private readonly static int _bucketSizeM03D15di; - private readonly static global::Pure.DI.Pair>[] _bucketsM03D15di; + private readonly static int _bucketSizeM03D17di; + private readonly static global::Pure.DI.Pair>[] _bucketsM03D17di; static Composition() { - var valResolverM03D15di_0000 = new ResolverM03D15di_0000(); - ResolverM03D15di.Value = valResolverM03D15di_0000; - _bucketsM03D15di = global::Pure.DI.Buckets>.Create( + var valResolverM03D17di_0000 = new ResolverM03D17di_0000(); + ResolverM03D17di.Value = valResolverM03D17di_0000; + _bucketsM03D17di = global::Pure.DI.Buckets>.Create( 1, - out _bucketSizeM03D15di, + out _bucketSizeM03D17di, new global::Pure.DI.Pair>[1] { - new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.WeakReferenceScenario.IService), valResolverM03D15di_0000) + new global::Pure.DI.Pair>(typeof(Pure.DI.UsageTests.BCL.WeakReferenceScenario.IService), valResolverM03D17di_0000) }); } - private sealed class ResolverM03D15di: global::Pure.DI.IResolver + private sealed class ResolverM03D17di: global::Pure.DI.IResolver { - public static global::Pure.DI.IResolver Value = new ResolverM03D15di(); + public static global::Pure.DI.IResolver Value = new ResolverM03D17di(); public T Resolve(Composition composite) { @@ -191,7 +191,7 @@ partial class Composition } } - private sealed class ResolverM03D15di_0000: global::Pure.DI.IResolver + private sealed class ResolverM03D17di_0000: global::Pure.DI.IResolver { public Pure.DI.UsageTests.BCL.WeakReferenceScenario.IService Resolve(Composition composition) { diff --git a/tests/Pure.DI.UsageTests/Hints/TrackingDisposableInstances2Scenario.cs b/tests/Pure.DI.UsageTests/Hints/TrackingDisposableInstances2Scenario.cs new file mode 100644 index 000000000..5b2769002 --- /dev/null +++ b/tests/Pure.DI.UsageTests/Hints/TrackingDisposableInstances2Scenario.cs @@ -0,0 +1,130 @@ +/* +$v=true +$p=6 +$d=Tracking disposable instances per a composition root +*/ + +// ReSharper disable CheckNamespace +// ReSharper disable UnusedMember.Local +// ReSharper disable UnusedParameterInPartialMethod +// ReSharper disable ArrangeTypeModifiers +// ReSharper disable InvertIf +namespace Pure.DI.UsageTests.Hints.TrackingDisposableInstances2Scenario; + +using System.Collections.Concurrent; +using Xunit; + +// { +interface IDependency +{ + bool IsDisposed { get; } +} + +class Dependency : IDependency, IDisposable +{ + public bool IsDisposed { get; private set; } + + public void Dispose() => IsDisposed = true; +} + +interface IService +{ + public IDependency Dependency { get; } +} + +class Service(IDependency dependency) : IService +{ + public IDependency Dependency { get; } = dependency; +} + +internal static class Disposables +{ + public static readonly IDisposable Empty = new EmptyDisposable(); + + public static IDisposable Combine(this Stack disposables) => + new CombinedDisposable(disposables); + + private class EmptyDisposable : IDisposable + { + public void Dispose() { } + } + + private class CombinedDisposable(Stack disposables) + : IDisposable + { + public void Dispose() + { + while (disposables.TryPop(out var disposable)) + { + disposable.Dispose(); + } + } + } +} + +partial class Composition +{ + private readonly ConcurrentDictionary> _disposables = new(); + + private void Setup() => + DI.Setup(nameof(Composition)) + // Specifies to call a partial method + // named OnNewInstance when an instance is created + .Hint(Hint.OnNewInstance, "On") + + // Specifies to call the partial method + // only for instances with lifetime + // Transient, PerResolve and PerBlock + .Hint( + Hint.OnNewInstanceLifetimeRegularExpression, + "Transient|PerResolve|PerBlock") + + .Bind().To() + .Bind().To() + .Bind().To(_ => + _disposables.TryRemove(Environment.CurrentManagedThreadId, out var disposables) + ? disposables.Combine() + : Disposables.Empty) + + .Root<(IService service, IDisposable combinedDisposables)>("Root"); + + partial void OnNewInstance( + ref T value, + object? tag, + Lifetime lifetime) + { + if (value is IDisposable disposable) + { + var disposables = _disposables.GetOrAdd( + Environment.CurrentManagedThreadId, + _ => new Stack()); + + disposables.Push(disposable); + } + } +} +// } + +public class Scenario +{ + [Fact] + public void Run() + { +// { + var composition = new Composition(); + var root1 = composition.Root; + var root2 = composition.Root; + + root1.combinedDisposables.Dispose(); + + // Checks that the disposable instances + // associated with root1 have been disposed of + root1.service.Dependency.IsDisposed.ShouldBeTrue(); + + // Checks that the disposable instances + // associated with root2 have not been disposed of + root2.service.Dependency.IsDisposed.ShouldBeFalse(); + // } + new Composition().SaveClassDiagram(); + } +} \ No newline at end of file