Sha256: eee0dcf8e95084bbba1b4970c7a17944f1a4bc711bf3db6ceeffa8f1fae7858f

Contents?: true

Size: 645 Bytes

Versions: 6

Compression:

Stored size: 645 Bytes

Contents

module Arel
  module Predicates
    class Binary < Predicate
      def eval(row)
        operand1.eval(row).send(operator, operand2.eval(row))
      end
    end

    class Equality < Binary
      def operator; :== end
    end

    class GreaterThanOrEqualTo < Binary
      def operator; :>= end
    end

    class GreaterThan < Binary
      def operator; :> end
    end

    class LessThanOrEqualTo < Binary
      def operator; :<= end
    end

    class LessThan < Binary
      def operator; :< end
    end

    class Match < Binary
      def operator; :=~ end
    end

    class In < Binary
      def operator; :include? end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
arel-0.3.1 lib/arel/engines/memory/predicates.rb
arel-0.3.0 lib/arel/engines/memory/predicates.rb
arel-0.2.1 lib/arel/engines/memory/predicates.rb
arel-0.2.0 lib/arel/engines/memory/predicates.rb
arel-0.2.pre lib/arel/engines/memory/predicates.rb
arel-0.1.2 lib/arel/engines/memory/predicates.rb