Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / Xml / System / Xml / XPath / Internal / XPathSingletonIterator.cs / 1 / XPathSingletonIterator.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.Globalization; internal class XPathSingletonIterator: ResetableIterator { private XPathNavigator nav; private int position; public XPathSingletonIterator(XPathNavigator nav) { Debug.Assert(nav != null); this.nav = nav; } public XPathSingletonIterator(XPathNavigator nav, bool moved) : this(nav) { if (moved) { position = 1; } } public XPathSingletonIterator(XPathSingletonIterator it) { this.nav = it.nav.Clone(); this.position = it.position; } public override XPathNodeIterator Clone() { return new XPathSingletonIterator(this); } public override XPathNavigator Current { get { return nav; } } public override int CurrentPosition { get { return position; } } public override int Count { get { return 1; } } public override bool MoveNext() { if(position == 0) { position = 1; return true; } return false; } public override void Reset() { position = 0; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// 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.Globalization; internal class XPathSingletonIterator: ResetableIterator { private XPathNavigator nav; private int position; public XPathSingletonIterator(XPathNavigator nav) { Debug.Assert(nav != null); this.nav = nav; } public XPathSingletonIterator(XPathNavigator nav, bool moved) : this(nav) { if (moved) { position = 1; } } public XPathSingletonIterator(XPathSingletonIterator it) { this.nav = it.nav.Clone(); this.position = it.position; } public override XPathNodeIterator Clone() { return new XPathSingletonIterator(this); } public override XPathNavigator Current { get { return nav; } } public override int CurrentPosition { get { return position; } } public override int Count { get { return 1; } } public override bool MoveNext() { if(position == 0) { position = 1; return true; } return false; } public override void Reset() { position = 0; } } } // 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
- CodeParameterDeclarationExpressionCollection.cs
- WebServiceMethodData.cs
- DeadCharTextComposition.cs
- SafeFileMappingHandle.cs
- TemplateContent.cs
- WebPartHeaderCloseVerb.cs
- FormCollection.cs
- ApplicationTrust.cs
- XmlHierarchyData.cs
- WebPartDescription.cs
- XpsResourcePolicy.cs
- SelectionEditor.cs
- DataGridColumnCollection.cs
- CheckBoxField.cs
- TreeNodeBindingCollection.cs
- SqlDataSourceSelectingEventArgs.cs
- BindableAttribute.cs
- ComNativeDescriptor.cs
- NetworkCredential.cs
- Logging.cs
- BoolLiteral.cs
- ColorDialog.cs
- ComboBox.cs
- PanelStyle.cs
- ScrollPatternIdentifiers.cs
- TextBlockAutomationPeer.cs
- FlowLayoutPanel.cs
- AQNBuilder.cs
- X509Utils.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- Utils.cs
- CanExecuteRoutedEventArgs.cs
- CssClassPropertyAttribute.cs
- DefaultEventAttribute.cs
- MemberAccessException.cs
- PerfCounterSection.cs
- SchemaNames.cs
- GridViewItemAutomationPeer.cs
- QueryContinueDragEvent.cs
- URIFormatException.cs
- PassportIdentity.cs
- XamlToRtfParser.cs
- Crc32.cs
- TcpDuplicateContext.cs
- AnnotationAdorner.cs
- SplitterPanelDesigner.cs
- Point3DCollectionValueSerializer.cs
- Invariant.cs
- WizardSideBarListControlItemEventArgs.cs
- HttpCookie.cs
- TextTreeInsertElementUndoUnit.cs
- SqlSelectClauseBuilder.cs
- Transform3DGroup.cs
- webproxy.cs
- SizeValueSerializer.cs
- ListBase.cs
- InkSerializer.cs
- LinearQuaternionKeyFrame.cs
- SyndicationItemFormatter.cs
- MetabaseSettings.cs
- NotConverter.cs
- JulianCalendar.cs
- TextPointer.cs
- MenuItemAutomationPeer.cs
- RegexCapture.cs
- COM2IPerPropertyBrowsingHandler.cs
- EventTrigger.cs
- TerminatorSinks.cs
- BitConverter.cs
- CompositionCommandSet.cs
- IODescriptionAttribute.cs
- FieldDescriptor.cs
- ProtocolViolationException.cs
- OutOfProcStateClientManager.cs
- XPathAncestorQuery.cs
- SingleStorage.cs
- RelOps.cs
- BitmapDownload.cs
- VirtualPathProvider.cs
- CodePrimitiveExpression.cs
- ScriptingSectionGroup.cs
- PropertyEntry.cs
- JsonUriDataContract.cs
- ComponentEditorForm.cs
- CustomTypeDescriptor.cs
- Cursor.cs
- ActivityInterfaces.cs
- IssuedTokensHeader.cs
- TextDecorationLocationValidation.cs
- EdmSchemaAttribute.cs
- StaticResourceExtension.cs
- FrameworkElementFactory.cs
- linebase.cs
- QuotedPrintableStream.cs
- DynamicScriptObject.cs
- ConnectionStringsSection.cs
- ItemCheckedEvent.cs
- RSAPKCS1SignatureFormatter.cs
- DataGridAutoFormatDialog.cs
- FontCollection.cs