class Dry::Core::Memoizable::Memoizer
def declaration(definition, lookup)
- Api: - private
def declaration(definition, lookup) params = [] binds = [] defined = {} definition.each do |type, name| mapped_type = map_bind_type(type, name, lookup, defined) do raise ::NotImplementedError, "type: #{type}, name: #{name}" end if mapped_type defined[mapped_type] = true bind = name_from_param(name) || make_bind_name(binds.size) binds << bind params << param(bind, mapped_type) end end [params, binds] end