Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / Internal / DescendantQuery.cs / 1305376 / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Trace.cs
- ImpersonationContext.cs
- DetailsViewInsertEventArgs.cs
- ListItemCollection.cs
- TextMetrics.cs
- lengthconverter.cs
- DesignerValidatorAdapter.cs
- PasswordPropertyTextAttribute.cs
- PolicyUnit.cs
- httpapplicationstate.cs
- CLRBindingWorker.cs
- HtmlElementCollection.cs
- IntPtr.cs
- BindingContext.cs
- ToolboxItemCollection.cs
- FusionWrap.cs
- DataMemberFieldEditor.cs
- SoapHttpTransportImporter.cs
- listitem.cs
- ModifyActivitiesPropertyDescriptor.cs
- RijndaelManaged.cs
- SqlDataSource.cs
- ExpressionUtilities.cs
- DataBindingList.cs
- SessionPageStatePersister.cs
- BaseComponentEditor.cs
- QueryStringParameter.cs
- GenericWebPart.cs
- OuterGlowBitmapEffect.cs
- FormsAuthentication.cs
- XslNumber.cs
- xdrvalidator.cs
- TextServicesCompartment.cs
- QilReference.cs
- SafeNativeMethods.cs
- ErrorStyle.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs
- ScrollChrome.cs
- IndexerNameAttribute.cs
- SqlError.cs
- TemplateLookupAction.cs
- ScrollEventArgs.cs
- EntitySqlQueryCacheEntry.cs
- DataColumn.cs
- CorruptStoreException.cs
- CngKeyCreationParameters.cs
- WorkflowService.cs
- KeyInfo.cs
- DisableDpiAwarenessAttribute.cs
- UserInitiatedRoutedEventPermission.cs
- CoreChannel.cs
- StylusPoint.cs
- EditorBrowsableAttribute.cs
- SR.cs
- ImmutableObjectAttribute.cs
- Package.cs
- MatrixTransform.cs
- ZeroOpNode.cs
- HyperlinkAutomationPeer.cs
- SoapObjectReader.cs
- BufferedStream.cs
- BindStream.cs
- Accessible.cs
- RotateTransform.cs
- ImportStoreException.cs
- EventHandlersDesigner.cs
- CornerRadiusConverter.cs
- ProtectedProviderSettings.cs
- CancellationTokenSource.cs
- SafeEventLogWriteHandle.cs
- SessionStateItemCollection.cs
- CompositionAdorner.cs
- CompilerGlobalScopeAttribute.cs
- DataBindingCollectionConverter.cs
- EncryptedReference.cs
- DispatchWrapper.cs
- TcpClientChannel.cs
- WebPartRestoreVerb.cs
- EnglishPluralizationService.cs
- ImageAutomationPeer.cs
- CommonRemoteMemoryBlock.cs
- figurelength.cs
- ObjectQuery_EntitySqlExtensions.cs
- XmlUtf8RawTextWriter.cs
- DataSourceControl.cs
- NavigatorInput.cs
- CompositeCollectionView.cs
- HttpProfileBase.cs
- BitmapImage.cs
- HijriCalendar.cs
- SqlProvider.cs
- SolidColorBrush.cs
- ScriptModule.cs
- XamlClipboardData.cs
- ComAdminInterfaces.cs
- graph.cs
- Root.cs
- ReadOnlyPropertyMetadata.cs
- MemberRelationshipService.cs
- SqlNotificationRequest.cs