Sha256: 5bf0600e4d0ab2e141ac364e543ad63f75d8e8b7d1bd79e6511cb2847fabe6b8

Contents?: true

Size: 574 Bytes

Versions: 38

Compression:

Stored size: 574 Bytes

Contents

module ActiveModel
  module Type
    class ImmutableString < Value # :nodoc:
      def type
        :string
      end

      def serialize(value)
        case value
        when ::Numeric, ActiveSupport::Duration then value.to_s
        when true then "t"
        when false then "f"
        else super
        end
      end

      private

      def cast_value(value)
        result = case value
                 when true then "t"
                 when false then "f"
                 else value.to_s
                 end
        result.freeze
      end
    end
  end
end

Version data entries

38 entries across 37 versions & 5 rubygems

Version Path
activemodel-5.0.7.2 lib/active_model/type/immutable_string.rb
activemodel-5.0.7.1 lib/active_model/type/immutable_string.rb
activemodel-5.0.7 lib/active_model/type/immutable_string.rb
activemodel-5.0.6 lib/active_model/type/immutable_string.rb
activemodel-5.0.6.rc1 lib/active_model/type/immutable_string.rb
activemodel-5.0.5 lib/active_model/type/immutable_string.rb
activemodel-5.0.5.rc2 lib/active_model/type/immutable_string.rb
activemodel-5.0.5.rc1 lib/active_model/type/immutable_string.rb
tdiary-5.0.5 vendor/bundle/gems/activemodel-5.0.2/lib/active_model/type/immutable_string.rb
tdiary-5.0.5 vendor/bundle/gems/tdiary-5.0.4/vendor/bundle/gems/activemodel-5.0.2/lib/active_model/type/immutable_string.rb
activemodel-5.0.4 lib/active_model/type/immutable_string.rb
activemodel-5.0.4.rc1 lib/active_model/type/immutable_string.rb
activemodel-5.0.3 lib/active_model/type/immutable_string.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/activemodel-5.0.2/lib/active_model/type/immutable_string.rb
tdiary-5.0.4 vendor/bundle/gems/activemodel-5.0.2/lib/active_model/type/immutable_string.rb
activemodel-5.0.2 lib/active_model/type/immutable_string.rb
activemodel-5.0.2.rc1 lib/active_model/type/immutable_string.rb
autocompl-0.2.2 test/dummy/vendor/bundle/ruby/2.3.0/gems/activemodel-5.0.1/lib/active_model/type/immutable_string.rb
autocompl-0.2.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/activemodel-5.0.1/lib/active_model/type/immutable_string.rb
autocompl-0.2.0 test/dummy/vendor/bundle/ruby/2.3.0/gems/activemodel-5.0.1/lib/active_model/type/immutable_string.rb