Module: MixinStringEnum

Defined in:
lib/rails_string_enum/mixin_string_enum.rb

Instance Method Summary collapse

Instance Method Details

#string_enum(name, enums) ⇒ Object

this is a simplified version ActiveRecordStringEnum, for any Class or Module, support only constants



5
6
7
8
9
10
11
12
13
14
15
# File 'lib/rails_string_enum/mixin_string_enum.rb', line 5

def string_enum(name, enums)

  const_name_all_values = name.to_s.pluralize.upcase
  const_set const_name_all_values, enums.map(&:to_s)

  klass = self
  enums.each do |value|
    const_set value.to_s.upcase, value.to_s
  end

end