Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / Internal / XPathSingletonIterator.cs / 1305376 / 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
- InputScopeConverter.cs
- EmptyWithCancelationCheckWorkItem.cs
- UpDownBase.cs
- TcpChannelFactory.cs
- AssemblyResourceLoader.cs
- SubstitutionDesigner.cs
- WmfPlaceableFileHeader.cs
- AuthenticationSection.cs
- StyleBamlTreeBuilder.cs
- ExpressionBuilderCollection.cs
- mactripleDES.cs
- UIAgentAsyncEndRequest.cs
- ChangesetResponse.cs
- XomlCompiler.cs
- TileBrush.cs
- XmlRawWriterWrapper.cs
- PreservationFileWriter.cs
- DataGridViewRowCollection.cs
- PageContent.cs
- ValidationHelpers.cs
- SqlDataSource.cs
- AutomationProperty.cs
- RootBrowserWindowAutomationPeer.cs
- FormsAuthenticationTicket.cs
- LicenseContext.cs
- SiteMapPath.cs
- KerberosReceiverSecurityToken.cs
- ManipulationBoundaryFeedbackEventArgs.cs
- RTLAwareMessageBox.cs
- CompiledIdentityConstraint.cs
- ScrollableControlDesigner.cs
- PersianCalendar.cs
- ResourceProviderFactory.cs
- TextEditor.cs
- QueryReaderSettings.cs
- MachineKeyConverter.cs
- IdentitySection.cs
- RenamedEventArgs.cs
- EncryptedReference.cs
- AddInIpcChannel.cs
- CodeMethodReturnStatement.cs
- TypeConverterMarkupExtension.cs
- JsonReaderWriterFactory.cs
- SecurityUtils.cs
- WorkflowViewManager.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- Model3DGroup.cs
- PreviewKeyDownEventArgs.cs
- System.Data.OracleClient_BID.cs
- TextOptionsInternal.cs
- FormatterServices.cs
- HtmlInputRadioButton.cs
- GotoExpression.cs
- MutexSecurity.cs
- ModuleBuilderData.cs
- VBCodeProvider.cs
- ProviderConnectionPoint.cs
- SimpleWorkerRequest.cs
- EventSinkHelperWriter.cs
- OdbcConnectionOpen.cs
- ViewStateModeByIdAttribute.cs
- SetState.cs
- InvalidOleVariantTypeException.cs
- NetCodeGroup.cs
- XmlAnyAttributeAttribute.cs
- TypeResolvingOptionsAttribute.cs
- DBCSCodePageEncoding.cs
- HttpRuntimeSection.cs
- Table.cs
- TableRow.cs
- DynamicRendererThreadManager.cs
- MenuEventArgs.cs
- FullTextLine.cs
- PeerCollaborationPermission.cs
- SqlNode.cs
- ModuleElement.cs
- DetailsViewAutoFormat.cs
- SourceElementsCollection.cs
- WsdlBuildProvider.cs
- SystemDropShadowChrome.cs
- ThicknessAnimation.cs
- JournalNavigationScope.cs
- TakeQueryOptionExpression.cs
- DesignerTransaction.cs
- StructuralObject.cs
- TextEditorCharacters.cs
- CustomLineCap.cs
- TableCellAutomationPeer.cs
- DBAsyncResult.cs
- GeometryModel3D.cs
- ProtocolsConfigurationEntry.cs
- CompiledELinqQueryState.cs
- CacheMode.cs
- StringKeyFrameCollection.cs
- AliasExpr.cs
- PackWebResponse.cs
- EntityParameterCollection.cs
- PropertyPushdownHelper.cs
- RoutedUICommand.cs
- BoundField.cs