Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Execute()

override void System.Xml.Xsl.XsltOld.CopyNamespacesAction.Execute ( Processor processor,
ActionFrame frame )
inlinepackage

Definition at line 14 of file CopyNamespacesAction.cs.

15 {
16 while (processor.CanContinue)
17 {
18 switch (frame.State)
19 {
20 default:
21 return;
22 case 0:
23 if (!frame.Node.MoveToFirstNamespace(XPathNamespaceScope.ExcludeXml))
24 {
25 frame.Finished();
26 return;
27 }
28 frame.State = 2;
29 goto case 2;
30 case 2:
31 if (processor.BeginEvent(XPathNodeType.Namespace, null, frame.Node.LocalName, frame.Node.Value, empty: false))
32 {
33 frame.State = 4;
34 break;
35 }
36 return;
37 case 4:
38 if (processor.EndEvent(XPathNodeType.Namespace))
39 {
40 frame.State = 5;
41 break;
42 }
43 return;
44 case 5:
45 if (frame.Node.MoveToNextNamespace(XPathNamespaceScope.ExcludeXml))
46 {
47 frame.State = 2;
48 break;
49 }
50 frame.Node.MoveToParent();
51 frame.Finished();
52 return;
53 case 1:
54 case 3:
55 return;
56 }
57 }
58 }

References System.Xml.Dictionary, System.Xml.Xsl.XsltOld.ActionFrame.Finished(), System.Xml.XPath.XPathNavigator.LocalName, System.Xml.XPath.XPathNavigator.MoveToFirstNamespace(), System.Xml.XPath.XPathNavigator.MoveToNextNamespace(), System.Xml.XPath.XPathNavigator.MoveToParent(), System.Xml.Xsl.XsltOld.ActionFrame.Node, System.Xml.Xsl.XsltOld.ActionFrame.State, and System.Xml.XPath.XPathItem.Value.