rlmesh-grpc 0.1.0-rc.1

Internal RLMesh crate (unstable Rust API): gRPC clients, servers, and wire helpers.
Documentation
pub mod client;
mod environment;
mod episode;
mod server;
mod stream;
mod wire;

pub use client::{EnvClient, EnvHandshake};
pub use environment::{
    CloseResponse, Environment, RenderRequest, RenderResponse, ResetRequest, ResetResponse,
    StepRequest, StepResponse,
};
pub use server::{GrpcEnvServer, env_service, env_service_from_shared, serve};

use crate::error::EnvError;
use rlmesh_proto::env::v1::{EnvError as ProtoEnvError, EnvErrorCode as ProtoEnvErrorCode};

pub use rlmesh_proto::PROTOCOL_GENERATION;

pub(crate) fn env_error_to_proto(e: EnvError) -> ProtoEnvError {
    ProtoEnvError {
        code: ProtoEnvErrorCode::from(e.code) as i32,
        message: e.message,
        is_recoverable: e.is_recoverable,
        debug_info: e.debug_info.unwrap_or_default(),
        interrupted_episodes: vec![],
    }
}