Enum MethodImplAttributes
- Namespace
- AsmResolver.PE.DotNet.Metadata.Tables
- Assembly
- AsmResolver.PE.dll
Provides members defining all flags that dictate the implementation of a method body.
[Flags]
public enum MethodImplAttributes : ushortFields
- AggressiveInlining = 256
- Method should be inlined if possible. 
- AggressiveOptimization = 512
- Method may contain hot code and should be aggressively optimized. 
- CodeTypeMask = Native | OPTIL
- Provides a bitmask for obtaining the flags related to the code type of the method. 
- ForwardRef = 16
- Indicates the method is defined; used primarily in merge scenarios. 
- IL = 0
- Method implementation is IL. 
- InternalCall = 4096
- Reserved for internal use. 
- Managed = 0
- Method implementation is managed. 
- ManagedMask = 4
- Provides a bitmask for obtaining the flags specifying whether the code is managed or unmanaged. 
- Native = 1
- Method implementation is native. 
- NoInlining = 8
- Method may not be inlined. 
- NoOptimization = 64
- Method will not be optimized when generating native code. 
- OPTIL = 2
- Method implementation is OPTIL. 
- PreserveSig = 128
- Indicates the method signature is not to be mangled to do HRESULT conversion. 
- Runtime = Native | OPTIL
- Method implementation is provided by the runtime. 
- SecurityMitigations = Native | AggressiveOptimization
- Specifies that the JIT compiler should look for security mitigation attributes, such as the user-defined - System.Runtime.CompilerServices.SecurityMitigationsAttribute. If found, the JIT compiler applies any related security mitigations. Available starting with .NET Framework 4.8.- This is an undocumented flag and is currently not used: Original addition: https://github.com/dotnet/dotnet-api-docs/pull/2253 Documentation removal: https://github.com/dotnet/dotnet-api-docs/pull/4652 
- Synchronized = 32
- Method is single threaded through the body. 
- Unmanaged = 4
- Method implementation is unmanaged.