Skip to content

ludus::foundation::reflection

Ludus Wiki · API overview · Browse API

Namespace

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp

Enumerations

Kind

enum class Kind : uint8

Related types: uint8

Bool

Bool

Int32

Int32

Uint32

Uint32

Int64

Int64

Uint64

Uint64

Float32

Float32

Float64

Float64

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp

Status

enum class Status : uint8

Related types: uint8

Ok

Ok

InvalidSchema

InvalidSchema

InvalidValue

InvalidValue

UnknownField

UnknownField

DuplicateField

DuplicateField

ReadOnly

ReadOnly

BufferTooSmall

BufferTooSmall

InvalidArgument

InvalidArgument

InvalidDocument

InvalidDocument

SchemaChanged

SchemaChanged

OutOfMemory

OutOfMemory

LimitExceeded

LimitExceeded

UnsupportedKind

UnsupportedKind

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp

Constants and variables

MAX_FIELDS

constexpr usize ludus::foundation::reflection::MAX_FIELDS = 64

Related types: usize

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp

Functions

ValidateSchema

Status ludus::foundation::reflection::ValidateSchema(const Schema &schema, Diagnostic &error) noexcept
Borrowed immutable tables must outlive every call.
No registry, static registration, object pointers, native layout, or module ownership is hidden here. Generated getters are explicitly called by the owner's composition root.

Related types: Status · Diagnostic · Schema

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp

ValidateValue

Status ludus::foundation::reflection::ValidateValue(const Field &field, const Value &value) noexcept

Related types: Status · Field · Value

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp

FindField

const Field * ludus::foundation::reflection::FindField(const Schema &schema, uint32 id) noexcept

Related types: uint32 · Field · Schema

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp

ValidateValues

Status ludus::foundation::reflection::ValidateValues(const Schema &schema, std::span< const Value > values, Diagnostic &error) noexcept

Related types: Status · Diagnostic · Schema · Value

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp

PrepareValues

Status ludus::foundation::reflection::PrepareValues(const Schema &schema, std::span< const Value > current, std::span< const Edit > edits, std::span< Value > output, Diagnostic &error) noexcept
Field-order snapshots.
The destination is unchanged on every failure; source and destination may alias. Bounded stack staging, no allocation.

Related types: Status · Diagnostic · Edit · Schema · Value

Declared in modules/foundation/reflection/include/ludus/foundation/reflection/schema.hpp