Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / Internal / ContextQuery.cs / 1305376 / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BulletedListEventArgs.cs
- MessageContractExporter.cs
- MgmtConfigurationRecord.cs
- ContextMenuStripGroup.cs
- CornerRadius.cs
- DataBindingCollection.cs
- ObsoleteAttribute.cs
- UpdateCommandGenerator.cs
- ContextBase.cs
- CompilerResults.cs
- MaskedTextBox.cs
- Int64AnimationBase.cs
- BooleanAnimationUsingKeyFrames.cs
- DataGridViewCellStyleConverter.cs
- SystemSounds.cs
- RegexGroup.cs
- ArraySortHelper.cs
- AtomServiceDocumentSerializer.cs
- Tuple.cs
- FormViewDesigner.cs
- DockEditor.cs
- WebBrowserUriTypeConverter.cs
- ArrayListCollectionBase.cs
- NameTable.cs
- TreeChangeInfo.cs
- ObjectDataSourceStatusEventArgs.cs
- AccessibleObject.cs
- SqlDataSourceCommandEventArgs.cs
- __ComObject.cs
- ShaderEffect.cs
- StaticDataManager.cs
- OptimalTextSource.cs
- UnsafeNativeMethods.cs
- Wizard.cs
- EntityClientCacheEntry.cs
- ScriptBehaviorDescriptor.cs
- TypeRefElement.cs
- SafeFileMappingHandle.cs
- Expressions.cs
- WindowsRebar.cs
- AuthorizationRule.cs
- Int64Storage.cs
- WsrmTraceRecord.cs
- __ComObject.cs
- InternalConfigEventArgs.cs
- DataGridViewDataErrorEventArgs.cs
- StringUtil.cs
- DateTimeAutomationPeer.cs
- SystemIPv6InterfaceProperties.cs
- Encoding.cs
- KeyTime.cs
- Utils.cs
- QuaternionAnimation.cs
- Window.cs
- SimpleRecyclingCache.cs
- NumericExpr.cs
- CollectionViewGroupRoot.cs
- XmlAtomErrorReader.cs
- ContentDisposition.cs
- PropertyRecord.cs
- CssStyleCollection.cs
- SiteIdentityPermission.cs
- LoadedOrUnloadedOperation.cs
- ExecutionScope.cs
- __ConsoleStream.cs
- MediaPlayer.cs
- DbConnectionPoolOptions.cs
- DropShadowBitmapEffect.cs
- _ConnectionGroup.cs
- ScriptBehaviorDescriptor.cs
- KeyMatchBuilder.cs
- StringOutput.cs
- KeyTimeConverter.cs
- BufferedStream.cs
- TokenizerHelper.cs
- DataKeyCollection.cs
- LocationUpdates.cs
- OdbcCommandBuilder.cs
- CultureMapper.cs
- TileBrush.cs
- ReadOnlyHierarchicalDataSourceView.cs
- ExtendedPropertiesHandler.cs
- COM2EnumConverter.cs
- HostProtectionPermission.cs
- FrameworkContextData.cs
- JournalEntry.cs
- DataError.cs
- DrawingContextDrawingContextWalker.cs
- Visual3D.cs
- IListConverters.cs
- SchemaNotation.cs
- Rotation3DKeyFrameCollection.cs
- MediaTimeline.cs
- XPathParser.cs
- BoundColumn.cs
- ObjectToIdCache.cs
- FlowDocumentReaderAutomationPeer.cs
- ICspAsymmetricAlgorithm.cs
- RevocationPoint.cs
- Semaphore.cs