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
- MetaDataInfo.cs
- EdmProperty.cs
- ConfigPathUtility.cs
- TemplateControlCodeDomTreeGenerator.cs
- DecoderBestFitFallback.cs
- TimeoutHelper.cs
- PageTheme.cs
- Assembly.cs
- SqlExpander.cs
- ManipulationInertiaStartingEventArgs.cs
- XmlSchemaSimpleTypeUnion.cs
- DataShape.cs
- EmbossBitmapEffect.cs
- InnerItemCollectionView.cs
- GB18030Encoding.cs
- ResXFileRef.cs
- MetadataExporter.cs
- XmlQualifiedName.cs
- LockRecoveryTask.cs
- IdentitySection.cs
- HierarchicalDataSourceControl.cs
- XPathParser.cs
- PagePropertiesChangingEventArgs.cs
- EnumValidator.cs
- Polyline.cs
- FrameSecurityDescriptor.cs
- AppDomainAttributes.cs
- WindowsEditBoxRange.cs
- DataRowComparer.cs
- TextControlDesigner.cs
- SchemaTypeEmitter.cs
- FragmentQueryProcessor.cs
- Int16Animation.cs
- Button.cs
- XsltCompileContext.cs
- AttributeProviderAttribute.cs
- DataGridViewCellStateChangedEventArgs.cs
- TreeViewHitTestInfo.cs
- HtmlShimManager.cs
- PolyLineSegment.cs
- FrugalList.cs
- UnsafeNativeMethods.cs
- ServiceSecurityAuditElement.cs
- RelationshipEnd.cs
- RNGCryptoServiceProvider.cs
- WebScriptMetadataMessage.cs
- DbConvert.cs
- WebPartCatalogCloseVerb.cs
- EventProviderClassic.cs
- UnsafeNativeMethods.cs
- EventItfInfo.cs
- SafeIUnknown.cs
- _FtpDataStream.cs
- FileLoadException.cs
- WinFormsSecurity.cs
- HttpException.cs
- WebConfigurationManager.cs
- ProfilePropertyMetadata.cs
- ManifestResourceInfo.cs
- MasterPageBuildProvider.cs
- TableItemProviderWrapper.cs
- InnerItemCollectionView.cs
- UnmanagedBitmapWrapper.cs
- ReflectionTypeLoadException.cs
- QueryConverter.cs
- ObjectStorage.cs
- _emptywebproxy.cs
- Divide.cs
- COM2ExtendedTypeConverter.cs
- String.cs
- PropertyGridEditorPart.cs
- ErrorReporting.cs
- XPathSingletonIterator.cs
- PageContentCollection.cs
- ControlType.cs
- SamlAssertionKeyIdentifierClause.cs
- NetSectionGroup.cs
- WebControlAdapter.cs
- AssociationSet.cs
- Storyboard.cs
- GradientBrush.cs
- InfoCardRSAPKCS1SignatureDeformatter.cs
- CompiledQueryCacheEntry.cs
- DynamicPropertyHolder.cs
- AsyncMethodInvoker.cs
- RNGCryptoServiceProvider.cs
- AvTraceFormat.cs
- Compiler.cs
- TargetInvocationException.cs
- XmlStringTable.cs
- WindowsBrush.cs
- SafeFileMappingHandle.cs
- DataKeyArray.cs
- DataGridViewSelectedCellCollection.cs
- localization.cs
- HGlobalSafeHandle.cs
- ResourceLoader.cs
- ProcessProtocolHandler.cs
- RemoteWebConfigurationHostStream.cs
- mediaeventargs.cs