CodeFunction.FunctionKind - свойство
Обновлен: Ноябрь 2007
Возвращает перечисление, описывающее, как используется функция.
Пространство имен: EnvDTE
Сборка: EnvDTE (в EnvDTE.dll)
Синтаксис
'Декларация
ReadOnly Property FunctionKind As vsCMFunction
'Применение
Dim instance As CodeFunction
Dim value As vsCMFunction
value = instance.FunctionKind
vsCMFunction FunctionKind { get; }
property vsCMFunction FunctionKind {
vsCMFunction get ();
}
function get FunctionKind () : vsCMFunction
Значение свойства
Тип: EnvDTE.vsCMFunction
Значение vsCMFunction.
Заметки
FunctionKind возвращает тип функции, например, возврат значения свойства, установка значения свойства, процедура или функция.
Предполагается, что к значениям vsCMFunction будет применена побитовая операция ИЛИ. 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);
}
}
Разрешения
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.
См. также
Ссылки
Другие ресурсы
Практическое руководство. Компиляция и выполнение примеров кода модели объектов автоматизации
Практическое руководство. Поиск кода при помощи модели кода (Visual Basic)
Практическое руководство. Поиск кода при помощи модели кода (Visual C#)