|
welder 0.1.0
Bindings for annotated C++ types, from C++26 reflection
|
Directories | |
| rods | |
Files | |
| annotations.hpp | |
| The annotation vocabulary users attach to their types — weld, policy, mark, doc, returns, tparam. | |
| bind_traits.hpp | |
| Backend-agnostic selection layer: the reflection predicates and selectors that decide what participates in a binding — which constructors, methods, operators, data members, namespace entities and base classes are eligible, and what their parameter names/types are. | |
| bindable.hpp | |
| Backend-agnostic bindability ("can the target language represent this type?"). | |
| carriage.hpp | |
| The carriage: welder's reflection-driven traversal driver, kept separate from the welder::welder<> entry point (<welder/welder.hpp>) it feeds. | |
| concepts.hpp | |
| The core interface concepts welder's static polymorphism rests on, gathered in one catalogue: the customization-point contracts a rod (or a user) plugs into. | |
| diag.hpp | |
| welder's consteval diagnostics, collected in one place: every hand-rolled compile-time error the library raises beyond a static_assert is one of the exception types below, thrown during constant evaluation (a C++26 constexpr exception). | |
| doc.hpp | |
| Language-agnostic documentation layer: read [[=welder::doc(...)]] annotations off reflected entities and assemble them into a docstring under a pluggable style. | |
| lang.hpp | |
| Target-language vocabulary — the set of languages welder can bind to. | |
| module.hpp | |
| Rod-agnostic module entry point — the WELDER_MODULE macro. | |
| naming.hpp | |
| Language-agnostic name styling: reshape a C++ identifier into a target language's naming convention, and resolve the final bound name of an entity (honouring a verbatim [[=welder::weld_as]] override first). | |
| reflect.hpp | |
| Language-agnostic resolution: given a reflected type/member and a target language, decide what participates in binding. | |
| version.hpp | |
| welder's version identity and ABI namespace. | |
| vocabulary.hpp | |
| welder's annotation vocabulary — the single header a consuming TU includes to get the markers it attaches to its types. | |
| welder.hpp | |
| welder's binding entry point: the welder::welder struct. | |