module Predicate::Sugar

Public Instance Methods

between(middle, lower_bound, upper_bound) click to toggle source
# File lib/predicate/sugar.rb, line 11
def between(middle, lower_bound, upper_bound)
  _factor_predicate [:and, [:gte, sexpr(middle), sexpr(lower_bound)],
                           [:lte, sexpr(middle), sexpr(upper_bound)]]
end
is_null(operand) click to toggle source
# File lib/predicate/sugar.rb, line 38
def is_null(operand)
  eq(operand, nil)
end
match(left, right, options = nil) click to toggle source
Calls superclass method
# File lib/predicate/sugar.rb, line 16
def match(left, right, options = nil)
  super(left, right, options)
end
max_size(left, right) click to toggle source
# File lib/predicate/sugar.rb, line 31
def max_size(left, right)
  unless right.is_a?(Integer)
    raise ArgumentError, "Integer expected, got #{right}"
  end
  has_size(left, 0..right)
end
min_size(left, right) click to toggle source
# File lib/predicate/sugar.rb, line 20
def min_size(left, right)
  unless right.is_a?(Integer)
    raise ArgumentError, "Integer expected, got #{right}"
  end
  if RUBY_VERSION >= "2.6"
    has_size(left, Range.new(right,nil))
  else
    has_size(left, Range.new(right,(2**32-1)))
  end
end