Class: BitmaskAttributes::Definition

Inherits:
Object
  • Object
show all
Defined in:
lib/bitmask_attributes/definition.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attribute, values = [], &extension) ⇒ Definition

Returns a new instance of Definition.



5
6
7
8
9
# File 'lib/bitmask_attributes/definition.rb', line 5

def initialize(attribute, values=[], &extension)
  @attribute = attribute
  @values = values
  @extension = extension
end

Instance Attribute Details

#attributeObject (readonly)

Returns the value of attribute attribute.



3
4
5
# File 'lib/bitmask_attributes/definition.rb', line 3

def attribute
  @attribute
end

#extensionObject (readonly)

Returns the value of attribute extension.



3
4
5
# File 'lib/bitmask_attributes/definition.rb', line 3

def extension
  @extension
end

#valuesObject (readonly)

Returns the value of attribute values.



3
4
5
# File 'lib/bitmask_attributes/definition.rb', line 3

def values
  @values
end

Instance Method Details

#install_on(model) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'lib/bitmask_attributes/definition.rb', line 11

def install_on(model)
  validate_for model
  generate_bitmasks_on model
  override model
  create_convenience_class_method_on model
  create_convenience_instance_methods_on model
  create_scopes_on model
  create_attribute_methods_on model
end