Skip to main content

Crate barbacane_plugin_sdk

Crate barbacane_plugin_sdk 

Source
Expand description

SDK for building Barbacane WASM plugins.

Provides Request, Response, and Action types, along with #[barbacane_middleware] and #[barbacane_dispatcher] macros that generate the required WASM export glue.

§Example

use barbacane_plugin_sdk::prelude::*;

#[barbacane_middleware]
#[derive(serde::Deserialize)]
struct RateLimiter {
    quota: u32,
    window: u32,
}

impl RateLimiter {
    fn on_request(&mut self, req: Request) -> Action<Request> {
        Action::Continue(req)
    }

    fn on_response(&mut self, resp: Response) -> Response {
        resp
    }
}

Modules§

body
Side-channel body helpers for WASM plugins.
prelude
types

Attribute Macros§

barbacane_dispatcher
Re-export proc macros for plugin development. Generates WASM exports for a dispatcher plugin.
barbacane_middleware
Re-export proc macros for plugin development. Generates WASM exports for a middleware plugin.