Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / CompMod / System / ComponentModel / ArraySubsetEnumerator.cs / 1 / ArraySubsetEnumerator.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.ComponentModel { using System; using System.Collections; using System.Diagnostics; using System.Security.Permissions; [HostProtection(SharedState = true)] internal class ArraySubsetEnumerator : IEnumerator { private Array array; private int total; private int current; public ArraySubsetEnumerator(Array array, int count) { Debug.Assert(count == 0 || array != null, "if array is null, count should be 0"); Debug.Assert(array == null || count <= array.Length, "Trying to enumerate more than the array contains"); this.array = array; this.total = count; current = -1; } public bool MoveNext() { if (current < total - 1) { current++; return true; } else { return false; } } public void Reset() { current = -1; } public object Current { get { if (current == -1) { throw new InvalidOperationException(); } else { return array.GetValue(current); } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.ComponentModel { using System; using System.Collections; using System.Diagnostics; using System.Security.Permissions; [HostProtection(SharedState = true)] internal class ArraySubsetEnumerator : IEnumerator { private Array array; private int total; private int current; public ArraySubsetEnumerator(Array array, int count) { Debug.Assert(count == 0 || array != null, "if array is null, count should be 0"); Debug.Assert(array == null || count <= array.Length, "Trying to enumerate more than the array contains"); this.array = array; this.total = count; current = -1; } public bool MoveNext() { if (current < total - 1) { current++; return true; } else { return false; } } public void Reset() { current = -1; } public object Current { get { if (current == -1) { throw new InvalidOperationException(); } else { return array.GetValue(current); } } } } } // 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
- OdbcParameter.cs
- InheritanceContextHelper.cs
- InkPresenter.cs
- XsltConvert.cs
- SqlServices.cs
- XmlAttributeOverrides.cs
- NegatedConstant.cs
- CollectionViewGroup.cs
- NamedPipeConnectionPoolSettings.cs
- RightNameExpirationInfoPair.cs
- SynchronizationContext.cs
- SHA1.cs
- SrgsNameValueTag.cs
- DataGridItemCollection.cs
- TreeNodeStyle.cs
- input.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- WebServiceEnumData.cs
- MemoryMappedFileSecurity.cs
- TableRowCollection.cs
- PositiveTimeSpanValidator.cs
- SafeCryptHandles.cs
- Models.cs
- SqlTypeConverter.cs
- XPathEmptyIterator.cs
- HwndProxyElementProvider.cs
- SQLRoleProvider.cs
- AdjustableArrowCap.cs
- UIElement.cs
- FilterElement.cs
- Facet.cs
- XmlNullResolver.cs
- NotSupportedException.cs
- SqlTypeConverter.cs
- EntityDataSourceQueryBuilder.cs
- ChtmlTextWriter.cs
- SqlUnionizer.cs
- SqlReferenceCollection.cs
- ExpressionBindingCollection.cs
- ObfuscateAssemblyAttribute.cs
- X509CertificateCollection.cs
- ReceiveReply.cs
- QuaternionAnimationUsingKeyFrames.cs
- ExpressionTextBox.xaml.cs
- ByteConverter.cs
- DbConnectionStringCommon.cs
- AnonymousIdentificationSection.cs
- LocalizationComments.cs
- TargetException.cs
- Events.cs
- DbConnectionStringBuilder.cs
- Icon.cs
- CompiledQuery.cs
- EnvironmentPermission.cs
- XmlSerializerAssemblyAttribute.cs
- SmiRequestExecutor.cs
- HandlerMappingMemo.cs
- Animatable.cs
- DataGridViewAdvancedBorderStyle.cs
- UnsafeNativeMethodsMilCoreApi.cs
- Composition.cs
- MsmqIntegrationSecurity.cs
- RectAnimationUsingKeyFrames.cs
- ToolStripItemRenderEventArgs.cs
- SqlExpressionNullability.cs
- DigitalSignature.cs
- MetadataArtifactLoaderCompositeResource.cs
- ProfileSettings.cs
- FileLevelControlBuilderAttribute.cs
- _RequestCacheProtocol.cs
- TypeDescriptionProviderAttribute.cs
- Function.cs
- LinqDataSourceContextEventArgs.cs
- PagedDataSource.cs
- Effect.cs
- TabItemWrapperAutomationPeer.cs
- Dispatcher.cs
- ObjectMaterializedEventArgs.cs
- ResourceSetExpression.cs
- TableLayoutSettings.cs
- NameSpaceExtractor.cs
- NameValueFileSectionHandler.cs
- ElementHostPropertyMap.cs
- UserControl.cs
- TableCell.cs
- AnnotationResourceCollection.cs
- WindowsRebar.cs
- TrustManager.cs
- ImageConverter.cs
- WindowsFormsHostPropertyMap.cs
- KeyValuePairs.cs
- WebServiceHostFactory.cs
- WebSysDescriptionAttribute.cs
- ObjectSet.cs
- followingsibling.cs
- LifetimeServices.cs
- MessageDecoder.cs
- XmlObjectSerializerContext.cs
- StandardCommands.cs
- DataObjectCopyingEventArgs.cs