Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / Xml / System / Xml / XPath / Internal / ContextQuery.cs / 1 / ContextQuery.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 ContextQuery : Query {
protected XPathNavigator contextNode;
public ContextQuery() {
this.count = 0;
}
protected ContextQuery(ContextQuery other) : base(other) {
this.contextNode = other.contextNode; // Don't need to clone here
}
public override void Reset() {
count = 0;
}
public override XPathNavigator Current { get { return contextNode; } }
public override object Evaluate(XPathNodeIterator context) {
contextNode = context.Current; // We don't clone here. Because we never move it.
count = 0;
return this;
}
public override XPathNavigator Advance() {
if (count == 0) {
count = 1;
return contextNode;
}
return null;
}
public override XPathNavigator MatchNode(XPathNavigator current) {
return current;
}
public override XPathNodeIterator Clone() { return new ContextQuery(this); }
public override XPathResultType StaticType { get { return XPathResultType.NodeSet; } }
public override int CurrentPosition { get { return count; } }
public override int Count { get { return 1; } }
public override QueryProps Properties { get { return QueryProps.Merge | QueryProps.Cached | QueryProps.Position | QueryProps.Count; } }
}
}
// 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
- AggregateException.cs
- DesignerVerbCollection.cs
- Rotation3DAnimationBase.cs
- HandlerElementCollection.cs
- ButtonFlatAdapter.cs
- WorkflowDesignerColors.cs
- EntityParameter.cs
- latinshape.cs
- EntityDataSourceWizardForm.cs
- RootProfilePropertySettingsCollection.cs
- SoapIgnoreAttribute.cs
- StyleCollection.cs
- CompatibleIComparer.cs
- SecurityIdentifierConverter.cs
- CompModSwitches.cs
- IDReferencePropertyAttribute.cs
- ScriptResourceHandler.cs
- ZipIORawDataFileBlock.cs
- TransformConverter.cs
- EntryPointNotFoundException.cs
- OleDbParameterCollection.cs
- Publisher.cs
- X509UI.cs
- PTUtility.cs
- ActivityPreviewDesigner.cs
- SafeEventLogWriteHandle.cs
- WrappedKeySecurityToken.cs
- HuffModule.cs
- IdnMapping.cs
- IisTraceWebEventProvider.cs
- ProviderMetadata.cs
- loginstatus.cs
- UnicodeEncoding.cs
- TableParaClient.cs
- GridViewRowPresenterBase.cs
- EditorPartChrome.cs
- SliderAutomationPeer.cs
- WizardPanel.cs
- SoapFault.cs
- StylusPointPropertyInfo.cs
- SourceSwitch.cs
- ManagementPath.cs
- ApplicationDirectoryMembershipCondition.cs
- WorkflowInstance.cs
- HttpModuleCollection.cs
- FormViewDeleteEventArgs.cs
- WindowCollection.cs
- XmlComplianceUtil.cs
- CodeBinaryOperatorExpression.cs
- InputProcessorProfiles.cs
- DirectionalLight.cs
- ProfileInfo.cs
- PropertyInfoSet.cs
- ExtentKey.cs
- Win32SafeHandles.cs
- ValidatedControlConverter.cs
- FontSizeConverter.cs
- ToolStripScrollButton.cs
- BufferCache.cs
- InputProcessorProfiles.cs
- DragCompletedEventArgs.cs
- XmlHierarchicalEnumerable.cs
- Listbox.cs
- StrokeNodeEnumerator.cs
- GeometryGroup.cs
- SHA1Managed.cs
- NotImplementedException.cs
- EntityException.cs
- ObjectDataSourceStatusEventArgs.cs
- SystemDiagnosticsSection.cs
- ClearTypeHintValidation.cs
- CustomTypeDescriptor.cs
- DBDataPermissionAttribute.cs
- CryptoSession.cs
- XDeferredAxisSource.cs
- PositiveTimeSpanValidatorAttribute.cs
- FileLevelControlBuilderAttribute.cs
- RightsManagementInformation.cs
- MetadataPropertyAttribute.cs
- ArithmeticLiteral.cs
- Char.cs
- DecimalKeyFrameCollection.cs
- CodeCommentStatementCollection.cs
- SkewTransform.cs
- OpCopier.cs
- MultipleViewPattern.cs
- WorkflowDesignerColors.cs
- TableItemPattern.cs
- RenderDataDrawingContext.cs
- Pair.cs
- ObjectDataSourceDisposingEventArgs.cs
- EntityModelSchemaGenerator.cs
- DataGridCaption.cs
- MouseDevice.cs
- WebPartConnectionsConfigureVerb.cs
- WebEvents.cs
- WebResponse.cs
- ProcessModuleCollection.cs
- BuildProvider.cs
- ProcessInputEventArgs.cs