|
| void | sen::gen::detail::configureEnv (inja::Environment &env) |
| | Registers inja helper callbacks used by generator templates.
|
| std::vector< std::string > | sen::gen::detail::tokenize (const std::string &str, const char delim) |
| | Splits a string into substrings by a delimiter, skipping empty results.
|
| std::string | sen::gen::detail::prepend (const std::string &prefix, const std::string str) |
| | Appends a prefix to the beginning of a given string.
|
| std::string | sen::gen::detail::append (const std::string &lhs, const std::string rhs) |
| | Appends a suffix to the end of a given string.
|
| std::string | sen::gen::detail::capitalize (const std::string &str) |
| | Transform a string to uppercase.
|
| std::string | sen::gen::detail::capitalize (std::string_view str) |
| | Transform a string_view to uppercase.
|
| void | sen::gen::detail::throwUnsupportedType (const sen::Type &type) |
| | Refuses a type no template covers, in the one wording every generator used. Each had its own copy of these five lines, which is how six of them come to disagree.
|
| std::string | sen::gen::detail::kindOf (const sen::CustomType &type) |
| | How a type is grouped in a document: "classes", "structures", "enumerations", "variants", "sequences", "quantities", "aliases", "optionals". Two documents describing one model have to agree about this, so there is one of it.
|
| std::string | sen::gen::detail::collapseWhitespace (std::string_view text) |
| | Collapses a description to one run of prose. Model text wraps and indents its sentences in the source; a document renders it as a paragraph.
|
| std::string | sen::gen::detail::computePackageName (const sen::lang::TypeSet &set) |
| | Computes the dotted package name, as the language writes it: "sen.kernel", "rpr". Four generators each had their own copy of this; it is one function because a fix to one of four copies is a fix to one of four outputs.
|
| std::string | sen::gen::detail::computeCppNamespace (const std::vector< std::string > &package) |
| | Computes C++ namespace from a string package.
|
| std::string | sen::gen::detail::computeCppNamespace (const sen::lang::TypeSet &set) |
| | Computes C++ namespace from a type set.
|
| std::string | sen::gen::detail::computeCppNamespace (const sen::CustomType &type) |
| | Computes C++ namespace from a custom type.
|
| std::vector< const sen::lang::TypeSet * > | sen::gen::detail::collectAllTypeSets (const sen::lang::TypeSetContext &typeSets) |
| | Walks the given context's type sets and their imports depth-first, returning unique sets in insertion order. Insertion order (rather than pointer order) keeps generator output stable across builds for generators that emit a single consolidated file or rely on iteration order for dependency layering.
|
| template<typename T> |
| std::string | sen::gen::detail::intToHex (T i) |
| template<typename T> |
| std::string | sen::gen::detail::intToHex2 (T i) |