Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / Util / SingleObjectCollection.cs / 1 / SingleObjectCollection.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*
* SingleObjectCollection class
*
* Copyright (c) 1999 Microsoft Corporation
*/
namespace System.Web.Util {
using System.Collections;
/*
* Fast implementation of a collection with a single object
*/
internal class SingleObjectCollection: ICollection {
private class SingleObjectEnumerator: IEnumerator {
private object _object;
private bool done;
public SingleObjectEnumerator(object o) { _object = o; }
public object Current { get { return _object; } }
public bool MoveNext() {
if (!done) {
done = true;
return true;
}
return false;
}
public void Reset() { done = false; }
}
private object _object;
public SingleObjectCollection(object o) { _object = o; }
IEnumerator IEnumerable.GetEnumerator() { return new SingleObjectEnumerator(_object); }
public int Count { get { return 1; } }
bool ICollection.IsSynchronized { get { return true; } }
object ICollection.SyncRoot { get { return this; } }
public void CopyTo(Array array, int index) {
array.SetValue(_object, index);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*
* SingleObjectCollection class
*
* Copyright (c) 1999 Microsoft Corporation
*/
namespace System.Web.Util {
using System.Collections;
/*
* Fast implementation of a collection with a single object
*/
internal class SingleObjectCollection: ICollection {
private class SingleObjectEnumerator: IEnumerator {
private object _object;
private bool done;
public SingleObjectEnumerator(object o) { _object = o; }
public object Current { get { return _object; } }
public bool MoveNext() {
if (!done) {
done = true;
return true;
}
return false;
}
public void Reset() { done = false; }
}
private object _object;
public SingleObjectCollection(object o) { _object = o; }
IEnumerator IEnumerable.GetEnumerator() { return new SingleObjectEnumerator(_object); }
public int Count { get { return 1; } }
bool ICollection.IsSynchronized { get { return true; } }
object ICollection.SyncRoot { get { return this; } }
public void CopyTo(Array array, int index) {
array.SetValue(_object, index);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InitializationEventAttribute.cs
- FullTextBreakpoint.cs
- SafeSecurityHelper.cs
- EntityFunctions.cs
- CodeSubDirectory.cs
- BindingNavigator.cs
- Geometry3D.cs
- ProtocolsConfiguration.cs
- Form.cs
- Label.cs
- Pkcs7Signer.cs
- TraceUtility.cs
- NotFiniteNumberException.cs
- TypedReference.cs
- WinCategoryAttribute.cs
- ListViewPagedDataSource.cs
- OdbcConnection.cs
- HttpListenerContext.cs
- IndexingContentUnit.cs
- AutomationElement.cs
- TextCompositionManager.cs
- LoginName.cs
- DnsPermission.cs
- ModelFactory.cs
- InternalDispatchObject.cs
- cookie.cs
- CodeDelegateCreateExpression.cs
- DataGridViewRowPrePaintEventArgs.cs
- WindowsScrollBar.cs
- PeekCompletedEventArgs.cs
- DynamicVirtualDiscoSearcher.cs
- FixedElement.cs
- CurrentChangingEventArgs.cs
- HashCodeCombiner.cs
- ComponentCache.cs
- PrimitiveRenderer.cs
- Config.cs
- RadioButton.cs
- TraceListener.cs
- LinkedResourceCollection.cs
- DriveInfo.cs
- ComplexLine.cs
- Pts.cs
- Crc32Helper.cs
- RemotingConfiguration.cs
- RoutedEventValueSerializer.cs
- ZoomComboBox.cs
- MessageDecoder.cs
- QuotaThrottle.cs
- Stroke.cs
- TextServicesPropertyRanges.cs
- ViewUtilities.cs
- ExpressionBuilderCollection.cs
- MouseBinding.cs
- CookielessHelper.cs
- XmlQueryOutput.cs
- NextPreviousPagerField.cs
- ValueProviderWrapper.cs
- SourceItem.cs
- OpCopier.cs
- PathSegment.cs
- KeyPullup.cs
- PathGradientBrush.cs
- GenericParameterDataContract.cs
- FunctionUpdateCommand.cs
- ResourcePool.cs
- CapabilitiesPattern.cs
- PhysicalAddress.cs
- ImageClickEventArgs.cs
- SimpleWorkerRequest.cs
- MembershipValidatePasswordEventArgs.cs
- SafeSystemMetrics.cs
- XmlSignificantWhitespace.cs
- TreeView.cs
- UnconditionalPolicy.cs
- SplineKeyFrames.cs
- SqlProcedureAttribute.cs
- Thumb.cs
- CompiledELinqQueryState.cs
- RtType.cs
- XmlByteStreamReader.cs
- XmlFormatWriterGenerator.cs
- GraphicsContext.cs
- ConfigurationProviderException.cs
- ChildDocumentBlock.cs
- ClassHandlersStore.cs
- StaticFileHandler.cs
- CompilationRelaxations.cs
- PrintPreviewControl.cs
- Crc32.cs
- BypassElement.cs
- SelectionItemPatternIdentifiers.cs
- _AutoWebProxyScriptWrapper.cs
- WebPartConnectionsCancelVerb.cs
- ScalarConstant.cs
- TransformValueSerializer.cs
- Panel.cs
- ScaleTransform.cs
- DataGridViewColumnEventArgs.cs
- RangeBaseAutomationPeer.cs