aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2016-12-31 19:22:49 +0900
committerRyuta Kamizono <kamipo@gmail.com>2017-01-01 04:01:17 +0900
commitd8e5751a1d7ad027519463134fe1a861d02494fc (patch)
treecaf33980d24cbfddb3aeba787420d0f156d6219e /activerecord/lib/active_record/connection_adapters
parentac0b28883b78999c5605d032eb42fcd842841e6b (diff)
downloadrails-d8e5751a1d7ad027519463134fe1a861d02494fc.tar.gz
rails-d8e5751a1d7ad027519463134fe1a861d02494fc.tar.bz2
rails-d8e5751a1d7ad027519463134fe1a861d02494fc.zip
Extract `casted_true`/`casted_false` for `Type::ImmutableString`
The only difference between `Type::ImmutableString` and its subclasses is the representation of the casted booleans. Prefer extracting `casted_true`/`casted_false` and override these by subclasses.
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters')
-rw-r--r--activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb20
1 files changed, 6 insertions, 14 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb b/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
index 1c3d10c15d..97bc5edd4b 100644
--- a/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
@@ -979,22 +979,14 @@ module ActiveRecord
end
class MysqlString < Type::String # :nodoc:
- def serialize(value)
- case value
- when true then MySQL::Quoting::QUOTED_TRUE
- when false then MySQL::Quoting::QUOTED_FALSE
- else super
- end
- end
-
private
- def cast_value(value)
- case value
- when true then MySQL::Quoting::QUOTED_TRUE
- when false then MySQL::Quoting::QUOTED_FALSE
- else super
- end
+ def casted_true
+ MySQL::Quoting::QUOTED_TRUE
+ end
+
+ def casted_false
+ MySQL::Quoting::QUOTED_FALSE
end
end