Module: Dynamini::TypeHandler

Included in:
Base
Defined in:
lib/dynamini/type_handler.rb

Defined Under Namespace

Modules: ClassMethods

Constant Summary collapse

GETTER_PROCS =
{
    integer:  proc { |v| v.to_i },
    date:     proc { |v| v.is_a?(Date) ? v : Time.at(v).to_date },
    time:     proc { |v| Time.at(v.to_f) },
    float:    proc { |v| v.to_f },
    symbol:   proc { |v| v.to_sym },
    string:   proc { |v| v },
    boolean:  proc { |v| v },
    array:    proc { |v| v.to_a },
    set:      proc { |v| Set.new(v) }
}
SETTER_PROCS =
{
    integer:  proc { |v| v.to_i },
    time:     proc { |v| (v.is_a?(Date) ? v.to_time : v).to_f },
    float:    proc { |v| v.to_f },
    symbol:   proc { |v| v.to_s },
    string:   proc { |v| v },
    boolean:  proc { |v| v },
    date:     proc { |v| v.to_time.to_f },
    array:    proc { |v| v.to_a },
    set:      proc { |v| Set.new(v) }
}