Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / CopyNamespacesAction.cs / 1305376 / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DescendentsWalkerBase.cs
- DefaultWorkflowSchedulerService.cs
- ResXResourceSet.cs
- ToolBarDesigner.cs
- EncryptedKeyIdentifierClause.cs
- ListenerAdapter.cs
- LicenseContext.cs
- ConfigurationStrings.cs
- OracleTimeSpan.cs
- OneOfScalarConst.cs
- PenLineJoinValidation.cs
- ConnectionInterfaceCollection.cs
- SemanticResultValue.cs
- Vector3DValueSerializer.cs
- TextCompositionEventArgs.cs
- ObjectStateManager.cs
- SimpleApplicationHost.cs
- EUCJPEncoding.cs
- DecoderFallbackWithFailureFlag.cs
- InfoCardKeyedHashAlgorithm.cs
- TextTreePropertyUndoUnit.cs
- BinaryObjectReader.cs
- XmlRootAttribute.cs
- KeyValuePair.cs
- DiscoveryInnerClientAdhoc11.cs
- FixUp.cs
- ToolBarDesigner.cs
- SinglePageViewer.cs
- UnionCodeGroup.cs
- RawAppCommandInputReport.cs
- ProgramNode.cs
- FontFamilyIdentifier.cs
- MaskDesignerDialog.cs
- OrderedDictionary.cs
- BamlResourceSerializer.cs
- CollectionChangeEventArgs.cs
- ExceptionHandlerDesigner.cs
- NativeActivity.cs
- SafeNativeMethodsOther.cs
- Menu.cs
- PrinterResolution.cs
- DataObjectEventArgs.cs
- DataBindingCollection.cs
- GraphicsPathIterator.cs
- Stacktrace.cs
- DragDrop.cs
- SimplePropertyEntry.cs
- DbConnectionPoolOptions.cs
- Panel.cs
- AsnEncodedData.cs
- DataGridViewCellEventArgs.cs
- SchemeSettingElementCollection.cs
- ArrayTypeMismatchException.cs
- DataGridViewCellConverter.cs
- PolicyManager.cs
- CodeMethodInvokeExpression.cs
- DocobjHost.cs
- HttpWriter.cs
- NameValueCollection.cs
- RepeatInfo.cs
- BinaryObjectWriter.cs
- CountdownEvent.cs
- externdll.cs
- DesignerEditorPartChrome.cs
- IImplicitResourceProvider.cs
- TextBlock.cs
- LookupBindingPropertiesAttribute.cs
- DeferredReference.cs
- UTF7Encoding.cs
- UIElementParagraph.cs
- Compensate.cs
- DataTableClearEvent.cs
- MsmqInputSessionChannel.cs
- ExpressionBuilderContext.cs
- InputLangChangeRequestEvent.cs
- DelegateCompletionCallbackWrapper.cs
- SqlBuilder.cs
- CompiledQuery.cs
- TaskCanceledException.cs
- ReadOnlyCollection.cs
- XsltOutput.cs
- TypedServiceOperationListItem.cs
- XamlToRtfWriter.cs
- ToolStripControlHost.cs
- CodeAssignStatement.cs
- ExternalException.cs
- RegexNode.cs
- PrivateFontCollection.cs
- EdmRelationshipRoleAttribute.cs
- TemplateEditingVerb.cs
- FunctionMappingTranslator.cs
- TableParagraph.cs
- CellIdBoolean.cs
- AttachedPropertyBrowsableAttribute.cs
- PromptBuilder.cs
- ContentTextAutomationPeer.cs
- DataColumnMappingCollection.cs
- TextParagraphView.cs
- TemplateInstanceAttribute.cs
- MessageVersion.cs