class Dry::Logic::Rule::Interface

def initialize(arity, curried)

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