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

◆ SafeDocOrderDistinct()

QilNode System.Xml.Xsl.XPath.XPathQilFactory.SafeDocOrderDistinct ( QilNode n)
inlineinherited

Definition at line 46 of file XPathQilFactory.cs.

47 {
48 XmlQueryType xmlType = n.XmlType;
49 if (xmlType.MaybeMany)
50 {
51 if (xmlType.IsNode && xmlType.IsNotRtf)
52 {
53 return DocOrderDistinct(n);
54 }
56 if (!xmlType.IsAtomicValue)
57 {
58 return Loop(qilIterator = Let(n), Conditional(Gt(Length(qilIterator), Int32(1)), DocOrderDistinct(TypeAssert(qilIterator, XmlQueryTypeFactory.NodeNotRtfS)), qilIterator));
59 }
60 }
61 return n;
62 }

References System.Xml.Xsl.Qil.Conditional, System.Xml.Dictionary, System.Xml.Xsl.Qil.DocOrderDistinct, System.Xml.Xsl.XPath.Gt, System.Xml.Int32, System.Xml.Xsl.XmlQueryType.IsAtomicValue, System.Xml.Xsl.XmlQueryType.IsNode, System.Xml.Xsl.XmlQueryType.IsNotRtf, System.Xml.Schema.Length, System.Xml.Xsl.Qil.Let, System.Xml.Xsl.Qil.Loop, System.Xml.Xsl.XmlQueryType.MaybeMany, System.Xml.Xsl.XmlQueryTypeFactory.NodeNotRtfS, and System.Xml.Xsl.Qil.TypeAssert.

Referenced by System.Xml.Xsl.XPath.XPathQilFactory.ConvertToNumber(), System.Xml.Xsl.XPath.XPathQilFactory.ConvertToString(), and System.Xml.Xsl.Xslt.QilGenerator.ResolveFunction().