Compartir a través de


MethodDefinitions Extent (System_Runtime Module)

[This content is no longer valid. For the latest information on "M", "Quadrant", SQL Server Modeling Services, and the Repository, see the Model Citizen blog.]

Stores method definitions. This is a specialized extent in the Methods/MethodDefinitions/MethodReferences hierarchy.

Fields

The following table lists the fields in the MethodDefinitions extent.

Column Type Required Description

Folder

FoldersTable

yes

The Modeling Services Folder that is associated with the method definition.

Id

Methods

yes

The identifier of the method definition.

Access

Integer16

yes

An enumeration value between 0 and 6 that describes the access restrictions for the method. These numeric values are equivalent to compiler, private, family and assembly, assembly, family, family or assembly, and public, respectively.

IsAbstract

Logical

yes

A bit flag that indicates that the method is abstract.

IsStatic

Logical

yes

A bit flag that indicates that the method is static.

IsVirtual

Logical

yes

A bit flag that indicates that the method is virtual.

IsFinal

Logical

yes

A bit flag that indicates that the method is final, meaning that this method cannot be overridden in derived classes.

IsNew

Logical

yes

A bit flag that specifies that the method will get a new slot in the virtual method table.

IsToolSpecialName

Logical

yes

A bit flag that specifies that the method name is special and has a reserved use by tools other than the common language runtime.

IsRuntimeSpecialName

Logical

yes

A bit flag that specifies that the method name is special and has a reserved use by the common language runtime.

HidesByNameOnly

Logical

yes

A bit flag that specifies that development tools should hide methods of the base class that match the name only, regardless of the method signature. When this flag is set to 0, methods are hidden based on the method signature.

IsPInvokeImplementation

Logical

yes

A bit flag that indicates that the implementation is forwarded through Platform Invoke to an unmanaged method.

IsSingleThreaded

Logical

yes

A bit flag that specifies that the body of the method is single-threaded.

NoInlining

Logical

yes

A bit flag that specifies that this method should not be included directly into the code of any caller methods.

ReturnType

TypeSignatures

The return type signature of the method.

ReturnTypeIsByRef

Logical

yes

A bit flag that indicates that the return type is passed by reference.

ReturnTypeIsModified

Logical

yes

A bit flag that indicates that the return type has custom modifiers applied to it. If so, there may be corresponding entries in [System_Runtime].[ReturnTypeCustomModifiers].

ReturnTypeMarshaledAs

Text

Specifies what unmanaged type the method return type should be marshaled as. If a custom marshaler is specified, this field contains the name of the custom marshaler and its cookie.

ReturnTypeMarshaledArrayElementType

Text

If the return type is marshaled as an ECMA-335 native array (LPArray), this will contain its element type, in the same format as MarshaledAs.

ReturnTypeMarshaledArraySizeParameterIndex

Integer32

The index to the parameter in the method that provides the number of elements in a marshaled ECMA-335 native array (LPArray).

ReturnTypeMarshaledArraySizeConst

Integer32

The number of elements in a marshaled ECMA-335 native array (LPArray).

Kind

Integer16

yes

An enumeration value between 1 and 9 that describes the kind of the method. These numeric values are equivalent to "set property", "get property", "other property", "add event handler", "remove event handler", "raise event", "other event", "constructor", and "other". Note that this is not yet populated by the LoadAssembly.exe tool.

CallingConvention

Integer16

yes

An enumeration value between 1 and 6 that describes the calling convention used by this method. These numeric values are equivalent to default, unmanaged cdecl, unmanaged fastcall, unmanaged stdcall, unmanaged thiscall, and variable arguments.

Documentation

Text

The XML Document fragment for the method. Note that this is not yet populated by the LoadAssembly.exe tool.

Attributes

Text

The custom attributes for the method. Note that this is not yet populated by the LoadAssembly.exe tool.

Code

Text

The reverse-engineered source code in the method body. Note that this is not yet populated by the LoadAssembly.exe tool.

Instructions

Text

The list of CIL instructions in the method body. Note that this is not yet populated by the LoadAssembly.exe tool.

Remarks

To work with this extent in the SQL Server Modeling Services, see MethodDefinitions Table (System_Runtime Schema).

See Also

Reference

System_Runtime Extents
System_Runtime Module

Send comments about this topic to Microsoft.