diff options
author | Jesse Plamondon-Willard <Pathoschild@users.noreply.github.com> | 2021-07-11 01:44:02 -0400 |
---|---|---|
committer | Jesse Plamondon-Willard <Pathoschild@users.noreply.github.com> | 2021-07-11 01:44:02 -0400 |
commit | bd20c2e1375ed5e32315ef5e292802bccc42f530 (patch) | |
tree | 32f30b832d9bf41af3391c75463247ac262e89b7 | |
parent | 8f96a97f070d654764de3b138678d8f62707f485 (diff) | |
download | SMAPI-bd20c2e1375ed5e32315ef5e292802bccc42f530.tar.gz SMAPI-bd20c2e1375ed5e32315ef5e292802bccc42f530.tar.bz2 SMAPI-bd20c2e1375ed5e32315ef5e292802bccc42f530.zip |
alias Mono.Cecil references (#711)
This is needed to migrate to Harmony 2.0 because it uses MonoMod, which has a copy of Mono.Cecil merged into its assembly, which leads to "type X exists in both 0Harmony.dll and Mono.Cecil.dll" errors. We can't use the version bundled with MonoMod since only some of the types are publicly accessible.
24 files changed, 89 insertions, 41 deletions
diff --git a/src/SMAPI/Framework/ModLoading/AssemblyDefinitionResolver.cs b/src/SMAPI/Framework/ModLoading/AssemblyDefinitionResolver.cs index aefb0126..9867ed8b 100644 --- a/src/SMAPI/Framework/ModLoading/AssemblyDefinitionResolver.cs +++ b/src/SMAPI/Framework/ModLoading/AssemblyDefinitionResolver.cs @@ -1,5 +1,7 @@ +extern alias MonoCecilPackage; + using System.Collections.Generic; -using Mono.Cecil; +using MonoCecilPackage.Mono.Cecil; namespace StardewModdingAPI.Framework.ModLoading { diff --git a/src/SMAPI/Framework/ModLoading/AssemblyLoader.cs b/src/SMAPI/Framework/ModLoading/AssemblyLoader.cs index 3606eb66..8311a4b9 100644 --- a/src/SMAPI/Framework/ModLoading/AssemblyLoader.cs +++ b/src/SMAPI/Framework/ModLoading/AssemblyLoader.cs @@ -1,10 +1,12 @@ +extern alias MonoCecilPackage; + using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.Exceptions; using StardewModdingAPI.Framework.ModLoading.Framework; using StardewModdingAPI.Metadata; diff --git a/src/SMAPI/Framework/ModLoading/AssemblyParseResult.cs b/src/SMAPI/Framework/ModLoading/AssemblyParseResult.cs index b56a776c..6493ccf8 100644 --- a/src/SMAPI/Framework/ModLoading/AssemblyParseResult.cs +++ b/src/SMAPI/Framework/ModLoading/AssemblyParseResult.cs @@ -1,5 +1,7 @@ +extern alias MonoCecilPackage; + using System.IO; -using Mono.Cecil; +using MonoCecilPackage.Mono.Cecil; namespace StardewModdingAPI.Framework.ModLoading { diff --git a/src/SMAPI/Framework/ModLoading/Finders/EventFinder.cs b/src/SMAPI/Framework/ModLoading/Finders/EventFinder.cs index 01ed153b..2e349616 100644 --- a/src/SMAPI/Framework/ModLoading/Finders/EventFinder.cs +++ b/src/SMAPI/Framework/ModLoading/Finders/EventFinder.cs @@ -1,5 +1,7 @@ -using Mono.Cecil; -using Mono.Cecil.Cil; +extern alias MonoCecilPackage; + +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Finders diff --git a/src/SMAPI/Framework/ModLoading/Finders/FieldFinder.cs b/src/SMAPI/Framework/ModLoading/Finders/FieldFinder.cs index 2c062243..434ff5ab 100644 --- a/src/SMAPI/Framework/ModLoading/Finders/FieldFinder.cs +++ b/src/SMAPI/Framework/ModLoading/Finders/FieldFinder.cs @@ -1,5 +1,7 @@ -using Mono.Cecil; -using Mono.Cecil.Cil; +extern alias MonoCecilPackage; + +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Finders diff --git a/src/SMAPI/Framework/ModLoading/Finders/MethodFinder.cs b/src/SMAPI/Framework/ModLoading/Finders/MethodFinder.cs index d2340f01..80229155 100644 --- a/src/SMAPI/Framework/ModLoading/Finders/MethodFinder.cs +++ b/src/SMAPI/Framework/ModLoading/Finders/MethodFinder.cs @@ -1,5 +1,7 @@ -using Mono.Cecil; -using Mono.Cecil.Cil; +extern alias MonoCecilPackage; + +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Finders diff --git a/src/SMAPI/Framework/ModLoading/Finders/PropertyFinder.cs b/src/SMAPI/Framework/ModLoading/Finders/PropertyFinder.cs index 99344848..5ef66df4 100644 --- a/src/SMAPI/Framework/ModLoading/Finders/PropertyFinder.cs +++ b/src/SMAPI/Framework/ModLoading/Finders/PropertyFinder.cs @@ -1,5 +1,7 @@ -using Mono.Cecil; -using Mono.Cecil.Cil; +extern alias MonoCecilPackage; + +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Finders diff --git a/src/SMAPI/Framework/ModLoading/Finders/ReferenceToMemberWithUnexpectedTypeFinder.cs b/src/SMAPI/Framework/ModLoading/Finders/ReferenceToMemberWithUnexpectedTypeFinder.cs index b01a3240..80296e38 100644 --- a/src/SMAPI/Framework/ModLoading/Finders/ReferenceToMemberWithUnexpectedTypeFinder.cs +++ b/src/SMAPI/Framework/ModLoading/Finders/ReferenceToMemberWithUnexpectedTypeFinder.cs @@ -1,7 +1,9 @@ +extern alias MonoCecilPackage; + using System.Collections.Generic; using System.Linq; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Finders diff --git a/src/SMAPI/Framework/ModLoading/Finders/ReferenceToMissingMemberFinder.cs b/src/SMAPI/Framework/ModLoading/Finders/ReferenceToMissingMemberFinder.cs index b64a255e..fae8ee95 100644 --- a/src/SMAPI/Framework/ModLoading/Finders/ReferenceToMissingMemberFinder.cs +++ b/src/SMAPI/Framework/ModLoading/Finders/ReferenceToMissingMemberFinder.cs @@ -1,6 +1,8 @@ +extern alias MonoCecilPackage; + using System.Collections.Generic; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Finders diff --git a/src/SMAPI/Framework/ModLoading/Finders/TypeAssemblyFinder.cs b/src/SMAPI/Framework/ModLoading/Finders/TypeAssemblyFinder.cs index 24ab2eca..3e107b90 100644 --- a/src/SMAPI/Framework/ModLoading/Finders/TypeAssemblyFinder.cs +++ b/src/SMAPI/Framework/ModLoading/Finders/TypeAssemblyFinder.cs @@ -1,5 +1,7 @@ +extern alias MonoCecilPackage; + using System; -using Mono.Cecil; +using MonoCecilPackage.Mono.Cecil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Finders diff --git a/src/SMAPI/Framework/ModLoading/Finders/TypeFinder.cs b/src/SMAPI/Framework/ModLoading/Finders/TypeFinder.cs index bbd081e8..9453c39f 100644 --- a/src/SMAPI/Framework/ModLoading/Finders/TypeFinder.cs +++ b/src/SMAPI/Framework/ModLoading/Finders/TypeFinder.cs @@ -1,5 +1,7 @@ +extern alias MonoCecilPackage; + using System; -using Mono.Cecil; +using MonoCecilPackage.Mono.Cecil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Finders diff --git a/src/SMAPI/Framework/ModLoading/Framework/BaseInstructionHandler.cs b/src/SMAPI/Framework/ModLoading/Framework/BaseInstructionHandler.cs index 624113b3..3979d431 100644 --- a/src/SMAPI/Framework/ModLoading/Framework/BaseInstructionHandler.cs +++ b/src/SMAPI/Framework/ModLoading/Framework/BaseInstructionHandler.cs @@ -1,7 +1,9 @@ +extern alias MonoCecilPackage; + using System; using System.Collections.Generic; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; namespace StardewModdingAPI.Framework.ModLoading.Framework { diff --git a/src/SMAPI/Framework/ModLoading/Framework/RecursiveRewriter.cs b/src/SMAPI/Framework/ModLoading/Framework/RecursiveRewriter.cs index 10f68f0d..e79bb488 100644 --- a/src/SMAPI/Framework/ModLoading/Framework/RecursiveRewriter.cs +++ b/src/SMAPI/Framework/ModLoading/Framework/RecursiveRewriter.cs @@ -1,9 +1,11 @@ +extern alias MonoCecilPackage; + using System; using System.Collections.Generic; using System.Linq; -using Mono.Cecil; -using Mono.Cecil.Cil; -using Mono.Collections.Generic; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Collections.Generic; namespace StardewModdingAPI.Framework.ModLoading.Framework { diff --git a/src/SMAPI/Framework/ModLoading/Framework/RewriteHelper.cs b/src/SMAPI/Framework/ModLoading/Framework/RewriteHelper.cs index 60bbd2c7..e88b75ed 100644 --- a/src/SMAPI/Framework/ModLoading/Framework/RewriteHelper.cs +++ b/src/SMAPI/Framework/ModLoading/Framework/RewriteHelper.cs @@ -1,8 +1,10 @@ +extern alias MonoCecilPackage; + using System; using System.Linq; using System.Reflection; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage::Mono.Cecil; +using MonoCecilPackage::Mono.Cecil.Cil; namespace StardewModdingAPI.Framework.ModLoading.Framework { diff --git a/src/SMAPI/Framework/ModLoading/IInstructionHandler.cs b/src/SMAPI/Framework/ModLoading/IInstructionHandler.cs index 17c9ba68..342721cd 100644 --- a/src/SMAPI/Framework/ModLoading/IInstructionHandler.cs +++ b/src/SMAPI/Framework/ModLoading/IInstructionHandler.cs @@ -1,7 +1,9 @@ +extern alias MonoCecilPackage; + using System; using System.Collections.Generic; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; namespace StardewModdingAPI.Framework.ModLoading { diff --git a/src/SMAPI/Framework/ModLoading/PlatformAssemblyMap.cs b/src/SMAPI/Framework/ModLoading/PlatformAssemblyMap.cs index d4366294..ee123e75 100644 --- a/src/SMAPI/Framework/ModLoading/PlatformAssemblyMap.cs +++ b/src/SMAPI/Framework/ModLoading/PlatformAssemblyMap.cs @@ -1,8 +1,10 @@ +extern alias MonoCecilPackage; + using System; using System.Collections.Generic; using System.Linq; using System.Reflection; -using Mono.Cecil; +using MonoCecilPackage.Mono.Cecil; using StardewModdingAPI.Toolkit.Utilities; namespace StardewModdingAPI.Framework.ModLoading diff --git a/src/SMAPI/Framework/ModLoading/Rewriters/FieldReplaceRewriter.cs b/src/SMAPI/Framework/ModLoading/Rewriters/FieldReplaceRewriter.cs index 0b679e9d..d40d4111 100644 --- a/src/SMAPI/Framework/ModLoading/Rewriters/FieldReplaceRewriter.cs +++ b/src/SMAPI/Framework/ModLoading/Rewriters/FieldReplaceRewriter.cs @@ -1,7 +1,9 @@ +extern alias MonoCecilPackage; + using System; using System.Reflection; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Rewriters diff --git a/src/SMAPI/Framework/ModLoading/Rewriters/Harmony1AssemblyRewriter.cs b/src/SMAPI/Framework/ModLoading/Rewriters/Harmony1AssemblyRewriter.cs index 4b3675bc..147a12f9 100644 --- a/src/SMAPI/Framework/ModLoading/Rewriters/Harmony1AssemblyRewriter.cs +++ b/src/SMAPI/Framework/ModLoading/Rewriters/Harmony1AssemblyRewriter.cs @@ -1,8 +1,10 @@ #if HARMONY_2 +extern alias MonoCecilPackage; + using System; using HarmonyLib; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; using StardewModdingAPI.Framework.ModLoading.RewriteFacades; diff --git a/src/SMAPI/Framework/ModLoading/Rewriters/HeuristicFieldRewriter.cs b/src/SMAPI/Framework/ModLoading/Rewriters/HeuristicFieldRewriter.cs index f59a6ab1..c381e4e5 100644 --- a/src/SMAPI/Framework/ModLoading/Rewriters/HeuristicFieldRewriter.cs +++ b/src/SMAPI/Framework/ModLoading/Rewriters/HeuristicFieldRewriter.cs @@ -1,7 +1,9 @@ +extern alias MonoCecilPackage; + using System.Collections.Generic; using System.Linq; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Rewriters diff --git a/src/SMAPI/Framework/ModLoading/Rewriters/HeuristicMethodRewriter.cs b/src/SMAPI/Framework/ModLoading/Rewriters/HeuristicMethodRewriter.cs index e133b6fa..748c1e6f 100644 --- a/src/SMAPI/Framework/ModLoading/Rewriters/HeuristicMethodRewriter.cs +++ b/src/SMAPI/Framework/ModLoading/Rewriters/HeuristicMethodRewriter.cs @@ -1,7 +1,9 @@ +extern alias MonoCecilPackage; + using System.Collections.Generic; using System.Linq; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Rewriters diff --git a/src/SMAPI/Framework/ModLoading/Rewriters/MethodParentRewriter.cs b/src/SMAPI/Framework/ModLoading/Rewriters/MethodParentRewriter.cs index 9933e2ca..5e0d9c70 100644 --- a/src/SMAPI/Framework/ModLoading/Rewriters/MethodParentRewriter.cs +++ b/src/SMAPI/Framework/ModLoading/Rewriters/MethodParentRewriter.cs @@ -1,7 +1,9 @@ +extern alias MonoCecilPackage; + using System; using System.Linq; -using Mono.Cecil; -using Mono.Cecil.Cil; +using MonoCecilPackage.Mono.Cecil; +using MonoCecilPackage.Mono.Cecil.Cil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Rewriters diff --git a/src/SMAPI/Framework/ModLoading/Rewriters/TypeReferenceRewriter.cs b/src/SMAPI/Framework/ModLoading/Rewriters/TypeReferenceRewriter.cs index ad5cb96f..a4d09ae9 100644 --- a/src/SMAPI/Framework/ModLoading/Rewriters/TypeReferenceRewriter.cs +++ b/src/SMAPI/Framework/ModLoading/Rewriters/TypeReferenceRewriter.cs @@ -1,5 +1,7 @@ +extern alias MonoCecilPackage; + using System; -using Mono.Cecil; +using MonoCecilPackage.Mono.Cecil; using StardewModdingAPI.Framework.ModLoading.Framework; namespace StardewModdingAPI.Framework.ModLoading.Rewriters diff --git a/src/SMAPI/Framework/ModLoading/TypeReferenceComparer.cs b/src/SMAPI/Framework/ModLoading/TypeReferenceComparer.cs index a4ac54e2..fab424f3 100644 --- a/src/SMAPI/Framework/ModLoading/TypeReferenceComparer.cs +++ b/src/SMAPI/Framework/ModLoading/TypeReferenceComparer.cs @@ -1,7 +1,9 @@ +extern alias MonoCecilPackage; + using System; using System.Collections.Generic; using System.Linq; -using Mono.Cecil; +using MonoCecilPackage.Mono.Cecil; namespace StardewModdingAPI.Framework.ModLoading { diff --git a/src/SMAPI/SMAPI.csproj b/src/SMAPI/SMAPI.csproj index 413d9f33..d36d0d7a 100644 --- a/src/SMAPI/SMAPI.csproj +++ b/src/SMAPI/SMAPI.csproj @@ -20,7 +20,9 @@ <ItemGroup> <PackageReference Include="LargeAddressAware" Version="1.0.5" /> - <PackageReference Include="Mono.Cecil" Version="0.11.3" /> + <PackageReference Include="Mono.Cecil" Version="0.11.3"> + <Aliases>MonoCecilPackage</Aliases> + </PackageReference> <PackageReference Include="Newtonsoft.Json" Version="12.0.3" /> <PackageReference Include="Platonymous.TMXTile" Version="1.5.8" /> </ItemGroup> |