11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/simpler_enum.rb', line 11
def simpler_enum(single_size_hash)
fail ArgumentError if single_size_hash.size != 1
name, enum_values = single_size_hash.first
define_read_enum_values_method_to_class!(name.to_s.pluralize, enum_values)
define_read_enum_value_method_to_instance!(name)
define_write_enum_value_method_to_instance!(name)
enum_values.each do |key, _|
define_query_enum_state_method_to_instance!(name, key)
define_change_enum_state_method_to_instance!(name, key)
end
end
|