Module: Hipaa::Enum::ClassMethods

Defined in:
lib/hippa/enum.rb

Instance Method Summary collapse

Instance Method Details

#enum(name, values, options = {}) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/hippa/enum.rb', line 10

def enum(name, values, options = {})
  field_name = :"#{Hipaa::Enum.configuration.field_name_prefix}#{name}"
  options = default_options(values).merge(options)

  set_values_constant name, values

  create_field field_name, options

  create_validations field_name, values, options
  define_value_scopes_and_accessors field_name, values, options
  define_field_accessor name, field_name, options
end