VCCodeNamespace Interface

An object representing a namespace element in the source code of a solution.

Namespace:  Microsoft.VisualStudio.VCCodeModel
Assembly:  Microsoft.VisualStudio.VCCodeModel (in Microsoft.VisualStudio.VCCodeModel.dll)

Syntax

'Declaration
<GuidAttribute("4853EB51-640F-4A98-A6CF-B43C3ECFA8A5")> _
Public Interface VCCodeNamespace
[GuidAttribute("4853EB51-640F-4A98-A6CF-B43C3ECFA8A5")]
public interface VCCodeNamespace
[GuidAttribute(L"4853EB51-640F-4A98-A6CF-B43C3ECFA8A5")]
public interface class VCCodeNamespace
[<GuidAttribute("4853EB51-640F-4A98-A6CF-B43C3ECFA8A5")>]
type VCCodeNamespace =  interface end
public interface VCCodeNamespace

The VCCodeNamespace type exposes the following members.

Properties

  Name Description
Public property BodyText Gets or sets the body text of the object.
Public property Children Gets a collection of objects contained within this code construct.
Public property Classes Gets a collection of classes for the object.
Public property CodeModel Gets the VCCodeModel object for the project.
Public property Collection Gets the collection containing the object supporting this property or contained within this code construct.
Public property Comment Gets or sets the comment associated with the code element.
Public property DeclarationText Gets or sets the declaration of the object.
Public property DisplayName Gets the name used in the user interface for this output group.
Public property DocComment Gets the document comment for the current code model element.
Public property DTE Gets the top-level extensibility object.
Public property EndPoint Gets the edit point that is the location of the end of the code item.
Public property EndPointOf Returns the end point of the parent object.
Public property Enums Gets a collection of enumerations for the object.
Public property Extender Returns the requested Extender object if it is available for this object.
Public property ExtenderCATID Gets the Extender category ID (CATID) for the object.
Public property ExtenderNames Gets a list of available Extenders for the object.
Public property File Gets the file in which the object is declared.
Public property FullName Gets the full path and name of the object's file.
Public property Functions Gets a collection of functions for the object.
Public property InfoLocation Gets the capabilities of the code model.
Public property Interfaces Gets the collection of interfaces for the object.
Public property IsCaseSensitive Gets whether a code element is case-sensitive.
Public property IsCodeType Gets a value indicating whether a CodeType object can be obtained from this object.
Public property IsInjected Gets whether a code element has been injected by an attribute or macro expansion.
Public property IsReadOnly Gets whether the file containing the object is read-only.
Public property IsZombie Gets whether the object exists.
Public property Kind Gets an enumeration indicating the type of object.
Public property Language Gets the programming language used to author the code.
Public property Location Returns the location of the object declaration.
Public property Macros Gets the collection of macros (#define statements) for the object.
Public property Maps Gets the collection of maps for the object.
Public property Members Gets a collection of items contained by this element.
Public property Name Gets or sets the name of the object.
Public property Namespaces Gets the collection of namespaces for the object.
Public property Parent Gets the immediate parent object of a given object.
Public property Picture Gets a picture automation object to be used as an icon in the user interface.
Public property Project Gets the Project object associated with the object.
Public property ProjectItem Gets the ProjectItem object associated with the given object.
Public property References Not currently implemented.
Public property StartPoint Gets a TextPoint object that defines the beginning of the code item.
Public property StartPointOf Gets the start point of the object.
Public property Structs Gets the collection of structure elements for the object.
Public property Typedefs Gets the collection of Typedef elements for the object.
Public property Unions Gets the collection of union elements for the object.
Public property Variables Gets the collection of variables for the object.

Top

Methods

  Name Description
Public method AddClass Creates a new class code construct and inserts the code in the correct location.
Public method AddDelegate Creates a new delegate code construct and inserts the code in the correct location.
Public method AddEnum Creates a new enumeration code construct and inserts the code in the correct location.
Public method AddFunction Creates a new function code construct and inserts the code in the correct location.
Public method AddInterface Creates a new interface code construct and inserts the code in the correct location.
Public method AddMap Adds a map to the object.
Public method AddNamespace Creates a new namespace code construct and inserts the code in the correct location.
Public method AddStruct Creates a new structure code construct and inserts the code in the correct location.
Public method AddTypedef Adds a typedef statement to the object.
Public method AddUnion Adds a union statement to the object.
Public method AddVariable Creates a new variable code construct and inserts the code in the correct location.
Public method GetEndPoint Gets a TextPoint object that marks the end of the code element definition.
Public method GetStartPoint Gets a TextPoint object that defines the beginning of the code element definition.
Public method IsSelf Determines if the specified code element is the same as another code element.
Public method Remove Removes the specified project from the solution.
Public method ValidateMember Validates that the proposed name is a valid C++ name for the kind given in the context of the object.

Top

Remarks

The VCCodeNamespace object represents namespace declarations and is a superset of the VCCodeElement object.

Note

A large part of the functionality of this object is provided by the Visual Studio CodeNamespace object. For more information, see CodeNamespace 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 the namespaces of the current solution and displays each name in a message box.

Sub AllNamespaces()
    Dim codeModel As VCCodeModel
    codeModel = DTE.Solution.Item(1).CodeModel
    Dim namespace As VCCodeNamespace
    For Each namespace In codeModel.Namespaces
        MsgBox(namespace.DisplayName)
    Next
End Sub

See Also

Reference

Microsoft.VisualStudio.VCCodeModel Namespace