class BitAttrs::ActiveRecordBinding

Public Class Methods

should_be_created?(klass) click to toggle source
# File lib/bit_attrs/bindings/active_record_binding.rb, line 4
def self.should_be_created?(klass)
  return false unless defined?(ActiveRecord)
  return false unless klass.ancestors.include?(ActiveRecord::Base)

  true
end
with(klass, attr_name, bitset) click to toggle source
# File lib/bit_attrs/bindings/active_record_binding.rb, line 11
def self.with(klass, attr_name, bitset)
  klass.where("#{attr_name}_mask & ? = ?", bitset.to_i, bitset.to_i)
end
without(klass, attr_name, bitset) click to toggle source
# File lib/bit_attrs/bindings/active_record_binding.rb, line 15
def self.without(klass, attr_name, bitset)
  klass.where("#{attr_name}_mask IS NULL OR #{attr_name}_mask & ? = ?", bitset.to_i, 0)
end