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.asset_class 1 Asset-class catalogue C++: the mapping from an oresmd authority to the refdata class it names.
ores.cpp.component 4 Per-component C++ presence: the namespace brief, the export macros and the Catch2 test main.
ores.cpp.convention-family 1 The per-family unit of the conventions service: one translation unit for each convention family entity that opts in.
ores.cpp.convention-registry 3 The C++ face of the convention family registry: the header that enumerates every family and its key, the per-family declarations and the dispatch over them. Opt-in.
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 2 C++ field-group headers: column blocks composed into entities, and document-only structs that no table holds.
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.http-route 6 HTTP route units: one route per derived verb, forwarding the caller's canonical request to the domain service over NATS.
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.outcome 1 C++ outcome vocabulary rendered from the outcome catalogue.
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 4 First-generation component scaffolding: a 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 8 Shell REPL command units: one submenu per entity or junction, one command per derived verb, and the per-menu registrar.
ores.cpp.trade_type 4 Trade-type catalogue C++: the routing from a trade type to the instrument table that holds it.
ores.cpp.wire-codec 5 A domain type's own JSON and MessagePack functions, generated from its field list.

4. See also

  • Parent: the ores physical-space root.

Emacs 29.3 (Org mode 9.6.15)