Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Xml / System / Xml / XPath / Internal / CacheAxisQuery.cs / 1 / CacheAxisQuery.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.Collections.Generic; internal abstract class CacheAxisQuery : BaseAxisQuery { // int count; -- we reusing it here protected ListoutputBuffer; public CacheAxisQuery(Query qyInput, string name, string prefix, XPathNodeType typeTest) : base(qyInput, name, prefix, typeTest) { this.outputBuffer = new List (); this.count = 0; } protected CacheAxisQuery(CacheAxisQuery other) : base(other) { this.outputBuffer = new List (other.outputBuffer); this.count = other.count; } public override void Reset() { this.count = 0; } public override object Evaluate(XPathNodeIterator context) { base.Evaluate(context); outputBuffer.Clear(); return this; } public override XPathNavigator Advance() { Debug.Assert(0 <= count && count <= outputBuffer.Count); if (count < outputBuffer.Count) { return outputBuffer[count++]; } return null; } public override XPathNavigator Current { get { Debug.Assert(0 <= count && count <= outputBuffer.Count); if (count == 0) { return null; } return outputBuffer[count - 1]; } } public override int CurrentPosition { get { return count; } } public override int Count { get { return outputBuffer.Count; } } 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
- ActivityInfo.cs
- XmlRawWriter.cs
- LocalsItemDescription.cs
- TimeSpanValidator.cs
- EntityClassGenerator.cs
- compensatingcollection.cs
- SiteMapNodeItem.cs
- Pair.cs
- FormClosedEvent.cs
- ContentElement.cs
- ConstructorBuilder.cs
- CorrelationToken.cs
- HtmlLabelAdapter.cs
- _NtlmClient.cs
- PrePostDescendentsWalker.cs
- LocatorManager.cs
- TokenBasedSetEnumerator.cs
- ADMembershipUser.cs
- EntityDataSourceDataSelection.cs
- CommonProperties.cs
- HuffmanTree.cs
- InfiniteTimeSpanConverter.cs
- PolicyStatement.cs
- Queue.cs
- Permission.cs
- XPathAncestorQuery.cs
- AttributeAction.cs
- PermissionRequestEvidence.cs
- ConfigurationManager.cs
- DrawingContextWalker.cs
- DbParameterCollectionHelper.cs
- DurableTimerExtension.cs
- DataView.cs
- SyntaxCheck.cs
- CompilerScope.cs
- WebPartRestoreVerb.cs
- XmlQueryContext.cs
- LineInfo.cs
- TriggerCollection.cs
- AdjustableArrowCap.cs
- Signature.cs
- AsymmetricAlgorithm.cs
- DataGridViewCellValueEventArgs.cs
- DataTablePropertyDescriptor.cs
- DebugView.cs
- RepeatInfo.cs
- SqlDataSourceSummaryPanel.cs
- WorkflowServiceBehavior.cs
- BmpBitmapEncoder.cs
- LazyTextWriterCreator.cs
- HijriCalendar.cs
- PropertyCondition.cs
- FileDialog.cs
- FtpWebResponse.cs
- VoiceInfo.cs
- XmlSchemaNotation.cs
- UntrustedRecipientException.cs
- AvTrace.cs
- SelectedPathEditor.cs
- CryptoConfig.cs
- RefreshPropertiesAttribute.cs
- XmlnsCache.cs
- UICuesEvent.cs
- PropertySet.cs
- DecimalSumAggregationOperator.cs
- ColorContextHelper.cs
- ObjectItemLoadingSessionData.cs
- HiddenField.cs
- CachedRequestParams.cs
- ProcessHostFactoryHelper.cs
- SrgsOneOf.cs
- ExcCanonicalXml.cs
- ApplicationFileParser.cs
- ObjectDataSourceView.cs
- AnnotationResourceCollection.cs
- SctClaimDictionary.cs
- WmlTextViewAdapter.cs
- FontNamesConverter.cs
- _DomainName.cs
- ProfileParameter.cs
- Rotation3DKeyFrameCollection.cs
- BinaryMessageFormatter.cs
- AggregateNode.cs
- CompiledIdentityConstraint.cs
- ClockController.cs
- RawStylusInput.cs
- SecurityAlgorithmSuite.cs
- EmissiveMaterial.cs
- EmptyControlCollection.cs
- GraphicsContext.cs
- OdbcUtils.cs
- EntityRecordInfo.cs
- XDeferredAxisSource.cs
- _NetRes.cs
- HierarchicalDataBoundControl.cs
- StreamingContext.cs
- cache.cs
- CompositionTarget.cs
- LazyTextWriterCreator.cs
- PasswordBox.cs