Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- PropertyRecord.cs
- FormatSelectingMessageInspector.cs
- MethodImplAttribute.cs
- EdmError.cs
- AttributeUsageAttribute.cs
- TargetConverter.cs
- ChannelManager.cs
- CodePropertyReferenceExpression.cs
- SymbolPair.cs
- ZipIOLocalFileDataDescriptor.cs
- DefaultSerializationProviderAttribute.cs
- ResolveResponseInfo.cs
- TypeConstant.cs
- DataRecordObjectView.cs
- WindowsEditBox.cs
- FloatAverageAggregationOperator.cs
- UrlPropertyAttribute.cs
- WindowsImpersonationContext.cs
- AsyncStreamReader.cs
- QilReference.cs
- Brush.cs
- FileUtil.cs
- errorpatternmatcher.cs
- FormsAuthenticationUser.cs
- WebPartRestoreVerb.cs
- DataColumnChangeEvent.cs
- connectionpool.cs
- WsatConfiguration.cs
- EncryptedData.cs
- ParamArrayAttribute.cs
- FileSystemEventArgs.cs
- RegistrationServices.cs
- DateTimeStorage.cs
- XmlNodeList.cs
- AutoGeneratedFieldProperties.cs
- CatchDesigner.xaml.cs
- QilInvokeEarlyBound.cs
- StringFreezingAttribute.cs
- FixUp.cs
- VBCodeProvider.cs
- ItemsChangedEventArgs.cs
- WebPartVerb.cs
- MessageBox.cs
- SubMenuStyle.cs
- EasingFunctionBase.cs
- CharAnimationBase.cs
- ContextStaticAttribute.cs
- PopupControlService.cs
- RichTextBoxAutomationPeer.cs
- ClientApiGenerator.cs
- Assembly.cs
- HelpPage.cs
- GenericRootAutomationPeer.cs
- sqlpipe.cs
- RoutingConfiguration.cs
- WizardDesigner.cs
- LockCookie.cs
- WebPartsSection.cs
- MethodCallTranslator.cs
- RadialGradientBrush.cs
- StateDesigner.Layouts.cs
- DataGridViewRow.cs
- Stacktrace.cs
- HttpWebRequest.cs
- PropertyMap.cs
- Function.cs
- CodeNamespaceCollection.cs
- XPathCompiler.cs
- Cloud.cs
- NetworkStream.cs
- AdjustableArrowCap.cs
- SafeFileMappingHandle.cs
- MethodBuilderInstantiation.cs
- TimeSpanConverter.cs
- AssemblyResourceLoader.cs
- MediaContextNotificationWindow.cs
- PeerNodeAddress.cs
- CultureSpecificCharacterBufferRange.cs
- _FtpDataStream.cs
- EventRoute.cs
- LocalizationParserHooks.cs
- VirtualizedCellInfoCollection.cs
- SafeSecurityHelper.cs
- SoapFault.cs
- ReadOnlyDataSourceView.cs
- rsa.cs
- AttributedMetaModel.cs
- X509Utils.cs
- TextSerializer.cs
- NativeActivityContext.cs
- LinqDataSourceDisposeEventArgs.cs
- SizeValueSerializer.cs
- ContentControl.cs
- UserInitiatedRoutedEventPermissionAttribute.cs
- OleStrCAMarshaler.cs
- validation.cs
- DataListItem.cs
- SubqueryRules.cs
- SqlClientWrapperSmiStreamChars.cs
- TextFormattingConverter.cs