pub struct Call<'a> {
pub root: &'a Path,
pub start_dir: &'a Path,
pub matched: &'a [String],
pub config_files: &'a [PathBuf],
pub pins: &'a BTreeMap<String, String>,
pub args: &'a [OsString],
pub verb: Verb,
pub reason: SelectionReason,
pub score: u32,
pub files: &'a Declared,
}Expand description
Everything one call needs that a plugin cannot work out for itself.
A borrowed view of the run’s own state, assembled at the call site: the plugin reads it through the ABI, and nothing here is copied for the host’s own benefit.
Fields§
§root: &'a PathProject root: where the command runs unless the answer names a cwd of its own.
start_dir: &'a PathThe directory the person ran pmpx from – not where the command will run.
matched: &'a [String]The files the plugin’s own detection matched.
config_files: &'a [PathBuf]The .pmpx.toml files that were read, nearest first.
pins: &'a BTreeMap<String, String>[plugin] pins from the project config.
args: &'a [OsString]The arguments the user typed.
verb: VerbWhich verb this is.
reason: SelectionReasonWhy this plugin was selected.
score: u32The score it won with.
files: &'a DeclaredReads the files the plugin declared, on demand – and refuses everything else.
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for Call<'a>
impl<'a> !Send for Call<'a>
impl<'a> !Sync for Call<'a>
impl<'a> !UnwindSafe for Call<'a>
impl<'a> Freeze for Call<'a>
impl<'a> Unpin for Call<'a>
impl<'a> UnsafeUnpin for Call<'a>
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