Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / System / CodeDOM / CodeNamespaceImportCollection.cs / 1 / CodeNamespaceImportCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.CodeDom { using System.Diagnostics; using System; using System.Collections; using System.Runtime.InteropServices; using System.Globalization; ////// [ ClassInterface(ClassInterfaceType.AutoDispatch), ComVisible(true), Serializable, ] public class CodeNamespaceImportCollection : IList { private ArrayList data = new ArrayList(); private Hashtable keys = new Hashtable(StringComparer.OrdinalIgnoreCase); ////// Manages a collection of ///objects. /// /// public CodeNamespaceImport this[int index] { get { return ((CodeNamespaceImport)data[index]); } set { data[index] = value; SyncKeys(); } } ////// Indexer method that provides collection access. /// ////// public int Count { get { return data.Count; } } ////// Gets or sets the number of namespaces in the collection. /// ///bool IList.IsReadOnly { get { return false; } } /// bool IList.IsFixedSize { get { return false; } } /// /// public void Add(CodeNamespaceImport value) { if (!keys.ContainsKey(value.Namespace)) { keys[value.Namespace] = value; data.Add(value); } } ////// Adds a namespace import to the collection. /// ////// public void AddRange(CodeNamespaceImport[] value) { if (value == null) { throw new ArgumentNullException("value"); } foreach (CodeNamespaceImport c in value) { Add(c); } } ////// Adds a set of ///objects to the collection. /// /// public void Clear() { data.Clear(); keys.Clear(); } ////// Clears the collection of members. /// ////// private void SyncKeys() { keys = new Hashtable(StringComparer.OrdinalIgnoreCase); foreach(CodeNamespaceImport c in this) { keys[c.Namespace] = c; } } ////// Makes the collection of keys synchronised with the data. /// ////// public IEnumerator GetEnumerator() { return data.GetEnumerator(); } ////// Gets an enumerator that enumerates the collection members. /// ///object IList.this[int index] { get { return this[index]; } set { this[index] = (CodeNamespaceImport)value; SyncKeys(); } } /// int ICollection.Count { get { return Count; } } /// bool ICollection.IsSynchronized { get { return false; } } /// object ICollection.SyncRoot { get { return null; } } /// void ICollection.CopyTo(Array array, int index) { data.CopyTo(array, index); } /// IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } /// int IList.Add(object value) { return data.Add((CodeNamespaceImport)value); } /// void IList.Clear() { Clear(); } /// bool IList.Contains(object value) { return data.Contains(value); } /// int IList.IndexOf(object value) { return data.IndexOf((CodeNamespaceImport)value); } /// void IList.Insert(int index, object value) { data.Insert(index, (CodeNamespaceImport)value); SyncKeys(); } /// void IList.Remove(object value) { data.Remove((CodeNamespaceImport)value); SyncKeys(); } /// void IList.RemoveAt(int index) { data.RemoveAt(index); SyncKeys(); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HMACSHA384.cs
- SelectionHighlightInfo.cs
- HideDisabledControlAdapter.cs
- BitArray.cs
- NotConverter.cs
- TagPrefixCollection.cs
- IndentTextWriter.cs
- AvtEvent.cs
- MimeFormatter.cs
- DataGridViewComboBoxCell.cs
- DisposableCollectionWrapper.cs
- Quad.cs
- DataGridColumnEventArgs.cs
- MessageRpc.cs
- HttpResponse.cs
- CfgParser.cs
- DynamicValueConverter.cs
- EntityDataSourceState.cs
- CriticalHandle.cs
- DataTemplateSelector.cs
- BaseDataListActionList.cs
- ObjectStateFormatter.cs
- ContainerParagraph.cs
- TextMetrics.cs
- ToolBarTray.cs
- Types.cs
- TextEffect.cs
- MissingMemberException.cs
- ToolStripSplitButton.cs
- XmlDataProvider.cs
- RadioButton.cs
- UnsafeNativeMethods.cs
- SkipQueryOptionExpression.cs
- DiagnosticsConfigurationHandler.cs
- ValidatedControlConverter.cs
- ClientScriptManager.cs
- HtmlTextBoxAdapter.cs
- ICspAsymmetricAlgorithm.cs
- StylusCollection.cs
- DeobfuscatingStream.cs
- ComponentEditorForm.cs
- HostedBindingBehavior.cs
- DriveNotFoundException.cs
- BulletDecorator.cs
- DataObjectAttribute.cs
- ComboBoxRenderer.cs
- TableLayoutStyleCollection.cs
- DataService.cs
- SqlXmlStorage.cs
- XmlTextWriter.cs
- CheckBoxStandardAdapter.cs
- ServiceDocumentFormatter.cs
- ConfigurationElementCollection.cs
- CodeValidator.cs
- GenerateTemporaryTargetAssembly.cs
- MetadataHelper.cs
- InputLangChangeRequestEvent.cs
- AlternateViewCollection.cs
- ProfileService.cs
- TabletDeviceInfo.cs
- GlobalizationSection.cs
- BindingElementCollection.cs
- SoapExtension.cs
- OperatorExpressions.cs
- PrimitiveDataContract.cs
- ImmutableCollection.cs
- HttpServerChannel.cs
- LocalizableAttribute.cs
- AcceptorSessionSymmetricMessageSecurityProtocol.cs
- DataSourceDesigner.cs
- IResourceProvider.cs
- Span.cs
- Expression.cs
- CryptoApi.cs
- RegexParser.cs
- PageRanges.cs
- SystemIPInterfaceStatistics.cs
- ImageSourceConverter.cs
- LogSwitch.cs
- ImageFormatConverter.cs
- TemplatedMailWebEventProvider.cs
- MetadataSection.cs
- RequestResizeEvent.cs
- WindowPatternIdentifiers.cs
- EntryIndex.cs
- FlowDocumentReader.cs
- DataBinder.cs
- IconConverter.cs
- MergeFilterQuery.cs
- FontFamilyConverter.cs
- datacache.cs
- TraceSection.cs
- EditingCoordinator.cs
- DbConnectionHelper.cs
- CharacterBuffer.cs
- IPPacketInformation.cs
- XamlReaderHelper.cs
- Stack.cs
- _ProxyRegBlob.cs
- PowerModeChangedEventArgs.cs