Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

The typed API from mixin code

An [[inject]] listener can use the typed API: an API point's listener gets the side's Host and calls attachments and handles through it. The worked examples, and which shape to choose, are in Injections; each mixin injector's form is in From mixins and legacy kinds.

A catalog hook's trait method, event and return make up its hook_version contract (Named hook points). These per-hook contract versions are catalog metadata, not minimum game versions. Catalog hooks, Host calls and internals [[inject]] declarations all build against the game's exact source revision. Rebuild the mod when that contract changes.

Every impl Hooks must have #[mod_api::horizon_mod]. The attribute derives subscriptions from the methods implemented in that block, so dispatch knows them at installation.