class Dry::Logic::Rule::Interface

def initialize(arity, curried)

def initialize(arity, curried)
  super()
  @arity = arity
  @curried = curried
  if !variable_arity? && curried > arity
    raise ArgumentError, "wrong number of arguments (#{curried} for #{arity})"
  end
  define_constructor if curried?
  if constant?
    define_constant_application
  else
    define_application
  end
end