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

API Reference Overview

Baedeker’s API is split across the workspace crates. This book documents the shapes and usage patterns; for exhaustive signatures, the generated rustdoc (cargo doc --no-deps or https://docs.rs/baedeker-core) is authoritative.

CratePrimary surface
baedeker-coreModule, validate, lower_module, Store, execute_export, HostFunction, Value
baedeker-gpuGpuHostModule, the baedeker:gpu import ABI
baedeker-ffithe C ABI (baedeker.h)
baedeker-borsalinoBorsalinoGpu, verify_f32_add

Conventions

  • Newtype indicesTypeIdx(u32), FuncIdx(u32), LabelIdx(u32), etc. rather than bare u32, so you cannot pass a function index where a type index is expected.
  • Exhaustive enumsValue, ValType, trap kinds, and section kinds are enums, not boolean flags.
  • Owned or lifetime’d — public APIs use owned types or explicit lifetime parameters; Module<'a> borrows the input bytes.
  • Structured errors — decode/validate errors carry byte offsets; runtime errors are categorised traps.

The naming follows the WebAssembly spec: FuncType, ValType, BlockType, MemArg, and so on. Internal IR types are prefixed (RegInstr, RegBlock, RegFunc).