aboutsummaryrefslogtreecommitdiffstats
path: root/activejob/lib/active_job/serializers/struct_serializer.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activejob/lib/active_job/serializers/struct_serializer.rb')
-rw-r--r--activejob/lib/active_job/serializers/struct_serializer.rb38
1 files changed, 0 insertions, 38 deletions
diff --git a/activejob/lib/active_job/serializers/struct_serializer.rb b/activejob/lib/active_job/serializers/struct_serializer.rb
deleted file mode 100644
index f6791611ed..0000000000
--- a/activejob/lib/active_job/serializers/struct_serializer.rb
+++ /dev/null
@@ -1,38 +0,0 @@
-# frozen_string_literal: true
-
-module ActiveJob
- module Serializers
- # Provides methods to serialize and deserialize struct instances
- # (`Struct.new('Rectangle', :width, :height).new(12, 20)`)
- class StructSerializer < ObjectSerializer
- class << self
- def serialize(object)
- super.merge values_key => ::ActiveJob::Serializers.serialize(object.values)
- end
-
- def deserialize(hash)
- values = ::ActiveJob::Serializers.deserialize(hash[values_key])
- super.new(*values)
- end
-
- def key
- "_aj_struct"
- end
-
- private
-
- def klass
- ::Struct
- end
-
- def keys
- super.push values_key
- end
-
- def values_key
- "values"
- end
- end
- end
- end
-end