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

◆ Read()

static OptimizerPatterns System.Xml.Xsl.IlGen.OptimizerPatterns.Read ( QilNode nd)
inlinestatic

Definition at line 25 of file OptimizerPatterns.cs.

26 {
27 OptimizerPatterns optimizerPatterns = ((nd.Annotation is XmlILAnnotation xmlILAnnotation) ? xmlILAnnotation.Patterns : null);
28 if (optimizerPatterns == null)
29 {
30 if (!nd.XmlType.MaybeMany)
31 {
32 if (s_zeroOrOneDefault == null)
33 {
34 optimizerPatterns = new OptimizerPatterns();
35 optimizerPatterns.AddPattern(OptimizerPatternName.IsDocOrderDistinct);
36 optimizerPatterns.AddPattern(OptimizerPatternName.SameDepth);
39 }
40 else
41 {
43 }
44 }
45 else if (nd.XmlType.IsDod)
46 {
47 if (s_dodDefault == null)
48 {
49 optimizerPatterns = new OptimizerPatterns();
50 optimizerPatterns.AddPattern(OptimizerPatternName.IsDocOrderDistinct);
53 }
54 else
55 {
57 }
58 }
59 else if (s_maybeManyDefault == null)
60 {
61 optimizerPatterns = new OptimizerPatterns();
64 }
65 else
66 {
68 }
69 }
70 return optimizerPatterns;
71 }
static volatile OptimizerPatterns s_dodDefault
static volatile OptimizerPatterns s_maybeManyDefault
static volatile OptimizerPatterns s_zeroOrOneDefault

References System.Xml.Dictionary, System.Xml.Xsl.IlGen.OptimizerPatterns.s_dodDefault, System.Xml.Xsl.IlGen.OptimizerPatterns.s_maybeManyDefault, and System.Xml.Xsl.IlGen.OptimizerPatterns.s_zeroOrOneDefault.

Referenced by System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.AllowDodReverse(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.AllowJoinAndDod(), System.Xml.Xsl.IlGen.XmlILVisitor.CachesResult(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.EliminateUnusedGlobals(), System.Xml.Xsl.XmlILGenerator.EvaluateGlobalValues(), System.Xml.Xsl.IlGen.XmlILVisitor.HandleDodPatterns(), System.Xml.Xsl.IlGen.XmlILVisitor.HandleFilterPatterns(), System.Xml.Xsl.IlGen.OptimizerPatterns.Inherit(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.IsDocOrderDistinct(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.IsStepPattern(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.NoReplace(), System.Xml.Xsl.IlGen.XmlILVisitor.StartBinding(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitDocOrderDistinct(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitFilter(), System.Xml.Xsl.IlGen.XmlILVisitor.VisitInvoke(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitIsEmpty(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitIsType(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLength(), System.Xml.Xsl.IlGen.XmlILVisitor.VisitLength(), System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitLoop(), System.Xml.Xsl.IlGen.XmlILVisitor.VisitRtfCtor(), and System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitUnion().