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

◆ Inherit()

static void System.Xml.Xsl.IlGen.OptimizerPatterns.Inherit ( QilNode ndSrc,
QilNode ndDst,
OptimizerPatternName pattern )
inlinestatic

Definition at line 93 of file OptimizerPatterns.cs.

94 {
95 OptimizerPatterns optimizerPatterns = Read(ndSrc);
96 if (optimizerPatterns.MatchesPattern(pattern))
97 {
98 OptimizerPatterns optimizerPatterns2 = Write(ndDst);
99 optimizerPatterns2.AddPattern(pattern);
100 switch (pattern)
101 {
102 case OptimizerPatternName.Step:
104 optimizerPatterns2.AddArgument(OptimizerPatternArgument.StepInput, optimizerPatterns.GetArgument(OptimizerPatternArgument.StepInput));
105 break;
106 case OptimizerPatternName.FilterElements:
107 optimizerPatterns2.AddArgument(OptimizerPatternArgument.ElementQName, optimizerPatterns.GetArgument(OptimizerPatternArgument.ElementQName));
108 break;
109 case OptimizerPatternName.FilterContentKind:
110 optimizerPatterns2.AddArgument(OptimizerPatternArgument.ElementQName, optimizerPatterns.GetArgument(OptimizerPatternArgument.ElementQName));
111 break;
112 case OptimizerPatternName.EqualityIndex:
114 optimizerPatterns2.AddArgument(OptimizerPatternArgument.StepInput, optimizerPatterns.GetArgument(OptimizerPatternArgument.StepInput));
115 break;
116 case OptimizerPatternName.DodReverse:
117 case OptimizerPatternName.JoinAndDod:
118 optimizerPatterns2.AddArgument(OptimizerPatternArgument.ElementQName, optimizerPatterns.GetArgument(OptimizerPatternArgument.ElementQName));
119 break;
120 case OptimizerPatternName.MaxPosition:
121 optimizerPatterns2.AddArgument(OptimizerPatternArgument.ElementQName, optimizerPatterns.GetArgument(OptimizerPatternArgument.ElementQName));
122 break;
123 case OptimizerPatternName.SingleTextRtf:
124 optimizerPatterns2.AddArgument(OptimizerPatternArgument.ElementQName, optimizerPatterns.GetArgument(OptimizerPatternArgument.ElementQName));
125 break;
126 case OptimizerPatternName.FilterAttributeKind:
127 case OptimizerPatternName.IsDocOrderDistinct:
128 case OptimizerPatternName.IsPositional:
129 case OptimizerPatternName.SameDepth:
130 break;
131 }
132 }
133 }
static OptimizerPatterns Write(QilNode nd)
static OptimizerPatterns Read(QilNode nd)

References System.Xml.Dictionary, System.Xml.Xsl.IlGen.OptimizerPatterns.Read(), and System.Xml.Xsl.IlGen.OptimizerPatterns.Write().

Referenced by System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDocOrderDistinct(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitFilter(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitInvoke(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLet(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLoop(), and System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitOptimizeBarrier().