Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
WithParamAction.cs
Go to the documentation of this file.
2
4{
9
10 internal override void Compile(Compiler compiler)
11 {
14 if (compiler.Recurse())
15 {
17 compiler.ToParent();
18 if (selectKey != -1 && containedActions != null)
19 {
21 }
22 }
23 }
24
25 internal override void Execute(Processor processor, ActionFrame frame)
26 {
27 switch (frame.State)
28 {
29 case 0:
30 if (selectKey != -1)
31 {
32 object value = processor.RunQuery(frame, selectKey);
33 processor.SetParameter(name, value);
34 frame.Finished();
35 }
36 else if (containedActions == null)
37 {
38 processor.SetParameter(name, string.Empty);
39 frame.Finished();
40 }
41 else
42 {
44 processor.PushOutput(output);
45 processor.PushActionFrame(frame);
46 frame.State = 1;
47 }
48 break;
49 case 1:
50 {
52 processor.SetParameter(name, ((NavigatorOutput)recordOutput).Navigator);
53 frame.Finished();
54 break;
55 }
56 }
57 }
58}
static string Xslt_VariableCntSel2
Definition SR.cs:1894
Definition SR.cs:7
static XsltException Create(string res, params string[] args)
void CompileAttributes(Compiler compiler)
void CheckRequiredAttribute(Compiler compiler, object attrValue, string attrName)
override void Execute(Processor processor, ActionFrame frame)
override void Compile(Compiler compiler)