Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / Internal / IteratorFilter.cs / 1305376 / 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
- WindowsRebar.cs
- SelectionGlyphBase.cs
- OutputWindow.cs
- SystemResourceKey.cs
- AstNode.cs
- DbMetaDataFactory.cs
- ObjectDisposedException.cs
- SoapExtensionTypeElementCollection.cs
- ValidatedControlConverter.cs
- XslUrlEditor.cs
- TreeViewCancelEvent.cs
- TileModeValidation.cs
- XPathAxisIterator.cs
- AspNetSynchronizationContext.cs
- StaticDataManager.cs
- ReadOnlyPermissionSet.cs
- DescendantQuery.cs
- CryptoApi.cs
- ModuleElement.cs
- odbcmetadatacolumnnames.cs
- EventMappingSettings.cs
- NetworkInformationPermission.cs
- TreeNodeStyle.cs
- XmlText.cs
- activationcontext.cs
- SqlTriggerContext.cs
- EnumerableRowCollectionExtensions.cs
- DataGridTablesFactory.cs
- FontStyleConverter.cs
- ObjectDataSourceView.cs
- RelationHandler.cs
- DesignTimeValidationFeature.cs
- URI.cs
- EventRoute.cs
- CommandDesigner.cs
- XmlSignificantWhitespace.cs
- WinCategoryAttribute.cs
- ActivityExecutionContext.cs
- SqlBinder.cs
- handlecollector.cs
- NumberFunctions.cs
- Trace.cs
- HttpCacheParams.cs
- ConnectionsZoneAutoFormat.cs
- PackagePartCollection.cs
- AxHost.cs
- listitem.cs
- TypeToken.cs
- PageCodeDomTreeGenerator.cs
- ArrayWithOffset.cs
- WebBrowser.cs
- SymLanguageVendor.cs
- RegexParser.cs
- StringUtil.cs
- SessionEndingEventArgs.cs
- CustomError.cs
- CompiledQueryCacheKey.cs
- AssemblyResourceLoader.cs
- RecognizedWordUnit.cs
- ExpressionBinding.cs
- DataSourceUtil.cs
- LinqMaximalSubtreeNominator.cs
- CollectionChangeEventArgs.cs
- Atom10ItemFormatter.cs
- AccessibilityHelperForXpWin2k3.cs
- EventToken.cs
- DataAdapter.cs
- XComponentModel.cs
- AuthenticateEventArgs.cs
- Geometry.cs
- AudioDeviceOut.cs
- CacheOutputQuery.cs
- TextRangeEditLists.cs
- WebConfigManager.cs
- codemethodreferenceexpression.cs
- smtppermission.cs
- Pair.cs
- RuntimeConfig.cs
- ContainerParagraph.cs
- TraceListeners.cs
- SqlParameterCollection.cs
- LinearGradientBrush.cs
- BitStack.cs
- XslTransform.cs
- Gdiplus.cs
- PointAnimation.cs
- WebPartEventArgs.cs
- ParseNumbers.cs
- ToolboxBitmapAttribute.cs
- SystemThemeKey.cs
- CroppedBitmap.cs
- ChtmlTextWriter.cs
- Page.cs
- EventMap.cs
- Transform3DGroup.cs
- SapiRecoContext.cs
- ConnectionsZoneDesigner.cs
- SecurityPolicySection.cs
- DbSource.cs
- ListenerElementsCollection.cs