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
- StreamMarshaler.cs
- CodeDOMUtility.cs
- Hex.cs
- MessageQueuePermissionAttribute.cs
- MessageHeaderT.cs
- DataControlFieldCollection.cs
- HttpHeaderCollection.cs
- CreateUserErrorEventArgs.cs
- DropTarget.cs
- Serializer.cs
- FileInfo.cs
- LinqDataSourceInsertEventArgs.cs
- RequestCacheValidator.cs
- HitTestWithPointDrawingContextWalker.cs
- OracleConnectionFactory.cs
- ResourceWriter.cs
- LayoutTableCell.cs
- CachingParameterInspector.cs
- SQLInt64Storage.cs
- ConstructorNeedsTagAttribute.cs
- XmlSchemaFacet.cs
- ColorConvertedBitmap.cs
- TabItemAutomationPeer.cs
- ToolStripContainerDesigner.cs
- MemberHolder.cs
- DefinitionUpdate.cs
- QueryOutputWriter.cs
- EventHandlersStore.cs
- CollectionView.cs
- ThreadExceptionDialog.cs
- CompilerLocalReference.cs
- RegexReplacement.cs
- SettingsSavedEventArgs.cs
- Enumerable.cs
- FillErrorEventArgs.cs
- Choices.cs
- Command.cs
- DetailsViewModeEventArgs.cs
- StylusPointProperties.cs
- JpegBitmapDecoder.cs
- Size.cs
- DataGridViewEditingControlShowingEventArgs.cs
- DataGridViewBindingCompleteEventArgs.cs
- CssStyleCollection.cs
- AffineTransform3D.cs
- QuaternionIndependentAnimationStorage.cs
- Walker.cs
- SettingsSection.cs
- TabletDeviceInfo.cs
- Variant.cs
- ConnectionPoolManager.cs
- SoapBinding.cs
- ParentQuery.cs
- ModuleElement.cs
- CornerRadiusConverter.cs
- SingletonInstanceContextProvider.cs
- PagePropertiesChangingEventArgs.cs
- HostingEnvironmentException.cs
- ExceptionUtil.cs
- PrintingPermission.cs
- LinkArea.cs
- CSharpCodeProvider.cs
- coordinatorscratchpad.cs
- TableCellCollection.cs
- ValueQuery.cs
- DataGridViewSelectedCellCollection.cs
- SpellerHighlightLayer.cs
- SynchronizedReadOnlyCollection.cs
- SpeakInfo.cs
- CorrelationQuery.cs
- NamespaceExpr.cs
- ConfigurationSectionHelper.cs
- FilterQuery.cs
- QilInvokeEarlyBound.cs
- FontStyleConverter.cs
- XmlSchemaSearchPattern.cs
- ObjectAnimationUsingKeyFrames.cs
- LinkButton.cs
- ThaiBuddhistCalendar.cs
- CollectionsUtil.cs
- TrackingProfile.cs
- DecimalStorage.cs
- TypeSystem.cs
- StackOverflowException.cs
- SystemDropShadowChrome.cs
- WebServiceResponseDesigner.cs
- RuntimeIdentifierPropertyAttribute.cs
- XmlDictionaryString.cs
- ClientFormsIdentity.cs
- WindowsScroll.cs
- BitmapCodecInfoInternal.cs
- ResourceExpression.cs
- GridViewRowEventArgs.cs
- EventHandlerList.cs
- JoinTreeSlot.cs
- UnsafeNetInfoNativeMethods.cs
- ConfigurationProviderException.cs
- PageContentAsyncResult.cs
- AppModelKnownContentFactory.cs
- HostSecurityManager.cs