VCCodeStruct Interface
An object representing a structure code element in the source code of a solution.
Namespace: Microsoft.VisualStudio.VCCodeModel
Assembly: Microsoft.VisualStudio.VCCodeModel (in Microsoft.VisualStudio.VCCodeModel.dll)
Syntax
'Declaration
<GuidAttribute("B3B2B528-ECD5-4DD0-808F-07EB265A1FD8")> _
Public Interface VCCodeStruct
[GuidAttribute("B3B2B528-ECD5-4DD0-808F-07EB265A1FD8")]
public interface VCCodeStruct
[GuidAttribute(L"B3B2B528-ECD5-4DD0-808F-07EB265A1FD8")]
public interface class VCCodeStruct
[<GuidAttribute("B3B2B528-ECD5-4DD0-808F-07EB265A1FD8")>]
type VCCodeStruct = interface end
public interface VCCodeStruct
The VCCodeStruct type exposes the following members.
Properties
Name | Description | |
---|---|---|
Access | Defines the access attributes of this item. | |
Attributes | Gets a collection of all of the attributes for the parent object. | |
Bases | Gets a collection of classes from which this item derives. | |
BodyText | Gets or sets the body text of the object. | |
Children | Gets a collection of objects contained within this code construct. | |
Classes | Gets a collection of classes for the parent object. | |
CodeModel | Returns 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. | |
DerivedTypes | Gets a collection of objects derived from this object. | |
DisplayName | Gets the full name of the object. | |
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 object. | |
Enums | Gets a collection of enumerations for the object. | |
Events | Gets a collection of events for the object. | |
Extender | Returns 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. | |
Functions | Gets a collection of functions for the object. | |
ImplementedInterfaces | Gets a collection of interfaces implemented by this object. | |
InfoLocation | Describes the capabilities of the code model. | |
IsAbstract | Gets or sets a value indicating whether or not an item is declared as abstract. | |
IsCaseSensitive | Gets a value indicating if a code element is case-sensitive. | |
IsCodeType | Gets a value indicating whether a CodeType object can be obtained from this object. | |
IsDerivedFrom | Gets a value indicating whether an object has another object as a base. | |
IsInjected | Gets if a code element has been injected by an attribute or macro expansion. | |
IsManaged | Sets or gets if the object is managed. | |
IsReadOnly | Gets if the file containing the object is read-only. | |
IsSealed | Sets or gets if the __sealed keyword is applied to the parent object. | |
IsTemplate | Gets if the object is a template. | |
IsValue | Sets or gets if the __value keyword is applied to the object. | |
IsZombie | Gets if the object exists. | |
Kind | Gets an enumeration indicating the type of object. | |
Language | Gets the programming language used to author the code. | |
Location | Returns the location of the object declaration. | |
Members | Gets a collection of items contained by this element. | |
Name | Gets or sets the name of the object. | |
Namespace | Gets an object defining the parent namespace. | |
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. | |
Properties | Gets the collection of properties for the 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 object. | |
Structs | Gets the collection of structure elements for the object. | |
TemplateParameters | A collection of template parameters. | |
Templatizations | Infrastructure. Microsoft Internal Use Only. | |
Typedefs | Gets the collection of Typedef elements for the object. | |
Unions | Gets the collection of union elements for the object. | |
Variables | Gets the collection of variables for the object. |
Top
Methods
Name | Description | |
---|---|---|
AddAttribute | Creates a new attribute code construct and inserts the code in the correct location. | |
AddBase | Adds an item to the list of inherited objects. | |
AddClass | Creates a new class code construct and inserts the code in the correct location. | |
AddDelegate | Creates a new delegate code construct and inserts the code in the correct location. | |
AddEnum | Creates a new enumeration code construct and inserts the code in the correct location. | |
AddEvent | Infrastructure. Microsoft Internal Use Only. | |
AddFunction | Creates a new function code construct and inserts the code in the correct location. | |
AddImplementedInterface | Adds an interface to the list of inherited objects. | |
AddProperty | Creates a new property code construct and inserts the code in the correct location. | |
AddStruct | Creates a new structure code construct and inserts the code in the correct location. | |
AddTemplateParameter | Adds a parameter to a template definition. | |
AddTypedef | Adds a typedef statement to the object. | |
AddUnion | Adds a union statement to the object. | |
AddVariable | Creates a new variable code construct and inserts the code in the correct location. | |
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. | |
RemoveBase | Removes an object from the list of bases. | |
RemoveInterface | Removes an interface from the list of implemented interfaces. | |
RemoveMember | Removes a member code construct. | |
RemoveTemplateParameter | Removes a parameter from a template definition. | |
ValidateMember | Validates that the proposed name is a valid Visual C++ name for the kind given in the context of the parent object. |
Top
Remarks
The VCCodeStruct object is used to modify an existing function construct.
Note
A large part of the functionality of this object is provided by the Visual Studio CodeStruct object. For more information, see CodeStruct 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 structure code elements of the current solution and displays each name in a message box.
[Visual Basic]
Sub GetAllStructs()
Dim vcCM As VCCodeModel
Dim vcStruct As VCCodeStruct
vcCM = DTE.Solution.Item(1).CodeModel
For Each vcStruct in vcCM.Structs
MsgBox(vcStruct.DisplayName)
Next
End Sub