Table of Contents

Enum MethodAttributes

Namespace
AsmResolver.PE.DotNet.Metadata.Tables
Assembly
AsmResolver.PE.dll

Provides members defining all flags that can be assigned to a method definition.

[Flags]
public enum MethodAttributes : ushort

Fields

Abstract = 1024

Indicates the method is abstract and needs to be overridden in a derived class.

Assembly = Private | FamilyAndAssembly

Specifies the method can only be accessed by members in the same assembly.

CheckAccessOnOverride = 512

Indicates that the method can only be overridden when it is also accessible.

CompilerControlled = 0

Specifies the method can't be referenced.

Family = 4

Specifies that the method can only be accessed by this type and sub-types.

FamilyAndAssembly = 2

Specifies the method can only be accessed by sub-types in the same assembly.

FamilyOrAssembly = Private | Family

Specifies the method can only be accessed by sub-types and anyone in the assembly.

Final = 32

Specifies the method cannot be overridden.

HasSecurity = 16384

Specifies the method has security associate with it.

HideBySig = 128

Specifies the method is being distinguished by it's name + signature.

MemberAccessMask = Private | Public

Provides a bitmask for all flags related to member access.

NewSlot = 256

Specifies the method always gets a new slot in the vtable.

PInvokeImpl = 8192

Specifies that the method is an implementation that is being forwarded through PInvoke.

Private = 1

Specifies the method can only be accessed by its declaring type.

Public = FamilyAndAssembly | Family

Specifies the method can be accesed by anyone who has visibility to this scope.

RequireSecObject = 32768

Specifies the method calls another method containing security code.

ReuseSlot = 0

Specifies the method reuses an existing slot in vtable.

RuntimeSpecialName = 4096

Specifies that the runtime should check the name encoding.

SpecialName = 2048

Specifies that the method uses a special name.

Static = 16

Specifies the method can be accessed without requiring an instance.

UnmanagedExport = 8

Indicates that the managed method is exported by thunk to unmanaged code.

Virtual = 64

Specifies the method is virtual.

VtableLayoutMask = 256

Provides a bitmask for flags related to the vtable layout.