Sha256: e97f6dfe6f9a5e7e5bcf1c0dc71f9199195fef2456de3a4506d265754513f2ac
Contents?: true
Size: 648 Bytes
Versions: 3
Compression:
Stored size: 648 Bytes
Contents
require_relative 'integer' require_relative 'float' require_relative 'datetime' require_relative 'date' require_relative 'string' module Estratto module Data class InvalidCoercionType < StandardError; end class Coercer attr_reader :data, :type, :formats def initialize(data:, type: 'String', formats: {}) @data = data @type = type @formats = formats end def build target_coercer.coerce end def target_coercer Object.const_get("Estratto::Data::#{type}").new(data, formats) rescue NameError raise InvalidCoercionType end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
estratto-1.0.2 | lib/estratto/data/coercer.rb |
estratto-1.0.1 | lib/estratto/data/coercer.rb |
estratto-1.0.0 | lib/estratto/data/coercer.rb |