pub struct Launcher;
Expand description
The type corresponding to the Launcher protocol. A low-level interface for launching processes.
This interface is used for manually assembling a process. The caller supplies all the capabilities for the newly created process.
That create processes typically use fdio_spawn
or fdio_spawn_etc
rather
than using this interface directly. The fdio_spawn
and fdio_spawn_etc
functions are implemented using this interface.
Debuggers and other clients that need to create processes in a suspended
state often use this interface directly. These clients use the
CreateWithoutStarting
method to create the process without actually
starting it.
Trait Implementations§
Source§impl<___T, ___H> ClientProtocol<___T, ___H> for Launcherwhere
___T: Transport,
___H: LauncherClientHandler<___T>,
<Launch as Method>::Response: Decode<<___T as Transport>::RecvBuffer>,
<CreateWithoutStarting as Method>::Response: Decode<<___T as Transport>::RecvBuffer>,
impl<___T, ___H> ClientProtocol<___T, ___H> for Launcherwhere
___T: Transport,
___H: LauncherClientHandler<___T>,
<Launch as Method>::Response: Decode<<___T as Transport>::RecvBuffer>,
<CreateWithoutStarting as Method>::Response: Decode<<___T as Transport>::RecvBuffer>,
Source§impl Discoverable for Launcher
impl Discoverable for Launcher
Source§const PROTOCOL_NAME: &'static str = "launcher"
const PROTOCOL_NAME: &'static str = "launcher"
The service name to use to connect to this discoverable protocol.
Source§impl From<Launcher> for LauncherMarker
impl From<Launcher> for LauncherMarker
Source§impl<___T, ___H> ServerProtocol<___T, ___H> for Launcherwhere
___T: Transport,
___H: LauncherServerHandler<___T>,
<Launch as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<CreateWithoutStarting as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<AddArgs as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<AddEnvirons as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<AddNames as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<AddHandles as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<SetOptions as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
impl<___T, ___H> ServerProtocol<___T, ___H> for Launcherwhere
___T: Transport,
___H: LauncherServerHandler<___T>,
<Launch as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<CreateWithoutStarting as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<AddArgs as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<AddEnvirons as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<AddNames as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<AddHandles as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
<SetOptions as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
Source§fn on_one_way(
handler: &mut ___H,
sender: &ServerSender<___T, Self>,
ordinal: u64,
buffer: ___T::RecvBuffer,
)
fn on_one_way( handler: &mut ___H, sender: &ServerSender<___T, Self>, ordinal: u64, buffer: ___T::RecvBuffer, )
Handles a received server one-way message with the given handler.
Source§fn on_two_way(
handler: &mut ___H,
sender: &ServerSender<___T, Self>,
ordinal: u64,
buffer: ___T::RecvBuffer,
responder: Responder,
)
fn on_two_way( handler: &mut ___H, sender: &ServerSender<___T, Self>, ordinal: u64, buffer: ___T::RecvBuffer, responder: Responder, )
Handles a received server two-way message with the given handler.
Auto Trait Implementations§
impl Freeze for Launcher
impl RefUnwindSafe for Launcher
impl Send for Launcher
impl Sync for Launcher
impl Unpin for Launcher
impl UnwindSafe for Launcher
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