Skip to main content

connect

Attribute Macro connect 

Source
#[connect]
Expand description

Generate Connect protocol schema from an impl block.

Connect is a modern RPC protocol from Buf that works over HTTP/1.1, HTTP/2, and HTTP/3. The generated schema is compatible with connect-go, connect-es, connect-swift, etc.

§Example

use server_less::connect;

struct UserService;

#[connect(package = "users.v1")]
impl UserService {
    fn get_user(&self, id: String) -> User { ... }
}

// Get schema and endpoint paths
let schema = UserService::connect_schema();
let paths = UserService::connect_paths(); // ["/users.v1.UserService/GetUser", ...]