/Mono.Cecil/MethodImplAttributes.cs
C# | 36 lines | 21 code | 5 blank | 10 comment | 0 complexity | 3d45f1d9d071e3e93033ce75954334e2 MD5 | raw file
1// 2// Author: 3// Jb Evain (jbevain@gmail.com) 4// 5// Copyright (c) 2008 - 2015 Jb Evain 6// Copyright (c) 2008 - 2011 Novell, Inc. 7// 8// Licensed under the MIT/X11 license. 9// 10 11using System; 12 13namespace Mono.Cecil { 14 15 [Flags] 16 public enum MethodImplAttributes : ushort { 17 CodeTypeMask = 0x0003, 18 IL = 0x0000, // Method impl is CIL 19 Native = 0x0001, // Method impl is native 20 OPTIL = 0x0002, // Reserved: shall be zero in conforming implementations 21 Runtime = 0x0003, // Method impl is provided by the runtime 22 23 ManagedMask = 0x0004, // Flags specifying whether the code is managed or unmanaged 24 Unmanaged = 0x0004, // Method impl is unmanaged, otherwise managed 25 Managed = 0x0000, // Method impl is managed 26 27 // Implementation info and interop 28 ForwardRef = 0x0010, // Indicates method is defined; used primarily in merge scenarios 29 PreserveSig = 0x0080, // Reserved: conforming implementations may ignore 30 InternalCall = 0x1000, // Reserved: shall be zero in conforming implementations 31 Synchronized = 0x0020, // Method is single threaded through the body 32 NoOptimization = 0x0040, // Method is not optimized by the JIT. 33 NoInlining = 0x0008, // Method may not be inlined 34 AggressiveInlining = 0x0100, // Method should be inlined, if possible. 35 } 36}