pub trait Transport:
Send
+ Sync
+ 'static {
// Required methods
fn call(
&self,
op: &Operation,
params: &Params,
body: Option<&Value>,
deadline: Duration,
) -> impl Future<Output = Result<Value, TransportError>> + Send;
fn lifecycle(
&self,
verb: Lifecycle,
) -> impl Future<Output = Result<String, TransportError>> + Send;
fn wait_idle(
&self,
session_id: &str,
deadline: Duration,
) -> impl Future<Output = Result<WaitOutcome, TransportError>> + Send;
fn fetch_openapi(
&self,
) -> impl Future<Output = Result<Value, TransportError>> + Send;
fn cli_version(
&self,
) -> impl Future<Output = Result<String, TransportError>> + Send;
}Required Methods§
fn call( &self, op: &Operation, params: &Params, body: Option<&Value>, deadline: Duration, ) -> impl Future<Output = Result<Value, TransportError>> + Send
fn lifecycle( &self, verb: Lifecycle, ) -> impl Future<Output = Result<String, TransportError>> + Send
fn wait_idle( &self, session_id: &str, deadline: Duration, ) -> impl Future<Output = Result<WaitOutcome, TransportError>> + Send
fn fetch_openapi( &self, ) -> impl Future<Output = Result<Value, TransportError>> + Send
Sourcefn cli_version(
&self,
) -> impl Future<Output = Result<String, TransportError>> + Send
fn cli_version( &self, ) -> impl Future<Output = Result<String, TransportError>> + Send
Raw opencode --version stdout, trimmed, e.g. opencode v2.0.32.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".