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

◆ ProcessOperator()

Query MS.Internal.Xml.XPath.QueryBuilder.ProcessOperator ( Operator root,
out Props props )
inlineprivate

Definition at line 251 of file QueryBuilder.cs.

252 {
254 Query query = ProcessNode(root.Operand1, Flags.None, out props2);
256 Query query2 = ProcessNode(root.Operand2, Flags.None, out props3);
257 props = props2 | props3;
258 switch (root.OperatorType)
259 {
260 case Operator.Op.PLUS:
261 case Operator.Op.MINUS:
262 case Operator.Op.MUL:
263 case Operator.Op.DIV:
264 case Operator.Op.MOD:
265 return new NumericExpr(root.OperatorType, query, query2);
266 case Operator.Op.EQ:
267 case Operator.Op.NE:
268 case Operator.Op.LT:
269 case Operator.Op.LE:
270 case Operator.Op.GT:
271 case Operator.Op.GE:
272 return new LogicalExpr(root.OperatorType, query, query2);
273 case Operator.Op.OR:
274 case Operator.Op.AND:
275 return new BooleanExpr(root.OperatorType, query, query2);
276 case Operator.Op.UNION:
277 props |= Props.NonFlat;
278 return new UnionExpr(query, query2);
279 default:
280 return null;
281 }
282 }
Query ProcessNode(AstNode root, Flags flags, out Props props)

References MS.Internal.Xml.XPath.Operator.Operand1, MS.Internal.Xml.XPath.Operator.Operand2, MS.Internal.Xml.XPath.Operator.OperatorType, and MS.Internal.Xml.XPath.QueryBuilder.ProcessNode().

Referenced by MS.Internal.Xml.XPath.QueryBuilder.ProcessNode().