Skip to main content

SubprocessInvokerConfig

Struct SubprocessInvokerConfig 

Source
pub struct SubprocessInvokerConfig { /* private fields */ }
Expand description

Configuration for SubprocessCallbackInvoker.

program is the external client command (an absolute path to the client’s callback binary). args are appended on every spawn. timeout bounds the total round trip — write request, read response, child exit. A child still running at deadline is killed and the invocation fails with SubprocessInvokerError::Timeout.

Implementations§

Source§

impl SubprocessInvokerConfig

Source

pub fn new(program: impl Into<PathBuf>, timeout: Duration) -> Self

Construct a config from an explicit program path and timeout. The default timeout is intentionally not provided — the caller must pick a value that matches its lifecycle SLOs.

Source

pub fn arg(self, arg: impl Into<OsString>) -> Self

Append a single argument. Returns self for chaining.

Source

pub fn args<I, A>(self, args: I) -> Self
where I: IntoIterator<Item = A>, A: Into<OsString>,

Append a sequence of arguments. Returns self for chaining.

Source

pub fn program(&self) -> &PathBuf

Source

pub fn timeout(&self) -> Duration

Trait Implementations§

Source§

impl Clone for SubprocessInvokerConfig

Source§

fn clone(&self) -> SubprocessInvokerConfig

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SubprocessInvokerConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.