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 |
yes |
The Modeling Services Folder that is associated with the method definition. |
|
Id |
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 |
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).