Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / CopyNamespacesAction.cs / 1 / CopyNamespacesAction.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Xsl.XsltOld { using Res = System.Xml.Utils.Res; using System; using System.Diagnostics; using System.Xml; using System.Xml.XPath; internal sealed class CopyNamespacesAction : Action { private const int BeginEvent = 2; private const int TextEvent = 3; private const int EndEvent = 4; private const int Advance = 5; private static CopyNamespacesAction s_Action = new CopyNamespacesAction(); internal static CopyNamespacesAction GetAction() { Debug.Assert(s_Action != null); return s_Action; } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); while (processor.CanContinue) { switch (frame.State) { case Initialized: if (frame.Node.MoveToFirstNamespace(XPathNamespaceScope.ExcludeXml) == false) { frame.Finished(); break; } frame.State = BeginEvent; goto case BeginEvent; case BeginEvent: Debug.Assert(frame.State == BeginEvent); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (processor.BeginEvent(XPathNodeType.Namespace, null, frame.Node.LocalName, frame.Node.Value, false) == false) { // This one wasn't output break; } frame.State = EndEvent; continue; case EndEvent: Debug.Assert(frame.State == EndEvent); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (processor.EndEvent(XPathNodeType.Namespace) == false) { // This one wasn't output break; } frame.State = Advance; continue; case Advance: Debug.Assert(frame.State == Advance); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (frame.Node.MoveToNextNamespace(XPathNamespaceScope.ExcludeXml)) { frame.State = BeginEvent; continue; } else { frame.Node.MoveToParent(); frame.Finished(); break; } } break; }// while } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Xsl.XsltOld { using Res = System.Xml.Utils.Res; using System; using System.Diagnostics; using System.Xml; using System.Xml.XPath; internal sealed class CopyNamespacesAction : Action { private const int BeginEvent = 2; private const int TextEvent = 3; private const int EndEvent = 4; private const int Advance = 5; private static CopyNamespacesAction s_Action = new CopyNamespacesAction(); internal static CopyNamespacesAction GetAction() { Debug.Assert(s_Action != null); return s_Action; } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); while (processor.CanContinue) { switch (frame.State) { case Initialized: if (frame.Node.MoveToFirstNamespace(XPathNamespaceScope.ExcludeXml) == false) { frame.Finished(); break; } frame.State = BeginEvent; goto case BeginEvent; case BeginEvent: Debug.Assert(frame.State == BeginEvent); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (processor.BeginEvent(XPathNodeType.Namespace, null, frame.Node.LocalName, frame.Node.Value, false) == false) { // This one wasn't output break; } frame.State = EndEvent; continue; case EndEvent: Debug.Assert(frame.State == EndEvent); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (processor.EndEvent(XPathNodeType.Namespace) == false) { // This one wasn't output break; } frame.State = Advance; continue; case Advance: Debug.Assert(frame.State == Advance); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (frame.Node.MoveToNextNamespace(XPathNamespaceScope.ExcludeXml)) { frame.State = BeginEvent; continue; } else { frame.Node.MoveToParent(); frame.Finished(); break; } } break; }// while } } } // 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
- CultureInfo.cs
- CreateUserWizardDesigner.cs
- CounterSet.cs
- SQLBinaryStorage.cs
- InvalidEnumArgumentException.cs
- DiscoveryClientDuplexChannel.cs
- SiteMapNodeItem.cs
- ButtonChrome.cs
- Substitution.cs
- EntityDataSourceContainerNameConverter.cs
- DataSourceCollectionBase.cs
- PatternMatcher.cs
- BitmapEffect.cs
- Grammar.cs
- Overlapped.cs
- StoreContentChangedEventArgs.cs
- LinqDataView.cs
- MemberRelationshipService.cs
- SelectionProcessor.cs
- PrivilegeNotHeldException.cs
- XsdBuildProvider.cs
- Cursors.cs
- _BufferOffsetSize.cs
- TableSectionStyle.cs
- Control.cs
- SplineQuaternionKeyFrame.cs
- EventListenerClientSide.cs
- LocatorManager.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- TextElementEnumerator.cs
- DashStyles.cs
- AmbientLight.cs
- SHA384.cs
- LineSegment.cs
- UriWriter.cs
- CommandBindingCollection.cs
- BitmapPalette.cs
- GradientSpreadMethodValidation.cs
- FormViewPagerRow.cs
- ObjectStorage.cs
- ConfigurationStrings.cs
- HtmlProps.cs
- Base64Encoder.cs
- AuthenticationModulesSection.cs
- BufferBuilder.cs
- InfoCardRequestException.cs
- ApplicationGesture.cs
- RolePrincipal.cs
- XmlBindingWorker.cs
- MiniCustomAttributeInfo.cs
- CacheEntry.cs
- UInt64Converter.cs
- UInt32.cs
- GridViewCellAutomationPeer.cs
- Dynamic.cs
- PropertyCollection.cs
- MediaTimeline.cs
- PipelineModuleStepContainer.cs
- WhitespaceRuleReader.cs
- GridViewHeaderRowPresenter.cs
- ByteAnimationUsingKeyFrames.cs
- SendMailErrorEventArgs.cs
- RuleConditionDialog.cs
- ConfigXmlElement.cs
- PopOutPanel.cs
- Stackframe.cs
- SystemParameters.cs
- UnsafeNativeMethods.cs
- ConstructorNeedsTagAttribute.cs
- TextParagraph.cs
- GraphicsState.cs
- WindowsFormsHost.cs
- Int16Storage.cs
- DataTableReaderListener.cs
- ObjectToIdCache.cs
- WindowsSysHeader.cs
- TypeTypeConverter.cs
- MarkupObject.cs
- StandardOleMarshalObject.cs
- MultiAsyncResult.cs
- DataTrigger.cs
- Utils.cs
- UndoManager.cs
- ViewGenerator.cs
- ArgumentOutOfRangeException.cs
- UInt64Converter.cs
- OciEnlistContext.cs
- Rijndael.cs
- Padding.cs
- BoundPropertyEntry.cs
- DocumentApplicationJournalEntry.cs
- CodeSubDirectoriesCollection.cs
- _SslStream.cs
- ConfigurationLocationCollection.cs
- EditorZoneBase.cs
- MembershipSection.cs
- InvalidCastException.cs
- TextSearch.cs
- DiscoveryCallbackBehavior.cs
- LogStore.cs