CodeFunction.FunctionKind - свойство
Возвращает перечисление, описывающее способ использования функции.
Пространство имен: EnvDTE
Сборка: EnvDTE (в EnvDTE.dll)
Синтаксис
'Декларация
ReadOnly Property FunctionKind As vsCMFunction
vsCMFunction FunctionKind { get; }
property vsCMFunction FunctionKind {
vsCMFunction get ();
}
abstract FunctionKind : vsCMFunction with get
function get FunctionKind () : vsCMFunction
Значение свойства
Тип: EnvDTE.vsCMFunction
Значение vsCMFunction.
Заметки
FunctionKind возвращает тип функции, например, возврат значения свойства, установка значения свойства, процедура или функция.
Предполагается, что к значениям vsCMFunction будет применена побитовая операция OR (ИЛИ). Visual C++ объединяет несколько из этих значений, чтобы точно описать функцию. Например, virtual int MyProc() const = 0;.
MyProc приводит к значению (vsCMFunctionFunction | vsCMFunctionVirtual | vsCMFunctionConstant | vsCMFunctionPure | vsCMFunctionTopLevel).
Другой пример: inline void AnotherOne().
В результате получается значение (vsCMFunctionSub | vsCMFunctionInline, vsCMFunctionTopLevel).
Примечание
Значения элементов модели кода, таких как классы, структуры, функции, атрибуты, делегаты и другие, после внесения некоторых изменений могут оказаться недетерминированными, другими словами, нельзя рассчитывать, что их значения будут всегда оставаться одинаковыми.Дополнительные сведения см. в разделе "Значения элементов модели кода могут изменяться" в разделе Практическое руководство. Поиск кода при помощи модели кода (Visual Basic).
Примеры
Sub FunctionKindExample(ByVal dte As DTE2)
' Before running this example, open a code document from a project
' and place the insertion point inside a function.
Try
' Retrieve the CodeFunction at the insertion point.
Dim sel As TextSelection = _
CType(dte.ActiveDocument.Selection, TextSelection)
Dim fun As CodeFunction = _
CType(sel.ActivePoint.CodeElement( _
vsCMElement.vsCMElementFunction), CodeFunction)
MsgBox(fun.Name & "'s kind is " & fun.FunctionKind.ToString())
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
public void FunctionKindExample(DTE2 dte)
{
// Before running this example, open a code document from a project
// and place the insertion point inside a function.
try
{
// Retrieve the CodeFunction at the insertion point.
TextSelection sel =
(TextSelection)dte.ActiveDocument.Selection;
CodeFunction fun =
(CodeFunction)sel.ActivePoint.get_CodeElement(
vsCMElement.vsCMElementFunction);
MessageBox.Show(fun.Name + "'s kind is " +
fun.FunctionKind.ToString());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Безопасность платформы .NET Framework
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Для получения дополнительной информации см. Использование библиотек из не вполне надежного кода.
См. также
Ссылки
Другие ресурсы
Практическое руководство. Компиляция и выполнение примеров кода модели объектов автоматизации
Практическое руководство. Поиск кода при помощи модели кода (Visual Basic)
Практическое руководство. Поиск кода при помощи модели кода (Visual C#)