Skip to main content

JavascriptChildProcessSpawnOptions

Struct JavascriptChildProcessSpawnOptions 

Source
pub struct JavascriptChildProcessSpawnOptions {
Show 25 fields pub argv0: Option<String>, pub cloexec_fds: Vec<u32>, pub local_replacement: bool, pub executable_fd: Option<u32>, pub cwd: Option<String>, pub env: BTreeMap<String, String>, pub internal_bootstrap_env: BTreeMap<String, String>, pub spawn_attr_flags: u32, pub spawn_exact_path: bool, pub spawn_search_path: Option<String>, pub spawn_sched_policy: Option<i32>, pub spawn_sched_priority: Option<i32>, pub spawn_pgroup: Option<i32>, pub spawn_signal_defaults: Vec<u32>, pub spawn_signal_mask: Vec<u32>, pub spawn_file_actions: Vec<JavascriptPosixSpawnFileAction>, pub spawn_fd_mappings: Vec<[u32; 2]>, pub spawn_host_net_fds: Vec<JavascriptSpawnHostNetFd>, pub input: Option<Value>, pub shell: bool, pub detached: bool, pub stdio: Vec<String>, pub timeout: Option<u64>, pub kill_signal: Option<String>, pub pty: Option<JavascriptChildProcessPtyOptions>,
}

Fields§

§argv0: Option<String>§cloexec_fds: Vec<u32>

Guest descriptors marked FD_CLOEXEC in libc’s runner-local descriptor table. Native exec applies these at the same commit point as the kernel table; runner-local handles are closed by the in-place image swap.

§local_replacement: bool

The sidecar-managed WASM runner has already validated the replacement module and will swap images in place after the sidecar commits kernel metadata. Other process.exec callers use the separate-execution path.

§executable_fd: Option<u32>

Runner-private executable descriptor used only by the dedicated process.exec_fd_image_commit route. Generic guest process.exec requests cannot turn this into an FD-backed replacement.

§cwd: Option<String>§env: BTreeMap<String, String>§internal_bootstrap_env: BTreeMap<String, String>§spawn_attr_flags: u32

POSIX spawn attributes already validated by the WASM host-import boundary. The sidecar validates them again before applying attributes that belong to the kernel process table.

§spawn_exact_path: bool

Exact posix_spawn bypasses PATH lookup, including for bare names.

§spawn_search_path: Option<String>

posix_spawnp uses the caller’s PATH, which can differ from envp.

§spawn_sched_policy: Option<i32>§spawn_sched_priority: Option<i32>§spawn_pgroup: Option<i32>§spawn_signal_defaults: Vec<u32>§spawn_signal_mask: Vec<u32>§spawn_file_actions: Vec<JavascriptPosixSpawnFileAction>§spawn_fd_mappings: Vec<[u32; 2]>

Guest-to-kernel descriptor namespace captured by the WASM runner at spawn time. WASI preopens occupy guest descriptors that do not exist in the kernel table, so file actions cannot safely assume the two numeric namespaces are identical.

§spawn_host_net_fds: Vec<JavascriptSpawnHostNetFd>

Host-network descriptors occupy the guest fd namespace but are backed by sidecar-owned socket descriptions rather than kernel fd-table slots. They must therefore be inherited explicitly instead of being coerced into the private kernel descriptor namespace.

§input: Option<Value>§shell: bool§detached: bool§stdio: Vec<String>§timeout: Option<u64>§kill_signal: Option<String>§pty: Option<JavascriptChildProcessPtyOptions>

Trait Implementations§

Source§

impl Debug for JavascriptChildProcessSpawnOptions

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Default for JavascriptChildProcessSpawnOptions

Source§

fn default() -> JavascriptChildProcessSpawnOptions

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for JavascriptChildProcessSpawnOptions

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. 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> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

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, 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.