Clingo
|
A theory atom. More...
#include <theory.hh>
Public Types | |
using | Base = std::conditional_t< HasSign, Signed, Unsigned > |
The parent class. | |
Public Member Functions | |
TheoryAtom (Location loc, Term name, TheoryElementArray elems, std::optional< TheoryRGuard > rhs) | |
Construct a theory atom. | |
TheoryAtom (Location loc, Sign sign, Term name, TheoryElementArray elems, std::optional< TheoryRGuard > rhs) | |
Construct a theory atom. | |
auto | loc () const -> Location const & |
The location of the symbol. | |
auto | name () const -> Term const & |
The name of the atom. | |
auto | elems () const -> TheoryElementArray const & |
The elements of the atom. | |
auto | rhs () const -> std::optional< TheoryRGuard > const & |
The optional right guard of the atom. | |
![]() | |
template<auto tag> | |
auto | get_value () const -> decltype(auto) |
Get the attribute with the given tag. | |
template<class... Args> requires ValidArguments<Rec, Args...> | |
auto | update (Args &&...args) const |
See update_record(). | |
template<class... Args> requires ValidArguments<Rec, Args...> | |
auto | rewrite (Args &&...args) const |
See rewrite_record(). | |
auto | equal (Base const &other) const -> bool |
Equality compare to records. | |
auto | compare (Base const &other) const -> std::strong_ordering |
Compare to records. | |
auto | hash () const -> size_t |
Compute the hash of the record. | |
Static Public Member Functions | |
static constexpr auto | attributes () |
The record attributes. | |
A theory atom.
For example: &sum { X+Y: p(X), q(Y) } >= 0
.