Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- SqlDataSourceCache.cs
- LinqDataSourceHelper.cs
- DateTimeAutomationPeer.cs
- HttpHeaderCollection.cs
- ListViewCommandEventArgs.cs
- DPCustomTypeDescriptor.cs
- FullTextLine.cs
- Pair.cs
- DataServiceRequestException.cs
- PenContext.cs
- EntityDataSourceQueryBuilder.cs
- ExtensionSimplifierMarkupObject.cs
- PeerNameRecord.cs
- SingleAnimationUsingKeyFrames.cs
- PageClientProxyGenerator.cs
- DragStartedEventArgs.cs
- AttributeEmitter.cs
- XmlSerializerFactory.cs
- InvalidOperationException.cs
- DoubleAnimationUsingKeyFrames.cs
- ImportContext.cs
- MessageDispatch.cs
- TextRangeProviderWrapper.cs
- GraphicsPath.cs
- RefreshPropertiesAttribute.cs
- MediaContext.cs
- GridViewSortEventArgs.cs
- EmptyControlCollection.cs
- ApplicationId.cs
- NavigationWindowAutomationPeer.cs
- WorkflowCommandExtensionItem.cs
- Int16AnimationBase.cs
- HttpResponse.cs
- DecoderFallback.cs
- AliasedExpr.cs
- SpeechRecognizer.cs
- ConditionCollection.cs
- NativeMethods.cs
- ScrollItemPattern.cs
- InheritedPropertyDescriptor.cs
- GridViewUpdatedEventArgs.cs
- Component.cs
- ArrayList.cs
- EditingCoordinator.cs
- ListViewContainer.cs
- RenderData.cs
- ListViewHitTestInfo.cs
- CheckBoxFlatAdapter.cs
- ParserContext.cs
- SHA1Managed.cs
- XmlStringTable.cs
- RIPEMD160Managed.cs
- DefaultValueTypeConverter.cs
- CompilationLock.cs
- EntityDataSourceView.cs
- SqlDataSourceSummaryPanel.cs
- DatatypeImplementation.cs
- HelpFileFileNameEditor.cs
- MailHeaderInfo.cs
- EditorServiceContext.cs
- CoreSwitches.cs
- Page.cs
- SHA384CryptoServiceProvider.cs
- ConnectionPointCookie.cs
- StyleXamlParser.cs
- RecognizedWordUnit.cs
- InternalPolicyElement.cs
- WebPartConnectionsCancelVerb.cs
- OrderedDictionary.cs
- ExpandSegment.cs
- AnnotationStore.cs
- RectAnimationBase.cs
- XmlDataImplementation.cs
- SchemaNamespaceManager.cs
- CounterSampleCalculator.cs
- CompilerTypeWithParams.cs
- DataServiceClientException.cs
- PropertyItem.cs
- CacheMemory.cs
- IODescriptionAttribute.cs
- Attributes.cs
- Int32Converter.cs
- StringStorage.cs
- ModelTreeEnumerator.cs
- GeneralTransformCollection.cs
- QueryAccessibilityHelpEvent.cs
- SoapObjectInfo.cs
- CqlParserHelpers.cs
- PointHitTestParameters.cs
- LocatorGroup.cs
- InteropAutomationProvider.cs
- PrintingPermissionAttribute.cs
- TcpChannelHelper.cs
- DSGeneratorProblem.cs
- HttpServerChannel.cs
- SecurityTokenRequirement.cs
- HtmlTitle.cs
- ServiceModelEnumValidator.cs
- TreeViewDesigner.cs
- Thread.cs