Table of Contents

Enum RuntimeFeature

Namespace
MonoMod.Core.Platforms
Assembly
MonoMod.Core.dll
A set of features which may be provided by an IRuntime implementation.
[Flags]
public enum RuntimeFeature
Extension Methods

Fields

None = 0
No features are provided.
PreciseGC = 1
This runtime uses (or may use) a precise GC, so object references and byrefs must not be stored e.g. as nints.
CompileMethodHook = 2
This runtime hooks the JIT, and invokes OnMethodCompiled.
ILDetour = 4
This runtime supports detouring natively.
GenericSharing = 8
This runtime uses generic sharing.
ListGenericInstantiations = 64
This runtime supports listing the instantiations of a generic method.
DisableInlining = 16
This runtime supports disabling inlining on methods, and implements DisableInlining(MethodBase).
Uninlining = 32
Thus runtime supports un-inlining previously inlined methods.
RequiresMethodPinning = 128
This runtime requires method pinning for detours to function reliably.
RequiresMethodIdentification = 256
This runtime requires method identification, and implements GetIdentifiable(MethodBase).
RequiresBodyThunkWalking = 512
This runtime requires method body thunk walking to find the actual method body.
HasKnownABI = 1024
This runtime has a known ABI.
RequiresCustomMethodCompile = 2048
This method requires a custom implementation to reliably compile methods, and implements Compile(MethodBase).,