Sha256: 7efa667f510b7932bd30b355ee5b2e333b2c9c3f40eca7be0ad2e01e8f1b2652
Contents?: true
Size: 1.08 KB
Versions: 2
Compression:
Stored size: 1.08 KB
Contents
# frozen_string_literal: true class StoreSchema::Converter require_relative "converter/string" require_relative "converter/integer" require_relative "converter/float" require_relative "converter/date_time" require_relative "converter/boolean" # @return [Hash] a mapping between the configuration block # and the converter classes. # MAPPING = { :string => String, :integer => Integer, :float => Float, :datetime => DateTime, :boolean => Boolean, } # @return [Object] # attr_reader :value # @return [Symbol] # attr_reader :type # @param value [Object] any kind of value that should be stored # @param type [Symbol] the type of the value # def initialize(value, type) @value = value @type = type end # Converts {#value} from a Ruby-type value to a database-storable value. # # @return [String] # def to_db MAPPING[type].new(value).to_db end # Converts {#value} from a database-storable value to a Ruby-type value. # # @return [Object] # def from_db MAPPING[type].new(value).from_db end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
store_schema-2.0.0 | lib/store_schema/converter.rb |
store_schema-1.1.1 | lib/store_schema/converter.rb |