Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / System / CodeDOM / CodeTypeDeclaration.cs / 1 / CodeTypeDeclaration.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- 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; ////// [ 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; } } } }/// Gets or sets the class member collection members. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HttpRawResponse.cs
- DataPagerFieldCollection.cs
- PropertyFilterAttribute.cs
- DataGridViewCellPaintingEventArgs.cs
- RTLAwareMessageBox.cs
- smtppermission.cs
- GregorianCalendarHelper.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- WorkflowItemPresenter.cs
- HttpRuntime.cs
- Utilities.cs
- UriSchemeKeyedCollection.cs
- IOThreadScheduler.cs
- ProcessInputEventArgs.cs
- DeploymentSection.cs
- ProcessModule.cs
- ChannelSinkStacks.cs
- WindowsListView.cs
- SystemIPAddressInformation.cs
- ColumnHeaderConverter.cs
- Freezable.cs
- AuthorizationRule.cs
- SourceFilter.cs
- OleDbPermission.cs
- Input.cs
- ConvertEvent.cs
- TextEditorTables.cs
- MDIControlStrip.cs
- BaseValidatorDesigner.cs
- TextTreeUndo.cs
- FormViewUpdateEventArgs.cs
- StorageComplexTypeMapping.cs
- IssuedSecurityTokenProvider.cs
- CodeIdentifier.cs
- HwndMouseInputProvider.cs
- BasePropertyDescriptor.cs
- ListItemParagraph.cs
- ToolStrip.cs
- WhitespaceRuleReader.cs
- FlowDocumentFormatter.cs
- DocumentOrderComparer.cs
- RemoteWebConfigurationHost.cs
- ReceiveSecurityHeaderEntry.cs
- OleDbStruct.cs
- Substitution.cs
- CustomMenuItemCollection.cs
- DataBindingValueUIHandler.cs
- Tokenizer.cs
- Compiler.cs
- KeySplineConverter.cs
- ConditionalAttribute.cs
- UpdateRecord.cs
- GridViewCellAutomationPeer.cs
- ResourceDisplayNameAttribute.cs
- And.cs
- SamlSubjectStatement.cs
- TextEditorSelection.cs
- SrgsRuleRef.cs
- HttpApplication.cs
- ThaiBuddhistCalendar.cs
- Configuration.cs
- ToolStripDropDown.cs
- RowUpdatedEventArgs.cs
- ComboBoxAutomationPeer.cs
- System.Data_BID.cs
- CompModSwitches.cs
- WebServiceHost.cs
- EntityDescriptor.cs
- WebPartUtil.cs
- FormatterConverter.cs
- DbFunctionCommandTree.cs
- XmlCharCheckingWriter.cs
- ComplexTypeEmitter.cs
- EventQueueState.cs
- KeyValuePairs.cs
- DataFormat.cs
- ClientProtocol.cs
- RegularExpressionValidator.cs
- SoapInteropTypes.cs
- SslStream.cs
- TriggerAction.cs
- RadioButtonPopupAdapter.cs
- SoapRpcServiceAttribute.cs
- EncodingDataItem.cs
- XmlTextReader.cs
- ProtectedUri.cs
- GeometryHitTestParameters.cs
- ArrayExtension.cs
- FontCacheUtil.cs
- TextFormatterImp.cs
- StreamResourceInfo.cs
- Helper.cs
- KeyNotFoundException.cs
- isolationinterop.cs
- CodeCompiler.cs
- baseaxisquery.cs
- GridSplitterAutomationPeer.cs
- PathParser.cs
- HatchBrush.cs
- SingleConverter.cs