System.CodeDom.CodeTypeDeclaration Class

Assembly: System.dll
Namespace: System.CodeDom
Summary
Represents a type declaration for a class, structure, interface or enumeration.
C# Syntax:
[Serializable]
public class CodeTypeDeclaration : CodeTypeMember
Remarks
CodeTypeDeclaration can be used to represent code that declares a class, structure, interface or enumeration. This object can be used to declare a type that is nested within another type.

Note Some programming languages only support the declaration of reference types, or classes. To check a language-specific CodeDOM code generator for support for declaring interfaces, enumerations or value types, call ICodeGenerator.Supports to test for the appropriate GeneratorSupport flags. GeneratorSupport.DeclareInterfaces indicates support for interfaces, GeneratorSupport.DeclareEnums indicates support for enumerations, and GeneratorSupport.DeclareValueTypes indicates support for value types such as structs.
See also:
System.CodeDom Namespace | CodeTypeDeclarationCollection

System.CodeDom.CodeTypeDeclaration Member List:

Public Constructors
ctor #1 Overloaded:
.ctor()

Default constructor. This constructor is called by derived class constructors to initialize state in this type.
Initializes a new instance of the CodeTypeDeclaration class.
ctor #2 Overloaded:
.ctor(string name)

Initializes a new instance of the CodeTypeDeclaration class with the specified name.
Public Properties
Attributes
(inherited from System.CodeDom.CodeTypeMember)
Read-write

See base class member description: System.CodeDom.CodeTypeMember.Attributes


Gets or sets the attributes of the member.
BaseTypes Read-only

Gets the base types of the types.
Comments
(inherited from System.CodeDom.CodeTypeMember)
Read-only

See base class member description: System.CodeDom.CodeTypeMember.Comments


Gets the comment collection for the type member.
CustomAttributes
(inherited from System.CodeDom.CodeTypeMember)
Read-write

See base class member description: System.CodeDom.CodeTypeMember.CustomAttributes


Gets or sets the custom attributes of the member.
IsClass Read-write

Gets or sets a value indicating whether the type is a class or reference type.
IsEnum Read-write

Gets or sets a value indicating whether the type is an enumeration.
IsInterface Read-write

Gets or sets a value indicating whether the type is an interface.
IsStruct Read-write

Gets or sets a value indicating whether the types is a value type (struct).
LinePragma
(inherited from System.CodeDom.CodeTypeMember)
Read-write

See base class member description: System.CodeDom.CodeTypeMember.LinePragma


Gets or sets the line the statement occurs on.
Members Read-only

Gets the collection of class members for the represented type.
Name
(inherited from System.CodeDom.CodeTypeMember)
Read-write

See base class member description: System.CodeDom.CodeTypeMember.Name


Gets or sets the name of the member.
TypeAttributes Read-write

Gets or sets the attributes of the type.
UserData
(inherited from System.CodeDom.CodeObject)
Read-only

See base class member description: System.CodeDom.CodeObject.UserData


Gets or sets the user-definable data for the current object.
Public Methods
Equals
(inherited from System.Object)
See base class member description: System.Object.Equals

Derived from System.Object, the primary base class for all objects.
GetHashCode
(inherited from System.Object)
See base class member description: System.Object.GetHashCode

Derived from System.Object, the primary base class for all objects.
GetType
(inherited from System.Object)
See base class member description: System.Object.GetType

Derived from System.Object, the primary base class for all objects.
ToString
(inherited from System.Object)
See base class member description: System.Object.ToString

Derived from System.Object, the primary base class for all objects.
Public Events
PopulateBaseTypes Occurs when the CodeTypeDeclaration.BaseTypes collection is accessed for the first time.
PopulateMembers Occurs when the CodeTypeDeclaration.Members collection is accessed for the first time.
Protected Methods
Finalize
(inherited from System.Object)
See base class member description: System.Object.Finalize

Derived from System.Object, the primary base class for all objects.
MemberwiseClone
(inherited from System.Object)
See base class member description: System.Object.MemberwiseClone

Derived from System.Object, the primary base class for all objects.

Hierarchy:


System.CodeDom.CodeTypeDeclaration Member Details

Overloaded ctor #1
Summary
Initializes a new instance of the CodeTypeDeclaration class.

Default constructor. This constructor is called by derived class constructors to initialize state in this type.
C# Syntax:
public CodeTypeDeclaration();

Return to top


Overloaded ctor #2
Summary
Initializes a new instance of the CodeTypeDeclaration class with the specified name.
C# Syntax:
public CodeTypeDeclaration(
   string name
);
Parameters:

name

The name for the new type.

Return to top


Property: Attributes (read-write)
Inherited
See base class member description: System.CodeDom.CodeTypeMember.Attributes

Summary
Gets or sets the attributes of the member.
C# Syntax:
public MemberAttributes Attributes {get; set;}
Remarks
This property is used to specify attributes of the type member. Some types of attributes are Access (Public/Private) and Scope (Final/Override).
See also:
MemberAttributes

Return to top


Property: BaseTypes (read-only)
Summary
Gets the base types of the types.
C# Syntax:
public CodeTypeReferenceCollection BaseTypes {get;}
See also:
CodeTypeReferenceCollection

Return to top


Property: Comments (read-only)
Inherited
See base class member description: System.CodeDom.CodeTypeMember.Comments

