Clingo
Loading...
Searching...
No Matches
CppClingo::Ground::StateTheory::ElementKey Class Reference

Keys for aggregate elements storing their tuple and their aggregate index. More...

#include <theory_atom.hh>

Public Member Functions

 ElementKey (priv_tag tag, EvalContext const &ctx, OutputTheory &out, size_t atom_idx, UTheoryTermVec const &terms)
 Constructor.
 
 ElementKey (ElementKey const &other)=delete
 Prevent copying and moving.
 
auto terms () const -> UTheoryTermVec const &
 Get the terms.
 
auto size () const -> size_t
 Get the size of the tuple.
 
auto span () const -> std::span< size_t const >
 Get the tuple.
 
auto hash () const -> size_t
 Compute a hash for the key.
 

Static Public Member Functions

static void construct (std::pmr::monotonic_buffer_resource &mbr, EvalContext const &ctx, OutputTheory &out, size_t atom_idx, UTheoryTermVec const &terms, ElementKey *&target)
 Construct an element key evaluating the given tuple.
 

Friends

auto operator== (ElementKey const &a, ElementKey const &b) -> bool
 Compare to element keys.
 

Detailed Description

Keys for aggregate elements storing their tuple and their aggregate index.

The atom index is used to store all elements in one big hash table.


The documentation for this class was generated from the following file: