NeoGraph 0.10.0
A C++17 Graph Agent Engine Library — LangGraph for C++
Loading...
Searching...
No Matches
compiler.h File Reference

Pure JSON-definition → CompiledGraph parser, extracted from GraphEngine. More...

#include <neograph/api.h>
#include <neograph/graph/types.h>
#include <neograph/graph/loader.h>
#include <neograph/graph/scheduler.h>
#include <map>
#include <memory>
#include <optional>
#include <set>
#include <string>
#include <vector>
Include dependency graph for compiler.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  neograph::graph::ChannelDef
 Declarative configuration for a single state channel. More...
 
struct  neograph::graph::CompiledGraph
 Parsed graph definition, ready for the engine to run. More...
 
class  neograph::graph::GraphCompiler
 Stateless JSON → CompiledGraph translator. More...
 

Detailed Description

Pure JSON-definition → CompiledGraph parser, extracted from GraphEngine.

GraphCompiler turns a JSON graph definition into a CompiledGraph — a value-type bundle of channels, nodes, edges, barriers, interrupts, and retry policy. It has NO knowledge of runtime (threading, checkpointing, execution) and NO dependency on GraphEngine; it depends only on NodeFactory (to instantiate GraphNode subclasses).

Why a separate stage: parsing failures surface here cleanly (malformed edge, unknown reducer, missing node type) before any runtime state is constructed, and the resulting CompiledGraph can be inspected or mutated in tests without spinning up the engine.

Definition in file compiler.h.