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

◆ VisitRtfCtor()

override QilNode System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitRtfCtor ( QilBinary local0)
inlineprotectedvirtual

Reimplemented from System.Xml.Xsl.Qil.QilVisitor.

Definition at line 2488 of file XmlILOptimizerVisitor.cs.

2489 {
2490 QilNode qilNode = local0[0];
2491 QilNode qilNode2 = local0[1];
2492 if (this[XmlILOptimization.FoldNone] && (object)qilNode.XmlType == XmlQueryTypeFactory.None && AllowReplace(XmlILOptimization.FoldNone, local0))
2493 {
2494 return Replace(XmlILOptimization.FoldNone, local0, VisitNop(f.Nop(qilNode)));
2495 }
2496 if (this[XmlILOptimization.AnnotateConstruction] && AllowReplace(XmlILOptimization.AnnotateConstruction, local0))
2497 {
2499 }
2500 if (this[XmlILOptimization.AnnotateSingleTextRtf] && qilNode.NodeType == QilNodeType.TextCtor)
2501 {
2502 QilNode arg = qilNode[0];
2503 if (AllowReplace(XmlILOptimization.AnnotateSingleTextRtf, local0))
2504 {
2505 OptimizerPatterns.Write(local0).AddPattern(OptimizerPatternName.SingleTextRtf);
2506 OptimizerPatterns.Write(local0).AddArgument(OptimizerPatternArgument.ElementQName, arg);
2507 XmlILConstructInfo.Write(local0).PullFromIteratorFirst = true;
2508 }
2509 }
2510 return NoReplace(local0);
2511 }
bool AllowReplace(XmlILOptimization pattern, QilNode original)
override QilNode VisitNop(QilUnary local0)
virtual QilNode Analyze(QilNode ndConstr, QilNode ndContent)
QilUnary Nop(QilNode child)

References System.Xml.Xsl.IlGen.XmlILOptimizerVisitor._contentAnalyzer, System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.AllowReplace(), System.Xml.Xsl.IlGen.XmlILStateAnalyzer.Analyze(), System.Xml.Dictionary, System.Xml.Xsl.Qil.QilReplaceVisitor.f, System.Xml.Xsl.XmlQueryTypeFactory.None, System.Xml.Xsl.Qil.QilFactory.Nop(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.NoReplace(), System.Xml.Replace, System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNop(), System.Xml.Xsl.IlGen.OptimizerPatterns.Write(), and System.Xml.Xsl.IlGen.XmlILConstructInfo.Write().