pub struct DroidSession { /* private fields */ }Expand description
A live droid exec -o json session (the AgentSession impl).
Single-shot only: send_user_message
always errors, and there is no streaming stdin to hold open. Only one
JSON line is ever expected, but the read loop is kept anyway to mirror
CodexSession and to tolerate stray blank lines.
Trait Implementations§
Source§impl AgentSession for DroidSession
impl AgentSession for DroidSession
Source§fn session_id(&self) -> String
fn session_id(&self) -> String
The session id actually in use (== spec.session_id unless resumed).
Source§fn next_event<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<Option<AgentEvent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn next_event<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<Option<AgentEvent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Next event from the session stream;
None when the stream is closed.Source§fn send_user_message<'life0, 'life1, 'async_trait>(
&'life0 mut self,
_text: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn send_user_message<'life0, 'life1, 'async_trait>(
&'life0 mut self,
_text: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Inject a user message (streaming-input sessions only; error otherwise).
Source§fn abort<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn abort<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Terminate the underlying process/stream. Must kill the whole process
tree and work on Windows (no bare POSIX signal assumptions — §9).
Source§fn exit_status(&self) -> Option<SessionExit>
fn exit_status(&self) -> Option<SessionExit>
Available after the stream has closed.
Source§impl Drop for DroidSession
Available on Unix only.
impl Drop for DroidSession
Available on Unix only.
Auto Trait Implementations§
impl !RefUnwindSafe for DroidSession
impl !UnwindSafe for DroidSession
impl Freeze for DroidSession
impl Send for DroidSession
impl Sync for DroidSession
impl Unpin for DroidSession
impl UnsafeUnpin for DroidSession
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