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

◆ NoReplace()

override QilNode System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.NoReplace ( QilNode node)
inlineprotectedvirtual

Reimplemented from System.Xml.Xsl.Qil.QilPatternVisitor.

Definition at line 269 of file XmlILOptimizerVisitor.cs.

270 {
271 if (node != null)
272 {
273 QilNodeType nodeType = node.NodeType;
274 if (nodeType <= QilNodeType.Invoke)
275 {
276 if ((uint)(nodeType - 12) <= 1u || (nodeType == QilNodeType.Invoke && ((QilInvoke)node).Function.MaybeSideEffects))
277 {
278 goto IL_002c;
279 }
280 }
281 else if (nodeType == QilNodeType.XsltInvokeLateBound || (nodeType == QilNodeType.XsltInvokeEarlyBound && ((QilInvokeEarlyBound)node).Name.NamespaceUri.Length != 0))
282 {
283 goto IL_002c;
284 }
285 int num = 0;
286 while (num < node.Count)
287 {
288 if (node[num] == null || !OptimizerPatterns.Read(node[num]).MatchesPattern(OptimizerPatternName.MaybeSideEffects))
289 {
290 num++;
291 continue;
292 }
293 goto IL_002c;
294 }
295 }
296 goto IL_0095;
297 IL_002c:
298 OptimizerPatterns.Write(node).AddPattern(OptimizerPatternName.MaybeSideEffects);
299 goto IL_0095;
300 IL_0095:
301 return node;
302 }

References System.Collections.Generic.Dictionary< TKey, TValue >.Count, System.Xml.Dictionary, System.Xml.Xsl.IlGen.OptimizerPatterns.Read(), and System.Xml.Xsl.IlGen.OptimizerPatterns.Write().

Referenced by System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAdd(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAfter(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAncestor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAncestorOrSelf(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAnd(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAttribute(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAttributeCtor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAverage(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitBefore(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitChoice(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitCommentCtor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitConditional(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitContent(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDataSource(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDeref(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDescendant(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDescendantOrSelf(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDifference(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDivide(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDocOrderDistinct(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDocumentCtor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitElementCtor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitEq(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitError(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitFilter(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitFollowingSibling(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitFunction(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitGe(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitGt(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitIntersection(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitInvoke(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitIs(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitIsEmpty(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitIsType(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLe(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLength(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLet(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLocalNameOf(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLoop(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLt(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitMaximum(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitMinimum(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitModulo(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitMultiply(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNameOf(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNamespaceDecl(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNamespaceUriOf(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNe(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNegate(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNodeRange(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNop(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitNot(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitOptimizeBarrier(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitOr(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitParent(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitPICtor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitPositionOf(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitPreceding(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitPrecedingSibling(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitPrefixOf(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitQilExpression(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitRawTextCtor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitRoot(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitRtfCtor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitSequence(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitSort(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitSortKey(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitStrConcat(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitStrLength(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitStrParseQName(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitSubtract(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitSum(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitTextCtor(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitTypeAssert(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitUnion(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitWarning(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitXPathFollowing(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitXPathNamespace(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitXPathNodeValue(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitXPathPreceding(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitXsltConvert(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitXsltCopy(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitXsltCopyOf(), and System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitXsltGenerateId().