module Dry::Data::TypeBuilder
Public Instance Methods
constrained(options)
click to toggle source
# File lib/dry/data/type_builder.rb, line 12 def constrained(options) Constrained.new(self, rule: Data.Rule(primitive, options)) end
default(value)
click to toggle source
# File lib/dry/data/type_builder.rb, line 16 def default(value) Default.new(self, value: value) end
enum(*values)
click to toggle source
# File lib/dry/data/type_builder.rb, line 20 def enum(*values) Enum.new(constrained(inclusion: values), values: values) end
optional()
click to toggle source
# File lib/dry/data/type_builder.rb, line 8 def optional Optional.new(Data['nil'] | self) end
safe()
click to toggle source
# File lib/dry/data/type_builder.rb, line 24 def safe Safe.new(self) end
|(other)
click to toggle source
# File lib/dry/data/type_builder.rb, line 4 def |(other) SumType.new(self, other) end