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

◆ VisitIs()

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

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

Definition at line 1414 of file XmlILOptimizerVisitor.cs.

1415 {
1416 QilNode qilNode = local0[0];
1417 QilNode qilNode2 = local0[1];
1418 if (this[XmlILOptimization.FoldNone] && (object)qilNode.XmlType == XmlQueryTypeFactory.None && AllowReplace(XmlILOptimization.FoldNone, local0))
1419 {
1420 return Replace(XmlILOptimization.FoldNone, local0, VisitNop(f.Nop(qilNode)));
1421 }
1422 if (this[XmlILOptimization.FoldNone] && (object)qilNode2.XmlType == XmlQueryTypeFactory.None && AllowReplace(XmlILOptimization.FoldNone, local0))
1423 {
1424 return Replace(XmlILOptimization.FoldNone, local0, VisitNop(f.Nop(qilNode2)));
1425 }
1426 if (this[XmlILOptimization.EliminateIs] && qilNode2 == qilNode && AllowReplace(XmlILOptimization.EliminateIs, local0))
1427 {
1428 return Replace(XmlILOptimization.EliminateIs, local0, VisitTrue(f.True()));
1429 }
1430 return NoReplace(local0);
1431 }
bool AllowReplace(XmlILOptimization pattern, QilNode original)
override QilNode VisitNop(QilUnary local0)
QilUnary Nop(QilNode child)
override QilNode VisitTrue(QilNode n)

References System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.AllowReplace(), 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.Qil.QilFactory.True(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNop(), and System.Xml.Xsl.Qil.QilPatternVisitor.VisitTrue().

Referenced by System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitEq(), and System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNe().