Skip to main content

Crate airbender_guest

Crate airbender_guest 

Source
Expand description

§airbender-guest Build status License: MIT OR Apache-2.0 rust nightly required no_std supported

Documentation: API docs | Guest program guide

[!WARNING] airbender-platform project is under active development and is in alpha state. Use at your own risk.

[!NOTE] Support crate. Most guest applications should depend on airbender-sdk instead, which re-exports airbender-guest and provides the complete guest API through a single dependency.

airbender-guest contains the lower-level guest-side APIs that power airbender-sdk. Most applications should depend on the SDK and use airbender::guest, but this crate is available directly when you want a thinner guest dependency surface.

§What It Provides

  • Typed input reads via read() and read_with(...).
  • Output helpers via commit(...), exit_error(), and the Commit trait.
  • Development-only profiling hooks via cycle_marker() and record_cycles(...).
  • Transport abstractions for tests and custom integrations.

§Features

  • std: enables guest-side std support where applicable.
  • allocator-talc (default), allocator-bump, allocator-custom: forwarded runtime allocator selection.

§Usage

[dependencies]
airbender-guest = { git = "https://github.com/matter-labs/airbender-platform", branch = "main" }

If you are building a normal guest program, prefer airbender-sdk and import these APIs from airbender::guest.

§License

Licensed under either Apache License, Version 2.0 or MIT license at your option.

Re-exports§

pub use commit::commit;
pub use commit::exit_error;
pub use cycle::marker as cycle_marker;
pub use cycle::record_cycles;
pub use input::read;
pub use input::read_with;
pub use input::GuestError;
pub use transport::CsrTransport;
pub use transport::MockTransport;
pub use transport::Transport;

Modules§

commit
Commit helpers for mapping values into output registers.
cycle
Development-only helpers for placing cycle markers in guest code.
input
Guest input helpers backed by the Airbender codec.
transport
Word-based transports for guest communication.

Traits§

Commit
Values that can be committed to the public output registers (x10..x17).