public static FilterOperatorBase Or(this FilterOperatorBase left, FilterOperatorBase right) { return(new FilterOperatorOr { LeftValue = left, RightValue = right }); }
private static FilterOperatorBase GenerateSink( TokenReader reader, FilterOperatorBase leftValue, TokenType type, FilterTwoValueOperator oper, Func <TokenReader, FilterOperatorBase> selfCall) { reader.AssertGet(type); var rightValue = selfCall(reader); oper.LeftValue = leftValue; oper.RightValue = rightValue; return(oper); }
public static FilterOperatorBase And(this FilterOperatorBase left, FilterOperatorBase right) { if (left is FilterOperatorOr) { left = new FilterBracket { Value = left }; } if (right is FilterOperatorOr) { right = new FilterBracket { Value = right }; } return(new FilterOperatorAnd { LeftValue = left, RightValue = right }); }