Skip to main content

Crate batpak_macros_support

Crate batpak_macros_support 

Source
Expand description

Runtime support types for #[derive(EventPayload)].

This crate is an implementation detail of the batpak macro surface. Its public items are re-exported from batpak::__private; do not depend on it directly.

Re-exports§

pub extern crate inventory;

Structs§

EventKindCollision
One duplicate EventKind registration discovered in the current binary.
EventPayloadRegistration
Registration item emitted once per #[derive(EventPayload)] type.
IncompleteUpcastChain
A registered payload kind whose declared PAYLOAD_VERSION > 1 is missing one or more from_version hops in its registered upcast chain.
UpcastRegistration
Registration item emitted once per (KIND, from_version) upcast step.

Constants§

TYPE_ID_MAX
Maximum valid type_id value (inclusive, 12 bits).

Functions§

assert_no_kind_collisions
Panic if the current binary has duplicate EventPayload kind registrations.
find_incomplete_upcast_chains
Return every registered payload kind whose declared version > 1 lacks a complete 1 -> ... -> N upcast chain in the linked registry.
find_kind_collisions
Return all EventPayload kind collisions visible in the current binary.
scan_for_kind_collisions
Scan all EventPayload registrations in the current binary for kind collisions.
upcast_steps_for
Return all registered upcast steps for kind_bits, indexed by from_version.
validate_category
Validate an EventKind category value.
validate_type_id
Validate an EventKind type_id value.