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