ores.cpp
Table of Contents
This page is the node for the ores.cpp technical space in the codegen
physical-space address graph. Its title is its MASD address; it gathers the
facets generated for this technical space. Each facet is its own document,
linked from the table below. Codegen traverses this graph (root → technical
space → facet → archetype) to resolve which archetypes an entity generates.
1. Summary
The C++ projection: the value type and its companions, tabular presentation, the persistence triplet, an entity's NATS surface, the component-service scaffold, the new-component skeleton, and standalone model formats (enums, field-groups). Entity-shaped facets are driven by the entity org-models; component-shaped facets by the component manifest.
2. Shared conventions
{{{cpp_license}}}triple-stache injects the licence header.- Headers guard with
full_name_upper-derived macros and export via the component's export macro header. - Column loops dispatch on per-field type flags (
is_string,is_boolean,is_timestamp, …);{{^last}}places commas.
3. Facets
Facets in this technical space — each links to its own node doc. Generated; do not edit by hand.
| Facet | Archetypes | Description |
|---|---|---|
| ores.cpp.component | 2 | Per-component C++ presence: export macros and the Catch2 test main. |
| ores.cpp.domain | 7 | Domain types: class, JSON I/O, table I/O. |
| ores.cpp.enum | 1 | C++ enum types. |
| ores.cpp.eventing-integration-test | 1 | Per-entity Catch2 test proving the DB-write -> pg_notify -> postgres_event_source -> event_bus -> NATS-publish pipeline end to end. |
| ores.cpp.field-group | 1 | C++ field-group headers. |
| ores.cpp.generator | 2 | Fake-data generators for testing. |
| ores.cpp.history-provider-registrar | 2 | Per-entity history-provider registrar pair registering an entity's history provider into the ores.history dispatch registry. |
| ores.cpp.nats-event-cache | 2 | Consumer-side in-process cache mirroring a producer entity, kept fresh via eventing. |
| ores.cpp.nats-event-registrar | 2 | Per-entity NATS event-mapping registrar pair wiring an entity's Postgres LISTEN/NOTIFY channel to its changed-event pipeline. |
| ores.cpp.nats-eventing | 1 | NATS changed-event publishers. |
| ores.cpp.nats-handler | 1 | NATS subscription handlers. |
| ores.cpp.nats-sub-registrar | 2 | Per-entity NATS sub-registrar pair wiring an entity's subjects to its handler. |
| ores.cpp.oresmd | 8 | oresmd quote-type codegen: enums, identifier/requirement structs, parser, projections, resolver, and tests. |
| ores.cpp.presentation | 2 | Server-side rendering of a domain type for display: history field mapper. |
| ores.cpp.protocol | 1 | Protocol (de)serialisation. |
| ores.cpp.repository | 6 | Repository layer: entity, mapper, CRUD. |
| ores.cpp.scaffold | 5 | First-generation component scaffolding: the umbrella header, the placeholder domain type and its test. Emitted only where a component opts in. |
| ores.cpp.service | 2 | C++ service application classes. |
| ores.cpp.service-app | 11 | Service-application C++ scaffold: application, host, config options/parser, main. |
| ores.cpp.shell-command | 6 | Shell REPL command units: one submenu per entity or junction, one command per derived verb, and the per-menu registrar. |
4. See also
- Parent: the
oresphysical-space root.