class Dry::Logic::Rule::Predicate

def self.specialize(arity, curried, base = Predicate)

def self.specialize(arity, curried, base = Predicate)
  super
end

def ast(input = Undefined)

def ast(input = Undefined)
  [type, [name, args_with_names(input)]]
end

def name

def name
  predicate.name
end

def to_s

def to_s
  if args.empty?
    name.to_s
  else
    "#{name}(#{args.map(&:inspect).join(", ")})"
  end
end

def type

def type
  :predicate
end