Sha256: 3afd806c47446f6af078e0a4aa8f5b40265bc584cd51f115c6e1eb78150a3501

Contents?: true

Size: 1.12 KB

Versions: 1

Compression:

Stored size: 1.12 KB

Contents

# frozen_string_literal: true

module EasyParams
  module Types
    Struct    = EasyParams::Base.meta(omittable: true)
    Has       = EasyParams::Base.meta(omittable: true)
    Integer   = Dry::Types['params.integer'].optional.meta(omittable: true).default(nil)
    Decimal   = Dry::Types['params.decimal'].optional.meta(omittable: true).default(nil)
    Float     = Dry::Types['params.float'].optional.meta(omittable: true).default(nil)
    Bool      = Dry::Types['params.bool'].optional.meta(omittable: true).default(nil)
    String    = Dry::Types['string'].optional.meta(omittable: true).default(nil)
    Array     = Dry::Types['array'].meta(omittable: true).default([])
    Each      = Dry::Types['array'].of(Struct).meta(omittable: true).default([])
    Date      = Dry::Types['params.date'].optional.meta(omittable: true).default(nil)
    DateTime  = Dry::Types['params.date_time'].optional.meta(omittable: true).default(nil)
    Time      = Dry::Types['params.time'].optional.meta(omittable: true).default(nil)

    STRUCT_TYPES_LIST = [Struct, Has].freeze
    ARRAY_OF_STRUCTS_TYPES_LIST = [Array.of(Struct), Each].freeze
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
easy_params-0.4.0 lib/easy_params/types.rb