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 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,
#if SMAPI_DEPRECATED
/// The module references the legacy System.Configuration.ConfigurationManager assembly and doesn't include a copy in the mod folder, so it'll break in SMAPI 4.0.0.
DetectedLegacyConfigurationDll,
/// The module references the legacy System.Runtime.Caching assembly and doesn't include a copy in the mod folder, so it'll break in SMAPI 4.0.0.
DetectedLegacyCachingDll,
/// The module references the legacy System.Security.Permissions assembly and doesn't include a copy in the mod folder, so it'll break in SMAPI 4.0.0.
DetectedLegacyPermissionsDll
#endif
}
}