Class: LiteralEnums::Rails::EnumType

Inherits:
ActiveModel::Type::String
  • Object
show all
Defined in:
lib/literal_enums/rails/enum_type.rb

Instance Method Summary collapse

Constructor Details

#initialize(enum) ⇒ EnumType

Returns a new instance of EnumType.



4
5
6
# File 'lib/literal_enums/rails/enum_type.rb', line 4

def initialize(enum)
  @enum = enum
end

Instance Method Details

#cast_value(value) ⇒ Object



12
13
14
15
# File 'lib/literal_enums/rails/enum_type.rb', line 12

def cast_value(value)
  return value if value.is_a?(@enum)
  @enum.cast(value)
end

#serialize(value) ⇒ Object



17
18
19
# File 'lib/literal_enums/rails/enum_type.rb', line 17

def serialize(value)
  value.value
end

#typeObject



8
9
10
# File 'lib/literal_enums/rails/enum_type.rb', line 8

def type
  :enum
end