Beispiel #1
0
 public static FilterOperatorBase Or(this FilterOperatorBase left, FilterOperatorBase right)
 {
     return(new FilterOperatorOr
     {
         LeftValue = left,
         RightValue = right
     });
 }
Beispiel #2
0
        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);
        }
Beispiel #3
0
 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
     });
 }