using Mono.Cecil; using Mono.Cecil.Cil; namespace StardewModdingAPI.AssemblyRewriters { /// Rewrites a method for compatibility. public interface IMethodRewriter { /// Get whether the given method reference can be rewritten. /// The method reference. bool ShouldRewrite(MethodReference methodRef); /// Rewrite a method for compatibility. /// The module being rewritten. /// The CIL rewriter. /// The instruction which calls the method. /// The method reference invoked by the . /// Metadata for mapping assemblies to the current platform. void Rewrite(ModuleDefinition module, ILProcessor cil, Instruction callOp, MethodReference methodRef, PlatformAssemblyMap assemblyMap); } }