Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / Internal / ParentQuery.cs / 1305376 / ParentQuery.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;
using System.Collections.Generic;
internal sealed class ParentQuery : CacheAxisQuery {
public ParentQuery(Query qyInput, string Name, string Prefix, XPathNodeType Type) : base(qyInput, Name, Prefix, Type) {}
private ParentQuery(ParentQuery other) : base(other) { }
public override object Evaluate(XPathNodeIterator context) {
base.Evaluate(context);
//
XPathNavigator input;
while ((input = qyInput.Advance()) != null) {
input = input.Clone();
if (input.MoveToParent()) {
if (matches(input)) {
Insert(outputBuffer, input);
}
}
}
return this;
}
public override XPathNodeIterator Clone() { return new ParentQuery(this); }
}
}
// 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;
using System.Collections.Generic;
internal sealed class ParentQuery : CacheAxisQuery {
public ParentQuery(Query qyInput, string Name, string Prefix, XPathNodeType Type) : base(qyInput, Name, Prefix, Type) {}
private ParentQuery(ParentQuery other) : base(other) { }
public override object Evaluate(XPathNodeIterator context) {
base.Evaluate(context);
//
XPathNavigator input;
while ((input = qyInput.Advance()) != null) {
input = input.Clone();
if (input.MoveToParent()) {
if (matches(input)) {
Insert(outputBuffer, input);
}
}
}
return this;
}
public override XPathNodeIterator Clone() { return new ParentQuery(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
- ExcludeFromCodeCoverageAttribute.cs
- CodeArgumentReferenceExpression.cs
- SourceElementsCollection.cs
- SchemaManager.cs
- DBDataPermission.cs
- PolicyManager.cs
- SerializeAbsoluteContext.cs
- BufferedStream2.cs
- Token.cs
- Canvas.cs
- TlsnegoTokenAuthenticator.cs
- HelpEvent.cs
- BuildProvider.cs
- InstallerTypeAttribute.cs
- TypeLibConverter.cs
- datacache.cs
- JsonSerializer.cs
- SqlNotificationRequest.cs
- ChangeDirector.cs
- MetadataItemEmitter.cs
- VirtualPathData.cs
- ProfileInfo.cs
- SiteMapPath.cs
- Run.cs
- WebEvents.cs
- MediaPlayer.cs
- PenThreadWorker.cs
- DictionaryBase.cs
- SoapElementAttribute.cs
- PKCS1MaskGenerationMethod.cs
- NativeBuffer.cs
- RuntimeWrappedException.cs
- PieceDirectory.cs
- RootDesignerSerializerAttribute.cs
- DataTableReader.cs
- ScrollViewer.cs
- CoreSwitches.cs
- ECDsa.cs
- CryptoKeySecurity.cs
- MultipartContentParser.cs
- DocumentApplication.cs
- InheritablePropertyChangeInfo.cs
- CryptoHandle.cs
- XmlUrlResolver.cs
- WorkflowDurableInstance.cs
- IndentTextWriter.cs
- Highlights.cs
- Util.cs
- ExtendedPropertyDescriptor.cs
- CodeTryCatchFinallyStatement.cs
- GACMembershipCondition.cs
- ListBox.cs
- SqlInfoMessageEvent.cs
- RepeatInfo.cs
- TableCell.cs
- WindowsStatic.cs
- CheckableControlBaseAdapter.cs
- SizeF.cs
- ImageInfo.cs
- InkCanvas.cs
- CompositeFontInfo.cs
- DXD.cs
- GeneralTransformGroup.cs
- SystemUnicastIPAddressInformation.cs
- HtmlInputFile.cs
- Simplifier.cs
- ListSurrogate.cs
- WebPartDisplayModeEventArgs.cs
- SchemaManager.cs
- ThreadPool.cs
- XmlSchema.cs
- DrawListViewItemEventArgs.cs
- peersecuritysettings.cs
- StrokeFIndices.cs
- AttributeTable.cs
- DBConnection.cs
- CodeValidator.cs
- ListViewInsertedEventArgs.cs
- RectKeyFrameCollection.cs
- CompilerTypeWithParams.cs
- _SslState.cs
- PathGeometry.cs
- Trace.cs
- DataGridLinkButton.cs
- ProcessModule.cs
- WebException.cs
- IndentedWriter.cs
- exports.cs
- FacetValueContainer.cs
- DBConnection.cs
- StackBuilderSink.cs
- SmiEventSink.cs
- XmlCountingReader.cs
- SBCSCodePageEncoding.cs
- PersonalizablePropertyEntry.cs
- ScriptingProfileServiceSection.cs
- MouseButton.cs
- DataBoundControlAdapter.cs
- WinFormsSecurity.cs
- _ChunkParse.cs