#[non_exhaustive]pub struct SteamWrapper {
pub target_dir: PathBuf,
pub loader: LoaderKind,
}Expand description
What a caller needs to install the wrapper script for a Linux native Steam
launch, carried by LaunchPlan::steam_wrapper when that combination applies.
Steam’s launch options are a single fixed %command% string, so a file must sit
between Steam and the game; LaunchPlan::program alone cannot express that.
Neither write_wrapper_script nor steam_launch_options needs anything
from here — both take only a path, because the script names no target and the
options string names no loader. This type is what tells a caller the wrapper is
required at all.
The wrapper is written once and never rewritten: it resolves its target at
run time from WRAPPER_TARGET_FLAG, which launch_plan_in has already
appended to LaunchPlan::args whenever it populates this field. A caller
spawns the plan as computed and the correct target follows automatically, so
the launch-options string a user pasted stays valid across every target.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.target_dir: PathBufThe target directory the wrapper chainloads from, which reaches it as a
run-time argument already present in LaunchPlan::args. Reported here so
a caller can display or log it, not because the wrapper needs writing for it.
loader: LoaderKindThe loader this target injects through, reported for display and logging.
No longer feeds steam_launch_options, which dropped its WINEDLLOVERRIDES
and with it the need for a loader. proxy_dll still maps this to a DLL name
for a caller setting up a Wine prefix by hand.
Trait Implementations§
Source§impl Clone for SteamWrapper
impl Clone for SteamWrapper
Source§fn clone(&self) -> SteamWrapper
fn clone(&self) -> SteamWrapper
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SteamWrapper
impl Debug for SteamWrapper
impl Eq for SteamWrapper
Source§impl PartialEq for SteamWrapper
impl PartialEq for SteamWrapper
impl StructuralPartialEq for SteamWrapper
Auto Trait Implementations§
impl Freeze for SteamWrapper
impl RefUnwindSafe for SteamWrapper
impl Send for SteamWrapper
impl Sync for SteamWrapper
impl Unpin for SteamWrapper
impl UnsafeUnpin for SteamWrapper
impl UnwindSafe for SteamWrapper
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.