Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Xml / System / Xml / XPath / Internal / DescendantQuery.cs / 1 / DescendantQuery.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; internal class DescendantQuery : DescendantBaseQuery { XPathNodeIterator nodeIterator; internal DescendantQuery(Query qyParent, string Name, string Prefix, XPathNodeType Type, bool matchSelf, bool abbrAxis) : base(qyParent, Name, Prefix, Type, matchSelf, abbrAxis) {} public DescendantQuery(DescendantQuery other) : base(other) { this.nodeIterator = Clone(other.nodeIterator); } public override void Reset() { nodeIterator = null; base.Reset(); } public override XPathNavigator Advance() { while (true) { if (nodeIterator == null) { position = 0; XPathNavigator nav = qyInput.Advance(); if (nav == null) { return null; } if (NameTest) { if (TypeTest == XPathNodeType.ProcessingInstruction) { nodeIterator = new IteratorFilter(nav.SelectDescendants(TypeTest, matchSelf), Name); } else { nodeIterator = nav.SelectDescendants(Name, Namespace, matchSelf); } } else { nodeIterator = nav.SelectDescendants(TypeTest, matchSelf); } } if (nodeIterator.MoveNext()) { position++; currentNode = nodeIterator.Current; return currentNode; } else { nodeIterator = null; } } } public override XPathNodeIterator Clone() { return new DescendantQuery(this); } } } // 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
- EventSchemaTraceListener.cs
- Application.cs
- DataGridViewRowsRemovedEventArgs.cs
- WorkflowWebService.cs
- BordersPage.cs
- SystemNetworkInterface.cs
- DragStartedEventArgs.cs
- DataGridDetailsPresenterAutomationPeer.cs
- ConfigXmlSignificantWhitespace.cs
- ScrollItemPatternIdentifiers.cs
- DetailsViewInsertEventArgs.cs
- PictureBox.cs
- XPathMessageFilterElementCollection.cs
- DockAndAnchorLayout.cs
- ThicknessKeyFrameCollection.cs
- UndoManager.cs
- GeometryValueSerializer.cs
- documentation.cs
- OrderedHashRepartitionEnumerator.cs
- PolyLineSegmentFigureLogic.cs
- XmlSiteMapProvider.cs
- SortAction.cs
- Exceptions.cs
- X509CertificateValidator.cs
- XmlSchemaAppInfo.cs
- DataGrid.cs
- columnmapkeybuilder.cs
- DiscoveryClientReferences.cs
- StyleBamlTreeBuilder.cs
- Attribute.cs
- ValidationPropertyAttribute.cs
- MSAAWinEventWrap.cs
- AssemblyInfo.cs
- Metadata.cs
- FrameworkContentElement.cs
- HyperLinkField.cs
- SqlBulkCopyColumnMapping.cs
- DynamicRenderer.cs
- WebPartRestoreVerb.cs
- ColumnCollectionEditor.cs
- TypeExtensionConverter.cs
- VBCodeProvider.cs
- Sentence.cs
- SurrogateChar.cs
- IndentTextWriter.cs
- PermissionSetTriple.cs
- Evaluator.cs
- EventlogProvider.cs
- Part.cs
- RemotingHelper.cs
- WindowShowOrOpenTracker.cs
- XPathMultyIterator.cs
- SystemResources.cs
- BackStopAuthenticationModule.cs
- AnimationClockResource.cs
- SuppressMergeCheckAttribute.cs
- HyperLinkStyle.cs
- SettingsProperty.cs
- NumberFunctions.cs
- UnmanagedHandle.cs
- WindowsBrush.cs
- ListViewItem.cs
- ValueQuery.cs
- _OSSOCK.cs
- WebPartDisplayModeCancelEventArgs.cs
- Point3DCollection.cs
- OdbcEnvironment.cs
- SequentialOutput.cs
- PrintDialog.cs
- ToggleButton.cs
- BinaryOperationBinder.cs
- WarningException.cs
- ValidatorCollection.cs
- Columns.cs
- ToolStripGrip.cs
- BulletChrome.cs
- RuleSet.cs
- Schema.cs
- HandleTable.cs
- TextElementAutomationPeer.cs
- TypeConverterValueSerializer.cs
- PeerResolverBindingElement.cs
- XmlToDatasetMap.cs
- ReversePositionQuery.cs
- FrameworkElementFactory.cs
- LazyTextWriterCreator.cs
- CompModSwitches.cs
- ObjectDataSourceEventArgs.cs
- Win32MouseDevice.cs
- GridViewAutomationPeer.cs
- AttachedAnnotation.cs
- ModuleBuilderData.cs
- BaseCodeDomTreeGenerator.cs
- ToolboxItemSnapLineBehavior.cs
- TemplateField.cs
- ParameterCollection.cs
- SpeakProgressEventArgs.cs
- SharedDp.cs
- ScriptControl.cs
- WebPartConnectVerb.cs