Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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
- ArglessEventHandlerProxy.cs
- DbMetaDataFactory.cs
- ComponentManagerBroker.cs
- TemplateLookupAction.cs
- ResourceAssociationSet.cs
- Style.cs
- ComponentEvent.cs
- FileDataSourceCache.cs
- MachineKeySection.cs
- ClientCredentials.cs
- SQLMembershipProvider.cs
- InternalConfigRoot.cs
- SrgsElementFactoryCompiler.cs
- GregorianCalendar.cs
- DrawingBrush.cs
- MethodBody.cs
- CryptoKeySecurity.cs
- FillBehavior.cs
- DataMemberFieldConverter.cs
- PreloadedPackages.cs
- ChannelFactory.cs
- DivideByZeroException.cs
- X509CertificateCollection.cs
- ResourceReferenceExpression.cs
- Overlapped.cs
- CalculatedColumn.cs
- InvalidPrinterException.cs
- LinkedList.cs
- XmlSchemaSimpleType.cs
- SymbolPair.cs
- ADMembershipUser.cs
- GcHandle.cs
- BrowserCapabilitiesCompiler.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- Transform3DCollection.cs
- TimersDescriptionAttribute.cs
- SQLChars.cs
- Stroke2.cs
- DataGridViewCellStyleChangedEventArgs.cs
- SessionIDManager.cs
- OleDbFactory.cs
- Version.cs
- DocumentPageView.cs
- MappingMetadataHelper.cs
- CodePageEncoding.cs
- LightweightEntityWrapper.cs
- DataGridViewColumnConverter.cs
- OptimizedTemplateContent.cs
- ProviderConnectionPoint.cs
- ColorTransformHelper.cs
- FastEncoderStatics.cs
- Pens.cs
- WindowsMenu.cs
- GenericUI.cs
- PatternMatcher.cs
- SqlAliaser.cs
- QueryContinueDragEvent.cs
- ArraySet.cs
- PersonalizationState.cs
- RegexWorker.cs
- Profiler.cs
- HttpProfileGroupBase.cs
- DataGridRelationshipRow.cs
- SqlTypeSystemProvider.cs
- Menu.cs
- BooleanConverter.cs
- DateTimeFormatInfoScanner.cs
- ThicknessKeyFrameCollection.cs
- CreatingCookieEventArgs.cs
- TypeSystem.cs
- TypeExtensionConverter.cs
- NetworkInformationPermission.cs
- ResumeStoryboard.cs
- XmlAttribute.cs
- IApplicationTrustManager.cs
- SystemException.cs
- Helpers.cs
- EncodingConverter.cs
- MappingModelBuildProvider.cs
- AxWrapperGen.cs
- SymbolType.cs
- HandlerElement.cs
- ButtonStandardAdapter.cs
- UInt16Storage.cs
- CheckBoxRenderer.cs
- InputLangChangeRequestEvent.cs
- ProcessThreadDesigner.cs
- ModelItemDictionaryImpl.cs
- SoapSchemaExporter.cs
- RelatedCurrencyManager.cs
- DataControlField.cs
- ErrorRuntimeConfig.cs
- Helper.cs
- CriticalHandle.cs
- Int16AnimationUsingKeyFrames.cs
- XmlSchemaSet.cs
- ZipIOLocalFileHeader.cs
- SerialPort.cs
- SqlConnection.cs
- FormViewPageEventArgs.cs