Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Shared / MS / Internal / SequentialUshortCollection.cs / 1 / SequentialUshortCollection.cs
//----------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// Description: A class that implements ICollection for a sequence of numbers [0..n-1].
//
//
// History:
// 03/21/2005 : MLeonov - Created it.
//
//---------------------------------------------------------------------------
using System;
using System.Windows;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
using System.Runtime.InteropServices;
using SR=MS.Internal.PresentationCore.SR;
using SRID=MS.Internal.PresentationCore.SRID;
namespace MS.Internal
{
internal class SequentialUshortCollection : ICollection
{
public SequentialUshortCollection(ushort count)
{
_count = count;
}
#region ICollection Members
public void Add(ushort item)
{
throw new NotSupportedException();
}
public void Clear()
{
throw new NotSupportedException();
}
public bool Contains(ushort item)
{
return item < _count;
}
public void CopyTo(ushort[] array, int arrayIndex)
{
if (array == null)
{
throw new ArgumentNullException("array");
}
if (array.Rank != 1)
{
throw new ArgumentException(SR.Get(SRID.Collection_BadRank));
}
// The extra "arrayIndex >= array.Length" check in because even if _collection.Count
// is 0 the index is not allowed to be equal or greater than the length
// (from the MSDN ICollection docs)
if (arrayIndex < 0 || arrayIndex >= array.Length || (arrayIndex + Count) > array.Length)
{
throw new ArgumentOutOfRangeException("arrayIndex");
}
for (ushort i = 0; i < _count; ++i)
array[arrayIndex + i] = i;
}
public int Count
{
get { return _count; }
}
public bool IsReadOnly
{
get { return true; }
}
public bool Remove(ushort item)
{
throw new NotSupportedException();
}
#endregion
#region IEnumerable Members
public IEnumerator GetEnumerator()
{
for (ushort i = 0; i < _count; ++i)
yield return i;
}
#endregion
#region IEnumerable Members
IEnumerator IEnumerable.GetEnumerator()
{
return ((IEnumerable)this).GetEnumerator();
}
#endregion
private ushort _count;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// Description: A class that implements ICollection for a sequence of numbers [0..n-1].
//
//
// History:
// 03/21/2005 : MLeonov - Created it.
//
//---------------------------------------------------------------------------
using System;
using System.Windows;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
using System.Runtime.InteropServices;
using SR=MS.Internal.PresentationCore.SR;
using SRID=MS.Internal.PresentationCore.SRID;
namespace MS.Internal
{
internal class SequentialUshortCollection : ICollection
{
public SequentialUshortCollection(ushort count)
{
_count = count;
}
#region ICollection Members
public void Add(ushort item)
{
throw new NotSupportedException();
}
public void Clear()
{
throw new NotSupportedException();
}
public bool Contains(ushort item)
{
return item < _count;
}
public void CopyTo(ushort[] array, int arrayIndex)
{
if (array == null)
{
throw new ArgumentNullException("array");
}
if (array.Rank != 1)
{
throw new ArgumentException(SR.Get(SRID.Collection_BadRank));
}
// The extra "arrayIndex >= array.Length" check in because even if _collection.Count
// is 0 the index is not allowed to be equal or greater than the length
// (from the MSDN ICollection docs)
if (arrayIndex < 0 || arrayIndex >= array.Length || (arrayIndex + Count) > array.Length)
{
throw new ArgumentOutOfRangeException("arrayIndex");
}
for (ushort i = 0; i < _count; ++i)
array[arrayIndex + i] = i;
}
public int Count
{
get { return _count; }
}
public bool IsReadOnly
{
get { return true; }
}
public bool Remove(ushort item)
{
throw new NotSupportedException();
}
#endregion
#region IEnumerable Members
public IEnumerator GetEnumerator()
{
for (ushort i = 0; i < _count; ++i)
yield return i;
}
#endregion
#region IEnumerable Members
IEnumerator IEnumerable.GetEnumerator()
{
return ((IEnumerable)this).GetEnumerator();
}
#endregion
private ushort _count;
}
}
// 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
- DBProviderConfigurationHandler.cs
- DataRowExtensions.cs
- DataSourceXmlSerializationAttribute.cs
- LeaseManager.cs
- DataGridViewTopRowAccessibleObject.cs
- InputReport.cs
- BuildProvider.cs
- ReadOnlyDataSourceView.cs
- Trigger.cs
- TemplatePropertyEntry.cs
- ReferencedAssembly.cs
- XmlSchemaAttribute.cs
- DataGridViewComboBoxCell.cs
- CodeDirectionExpression.cs
- HttpApplication.cs
- XamlSerializerUtil.cs
- MetabaseSettingsIis7.cs
- XmlSchemaProviderAttribute.cs
- SoapSchemaExporter.cs
- VideoDrawing.cs
- TextBox.cs
- figurelength.cs
- CFGGrammar.cs
- TextEditorTables.cs
- NextPreviousPagerField.cs
- ComponentCommands.cs
- HostedTransportConfigurationBase.cs
- FlowDecisionDesigner.xaml.cs
- TrackingLocation.cs
- SingleObjectCollection.cs
- DesignerActionListCollection.cs
- ElementNotAvailableException.cs
- DesignerToolboxInfo.cs
- ServiceCredentialsElement.cs
- DataGridViewCellMouseEventArgs.cs
- PriorityChain.cs
- TrackBar.cs
- XmlAutoDetectWriter.cs
- DbMetaDataCollectionNames.cs
- WebPartConnectionsCancelEventArgs.cs
- DeclaredTypeElementCollection.cs
- FlowLayout.cs
- ExitEventArgs.cs
- Setter.cs
- Module.cs
- TableRow.cs
- SharedStream.cs
- MapPathBasedVirtualPathProvider.cs
- FileDialog.cs
- FreezableCollection.cs
- DesignTimeParseData.cs
- TextEndOfParagraph.cs
- Exception.cs
- PageFunction.cs
- DesignTimeParseData.cs
- OracleSqlParser.cs
- KeySpline.cs
- ValidationErrorEventArgs.cs
- DataGridColumnCollection.cs
- ISCIIEncoding.cs
- WebPartCancelEventArgs.cs
- ClientUrlResolverWrapper.cs
- HtmlTableRowCollection.cs
- ChildDocumentBlock.cs
- ExecutionEngineException.cs
- WindowsAuthenticationModule.cs
- AllMembershipCondition.cs
- MultilineStringEditor.cs
- CodeIndexerExpression.cs
- FormattedTextSymbols.cs
- TemplateBindingExtension.cs
- formatter.cs
- PrimitiveXmlSerializers.cs
- BaseAsyncResult.cs
- CheckBoxList.cs
- SqlSupersetValidator.cs
- FreezableCollection.cs
- SafeEventLogReadHandle.cs
- TrackingCondition.cs
- ThemeDirectoryCompiler.cs
- EdmEntityTypeAttribute.cs
- ReaderContextStackData.cs
- QilTargetType.cs
- DataServiceResponse.cs
- FlowLayoutPanel.cs
- SerializationFieldInfo.cs
- HttpWebRequestElement.cs
- RegistrationProxy.cs
- CompositeControl.cs
- SQLBinary.cs
- WebEventCodes.cs
- NavigationWindowAutomationPeer.cs
- EdmSchemaError.cs
- PrintPreviewGraphics.cs
- TemplateParser.cs
- TextureBrush.cs
- ControlTemplate.cs
- Memoizer.cs
- ZoneButton.cs
- IconBitmapDecoder.cs