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
- EditorServiceContext.cs
- DataGridColumnHeader.cs
- SymbolEqualComparer.cs
- ByteStream.cs
- GrammarBuilder.cs
- PopOutPanel.cs
- TrackingExtract.cs
- OraclePermissionAttribute.cs
- CompModSwitches.cs
- HatchBrush.cs
- SchemaSetCompiler.cs
- OleDbEnumerator.cs
- SourceFileBuildProvider.cs
- MultiView.cs
- CommonServiceBehaviorElement.cs
- TdsParser.cs
- ModelItemDictionary.cs
- CategoryAttribute.cs
- ThreadStartException.cs
- EntityDataSourceWrapper.cs
- EpmSourceTree.cs
- TextDecorations.cs
- TemplateBindingExtensionConverter.cs
- FileLogRecordEnumerator.cs
- PathSegmentCollection.cs
- StatusBar.cs
- FrameSecurityDescriptor.cs
- IxmlLineInfo.cs
- SID.cs
- CapabilitiesPattern.cs
- TemplateKeyConverter.cs
- Codec.cs
- InplaceBitmapMetadataWriter.cs
- WebPartDisplayModeCancelEventArgs.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- UInt32Storage.cs
- AuthenticationConfig.cs
- HealthMonitoringSectionHelper.cs
- DiscoveryExceptionDictionary.cs
- TreeNodeBindingCollection.cs
- GridViewUpdateEventArgs.cs
- WizardStepBase.cs
- PointKeyFrameCollection.cs
- ContextMenuAutomationPeer.cs
- PersonalizablePropertyEntry.cs
- ImageKeyConverter.cs
- VisualStyleElement.cs
- DataServiceOperationContext.cs
- ListViewSortEventArgs.cs
- DES.cs
- CodeGenHelper.cs
- RichTextBoxConstants.cs
- DispatcherObject.cs
- XmlSignificantWhitespace.cs
- TrackingProfileManager.cs
- TableLayout.cs
- XPathNavigatorReader.cs
- HtmlLink.cs
- StandardToolWindows.cs
- SQLDateTimeStorage.cs
- ConfigurationStrings.cs
- shaperfactoryquerycacheentry.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- RegexCompilationInfo.cs
- EventTrigger.cs
- SqlAliasesReferenced.cs
- PersonalizationStateQuery.cs
- Model3DCollection.cs
- GeometryCollection.cs
- ToolStripDropDownItem.cs
- XmlSerializerVersionAttribute.cs
- Double.cs
- ClickablePoint.cs
- DependencyPropertyValueSerializer.cs
- ThemeConfigurationDialog.cs
- WindowsEditBox.cs
- DesignerLoader.cs
- ChannelBuilder.cs
- SafeCryptoHandles.cs
- UpWmlPageAdapter.cs
- DeviceOverridableAttribute.cs
- MultilineStringEditor.cs
- NativeBuffer.cs
- UriTemplateMatch.cs
- InvokeWebService.cs
- CodeStatementCollection.cs
- PeerObject.cs
- XmlNode.cs
- DataSourceNameHandler.cs
- ProxyWebPartConnectionCollection.cs
- MultilineStringConverter.cs
- GlobalizationSection.cs
- CodeChecksumPragma.cs
- ObservableCollectionDefaultValueFactory.cs
- URLIdentityPermission.cs
- FileDataSourceCache.cs
- FixedTextSelectionProcessor.cs
- ClientUtils.cs
- Vector3DIndependentAnimationStorage.cs
- ConnectivityStatus.cs