RPNX::QueryGraph
Typed, memoized, concurrent query evaluation for C++23
Loading...
Searching...
No Matches
graphdata.hpp File Reference

Serializable data model for QueryGraph diagnostic dumps. More...

#include "rpnx/macros.hpp"
#include <array>
#include <cstddef>
#include <map>
#include <optional>
#include <string>
#include <vector>

Go to the source code of this file.

Classes

struct  rpnx::querygraph::canonical_error_result_data
 Serializable representation of a registered canonical error. More...
 
struct  rpnx::querygraph::node_reference_data
 Serializable identity of a memoized query node. More...
 
struct  rpnx::querygraph::subquery_instance_data
 Serialized state of one subquery input beneath a parent node. More...
 
struct  rpnx::querygraph::subquery_class_data
 All instances of one subquery specification under a parent node. More...
 
struct  rpnx::querygraph::query_node_data
 Serialized state and outgoing edges of one memoized query node. More...
 
struct  rpnx::querygraph::query_class_data
 All memoized instances belonging to one query specification. More...
 
struct  rpnx::querygraph::graph_data
 Complete serializable snapshot of a QueryGraph instance. More...
 

Typedefs

using rpnx::querygraph::tsig = std::array< std::byte, 16 >
 Fixed-size RPNXSerialization type-signature digest.
 

Enumerations

enum class  rpnx::querygraph::status : std::uint8_t { pending , completed , canonical_error , unexpected_exception }
 Terminal or in-progress state recorded for a dumped result. More...
 

Detailed Description

Serializable data model for QueryGraph diagnostic dumps.

These structures form the in-memory representation returned by graph::dump(). Their serialized layout is described in doc/dump-file-format.md.

Definition in file graphdata.hpp.

Typedef Documentation

◆ tsig

using rpnx::querygraph::tsig = std::array< std::byte, 16 >

Fixed-size RPNXSerialization type-signature digest.

Definition at line 42 of file graphdata.hpp.

Enumeration Type Documentation

◆ status

enum class rpnx::querygraph::status : std::uint8_t
strong

Terminal or in-progress state recorded for a dumped result.

  • pending: the query or subquery has not reached a terminal state.
  • completed: evaluation completed with a value.
  • canonical_error: evaluation failed with a registered, serializable exception.
  • unexpected_exception: evaluation failed with an exception that cannot be serialized canonically.

Definition at line 26 of file graphdata.hpp.