Summary
Gets the comment collection for the type member.
C# Syntax:
public CodeCommentStatementCollection Comments {get;}
Remarks
Any comments in this collection will be written to the generated source file just before the declaration of the member.
See also:
CodeCommentStatementCollection

Return to top


Property: CustomAttributes (read-write)
Inherited
See base class member description: System.CodeDom.CodeTypeMember.CustomAttributes

Summary
Gets or sets the custom attributes of the member.
C# Syntax:
public CodeAttributeDeclarationCollection CustomAttributes {get; set;}
Remarks
This property can be used to add metadata attributes to the declaration of the member. This property is null by default and should be checked before referencing.
See also:
CodeAttributeDeclarationCollection

Return to top


Property: IsClass (read-write)
Summary
Gets or sets a value indicating whether the type is a class or reference type.
C# Syntax:
public bool IsClass {get; set;}

Return to top


Property: IsEnum (read-write)
Summary
Gets or sets a value indicating whether the type is an enumeration.
C# Syntax:
public bool IsEnum {get; set;}

Return to top


Property: IsInterface (read-write)
Summary
Gets or sets a value indicating whether the type is an interface.
C# Syntax:
public bool IsInterface {get; set;}

Return to top


Property: IsStruct (read-write)
Summary
Gets or sets a value indicating whether the types is a value type (struct).
C# Syntax:
public bool IsStruct {get; set;}

Return to top


Property: LinePragma (read-write)
Inherited
See base class member description: System.CodeDom.CodeTypeMember.LinePragma

Summary
Gets or sets the line the statement occurs on.
C# Syntax:
public CodeLinePragma LinePragma {get; set;}
Remarks
This property indicates the location of the type member declaration. This property can be used for purposes of error reporting and debugging. This can be useful when code is generated based on a template file. This value is null by default and should be checked before referencing.
See also:
CodeLinePragma

Return to top


Property: Members (read-only)
Summary
Gets the collection of class members for the represented type.
C# Syntax:
public CodeTypeMemberCollection Members {get;}
See also:
CodeTypeMemberCollection

Return to top


Property: Name (read-write)
Inherited
See base class member description: System.CodeDom.CodeTypeMember.Name

Summary
Gets or sets the name of the member.
C# Syntax:
public string Name {get; set;}

Return to top


Property: TypeAttributes (read-write)
Summary
Gets or sets the attributes of the type.
C# Syntax:
public TypeAttributes TypeAttributes {get; set;}
Remarks
The TypeAttributes property contains the same type of values used by System.Reflection when investigating a type at run time. Many of these flags do not correspond to the type declaration syntax for some languages. As a result, only the following flags are significant to CodeTypeDeclaration: TypeAttributes.Class, TypeAttributes.Interface, TypeAttributes.Abstract, TypeAttributes.Sealed, TypeAttributes.Public, TypeAttributes.NotPublic, TypeAttributes.NestedPublic, and TypeAttributes.NestedPrivate.

Note Some of the flags such as TypeAttributes.Abstract overlap with the meaning of flags in the the CodeTypeMember.Attributes property of CodeTypeDeclaration that is inherited from CodeTypeMember. The CodeTypeMember.Attributes property is a side-effect of the CodeTypeDeclaration class inheriting from CodeTypeMember so that classes can be nested. The flags in the CodeTypeDeclaration.TypeAttributes property should be used instead of the flags in the CodeTypeMember.Attributes property.
See also:
TypeAttributes

Return to top


Property: UserData (read-only)
Inherited
See base class member description: System.CodeDom.CodeObject.UserData

Summary
Gets or sets the user-definable data for the current object.
C# Syntax:
public IDictionary UserData {get;}
Remarks


Notes to inheritors: An inheritor can design the way this user data is stored, retrieved, and used.

Return to top


Method: Equals(
   object obj
)
Inherited
See base class member description: System.Object.Equals
C# Syntax:
public virtual bool Equals(
   object obj
);

For more information on members inherited from System.Object click on the link above.

Return to top


Method: Finalize()
Inherited
See base class member description: System.Object.Finalize
C# Syntax:
~CodeTypeDeclaration();

For more information on members inherited from System.Object click on the link above.

Return to top


Method: GetHashCode()
Inherited
See base class member description: System.Object.GetHashCode
C# Syntax:
public virtual int GetHashCode();

For more information on members inherited from System.Object click on the link above.

Return to top


Method: GetType()
Inherited
See base class member description: System.Object.GetType
C# Syntax:
public Type GetType();

For more information on members inherited from System.Object click on the link above.

Return to top


Method: MemberwiseClone()
Inherited
See base class member description: System.Object.MemberwiseClone
C# Syntax:
protected object MemberwiseClone();

For more information on members inherited from System.Object click on the link above.

Return to top


Method: ToString()
Inherited
See base class member description: System.Object.ToString
C# Syntax:
public virtual string ToString();

For more information on members inherited from System.Object click on the link above.

Return to top


Event: PopulateBaseTypes
Summary
Occurs when the CodeTypeDeclaration.BaseTypes collection is accessed for the first time.
C# Syntax:
public event EventHandler PopulateBaseTypes;

Return to top


Event: PopulateMembers
Summary
Occurs when the CodeTypeDeclaration.Members collection is accessed for the first time.
C# Syntax:
public event EventHandler PopulateMembers;

Return to top


Top of page

Copyright (c) 2002 Microsoft Corporation. All rights reserved.