Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / XmlUtils / System / Xml / Xsl / Runtime / XmlIterators.cs / 1 / XmlIterators.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System; using System.Xml; using System.Xml.XPath; using System.ComponentModel; namespace System.Xml.Xsl.Runtime { ////// Iterators that use containment to control a nested iterator return one of the following values from MoveNext(). /// [EditorBrowsable(EditorBrowsableState.Never)] public enum IteratorResult { NoMoreNodes, // Iteration is complete; there are no more nodes NeedInputNode, // The next node needs to be fetched from the contained iterator before iteration can continue HaveCurrentNode, // This iterator's Current property is set to the next node in the iteration }; ////// Tokenize a string containing IDREF values and deref the values in order to get a list of ID elements. /// [EditorBrowsable(EditorBrowsableState.Never)] public struct IdIterator { private XPathNavigator navCurrent; private string[] idrefs; private int idx; public void Create(XPathNavigator context, string value) { this.navCurrent = XmlQueryRuntime.SyncToNavigator(this.navCurrent, context); this.idrefs = XmlConvert.SplitString(value); this.idx = -1; } public bool MoveNext() { do { this.idx++; if (this.idx >= idrefs.Length) return false; } while (!this.navCurrent.MoveToId(this.idrefs[this.idx])); return true; } ////// Return the current result navigator. This is only defined after MoveNext() has returned true. /// public XPathNavigator Current { get { return this.navCurrent; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System; using System.Xml; using System.Xml.XPath; using System.ComponentModel; namespace System.Xml.Xsl.Runtime { ////// Iterators that use containment to control a nested iterator return one of the following values from MoveNext(). /// [EditorBrowsable(EditorBrowsableState.Never)] public enum IteratorResult { NoMoreNodes, // Iteration is complete; there are no more nodes NeedInputNode, // The next node needs to be fetched from the contained iterator before iteration can continue HaveCurrentNode, // This iterator's Current property is set to the next node in the iteration }; ////// Tokenize a string containing IDREF values and deref the values in order to get a list of ID elements. /// [EditorBrowsable(EditorBrowsableState.Never)] public struct IdIterator { private XPathNavigator navCurrent; private string[] idrefs; private int idx; public void Create(XPathNavigator context, string value) { this.navCurrent = XmlQueryRuntime.SyncToNavigator(this.navCurrent, context); this.idrefs = XmlConvert.SplitString(value); this.idx = -1; } public bool MoveNext() { do { this.idx++; if (this.idx >= idrefs.Length) return false; } while (!this.navCurrent.MoveToId(this.idrefs[this.idx])); return true; } ////// Return the current result navigator. This is only defined after MoveNext() has returned true. /// public XPathNavigator Current { get { return this.navCurrent; } } } } // 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
- Quad.cs
- CompilerError.cs
- Accessible.cs
- HttpModule.cs
- PrintController.cs
- IgnoreSectionHandler.cs
- hresults.cs
- XmlMembersMapping.cs
- DateTimeUtil.cs
- EncodingInfo.cs
- NetworkStream.cs
- ProfileGroupSettingsCollection.cs
- List.cs
- PropertyEmitter.cs
- CellIdBoolean.cs
- BindingListCollectionView.cs
- GeneralTransform2DTo3D.cs
- TextAdaptor.cs
- AssemblyBuilder.cs
- RIPEMD160Managed.cs
- SwitchLevelAttribute.cs
- MexBindingBindingCollectionElement.cs
- WebEventTraceProvider.cs
- StatusBar.cs
- ServiceReference.cs
- FontWeights.cs
- X509Certificate2Collection.cs
- SqlRowUpdatingEvent.cs
- HostUtils.cs
- StringPropertyBuilder.cs
- UnitControl.cs
- EnumerableWrapperWeakToStrong.cs
- XmlTypeAttribute.cs
- DoubleCollection.cs
- SafeMemoryMappedViewHandle.cs
- FormViewPageEventArgs.cs
- MaterializeFromAtom.cs
- ConfigXmlComment.cs
- MediaContextNotificationWindow.cs
- TagMapCollection.cs
- ClearTypeHintValidation.cs
- ExpandCollapsePattern.cs
- Lazy.cs
- KeyEventArgs.cs
- ContractHandle.cs
- ColumnWidthChangingEvent.cs
- MembershipSection.cs
- PermissionListSet.cs
- CodeTypeReference.cs
- Queue.cs
- DebugHandleTracker.cs
- ExpandSegment.cs
- ScriptRef.cs
- TableLayoutStyleCollection.cs
- Schema.cs
- UserMapPath.cs
- CodeLinePragma.cs
- SSmlParser.cs
- DecimalStorage.cs
- FirewallWrapper.cs
- System.Data_BID.cs
- SafeRightsManagementHandle.cs
- WindowsProgressbar.cs
- QueryParameter.cs
- GroupDescription.cs
- WindowsPrincipal.cs
- NeutralResourcesLanguageAttribute.cs
- WebConfigurationHostFileChange.cs
- CollectionTraceRecord.cs
- SHA256.cs
- Hash.cs
- CompositionDesigner.cs
- Focus.cs
- DocumentGrid.cs
- NetStream.cs
- DbDataSourceEnumerator.cs
- SocketElement.cs
- BigInt.cs
- MultiDataTrigger.cs
- CustomActivityDesigner.cs
- InvokeAction.cs
- ProfileInfo.cs
- XmlAttributeCache.cs
- FormsAuthenticationConfiguration.cs
- DeviceContext2.cs
- UnsafeNativeMethods.cs
- MetadataException.cs
- StringComparer.cs
- TailPinnedEventArgs.cs
- ProviderConnectionPointCollection.cs
- ExpressionBinding.cs
- OperationResponse.cs
- TextSimpleMarkerProperties.cs
- Hyperlink.cs
- XmlSchemaInfo.cs
- AutoScrollHelper.cs
- BinHexEncoder.cs
- WindowManager.cs
- XmlSchemaAttributeGroupRef.cs
- _LocalDataStoreMgr.cs