using StardewModdingAPI.Events;
namespace StardewModdingAPI.Framework.ModLoading
{
/// Indicates how an instruction was handled.
internal enum InstructionHandleResult
{
/// No special handling is needed.
None,
/// The instruction was successfully rewritten for compatibility.
Rewritten,
/// The instruction is not compatible and can't be rewritten for compatibility.
NotCompatible,
/// The instruction is compatible, but patches the game in a way that may impact stability.
DetectedGamePatch,
/// The instruction is compatible, but affects the save serializer in a way that may make saves unloadable without the mod.
DetectedSaveSerializer,
/// The instruction is compatible, but uses the dynamic keyword which won't work on Linux/macOS.
DetectedDynamic,
/// The instruction is compatible, but references or which may impact stability.
DetectedUnvalidatedUpdateTick,
/// The instruction accesses the SMAPI console directly.
DetectedConsoleAccess,
/// The instruction accesses the filesystem directly.
DetectedFilesystemAccess,
/// The instruction accesses the OS shell or processes directly.
DetectedShellAccess
}
}