6 #ifndef KNOWROB_PREDICATE_INDICATOR_H_
7 #define KNOWROB_PREDICATE_INDICATOR_H_
13 #include "knowrob/terms/Atom.h"
19 class PredicateIndicator :
public Printable {
46 auto &
functor()
const {
return functor_; }
53 auto arity()
const {
return arity_; }
59 std::shared_ptr<Term>
toTerm()
const;
62 void write(std::ostream &os)
const override;
66 const uint32_t arity_;
void write(std::ostream &os) const override
PredicateIndicator(std::string_view functor, uint32_t arity)
PredicateIndicator(AtomPtr functor, uint32_t arity)
bool operator<(const PredicateIndicator &other) const
bool operator==(const PredicateIndicator &other) const
std::shared_ptr< Term > toTerm() const
std::shared_ptr< Atom > AtomPtr