class Dry::Types::PredicateInferrer
@api public
PredicateInferrer returns the list of predicates used by a type.
def [](type)
- Api: - private
Returns:
-
(Symbol)
-
Parameters:
-
type
(Type
) --
def [](type) self.class.fetch_or_store(type) do predicates = compiler.visit(type.to_ast) if predicates.is_a?(::Hash) predicates else REDUCED_TYPES[predicates] || predicates end end end
def initialize(registry = PredicateRegistry.new)
- Api: - private
def initialize(registry = PredicateRegistry.new) @compiler = Compiler.new(registry) end