Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Xml / System / Xml / XPath / Internal / IteratorFilter.cs / 1 / IteratorFilter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace MS.Internal.Xml.XPath { using System; using System.Xml; using System.Xml.XPath; using System.Diagnostics; using System.Globalization; internal class IteratorFilter : XPathNodeIterator { private XPathNodeIterator innerIterator; private string name; private int position = 0; internal IteratorFilter(XPathNodeIterator innerIterator, string name) { this.innerIterator = innerIterator; this.name = name; } private IteratorFilter(IteratorFilter it) { this.innerIterator = it.innerIterator.Clone(); this.name = it.name; this.position = it.position; } public override XPathNodeIterator Clone() { return new IteratorFilter(this); } public override XPathNavigator Current { get { return innerIterator.Current;} } public override int CurrentPosition { get { return this.position; } } public override bool MoveNext() { while(innerIterator.MoveNext()) { if(innerIterator.Current.LocalName == this.name) { this.position ++; return true; } } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace MS.Internal.Xml.XPath { using System; using System.Xml; using System.Xml.XPath; using System.Diagnostics; using System.Globalization; internal class IteratorFilter : XPathNodeIterator { private XPathNodeIterator innerIterator; private string name; private int position = 0; internal IteratorFilter(XPathNodeIterator innerIterator, string name) { this.innerIterator = innerIterator; this.name = name; } private IteratorFilter(IteratorFilter it) { this.innerIterator = it.innerIterator.Clone(); this.name = it.name; this.position = it.position; } public override XPathNodeIterator Clone() { return new IteratorFilter(this); } public override XPathNavigator Current { get { return innerIterator.Current;} } public override int CurrentPosition { get { return this.position; } } public override bool MoveNext() { while(innerIterator.MoveNext()) { if(innerIterator.Current.LocalName == this.name) { this.position ++; return true; } } return false; } } } // 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
- BitmapDownload.cs
- UnionCqlBlock.cs
- SignatureResourcePool.cs
- AppDomainUnloadedException.cs
- CompilerError.cs
- TdsParser.cs
- PropertyOrder.cs
- ComNativeDescriptor.cs
- SmtpNegotiateAuthenticationModule.cs
- PolicyException.cs
- NotSupportedException.cs
- ContentFilePart.cs
- CurrentChangingEventManager.cs
- HtmlControlPersistable.cs
- PreProcessor.cs
- SizeFConverter.cs
- InputScope.cs
- SqlConnectionPoolGroupProviderInfo.cs
- MissingMemberException.cs
- AspNetCompatibilityRequirementsAttribute.cs
- ContextMenuStrip.cs
- SelectionChangedEventArgs.cs
- DomNameTable.cs
- SoapEnvelopeProcessingElement.cs
- RuntimeArgumentHandle.cs
- ListViewVirtualItemsSelectionRangeChangedEvent.cs
- ThicknessAnimationBase.cs
- Image.cs
- TdsParserStaticMethods.cs
- QilSortKey.cs
- CalendarDesigner.cs
- UriExt.cs
- ellipse.cs
- DataGridHeaderBorder.cs
- SelectionRangeConverter.cs
- BevelBitmapEffect.cs
- UserPreferenceChangedEventArgs.cs
- ArraySegment.cs
- DiscoveryDocumentReference.cs
- VarRefManager.cs
- DataGridViewSelectedRowCollection.cs
- SudsCommon.cs
- Model3D.cs
- SqlExpressionNullability.cs
- WebBrowserHelper.cs
- FormatterConverter.cs
- EdmToObjectNamespaceMap.cs
- SchemaElementLookUpTable.cs
- QueryCacheKey.cs
- DataSourceSelectArguments.cs
- KoreanCalendar.cs
- TdsParserSessionPool.cs
- MailAddress.cs
- SqlDataAdapter.cs
- AttributeExtensions.cs
- EventHandlers.cs
- SymbolEqualComparer.cs
- SqlCrossApplyToCrossJoin.cs
- Point3DCollection.cs
- NativeRightsManagementAPIsStructures.cs
- ModelTreeManager.cs
- StrokeCollection.cs
- DateTimeOffset.cs
- MethodBuilderInstantiation.cs
- DataBoundControlAdapter.cs
- _AutoWebProxyScriptEngine.cs
- JsonReader.cs
- DSGeneratorProblem.cs
- ScriptManagerProxy.cs
- VirtualizedContainerService.cs
- DataSourceView.cs
- WebPartUserCapability.cs
- ProcessThreadDesigner.cs
- FormViewDeletedEventArgs.cs
- HtmlLiteralTextAdapter.cs
- RadioButtonPopupAdapter.cs
- LicenseProviderAttribute.cs
- PropertyChangeTracker.cs
- EastAsianLunisolarCalendar.cs
- BrowsableAttribute.cs
- RegexRunner.cs
- GenericXmlSecurityToken.cs
- SoapBinding.cs
- UnsafeNativeMethods.cs
- NGCPageContentSerializerAsync.cs
- EndCreateSecurityTokenRequest.cs
- GraphicsContainer.cs
- DeploymentSection.cs
- RemotingServices.cs
- ThicknessAnimation.cs
- Int32RectValueSerializer.cs
- ProfilePropertyNameValidator.cs
- ReliabilityContractAttribute.cs
- GridViewSelectEventArgs.cs
- MetadataException.cs
- DesignerTransactionCloseEvent.cs
- BuildProvider.cs
- SourceItem.cs
- XmlSchemaComplexContentExtension.cs
- RadioButtonStandardAdapter.cs