Class: Skit::Serialization::Processor::Boolean

Inherits:
Base
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/skit/serialization/processor/boolean.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#initialize, #traverse

Constructor Details

This class inherits a constructor from Skit::Serialization::Processor::Base

Class Method Details

.handles?(type_spec) ⇒ Boolean

Returns:



11
12
13
# File 'lib/skit/serialization/processor/boolean.rb', line 11

def self.handles?(type_spec)
  type_spec == T::Boolean
end

Instance Method Details

#deserialize(value, path: Path.new) ⇒ Object



25
26
27
28
29
30
31
# File 'lib/skit/serialization/processor/boolean.rb', line 25

def deserialize(value, path: Path.new)
  unless value.is_a?(TrueClass) || value.is_a?(FalseClass)
    raise DeserializeError.new("Expected TrueClass or FalseClass, got #{value.class}", path: path)
  end

  value
end

#serialize(value, path: Path.new) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/skit/serialization/processor/boolean.rb', line 16

def serialize(value, path: Path.new)
  unless value.is_a?(TrueClass) || value.is_a?(FalseClass)
    raise SerializeError.new("Expected TrueClass or FalseClass, got #{value.class}", path: path)
  end

  value
end