Module: Class::Enum::ClassMethods
- Defined in:
- lib/class/enum.rb
Instance Method Summary collapse
-
#key?(name) ⇒ Boolean
Checks a field of given name exists You can also do like ‘Animal::DOG.instance_of?(Animal)`.
-
#keys ⇒ Array<Symbol>
Gets an array of enum field names.
-
#to_h ⇒ Hash{Symbol, Object}
Gets an hash of enum fields.
-
#value(name) ⇒ Object
Gets a field by given name You can also do like
Animal::DOG. -
#value?(obj) ⇒ Boolean
Checks given value is a field of this enum.
-
#values ⇒ Array
(also: #to_a)
Gets an array of enum fields.
Instance Method Details
#key?(name) ⇒ Boolean
Checks a field of given name exists You can also do like ‘Animal::DOG.instance_of?(Animal)`
61 62 63 64 |
# File 'lib/class/enum.rb', line 61 def key?(name) name = name.to_sym @enum_fields.key?(name) end |
#keys ⇒ Array<Symbol>
Gets an array of enum field names
92 93 94 |
# File 'lib/class/enum.rb', line 92 def keys @enum_fields.keys end |
#to_h ⇒ Hash{Symbol, Object}
Gets an hash of enum fields
98 99 100 |
# File 'lib/class/enum.rb', line 98 def to_h @enum_fields.dup end |
#value(name) ⇒ Object
Gets a field by given name You can also do like Animal::DOG
79 80 81 |
# File 'lib/class/enum.rb', line 79 def value(name) @enum_fields[name.to_sym] end |
#value?(obj) ⇒ Boolean
Checks given value is a field of this enum
70 71 72 |
# File 'lib/class/enum.rb', line 70 def value?(obj) @enum_fields.value?(obj) end |
#values ⇒ Array Also known as: to_a
Gets an array of enum fields
85 86 87 |
# File 'lib/class/enum.rb', line 85 def values @enum_fields.values end |