PageRenderTime 19ms CodeModel.GetById 16ms app.highlight 1ms RepoModel.GetById 1ms app.codeStats 1ms

/Mono.Cecil/MethodImplAttributes.cs

http://github.com/jbevain/cecil
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}