pub struct ClientRunner { /* private fields */ }Expand description
Runner with IO bridging for Human-interactive channels.
This runner is dedicated to bridging Human input/output with the system. It does NOT hold a Component - instead it broadcasts UserInput events to all channels and displays Output events from other channels.
§Architecture
Human ↔ ClientRunner (IOBridge only)
↓ UserInput Event (broadcast)
EventBus
↓
ChannelRunner(agent_mgr, etc.)
↓ Output Event
ClientRunner
↓
Human (display)Implementations§
Source§impl ClientRunner
impl ClientRunner
Sourcepub fn new(
id: ChannelId,
config: ClientRunnerConfig,
io_port: IOPort,
principal: Principal,
) -> (ClientRunner, ChannelHandle)
pub fn new( id: ChannelId, config: ClientRunnerConfig, io_port: IOPort, principal: Principal, ) -> (ClientRunner, ChannelHandle)
Creates a new ClientRunner with IO bridging (no component).
This runner is dedicated to Human I/O. It broadcasts UserInput events to all channels and displays Output events received from other channels.
§Arguments
id- The channel’s IDconfig- World and signal channel configurationio_port- IO port for View communicationprincipal- Principal for signal creation
Sourcepub fn io_bridge_mut(&mut self) -> &mut IOBridge
pub fn io_bridge_mut(&mut self) -> &mut IOBridge
Returns a mutable reference to the IO bridge.
Sourcepub async fn run(self) -> RunnerResult
pub async fn run(self) -> RunnerResult
Runs the channel’s event loop with IO integration.
Handles three input sources concurrently:
- Signals (highest priority - control messages)
- Events (component work)
- IO input (user interaction → converted to Signals)
Auto Trait Implementations§
impl !RefUnwindSafe for ClientRunner
impl !UnwindSafe for ClientRunner
impl Freeze for ClientRunner
impl Send for ClientRunner
impl Sync for ClientRunner
impl Unpin for ClientRunner
impl UnsafeUnpin for ClientRunner
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more