Class: ActiveJob::Serializers::RangeSerializer

Inherits:
ObjectSerializer show all
Defined in:
lib/active_job/serializers/range_serializer.rb

Instance Method Summary collapse

Methods inherited from ObjectSerializer

#initialize, #serialize?

Constructor Details

This class inherits a constructor from ActiveJob::Serializers::ObjectSerializer

Instance Method Details

#deserialize(hash) ⇒ Object



14
15
16
# File 'lib/active_job/serializers/range_serializer.rb', line 14

def deserialize(hash)
  Range.new(*Arguments.deserialize([hash["begin"], hash["end"]]), hash["exclude_end"])
end

#klassObject



18
19
20
# File 'lib/active_job/serializers/range_serializer.rb', line 18

def klass
  ::Range
end

#serialize(range) ⇒ Object



6
7
8
9
10
11
12
# File 'lib/active_job/serializers/range_serializer.rb', line 6

def serialize(range)
  super(
    "begin" => Arguments.serialize_argument(range.begin),
    "end" => Arguments.serialize_argument(range.end),
    "exclude_end" => range.exclude_end?, # Always boolean, no need to serialize
  )
end