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
- Variant.cs
- RuleConditionDialog.Designer.cs
- PrintEvent.cs
- CorePropertiesFilter.cs
- DocumentSequence.cs
- DataGridRowsPresenter.cs
- StickyNoteAnnotations.cs
- NavigationPropertyAccessor.cs
- SoapExtension.cs
- EditingCoordinator.cs
- ProcessHost.cs
- MultiPropertyDescriptorGridEntry.cs
- ComponentConverter.cs
- CounterCreationDataConverter.cs
- ZeroOpNode.cs
- ConstraintCollection.cs
- FrameworkTemplate.cs
- PanelStyle.cs
- Pen.cs
- UnicastIPAddressInformationCollection.cs
- CodeNamespaceImportCollection.cs
- WindowsListViewItem.cs
- SoapConverter.cs
- tibetanshape.cs
- NotImplementedException.cs
- ServiceProviders.cs
- SQLDecimal.cs
- ThreadPool.cs
- ParallelTimeline.cs
- ManagedWndProcTracker.cs
- QueryPageSettingsEventArgs.cs
- UserNameSecurityTokenProvider.cs
- CustomError.cs
- PointCollectionValueSerializer.cs
- Models.cs
- ImageCodecInfo.cs
- WebPartDescriptionCollection.cs
- RegionInfo.cs
- CodeCommentStatementCollection.cs
- Substitution.cs
- ArithmeticException.cs
- MediaCommands.cs
- StaticExtension.cs
- IPAddress.cs
- TextLine.cs
- SafeLibraryHandle.cs
- QuaternionRotation3D.cs
- DesignerEditorPartChrome.cs
- ConfigurationSectionCollection.cs
- CodeStatementCollection.cs
- Tag.cs
- ComponentCodeDomSerializer.cs
- CodeDefaultValueExpression.cs
- NativeMethods.cs
- XmlDeclaration.cs
- Schema.cs
- InputDevice.cs
- XmlCharCheckingReader.cs
- GridEntry.cs
- HttpAsyncResult.cs
- TypeGeneratedEventArgs.cs
- UICuesEvent.cs
- XmlDataSourceView.cs
- HtmlForm.cs
- DataGridViewButtonColumn.cs
- ConfigurationStrings.cs
- UTF32Encoding.cs
- DefaultEvaluationContext.cs
- ProgressBar.cs
- EntityDesignerDataSourceView.cs
- DelegateHelpers.cs
- HideDisabledControlAdapter.cs
- ElementHost.cs
- FileLogRecordStream.cs
- SplayTreeNode.cs
- Helpers.cs
- ProxyHelper.cs
- BoolExpressionVisitors.cs
- BufferedWebEventProvider.cs
- UriSectionData.cs
- BuilderPropertyEntry.cs
- DBCSCodePageEncoding.cs
- AnonymousIdentificationModule.cs
- CodeObject.cs
- XmlElementCollection.cs
- _BufferOffsetSize.cs
- FragmentQuery.cs
- DefinitionBase.cs
- TextOptions.cs
- FixedFlowMap.cs
- RegexRunner.cs
- CryptoHandle.cs
- DataBindingHandlerAttribute.cs
- XmlSchemaAll.cs
- TextEditorCopyPaste.cs
- FileAuthorizationModule.cs
- CompiledELinqQueryState.cs
- CdpEqualityComparer.cs
- PagerSettings.cs
- JapaneseLunisolarCalendar.cs