Class: BitAttrs::ActiveRecordBinding
- Inherits:
-
Object
- Object
- BitAttrs::ActiveRecordBinding
- Defined in:
- lib/bit_attrs/bindings/active_record_binding.rb
Class Method Summary collapse
- .should_be_created?(klass) ⇒ Boolean
- .with(klass, attr_name, bitset) ⇒ Object
- .without(klass, attr_name, bitset) ⇒ Object
Class Method Details
.should_be_created?(klass) ⇒ Boolean
4 5 6 7 8 9 |
# 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) ⇒ Object
11 12 13 |
# 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) ⇒ Object
15 16 17 |
# 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 |