VCCodeFunction Interface
An object defining a function construct in a source file.
Namespace: Microsoft.VisualStudio.VCCodeModel
Assembly: Microsoft.VisualStudio.VCCodeModel (in Microsoft.VisualStudio.VCCodeModel.dll)
Syntax
'Declaration
<GuidAttribute("374A86A9-18BC-47F6-A273-87DDE5AB8670")> _
Public Interface VCCodeFunction
[GuidAttribute("374A86A9-18BC-47F6-A273-87DDE5AB8670")]
public interface VCCodeFunction
[GuidAttribute(L"374A86A9-18BC-47F6-A273-87DDE5AB8670")]
public interface class VCCodeFunction
[<GuidAttribute("374A86A9-18BC-47F6-A273-87DDE5AB8670")>]
type VCCodeFunction = interface end
public interface VCCodeFunction
The VCCodeFunction type exposes the following members.
Properties
Name | Description | |
---|---|---|
Access | Gets or sets the access attributes of this item. | |
Attributes | Gets a collection of all of the attributes for the parent object. | |
BodyText | Gets or sets the body text of the parent object. | |
CanOverride | Gets or sets a value indicating whether or not the function can be overridden. | |
Children | Gets a collection of objects contained within this code construct. | |
CodeModel | Gets the VCCodeModel object for the project. | |
Collection | Gets the collection containing the object supporting this property or contained within this code construct. | |
Comment | Gets or sets the comment associated with the code element. | |
DeclarationText | Gets or sets the declaration of the object. | |
DisplayName | Gets the name used in the user interface for this output group. | |
DocComment | Gets or sets the document comment for the current code model element. | |
DTE | Gets the top-level extensibility object. | |
EndPoint | Gets the edit point that is the location of the end of the code item. | |
EndPointOf | Gets the end point of the parent object. | |
Extender | Gets the requested Extender object if it is available for this object. | |
ExtenderCATID | Gets the Extender category ID (CATID) for the object. | |
ExtenderNames | Gets a list of available Extenders for the object. | |
File | Gets the file where this object is defined. | |
FullName | Gets the full path and name of the object's file. | |
FunctionKind | Gets an enumeration describing how a function is used. | |
InfoLocation | Gets the capabilities of the code model. | |
IsCaseSensitive | Gets a value indicating whether a code element is case-sensitive. | |
IsCodeType | Gets a value indicating whether a CodeType object can be obtained from this object. | |
IsConstant | Gets or sets a value indicating whether or not the item is a constant. | |
IsInjected | Gets a value indicating if a code element has been injected by an attribute or macro expansion. | |
IsInline | Gets or sets the inline property of the function object. | |
IsOverloaded | Gets a value indicating whether or not a function is overloaded. | |
IsReadOnly | Gets a value indicating whether the file containing the parent object is read-only. | |
IsSealed | Sets or gets the IsSealed keyword on a function. | |
IsShared | Gets or sets a value indicating whether or not the item is statically defined, that is, if the item is common to all instances of this object type, or only to this object specifically. | |
IsTemplate | Gets a value indicating whether the parent object is a template. | |
IsVirtual | Gets or sets a value indicating whether the parent object is virtual. | |
IsZombie | Gets a value indicating whether the object exists. | |
Kind | Gets an enumeration value indicating the type of object. | |
Language | Gets the programming language used to author the code. | |
Location | Gets the location of the object declaration. | |
MustImplement | Gets or sets a value indicating whether or not the item is declared abstract and thus requires an implementation. | |
Name | Gets or sets the name of the object. | |
Namespace | Gets an object defining the namespace. | |
Overloads | Gets a collection of overloaded methods for this item. | |
Parameters | Gets a collection of parameters for this item. | |
Parent | Gets the immediate parent object of a given object. | |
Picture | Gets a picture automation object to be used as an icon in the user interface. | |
Project | Gets the Project associated with the object. | |
ProjectItem | Gets the ProjectItem object associated with the given object. | |
Prototype | Gets a string holding the stub definition of this object. | |
References | Not currently implemented. | |
StartPoint | Gets a TextPoint object that defines the beginning of the code item. | |
StartPointOf | Gets the start point of the parent object. | |
TemplateParameters | Gets a collection of parameters contained in a class template. | |
Templatizations | Infrastructure. Internal Microsoft Use Only. | |
Type | Gets or sets an object representing the programmatic type. | |
TypeString | Gets or sets the type of object using a string representation of the type. |
Top
Methods
Name | Description | |
---|---|---|
AddAttribute | Creates a new attribute code construct and inserts the code in the correct location. | |
AddInitializer | Adds a C++ initializer to a constructor's member initializer list. | |
AddParameter | Creates a new parameter code construct and inserts the code in the correct location. | |
AddTemplateParameter | Adds a parameter to a template definition. | |
GetEndPoint | Gets a TextPoint object that marks the end of the code element definition. | |
GetStartPoint | Gets a TextPoint object that defines the beginning of the code element definition. | |
IsSelf | Determines if the specified code element is the same as the parent code element. | |
RemoveParameter | Removes a parameter from the argument list. | |
RemoveTemplateParameter | Removes a parameter from a template definition. |
Top
Remarks
The VCCodeFunction object provides code model functionality to existing Visual C++ IDE solutions at the function level. Primarily, this object is used to access or modify an existing function construct.
Note
A large part of the functionality of this object is provided by the Visual Studio CodeFunction object. For more information, see CodeFunction object.
See How to: Compile Example Code for Visual C++ Code Model Extensibility for information on how to compile and run this sample.
Examples
This example retrieves all functions in the solution and displays the name of each.
Sub GetFunctions()
Dim vcCM as VCCodeModel
Dim vcFunc as VCCodeFunction
vcCM = DTE.Solution.Item(1).CodeModel
For Each vcFunc in vcCM.Functions
MsgBox(vcFunc.DisplayName)
End Sub