Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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;
///
///
/// Manages a collection of objects.
///
///
[
ClassInterface(ClassInterfaceType.AutoDispatch),
ComVisible(true),
Serializable,
]
public class CodeNamespaceImportCollection : IList {
private ArrayList data = new ArrayList();
private Hashtable keys = new Hashtable(StringComparer.OrdinalIgnoreCase);
///
///
/// Indexer method that provides collection access.
///
///
public CodeNamespaceImport this[int index] {
get {
return ((CodeNamespaceImport)data[index]);
}
set {
data[index] = value;
SyncKeys();
}
}
///
///
/// Gets or sets the number of namespaces in the collection.
///
///
public int Count {
get {
return data.Count;
}
}
///
bool IList.IsReadOnly
{
get
{
return false;
}
}
///
bool IList.IsFixedSize
{
get
{
return false;
}
}
///
///
/// Adds a namespace import to the collection.
///
///
public void Add(CodeNamespaceImport value) {
if (!keys.ContainsKey(value.Namespace)) {
keys[value.Namespace] = value;
data.Add(value);
}
}
///
///
/// Adds a set of objects to the collection.
///
///
public void AddRange(CodeNamespaceImport[] value) {
if (value == null) {
throw new ArgumentNullException("value");
}
foreach (CodeNamespaceImport c in value) {
Add(c);
}
}
///
///
/// Clears the collection of members.
///
///
public void Clear() {
data.Clear();
keys.Clear();
}
///
///
/// Makes the collection of keys synchronised with the data.
///
///
private void SyncKeys() {
keys = new Hashtable(StringComparer.OrdinalIgnoreCase);
foreach(CodeNamespaceImport c in this) {
keys[c.Namespace] = c;
}
}
///
///
/// Gets an enumerator that enumerates the collection members.
///
///
public IEnumerator GetEnumerator() {
return data.GetEnumerator();
}
///
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();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// 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;
///
///
/// Manages a collection of objects.
///
///
[
ClassInterface(ClassInterfaceType.AutoDispatch),
ComVisible(true),
Serializable,
]
public class CodeNamespaceImportCollection : IList {
private ArrayList data = new ArrayList();
private Hashtable keys = new Hashtable(StringComparer.OrdinalIgnoreCase);
///
///
/// Indexer method that provides collection access.
///
///
public CodeNamespaceImport this[int index] {
get {
return ((CodeNamespaceImport)data[index]);
}
set {
data[index] = value;
SyncKeys();
}
}
///
///
/// Gets or sets the number of namespaces in the collection.
///
///
public int Count {
get {
return data.Count;
}
}
///
bool IList.IsReadOnly
{
get
{
return false;
}
}
///
bool IList.IsFixedSize
{
get
{
return false;
}
}
///
///
/// Adds a namespace import to the collection.
///
///
public void Add(CodeNamespaceImport value) {
if (!keys.ContainsKey(value.Namespace)) {
keys[value.Namespace] = value;
data.Add(value);
}
}
///
///
/// Adds a set of objects to the collection.
///
///
public void AddRange(CodeNamespaceImport[] value) {
if (value == null) {
throw new ArgumentNullException("value");
}
foreach (CodeNamespaceImport c in value) {
Add(c);
}
}
///
///
/// Clears the collection of members.
///
///
public void Clear() {
data.Clear();
keys.Clear();
}
///
///
/// Makes the collection of keys synchronised with the data.
///
///
private void SyncKeys() {
keys = new Hashtable(StringComparer.OrdinalIgnoreCase);
foreach(CodeNamespaceImport c in this) {
keys[c.Namespace] = c;
}
}
///
///
/// Gets an enumerator that enumerates the collection members.
///
///
public IEnumerator GetEnumerator() {
return data.GetEnumerator();
}
///
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();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DateTimeFormat.cs
- _CookieModule.cs
- UriTemplateClientFormatter.cs
- ValueCollectionParameterReader.cs
- DataGridViewCellCancelEventArgs.cs
- AncillaryOps.cs
- Events.cs
- MulticastDelegate.cs
- ZipIOFileItemStream.cs
- RemoteWebConfigurationHostServer.cs
- JsonServiceDocumentSerializer.cs
- ContentElement.cs
- EventLogger.cs
- IntSecurity.cs
- WebPartCatalogAddVerb.cs
- XmlSchemaAll.cs
- UpdateCompiler.cs
- CacheAxisQuery.cs
- CompoundFileIOPermission.cs
- DocumentSchemaValidator.cs
- SID.cs
- ExpressionEditorSheet.cs
- SchemaLookupTable.cs
- TriggerActionCollection.cs
- basevalidator.cs
- BitmapEffectRenderDataResource.cs
- Converter.cs
- Ray3DHitTestResult.cs
- ProfileManager.cs
- DbProviderManifest.cs
- CacheOutputQuery.cs
- MenuAutoFormat.cs
- OrderByBuilder.cs
- ScriptControl.cs
- ScriptBehaviorDescriptor.cs
- XPathAncestorQuery.cs
- ListView.cs
- ControllableStoryboardAction.cs
- WebPartsPersonalization.cs
- XmlDocumentType.cs
- DriveNotFoundException.cs
- PeerTransportListenAddressConverter.cs
- XmlSignatureProperties.cs
- MemberHolder.cs
- ButtonStandardAdapter.cs
- WindowsFont.cs
- BaseParser.cs
- LayoutTableCell.cs
- DiscoveryDocumentSerializer.cs
- ToolboxItemCollection.cs
- Rectangle.cs
- MediaElement.cs
- GrammarBuilderPhrase.cs
- GenericEnumerator.cs
- AddInAdapter.cs
- COM2PropertyDescriptor.cs
- SortDescriptionCollection.cs
- DesignOnlyAttribute.cs
- MarkupExtensionParser.cs
- FontDifferentiator.cs
- OdbcParameter.cs
- DocumentSchemaValidator.cs
- OrthographicCamera.cs
- InvariantComparer.cs
- DesignerSerializationVisibilityAttribute.cs
- DataServiceHost.cs
- TextDecorationCollection.cs
- ApplicationServiceHelper.cs
- Table.cs
- ToolboxItemImageConverter.cs
- WmlMobileTextWriter.cs
- SystemDiagnosticsSection.cs
- PassportAuthentication.cs
- UIElementParaClient.cs
- ISFTagAndGuidCache.cs
- UserControlParser.cs
- WriteFileContext.cs
- MessageSmuggler.cs
- PropertyReference.cs
- CaseStatement.cs
- SectionVisual.cs
- StructuralCache.cs
- LinqMaximalSubtreeNominator.cs
- JoinQueryOperator.cs
- ValidationHelper.cs
- LocatorGroup.cs
- ChangeProcessor.cs
- HtmlControlPersistable.cs
- PeerEndPoint.cs
- ExpressionBindings.cs
- HttpConfigurationContext.cs
- ErrorFormatter.cs
- LinkConverter.cs
- DisposableCollectionWrapper.cs
- WSDualHttpSecurityElement.cs
- ValidationHelper.cs
- MatrixTransform3D.cs
- FontFamily.cs
- WindowsRebar.cs
- ChangePassword.cs