class Dry::Schema::Compiler

@api private
Extended rule compiler used internally by the DSL

def self.new(predicates = PredicateRegistry.new)

Other tags:
    Api: - private

Returns:
  • (Compiler) -
def self.new(predicates = PredicateRegistry.new)
  super
end

def support?(predicate)

Other tags:
    Api: - private

Returns:
  • (Boolean) -

Parameters:
  • predicate (Symbol) --
def support?(predicate)
  predicates.key?(predicate)
end

def visit_and(node)

Other tags:
    Api: - private
def visit_and(node)
  super.with(hints: false)
end

def visit_namespace(node, _opts = EMPTY_HASH)

Other tags:
    Api: - private

Returns:
  • (NamespacedRule) -

Parameters:
  • _opts (Hash) -- Unused
  • node (Array) --
def visit_namespace(node, _opts = EMPTY_HASH)
  namespace, rest = node
  NamespacedRule.new(namespace, visit(rest))
end