Skip to main content

define_components

Macro define_components 

Source
macro_rules! define_components {
    (
        stored: { $( $variant:ident => $ty:path { $($meta:tt)* } ),+ $(,)? },
        resource: { $( $rvariant:ident => $rty:path { $($rmeta:tt)* } ),+ $(,)? } $(,)?
    ) => { ... };
}
Expand description

Generate the runtime component registry from the engine’s component list: the ComponentTag discriminants, the ComponentAsset value enum, and the ComponentStorage / ComponentSlot pair the ECS stores rows in.

Each list entry carries a { ... } metadata block the authoring registry consumes; this macro captures and ignores it.