Class: Castkit::Types::Boolean

Inherits:
Generic
  • Object
show all
Defined in:
lib/castkit/types/boolean.rb

Overview

Type definition for ‘:boolean` attributes.

Converts strings or numbers into boolean values based on common truthy/falsy indicators.

This class is used internally by Castkit when an attribute is defined with:

`boolean :is_active`

Instance Method Summary collapse

Methods inherited from Generic

cast!, deserialize, serialize, validate!, #validate!

Instance Method Details

#deserialize(value) ⇒ Boolean

Deserializes the input into a boolean value.

Accepts:

  • ‘“true”`, `“1”` (case-insensitive) → `true`

  • ‘“false”`, `“0”` (case-insensitive) → `false`

Parameters:

  • value (Object)

Returns:

Raises:



23
24
25
26
27
28
29
30
31
32
# File 'lib/castkit/types/boolean.rb', line 23

def deserialize(value)
  case value.to_s.downcase
  when "true", "1"
    true
  when "false", "0"
    false
  else
    type_error!(:boolean, value)
  end
end

#serialize(value) ⇒ Boolean

Serializes the boolean value (pass-through).

Parameters:

Returns:



38
39
40
# File 'lib/castkit/types/boolean.rb', line 38

def serialize(value)
  value
end