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
- XamlSerializationHelper.cs
- ConstructorExpr.cs
- Descriptor.cs
- PersonalizationAdministration.cs
- ContextMarshalException.cs
- AppDomain.cs
- RegexWorker.cs
- COM2FontConverter.cs
- TemplateXamlParser.cs
- SpeechSeg.cs
- Point3DValueSerializer.cs
- SizeAnimationBase.cs
- CompilationSection.cs
- XmlQualifiedName.cs
- DecoderExceptionFallback.cs
- DATA_BLOB.cs
- BindingWorker.cs
- X509ChainElement.cs
- FrameworkContentElement.cs
- RectValueSerializer.cs
- ControlDesignerState.cs
- ILGenerator.cs
- SchemaCollectionPreprocessor.cs
- XmlCustomFormatter.cs
- OracleParameterCollection.cs
- SQLInt64Storage.cs
- SqlLiftIndependentRowExpressions.cs
- TableRowCollection.cs
- DrawingImage.cs
- NumberFormatter.cs
- ConfigPathUtility.cs
- HandlerFactoryWrapper.cs
- CodeFieldReferenceExpression.cs
- CodeIndexerExpression.cs
- KeyTimeConverter.cs
- WindowsTokenRoleProvider.cs
- SqlMethodCallConverter.cs
- DataRelationPropertyDescriptor.cs
- TextBoxBase.cs
- XmlConvert.cs
- HttpPostedFile.cs
- XmlILTrace.cs
- DocumentSequenceHighlightLayer.cs
- PriorityQueue.cs
- ToolStripItemImageRenderEventArgs.cs
- FileClassifier.cs
- TextControl.cs
- ReferencedType.cs
- HeaderCollection.cs
- XPathAncestorQuery.cs
- ListMarkerLine.cs
- BindingOperations.cs
- ASCIIEncoding.cs
- ResourceDisplayNameAttribute.cs
- MaskPropertyEditor.cs
- AssociatedControlConverter.cs
- TabControl.cs
- ProviderManager.cs
- ViewUtilities.cs
- NamespaceEmitter.cs
- SmiXetterAccessMap.cs
- BaseTemplateParser.cs
- GraphicsState.cs
- HandleRef.cs
- RootBrowserWindowProxy.cs
- TagMapCollection.cs
- OleDbWrapper.cs
- PerformanceCounterPermissionEntry.cs
- DataGridDesigner.cs
- EventlogProvider.cs
- DataSourceCacheDurationConverter.cs
- sqlinternaltransaction.cs
- CFGGrammar.cs
- Site.cs
- FullTextBreakpoint.cs
- HtmlDocument.cs
- Peer.cs
- TargetInvocationException.cs
- ColumnMap.cs
- controlskin.cs
- ConstructorBuilder.cs
- CompiledQueryCacheEntry.cs
- ClientType.cs
- EdmValidator.cs
- DefaultClaimSet.cs
- CodeGenerator.cs
- DependencyPropertyHelper.cs
- LayoutManager.cs
- CacheChildrenQuery.cs
- ResourceReferenceExpressionConverter.cs
- SqlSupersetValidator.cs
- Constants.cs
- TextAutomationPeer.cs
- Directory.cs
- Int32AnimationUsingKeyFrames.cs
- WebPartConnection.cs
- OdbcDataAdapter.cs
- RelatedCurrencyManager.cs
- ImageListUtils.cs
- AttributeUsageAttribute.cs