diff --git a/src/FastGenericNew.SourceGenerator/CodeGenerators/FastCreateInstanceGenerator.cs b/src/FastGenericNew.SourceGenerator/CodeGenerators/FastCreateInstanceGenerator.cs index b902565..c6d9f28 100644 --- a/src/FastGenericNew.SourceGenerator/CodeGenerators/FastCreateInstanceGenerator.cs +++ b/src/FastGenericNew.SourceGenerator/CodeGenerators/FastCreateInstanceGenerator.cs @@ -16,12 +16,11 @@ public override CodeGenerationResult Generate(in GeneratorOptions options) builder.AppendKeyword("static partial class"); builder.Append(ClassName); builder.StartBlock(1); - builder.AppendLine($@" /// /// Create an instance of /// Returns () if is a (struct) - /// This CAN call the Parameterless Constructor of the (struct) + /// This CAN call the Parameterless Constructor for (struct) /// /// The type to create. /// A new instance of @@ -39,7 +38,7 @@ public static T CreateInstance< return {options.GlobalNSDot()}{FastNewCoreGenerator.ClassName}.{FastNewCoreGenerator.CompiledDelegateName}(); #else return typeof(T).IsValueType - ? System.Activator.CreateInstance() // This will be optimized by JIT + ? System.Activator.CreateInstance() // Value Types will be optimized by JIT in CoreCLR #if {ClrAllocatorGenerator.ppEnabled} : ({options.GlobalNSDot()}{ClrAllocatorGenerator.ClassName}.IsSupported @@ -54,7 +53,7 @@ public static T CreateInstance< /// /// Create an instance of
/// Returns () if is a (struct)
- /// This WILL NOT call the Parameterless Constructor of the (struct) + /// This WILL NOT call the Parameterless Constructor for (struct) ///
/// The type to create. /// A new instance of diff --git a/src/FastGenericNew.SourceGenerator/CodeGenerators/ThrowHelperGenerator.cs b/src/FastGenericNew.SourceGenerator/CodeGenerators/ThrowHelperGenerator.cs index db23eed..c96cf4d 100644 --- a/src/FastGenericNew.SourceGenerator/CodeGenerators/ThrowHelperGenerator.cs +++ b/src/FastGenericNew.SourceGenerator/CodeGenerators/ThrowHelperGenerator.cs @@ -4,7 +4,7 @@ public class ThrowHelperGenerator : CodeGenerator { public override string Filename => "ThrowHelper.g.cs"; - internal const string ClassName = "ThrowHelper"; + internal const string ClassName = "FastNewThrowHelper"; internal const string SmartThrowName = "SmartThrowImpl"; @@ -15,7 +15,7 @@ public override CodeGenerationResult Generate(in GeneratorOptions options) builder.StartNamespace(); builder.AppendLine(@$" [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] - internal static partial class ThrowHelper + internal static partial class {ClassName} {{ [global::System.Runtime.CompilerServices.MethodImpl(global::System.Runtime.CompilerServices.MethodImplOptions.NoInlining | global::System.Runtime.CompilerServices.MethodImplOptions.NoOptimization)] #if NET5_0_OR_GREATER @@ -23,7 +23,7 @@ internal static partial class ThrowHelper #endif "); builder.AppendLine(@$" - public static global::System.Reflection.MethodInfo GetSmartThrow() => typeof({options.GlobalNSDot()}ThrowHelper).GetMethod(""SmartThrowImpl"", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static)!.MakeGenericMethod(typeof(T)); + public static global::System.Reflection.MethodInfo GetSmartThrow() => typeof({options.GlobalNSDot()}{ClassName}).GetMethod(""SmartThrowImpl"", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static)!.MakeGenericMethod(typeof(T)); [global::System.Runtime.CompilerServices.MethodImpl(global::System.Runtime.CompilerServices.MethodImplOptions.NoInlining | global::System.Runtime.CompilerServices.MethodImplOptions.NoOptimization)] public static T SmartThrowImpl() diff --git a/src/FastGenericNew/FastGenericNew.csproj b/src/FastGenericNew/FastGenericNew.csproj index d900379..44ee1b9 100644 --- a/src/FastGenericNew/FastGenericNew.csproj +++ b/src/FastGenericNew/FastGenericNew.csproj @@ -32,7 +32,6 @@ FastGenericNew - Pre-Compiled FastGenericNew Generated True README.md diff --git a/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/ClrAllocator.g.cs b/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/ClrAllocator.g.cs index b72a29c..90e5298 100644 --- a/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/ClrAllocator.g.cs +++ b/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/ClrAllocator.g.cs @@ -54,7 +54,7 @@ public static void CtorNoopStub(object _) { } [global::System.Runtime.CompilerServices.MethodImpl(global::System.Runtime.CompilerServices.MethodImplOptions.NoInlining | global::System.Runtime.CompilerServices.MethodImplOptions.NoOptimization)] public static object ThrowNotSupported(void* _) => throw new global::System.NotSupportedException(); [global::System.Runtime.CompilerServices.MethodImpl(global::System.Runtime.CompilerServices.MethodImplOptions.NoInlining | global::System.Runtime.CompilerServices.MethodImplOptions.NoOptimization)] - public static object SmartThrow(void* _) => (object)global::@FastGenericNew.ThrowHelper.SmartThrowImpl()!; + public static object SmartThrow(void* _) => (object)global::@FastGenericNew.FastNewThrowHelper.SmartThrowImpl()!; } [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] diff --git a/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/FastNew.CreateInstance.g.cs b/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/FastNew.CreateInstance.g.cs index f431ac7..64fadbc 100644 --- a/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/FastNew.CreateInstance.g.cs +++ b/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/FastNew.CreateInstance.g.cs @@ -20,7 +20,7 @@ static partial class FastNew { /// /// Create an instance of /// Returns () if is a (struct) - /// This CAN call the Parameterless Constructor of the (struct) + /// This CAN call the Parameterless Constructor for (struct) /// /// The type to create. /// A new instance of @@ -38,7 +38,7 @@ public static T CreateInstance< return global::@FastGenericNew.FastNew.CompiledDelegate(); #else return typeof(T).IsValueType - ? System.Activator.CreateInstance() // This will be optimized by JIT + ? System.Activator.CreateInstance() // Value Types will be optimized by JIT in CoreCLR #if NET6_0_OR_GREATER && FastNewPX_AllowUnsafeImplementation : (global::@FastGenericNew.ClrAllocator.IsSupported @@ -53,7 +53,7 @@ public static T CreateInstance< /// /// Create an instance of
/// Returns () if is a (struct)
- /// This WILL NOT call the Parameterless Constructor of the (struct) + /// This WILL NOT call the Parameterless Constructor for (struct) ///
/// The type to create. /// A new instance of diff --git a/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/FastNew{T}.g.cs b/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/FastNew{T}.g.cs index 319d3dc..707c4c8 100644 --- a/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/FastNew{T}.g.cs +++ b/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/FastNew{T}.g.cs @@ -39,7 +39,7 @@ static partial class FastNew< : (global::System.Linq.Expressions.Expression)global::System.Linq.Expressions.Expression.New(typeof(T))) : ((global::@FastGenericNew.FastNew.CachedConstructor != null && !typeof(T).IsAbstract) ? (global::System.Linq.Expressions.Expression)global::System.Linq.Expressions.Expression.New(global::@FastGenericNew.FastNew.CachedConstructor) - : (global::System.Linq.Expressions.Expression)global::System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow())) + : (global::System.Linq.Expressions.Expression)global::System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow())) , Array.Empty()).Compile(); public static readonly bool IsValid = typeof(T).IsValueType || (global::@FastGenericNew.FastNew.CachedConstructor != null && !typeof(T).IsAbstract); @@ -84,7 +84,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -116,7 +116,7 @@ static FastNew() var p0 = System.Linq.Expressions.Expression.Parameter(typeof(TArg0)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0) }, restrictedSkipVisibility: true); @@ -128,7 +128,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -162,7 +162,7 @@ static FastNew() var p1 = System.Linq.Expressions.Expression.Parameter(typeof(TArg1)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1) }, restrictedSkipVisibility: true); @@ -175,7 +175,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -211,7 +211,7 @@ static FastNew() var p2 = System.Linq.Expressions.Expression.Parameter(typeof(TArg2)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2) }, restrictedSkipVisibility: true); @@ -225,7 +225,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -263,7 +263,7 @@ static FastNew() var p3 = System.Linq.Expressions.Expression.Parameter(typeof(TArg3)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3) }, restrictedSkipVisibility: true); @@ -278,7 +278,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -318,7 +318,7 @@ static FastNew() var p4 = System.Linq.Expressions.Expression.Parameter(typeof(TArg4)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4) }, restrictedSkipVisibility: true); @@ -334,7 +334,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -376,7 +376,7 @@ static FastNew() var p5 = System.Linq.Expressions.Expression.Parameter(typeof(TArg5)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5) }, restrictedSkipVisibility: true); @@ -393,7 +393,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -437,7 +437,7 @@ static FastNew() var p6 = System.Linq.Expressions.Expression.Parameter(typeof(TArg6)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6) }, restrictedSkipVisibility: true); @@ -455,7 +455,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -501,7 +501,7 @@ static FastNew() var p7 = System.Linq.Expressions.Expression.Parameter(typeof(TArg7)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7) }, restrictedSkipVisibility: true); @@ -520,7 +520,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -568,7 +568,7 @@ static FastNew() var p8 = System.Linq.Expressions.Expression.Parameter(typeof(TArg8)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8) }, restrictedSkipVisibility: true); @@ -588,7 +588,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -638,7 +638,7 @@ static FastNew() var p9 = System.Linq.Expressions.Expression.Parameter(typeof(TArg9)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9) }, restrictedSkipVisibility: true); @@ -659,7 +659,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -711,7 +711,7 @@ static FastNew() var p10 = System.Linq.Expressions.Expression.Parameter(typeof(TArg10)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9), typeof(TArg10) }, restrictedSkipVisibility: true); @@ -733,7 +733,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -787,7 +787,7 @@ static FastNew() var p11 = System.Linq.Expressions.Expression.Parameter(typeof(TArg11)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9), typeof(TArg10), typeof(TArg11) }, restrictedSkipVisibility: true); @@ -810,7 +810,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -866,7 +866,7 @@ static FastNew() var p12 = System.Linq.Expressions.Expression.Parameter(typeof(TArg12)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9), typeof(TArg10), typeof(TArg11), typeof(TArg12) }, restrictedSkipVisibility: true); @@ -890,7 +890,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -948,7 +948,7 @@ static FastNew() var p13 = System.Linq.Expressions.Expression.Parameter(typeof(TArg13)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9), typeof(TArg10), typeof(TArg11), typeof(TArg12), typeof(TArg13) }, restrictedSkipVisibility: true); @@ -973,7 +973,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -1033,7 +1033,7 @@ static FastNew() var p14 = System.Linq.Expressions.Expression.Parameter(typeof(TArg14)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9), typeof(TArg10), typeof(TArg11), typeof(TArg12), typeof(TArg13), typeof(TArg14) }, restrictedSkipVisibility: true); @@ -1059,7 +1059,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -1121,7 +1121,7 @@ static FastNew() var p15 = System.Linq.Expressions.Expression.Parameter(typeof(TArg15)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9), typeof(TArg10), typeof(TArg11), typeof(TArg12), typeof(TArg13), typeof(TArg14), typeof(TArg15) }, restrictedSkipVisibility: true); @@ -1148,7 +1148,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (Func)dm.CreateDelegate(typeof(Func), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -1212,7 +1212,7 @@ static FastNew() var p16 = System.Linq.Expressions.Expression.Parameter(typeof(TArg16)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9), typeof(TArg10), typeof(TArg11), typeof(TArg12), typeof(TArg13), typeof(TArg14), typeof(TArg15), typeof(TArg16) }, restrictedSkipVisibility: true); @@ -1240,7 +1240,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (global::@FastGenericNew.FastNew.FastNewDelegate)dm.CreateDelegate(typeof(global::@FastGenericNew.FastNew.FastNewDelegate), global::@FastGenericNew._FastNewDynMetClosure.Instance); @@ -1306,7 +1306,7 @@ static FastNew() var p17 = System.Linq.Expressions.Expression.Parameter(typeof(TArg17)); CompiledDelegate = (System.Linq.Expressions.Expression.Lambda>(IsValid ? (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.New(CachedConstructor!, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17) - : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.ThrowHelper.GetSmartThrow()) + : (System.Linq.Expressions.Expression)System.Linq.Expressions.Expression.Call(global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()) , new System.Linq.Expressions.ParameterExpression[] { p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17 })).Compile(); #else var dm = new DynamicMethod("", typeof(T), new Type[] { typeof(global::@FastGenericNew._FastNewDynMetClosure), typeof(TArg0), typeof(TArg1), typeof(TArg2), typeof(TArg3), typeof(TArg4), typeof(TArg5), typeof(TArg6), typeof(TArg7), typeof(TArg8), typeof(TArg9), typeof(TArg10), typeof(TArg11), typeof(TArg12), typeof(TArg13), typeof(TArg14), typeof(TArg15), typeof(TArg16), typeof(TArg17) }, restrictedSkipVisibility: true); @@ -1335,7 +1335,7 @@ static FastNew() } else { - il.Emit(OpCodes.Call, global::@FastGenericNew.ThrowHelper.GetSmartThrow()); + il.Emit(OpCodes.Call, global::@FastGenericNew.FastNewThrowHelper.GetSmartThrow()); } il.Emit(OpCodes.Ret); CompiledDelegate = (global::@FastGenericNew.FastNew.FastNewDelegate)dm.CreateDelegate(typeof(global::@FastGenericNew.FastNew.FastNewDelegate), global::@FastGenericNew._FastNewDynMetClosure.Instance); diff --git a/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/ThrowHelper.g.cs b/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/ThrowHelper.g.cs index c0a4b1e..ffba759 100644 --- a/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/ThrowHelper.g.cs +++ b/src/FastGenericNew/_generated/FastGenericNew.SourceGenerator/FastGenericNew.SourceGenerator.Generator/ThrowHelper.g.cs @@ -4,7 +4,6 @@ // Please do not modify this file directly // //------------------------------------------------------------------------------ -#define FastNewPX_AllowUnsafeImplementation #nullable enable using System; using System.Collections.Generic; @@ -18,15 +17,15 @@ namespace @FastGenericNew { [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)] - internal static partial class ThrowHelper + internal static partial class FastNewThrowHelper { [global::System.Runtime.CompilerServices.MethodImpl(global::System.Runtime.CompilerServices.MethodImplOptions.NoInlining | global::System.Runtime.CompilerServices.MethodImplOptions.NoOptimization)] #if NET5_0_OR_GREATER - [global::System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute("SmartThrowImpl``1()", typeof(global::@FastGenericNew.ThrowHelper))] + [global::System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute("SmartThrowImpl``1()", typeof(global::@FastGenericNew.FastNewThrowHelper))] #endif - public static global::System.Reflection.MethodInfo GetSmartThrow() => typeof(global::@FastGenericNew.ThrowHelper).GetMethod("SmartThrowImpl", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static)!.MakeGenericMethod(typeof(T)); + public static global::System.Reflection.MethodInfo GetSmartThrow() => typeof(global::@FastGenericNew.FastNewThrowHelper).GetMethod("SmartThrowImpl", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static)!.MakeGenericMethod(typeof(T)); [global::System.Runtime.CompilerServices.MethodImpl(global::System.Runtime.CompilerServices.MethodImplOptions.NoInlining | global::System.Runtime.CompilerServices.MethodImplOptions.NoOptimization)] public static T SmartThrowImpl()