class Dry::Types::PrimitiveInferrer::Compiler
@api private
Compiler reduces type AST into a list of primitives
def visit(node)
- Api: - private
def visit(node) meth, rest = node public_send(:"visit_#{meth}", rest) end
def visit_any(_) = ::Object
- Api: - private
def visit_any(_) = ::Object
def visit_array(_) = ::Array
- Api: - private
def visit_array(_) = ::Array
def visit_constrained(node)
- Api: - private
def visit_constrained(node) other, * = node visit(other) end
def visit_constructor(node)
- Api: - private
def visit_constructor(node) other, * = node visit(other) end
def visit_enum(node)
- Api: - private
def visit_enum(node) other, * = node visit(other) end
def visit_hash(_) = ::Hash
- Api: - private
def visit_hash(_) = ::Hash
def visit_lax(node) = visit(node)
- Api: - private
def visit_lax(node) = visit(node)
def visit_nominal(node)
- Api: - private
def visit_nominal(node) type, _ = node type end
def visit_sum(node)
- Api: - private
def visit_sum(node) left, right = node [visit(left), visit(right)].flatten(1) end