Module: BitwiseAttribute::ClassMethods

Includes:
ActiveRecordMethods
Defined in:
lib/bitwise_attribute.rb

Instance Method Summary collapse

Methods included from ActiveRecordMethods

#cleanup_keys, #define_named_scopes

Instance Method Details

#attr_bitwise(name, values:, column_name: nil) ⇒ Object



19
20
21
22
23
24
25
26
# File 'lib/bitwise_attribute.rb', line 19

def attr_bitwise(name, values:, column_name: nil)
  column_name ||= "#{name.to_s.singularize}_mask"

  mapping = build_mapping(values)

  define_class_methods(name, column_name, mapping)
  define_instance_methods(name, column_name, mapping)
end