Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Xml / System / Xml / XPath / Internal / XPathDescendantIterator.cs / 1 / XPathDescendantIterator.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace MS.Internal.Xml.XPath { using System.Xml.XPath; internal class XPathDescendantIterator: XPathAxisIterator { private int level = 0; public XPathDescendantIterator(XPathNavigator nav, XPathNodeType type, bool matchSelf) : base(nav, type, matchSelf) {} public XPathDescendantIterator(XPathNavigator nav, string name, string namespaceURI, bool matchSelf) : base(nav, name, namespaceURI, matchSelf) {} public XPathDescendantIterator(XPathDescendantIterator it) : base(it) { this.level = it.level; } public override XPathNodeIterator Clone() { return new XPathDescendantIterator(this); } public override bool MoveNext() { if (first) { first = false; if (matchSelf && Matches) { position = 1; return true; } } while (true) { if (nav.MoveToFirstChild()) { level++; } else { while (true) { if (level == 0) { return false; } if (nav.MoveToNext()) { break; } nav.MoveToParent(); level--; } } if (Matches) { position++; return true; } } } } } // 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
- WindowsTreeView.cs
- MemberPath.cs
- TransactionScope.cs
- LocalizableAttribute.cs
- DirectoryInfo.cs
- MultitargetingHelpers.cs
- DataControlFieldCell.cs
- TypeExtensionSerializer.cs
- PropertiesTab.cs
- FirstMatchCodeGroup.cs
- ClientSponsor.cs
- SystemResources.cs
- Int32KeyFrameCollection.cs
- ExpressionWriter.cs
- TabControlToolboxItem.cs
- VirtualizingPanel.cs
- ProjectedSlot.cs
- ApplicationDirectory.cs
- _AcceptOverlappedAsyncResult.cs
- DocumentAutomationPeer.cs
- ImageFormat.cs
- CodeMemberEvent.cs
- TraceHandler.cs
- ScaleTransform.cs
- MemberHolder.cs
- InputLanguageProfileNotifySink.cs
- PointLightBase.cs
- AxisAngleRotation3D.cs
- Exceptions.cs
- DragAssistanceManager.cs
- InvokeHandlers.cs
- CodeTypeMemberCollection.cs
- OpCellTreeNode.cs
- ColorMap.cs
- EditorPart.cs
- Type.cs
- OracleFactory.cs
- TypeToArgumentTypeConverter.cs
- InvokeMethod.cs
- StateManagedCollection.cs
- HtmlDocument.cs
- TextFormatterImp.cs
- DataColumnCollection.cs
- PeerApplicationLaunchInfo.cs
- SubMenuStyleCollectionEditor.cs
- ToolStripSystemRenderer.cs
- KeyValuePair.cs
- RuleInfoComparer.cs
- DataSourceSerializationException.cs
- DataObjectEventArgs.cs
- GenericPrincipal.cs
- DateTimeOffset.cs
- ColorAnimationUsingKeyFrames.cs
- CroppedBitmap.cs
- BufferedGraphics.cs
- SingleAnimationUsingKeyFrames.cs
- ItemChangedEventArgs.cs
- DynamicRouteExpression.cs
- XmlTextWriter.cs
- DeploymentSection.cs
- UnsafeNativeMethods.cs
- HttpRuntime.cs
- SiteMapNodeItemEventArgs.cs
- StreamInfo.cs
- SerializationSectionGroup.cs
- InputProcessorProfiles.cs
- SecurityUtils.cs
- CodeActivity.cs
- PowerEase.cs
- MessageRpc.cs
- XomlCompilerHelpers.cs
- DataGridTextBox.cs
- TextEndOfParagraph.cs
- WindowsIPAddress.cs
- RuntimeArgumentHandle.cs
- DataGridViewUtilities.cs
- MinimizableAttributeTypeConverter.cs
- MenuTracker.cs
- DataGridViewRowsRemovedEventArgs.cs
- WebSysDisplayNameAttribute.cs
- BrushConverter.cs
- EndpointReference.cs
- TextElementEnumerator.cs
- RemotingConfiguration.cs
- DocumentPageHost.cs
- CqlParserHelpers.cs
- TypeElement.cs
- ProtocolsSection.cs
- Util.cs
- XmlSchemaSimpleTypeList.cs
- HtmlTable.cs
- GridViewRowCollection.cs
- LinkLabelLinkClickedEvent.cs
- LineServicesRun.cs
- NodeFunctions.cs
- CounterCreationDataConverter.cs
- AdornerDecorator.cs
- FormatterServices.cs
- WindowsListViewGroupHelper.cs
- SessionStateUtil.cs