aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/type/internal
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2017-03-07 16:42:14 +0900
committerRyuta Kamizono <kamipo@gmail.com>2017-05-30 18:26:03 +0900
commit1c4be603c121a8853a4f1d6c13cb91f9b66bef9e (patch)
treeb189e2cc2c8a1eaaa35b605e910818971b6208f0 /activerecord/lib/active_record/type/internal
parent5d9d6a4fbf72029266bfa643929a9a80f9286fbe (diff)
downloadrails-1c4be603c121a8853a4f1d6c13cb91f9b66bef9e.tar.gz
rails-1c4be603c121a8853a4f1d6c13cb91f9b66bef9e.tar.bz2
rails-1c4be603c121a8853a4f1d6c13cb91f9b66bef9e.zip
Consolidate database specific JSON types to `Type::Json`
Diffstat (limited to 'activerecord/lib/active_record/type/internal')
-rw-r--r--activerecord/lib/active_record/type/internal/abstract_json.rb37
1 files changed, 0 insertions, 37 deletions
diff --git a/activerecord/lib/active_record/type/internal/abstract_json.rb b/activerecord/lib/active_record/type/internal/abstract_json.rb
deleted file mode 100644
index a8d6a63465..0000000000
--- a/activerecord/lib/active_record/type/internal/abstract_json.rb
+++ /dev/null
@@ -1,37 +0,0 @@
-module ActiveRecord
- module Type
- module Internal # :nodoc:
- class AbstractJson < ActiveModel::Type::Value # :nodoc:
- include ActiveModel::Type::Helpers::Mutable
-
- def type
- :json
- end
-
- def deserialize(value)
- if value.is_a?(::String)
- ::ActiveSupport::JSON.decode(value) rescue nil
- else
- value
- end
- end
-
- def serialize(value)
- if value.nil?
- nil
- else
- ::ActiveSupport::JSON.encode(value)
- end
- end
-
- def changed_in_place?(raw_old_value, new_value)
- deserialize(raw_old_value) != new_value
- end
-
- def accessor
- ActiveRecord::Store::StringKeyedHashAccessor
- end
- end
- end
- end
-end