Abstract out ParameterBuilder and implement it (#85446)
authorBuyaa Namnan <bunamnan@microsoft.com>
Fri, 28 Apr 2023 17:43:06 +0000 (10:43 -0700)
committerGitHub <noreply@github.com>
Fri, 28 Apr 2023 17:43:06 +0000 (10:43 -0700)
commitdd95ed8d4cf0878a6d9b200d2d8cf674388d6bf7
tree47cf7d01115f0ed98169415b64f3bc9e55a75336
parentda75e6d37576a51d588f0126c42814aa886a72e3
Abstract out ParameterBuilder and implement it (#85446)

* Save parameters into assembly and test it

* Add MarshalAs pseduo attribute handling and other refactoring

* Apply suggestions from code review

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
---------

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
23 files changed:
src/coreclr/System.Private.CoreLib/System.Private.CoreLib.csproj
src/coreclr/System.Private.CoreLib/src/System/Reflection/Emit/RuntimeMethodBuilder.cs
src/coreclr/System.Private.CoreLib/src/System/Reflection/Emit/RuntimeParameterBuilder.cs [moved from src/coreclr/System.Private.CoreLib/src/System/Reflection/Emit/ParameterBuilder.cs with 61% similarity]
src/coreclr/nativeaot/System.Private.CoreLib/src/System.Private.CoreLib.csproj
src/coreclr/nativeaot/System.Private.CoreLib/src/System/Reflection/Emit/ParameterBuilder.cs [deleted file]
src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems
src/libraries/System.Private.CoreLib/src/System/Reflection/Emit/ParameterBuilder.cs [new file with mode: 0644]
src/libraries/System.Reflection.Emit.ILGeneration/ref/System.Reflection.Emit.ILGeneration.cs
src/libraries/System.Reflection.Emit/src/Resources/Strings.resx
src/libraries/System.Reflection.Emit/src/System.Reflection.Emit.csproj
src/libraries/System.Reflection.Emit/src/System/Reflection/Emit/CustomAttributeWrapper.cs
src/libraries/System.Reflection.Emit/src/System/Reflection/Emit/FieldBuilderImpl.cs
src/libraries/System.Reflection.Emit/src/System/Reflection/Emit/MethodBuilderImpl.cs
src/libraries/System.Reflection.Emit/src/System/Reflection/Emit/ModuleBuilderImpl.cs
src/libraries/System.Reflection.Emit/src/System/Reflection/Emit/ParameterBuilderImpl.cs [new file with mode: 0644]
src/libraries/System.Reflection.Emit/src/System/Reflection/Emit/PseudoCustomAttributesData.cs [new file with mode: 0644]
src/libraries/System.Reflection.Emit/tests/PersistableAssemblyBuilder/AssemblySaveCustomAttributeTests.cs
src/libraries/System.Reflection.Emit/tests/PersistableAssemblyBuilder/AssemblySaveWithVariousMembersTests.cs
src/libraries/System.Reflection.Emit/tests/PersistableAssemblyBuilder/AssemblyTools.cs
src/mono/System.Private.CoreLib/System.Private.CoreLib.csproj
src/mono/System.Private.CoreLib/src/System/Reflection/Emit/RuntimeConstructorBuilder.Mono.cs
src/mono/System.Private.CoreLib/src/System/Reflection/Emit/RuntimeMethodBuilder.Mono.cs
src/mono/System.Private.CoreLib/src/System/Reflection/Emit/RuntimeParameterBuilder.Mono.cs [moved from src/mono/System.Private.CoreLib/src/System/Reflection/Emit/ParameterBuilder.Mono.cs with 82% similarity]