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, column_name: nil, values:) ⇒ Object



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

def attr_bitwise(name, column_name: nil, values:)
  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