Sen API
Sen Libraries
Loading...
Searching...
No Matches
sen::gen Namespace Reference

Namespaces

namespace  detail
namespace  test

Classes

struct  ComponentOptions
 Options for JsonGenerator::generateComponent. More...
struct  CppExportsOptions
 Options for CppGenerator::generateExports. More...
class  CppGenerator
 Renders C++ sources out of Sen type sets. Stateful (caches the loaded inja templates), so prefer reusing one instance across calls when possible. More...
struct  CppOptions
 Options controlling how CppGenerator::generate renders one type set. More...
class  HtmlGenerator
 Renders a browsable reference for a sen data model as a self-contained web page. The output needs no server, no network and no host site: it opens from a file path and carries its own navigation and search. More...
class  JsonGenerator
 Renders JSON-Schema descriptions of sen type sets. Stateful (caches the loaded inja templates), so prefer reusing one instance across calls when possible. More...
class  MkDocsGenerator
 Renders an MkDocs-compatible markdown document out of sen type sets. Stateful (caches the loaded inja templates), so prefer reusing one instance across calls when possible. More...
struct  PackageOptions
 Options for JsonGenerator::generatePackage. More...
class  PlantUMLGenerator
 Renders PlantUML class diagrams out of sen type sets. Stateful (caches the loaded inja templates), so prefer reusing one instance across calls when possible. More...
class  PythonGenerator
 Renders Python dataclasses out of sen type sets. Stateful (caches the loaded inja templates), so prefer reusing one instance across calls when possible. More...
class  TypeScriptGenerator
 Renders TypeScript modules out of sen type sets. Stateful (caches the loaded inja templates), so prefer reusing one instance across calls when possible. More...
class  TypstGenerator
 Renders a Sen data model as a Typst document, in the shape of an interface control document. Writes Typst source; producing a PDF is a separate step, as with PlantUML. More...
struct  TypstOptions
 What the document contains and how it is put together. Every field defaults to the whole model and the standard sections, so a default-constructed value produces a complete document and a caller who wants that need know none of this. More...

Enumerations

enum class  PlantUMLGenerationMode { PlantUMLGenerationMode::all , PlantUMLGenerationMode::onlyClasses , PlantUMLGenerationMode::onlyBasicTypes }
 Selects which subset of the type set ends up in the rendered diagram. More...
enum class  PlantUMLEnumMode { PlantUMLEnumMode::all , PlantUMLEnumMode::noEnumerators }
 Controls whether enum types contribute their enumerators to the rendered diagram. More...

Class Documentation

◆ sen::gen::TypstOptions

struct sen::gen::TypstOptions

What the document contains and how it is put together. Every field defaults to the whole model and the standard sections, so a default-constructed value produces a complete document and a caller who wants that need know none of this.

Class Members
string title {"Data model"} Shown on the title page and in the running header.
vector< string > includePackages Packages to document. Empty means every package in the model.
vector< string > excludePackages Packages to leave out, applied after includePackages.
bool overview {true} The overview: the package table and the class hierarchy across all packages.
bool hierarchy {true} The class hierarchy within the overview. Emitted only where classes inherit.
bool summaries {true} The per-section table of every type with its description and page.
bool index {true} The alphabetical index of every type, at the back.
bool usedBy {true} The "used by" line on each type.
bool flagLegend {true} What the codes in the Flags column mean, before the first table that uses them.
bool builtIns {true} The table of the built-in types the model names, at the back.
path frontMatter Typst files the document includes at named points. The generator never reads them: it emits #include and the paths resolve when the document is compiled.
path beforeReference
path afterReference
path style Replaces the emitted style.typ. Every visual decision lives in that module, so a caller changing the look never edits generated output.