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

◆ EqualityOperator()

QilNode System.Xml.Xsl.XPath.XPathBuilder.EqualityOperator ( XPathOperator op,
QilNode left,
QilNode right )
inlineprivateinherited

Definition at line 519 of file XPathBuilder.cs.

520 {
521 XmlQueryType xmlType = left.XmlType;
522 XmlQueryType xmlType2 = right.XmlType;
523 if (_f.IsAnyType(left) || _f.IsAnyType(right))
524 {
525 return _f.InvokeEqualityOperator(s_qilOperator[(int)op], left, right);
526 }
527 if (xmlType.IsNode && xmlType2.IsNode)
528 {
529 return CompareNodeSetAndNodeSet(op, left, right, XmlTypeCode.String);
530 }
531 if (xmlType.IsNode)
532 {
533 return CompareNodeSetAndValue(op, left, right, xmlType2.TypeCode);
534 }
535 if (xmlType2.IsNode)
536 {
537 return CompareNodeSetAndValue(op, right, left, xmlType.TypeCode);
538 }
540 return CompareValues(op, left, right, compType);
541 }
virtual XmlQueryType XmlType
Definition QilNode.cs:29
QilNode CompareValues(XPathOperator op, QilNode left, QilNode right, XmlTypeCode compType)
QilNode CompareNodeSetAndNodeSet(XPathOperator op, QilNode left, QilNode right, XmlTypeCode compType)
QilNode CompareNodeSetAndValue(XPathOperator op, QilNode nodeset, QilNode val, XmlTypeCode compType)
readonly XPathQilFactory _f
static readonly QilNodeType[] s_qilOperator
QilNode InvokeEqualityOperator(QilNodeType op, QilNode left, QilNode right)

References System.Xml.Xsl.XPath.XPathBuilder._f, System.Xml.Xsl.XPath.XPathBuilder.CompareNodeSetAndNodeSet(), System.Xml.Xsl.XPath.XPathBuilder.CompareNodeSetAndValue(), System.Xml.Xsl.XPath.XPathBuilder.CompareValues(), System.Xml.Dictionary, System.Xml.Xsl.XPath.XPathQilFactory.InvokeEqualityOperator(), System.Xml.Xsl.XPath.XPathQilFactory.IsAnyType(), System.Xml.Xsl.XmlQueryType.IsNode, System.Xml.Xsl.XPath.XPathBuilder.s_qilOperator, System.Xml.Xsl.XmlQueryType.TypeCode, and System.Xml.Xsl.Qil.QilNode.XmlType.

Referenced by System.Xml.Xsl.XPath.XPathBuilder.Operator().