Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CompMod / System / CodeDOM / CodeTypeDeclaration.cs / 1305376 / CodeTypeDeclaration.cs
//------------------------------------------------------------------------------ //// // //----------------------------------------------------------------------------- namespace System.CodeDom { using System.Diagnostics; using System; using Microsoft.Win32; using System.Collections; using System.Reflection; using System.Runtime.Serialization; using System.Runtime.InteropServices; ///[....] // Copyright (c) Microsoft Corporation. All rights reserved. ///// [ ClassInterface(ClassInterfaceType.AutoDispatch), ComVisible(true), Serializable, ] public class CodeTypeDeclaration : CodeTypeMember { private TypeAttributes attributes = Reflection.TypeAttributes.Public | Reflection.TypeAttributes.Class; private CodeTypeReferenceCollection baseTypes = new CodeTypeReferenceCollection(); private CodeTypeMemberCollection members = new CodeTypeMemberCollection(); private bool isEnum; private bool isStruct; private int populated = 0x0; private const int BaseTypesCollection = 0x1; private const int MembersCollection = 0x2; // Need to be made optionally serializable [OptionalField] private CodeTypeParameterCollection typeParameters; [OptionalField] private bool isPartial = false; ////// Represents a /// class or nested class. /// ////// public event EventHandler PopulateBaseTypes; ////// An event that will be fired the first time the BaseTypes Collection is accessed. /// ////// public event EventHandler PopulateMembers; ////// An event that will be fired the first time the Members Collection is accessed. /// ////// public CodeTypeDeclaration() { } ////// Initializes a new instance of ///. /// /// public CodeTypeDeclaration(string name) { Name = name; } ////// Initializes a new instance of ///with the specified name. /// /// public TypeAttributes TypeAttributes { get { return attributes; } set { attributes = value; } } ////// Gets or sets the attributes of the class. /// ////// public CodeTypeReferenceCollection BaseTypes { get { if (0 == (populated & BaseTypesCollection)) { populated |= BaseTypesCollection; if (PopulateBaseTypes != null) PopulateBaseTypes(this, EventArgs.Empty); } return baseTypes; } } ////// Gets or sets /// the base types of the class. /// ////// public bool IsClass { get { return(attributes & TypeAttributes.ClassSemanticsMask) == TypeAttributes.Class && !isEnum && !isStruct; } set { if (value) { attributes &= ~TypeAttributes.ClassSemanticsMask; attributes |= TypeAttributes.Class; isStruct = false; isEnum = false; } } } ////// Gets or sets a value /// indicating whether the class is a class. /// ////// public bool IsStruct { get { return isStruct; } set { if (value) { attributes &= ~TypeAttributes.ClassSemanticsMask; isStruct = true; isEnum = false; } else { isStruct = false; } } } ////// Gets or sets a value /// indicating whether the class is a struct. /// ////// public bool IsEnum { get { return isEnum; } set { if (value) { attributes &= ~TypeAttributes.ClassSemanticsMask; isStruct = false; isEnum = true; } else { isEnum = false; } } } ////// Gets or sets a value /// indicating whether the class is an enumeration. /// ////// public bool IsInterface { get { return(attributes & TypeAttributes.ClassSemanticsMask) == TypeAttributes.Interface; } set { if (value) { attributes &= ~TypeAttributes.ClassSemanticsMask; attributes |= TypeAttributes.Interface; isStruct = false; isEnum = false; } else { attributes &= ~TypeAttributes.Interface; } } } public bool IsPartial { get { return isPartial; } set { isPartial = value; } } ////// Gets or sets a value /// indicating whether the class is an interface. /// ////// public CodeTypeMemberCollection Members { get { if (0 == (populated & MembersCollection)) { populated |= MembersCollection; if (PopulateMembers != null) PopulateMembers(this, EventArgs.Empty); } return members; } } [System.Runtime.InteropServices.ComVisible(false)] public CodeTypeParameterCollection TypeParameters { get { if( typeParameters == null) { typeParameters = new CodeTypeParameterCollection(); } return typeParameters; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Gets or sets the class member collection members. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CounterCreationData.cs
- Point3DAnimationUsingKeyFrames.cs
- WebException.cs
- CodeFieldReferenceExpression.cs
- DigitShape.cs
- WsdlHelpGeneratorElement.cs
- IndentedTextWriter.cs
- XsltInput.cs
- UnlockCardRequest.cs
- ConnectionDemuxer.cs
- XmlAttributeOverrides.cs
- XamlUtilities.cs
- Object.cs
- UnknownMessageReceivedEventArgs.cs
- FrameworkElementAutomationPeer.cs
- RoutedPropertyChangedEventArgs.cs
- IODescriptionAttribute.cs
- RefreshResponseInfo.cs
- PackagePartCollection.cs
- SourceElementsCollection.cs
- FormsIdentity.cs
- PropertyStore.cs
- ToolboxItem.cs
- CellNormalizer.cs
- EntityObject.cs
- SQLInt64Storage.cs
- XmlDocumentViewSchema.cs
- XPathCompileException.cs
- COM2AboutBoxPropertyDescriptor.cs
- IssuanceLicense.cs
- ControlValuePropertyAttribute.cs
- DefaultIfEmptyQueryOperator.cs
- DBCommandBuilder.cs
- ContainerUIElement3D.cs
- MsmqAuthenticationMode.cs
- StructuralComparisons.cs
- SqlDelegatedTransaction.cs
- ClientScriptManagerWrapper.cs
- ObjectViewQueryResultData.cs
- ToolStripDropDown.cs
- WebBrowserDesigner.cs
- OperatingSystem.cs
- UndoUnit.cs
- FormClosedEvent.cs
- NetPeerTcpBinding.cs
- HttpHandlersSection.cs
- PseudoWebRequest.cs
- cookiecontainer.cs
- DbMetaDataColumnNames.cs
- DecimalConstantAttribute.cs
- ExtensionSimplifierMarkupObject.cs
- LockCookie.cs
- AutomationElementCollection.cs
- XPathPatternBuilder.cs
- CheckBoxField.cs
- ConfigurationManagerHelper.cs
- EntityDataSourceChangedEventArgs.cs
- TextBounds.cs
- ExpressionBindingCollection.cs
- CapiSafeHandles.cs
- MetadataItem_Static.cs
- BigInt.cs
- GroupBox.cs
- uribuilder.cs
- EventBuilder.cs
- SemaphoreSecurity.cs
- XmlArrayAttribute.cs
- SqlSelectStatement.cs
- DataSource.cs
- ComponentEditorPage.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- ControlIdConverter.cs
- securitycriticaldataformultiplegetandset.cs
- TrustLevel.cs
- HttpRawResponse.cs
- BStrWrapper.cs
- AndCondition.cs
- HtmlHistory.cs
- XmlNamespaceManager.cs
- ListBox.cs
- DocumentViewerBaseAutomationPeer.cs
- NullableConverter.cs
- GridViewDeleteEventArgs.cs
- GenericPrincipal.cs
- ConnectionPointConverter.cs
- SelectionItemPattern.cs
- IgnoreSection.cs
- TypefaceMap.cs
- AtlasWeb.Designer.cs
- BitmapEffectCollection.cs
- TraceInternal.cs
- CancellationHandler.cs
- InitiatorSessionSymmetricTransportSecurityProtocol.cs
- GridViewPageEventArgs.cs
- AlphaSortedEnumConverter.cs
- UnauthorizedWebPart.cs
- SimpleType.cs
- EntityDataSourceContainerNameItem.cs
- EastAsianLunisolarCalendar.cs
- ComponentEditorPage.cs