diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2017-03-07 16:42:14 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2017-05-30 18:26:03 +0900 |
commit | 1c4be603c121a8853a4f1d6c13cb91f9b66bef9e (patch) | |
tree | b189e2cc2c8a1eaaa35b605e910818971b6208f0 /activerecord/lib/active_record/type/internal | |
parent | 5d9d6a4fbf72029266bfa643929a9a80f9286fbe (diff) | |
download | rails-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.rb | 37 |
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 |