using System;
namespace AnticipatingMinds.Genesis.CodeDOM{
/// <summary>
/// Represents a class declaration.
/// </summary>
/// <remarks>
/// A class is a data structure that may contain data members (constants and fields), function members
/// (methods, properties, events, indexers, operators, instance constructors, destructors, and static
/// constructors), and nested types. Class types support inheritance, a mechanism whereby a derived class can extend and
/// specialize a base class.
/// (ECMA 334. Page 211, Line 6)
/// </remarks>
[Serializable]
public class CodeClassDeclaration : CodeTypeDeclaration
{
#region Instance constructors
/// <summary>
/// Initializes new instance of <see cref="CodeClassDeclaration"/> class.
/// </summary>
public CodeClassDeclaration():base()
{
}
#endregion Instance constructors
#region Public instance properties
/// <summary>
/// Gets collection of base types for the class.
/// </summary>
public CodeTypeReferenceCollection BaseTypes
{
get
{
return baseTypes;
}
}
/// <summary>
/// Gets collection of declared nested types.
/// </summary>
public CodeTypeDeclarationCollection NestedTypes
{
get
{
return nestedTypes;
}
}
/// <summary>
/// Gets collection of declared class members.
/// </summary>
public CodeTypeMemberDeclarationCollection Members
{
get
{
return members;
}
}
#endregion Public instance properties
#region Private instance fields
private CodeTypeReferenceCollection baseTypes = new CodeTypeReferenceCollection();
private CodeTypeMemberDeclarationCollection members = new CodeTypeMemberDeclarationCollection();
private CodeTypeDeclarationCollection nestedTypes = new CodeTypeDeclarationCollection();
#endregion Private instance fields
}
}
|