summaryrefslogtreecommitdiff
path: root/src/StardewModdingAPI.AssemblyRewriters/IInstructionFinder.cs
blob: cc3006b91ff8ae4e27c76ed659c64a9bdb3aa6f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using Mono.Cecil.Cil;

namespace StardewModdingAPI.AssemblyRewriters
{
    /// <summary>Finds CIL instructions considered incompatible.</summary>
    public interface IInstructionFinder
    {
        /*********
        ** Accessors
        *********/
        /// <summary>A brief noun phrase indicating what the instruction finder matches.</summary>
        string NounPhrase { get; }


        /*********
        ** Methods
        *********/
        /// <summary>Get whether a CIL instruction matches.</summary>
        /// <param name="instruction">The IL instruction.</param>
        /// <param name="platformChanged">Whether the mod was compiled on a different platform.</param>
        bool IsMatch(Instruction instruction, bool platformChanged);
    }
}