#[repr(C)]pub struct YogApi {
pub abi_version: u32,
pub size: u32,
pub bus: *const YogBus,
pub gfx: unsafe extern "C" fn() -> *const YogGfxApi,
}Expand description
Stable C ABI — re-exported so mods don’t need a direct yog-abi dependency.
Passed to yog_mod_register: the bus — everything a mod does goes
through it (docs/design/bus.md) — and the one thing that can’t afford
a message, the frame’s graphics.
When mods compiled against ABI N load on a runtime with ABI M > N:
fields beyond size are not present in the mod’s view — check size before
accessing fields added in later minor versions.
Fields§
§abi_version: u32§size: u32sizeof(YogApi) at the runtime’s build time.
bus: *const YogBusThe bus: calls, events and services by address (docs/design/bus.md).
Valid for the runtime’s lifetime.
gfx: unsafe extern "C" fn() -> *const YogGfxApiThe frame’s graphics while a render event (yog:event/client/render/…)
runs on this thread; null otherwise. Valid until the event’s handlers return.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for YogApi
impl RefUnwindSafe for YogApi
impl Unpin for YogApi
impl UnsafeUnpin for YogApi
impl UnwindSafe for YogApi
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more