pub struct NpmTool { /* private fields */ }
Implementations§
Trait Implementations§
Source§impl VxTool for NpmTool
impl VxTool for NpmTool
Source§fn description(&self) -> &str
fn description(&self) -> &str
Tool description (optional, has default) Read more
Source§fn fetch_versions<'life0, 'async_trait>(
&'life0 self,
include_prerelease: bool,
) -> Pin<Box<dyn Future<Output = Result<Vec<VersionInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fetch_versions<'life0, 'async_trait>(
&'life0 self,
include_prerelease: bool,
) -> Pin<Box<dyn Future<Output = Result<Vec<VersionInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Fetch available versions from the tool’s official source Read more
Source§fn install_version<'life0, 'life1, 'async_trait>(
&'life0 self,
version: &'life1 str,
force: bool,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn install_version<'life0, 'life1, 'async_trait>(
&'life0 self,
version: &'life1 str,
force: bool,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Install a specific version of the tool Read more
Source§fn is_version_installed<'life0, 'life1, 'async_trait>(
&'life0 self,
version: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn is_version_installed<'life0, 'life1, 'async_trait>(
&'life0 self,
version: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Check if a version is installed Read more
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
args: &'life1 [String],
context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolExecutionResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
args: &'life1 [String],
context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolExecutionResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Execute the tool with given arguments Read more
Source§fn get_active_version<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_active_version<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get the currently active version Read more
Source§fn get_installed_versions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_installed_versions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all installed versions Read more
Source§fn get_download_url<'life0, 'life1, 'async_trait>(
&'life0 self,
version: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_download_url<'life0, 'life1, 'async_trait>(
&'life0 self,
version: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get download URL for a specific version and current platform Read more
Source§fn metadata(&self) -> HashMap<String, String>
fn metadata(&self) -> HashMap<String, String>
Additional metadata for the tool (optional) Read more
Source§fn get_executable_path<'life0, 'life1, 'async_trait>(
&'life0 self,
install_dir: &'life1 Path,
) -> Pin<Box<dyn Future<Output = Result<PathBuf, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_executable_path<'life0, 'life1, 'async_trait>(
&'life0 self,
install_dir: &'life1 Path,
) -> Pin<Box<dyn Future<Output = Result<PathBuf, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get the executable path within an installation directory Read more
Source§fn get_version_install_dir(&self, version: &str) -> PathBuf
fn get_version_install_dir(&self, version: &str) -> PathBuf
Get installation directory for a specific version Read more
Source§fn get_base_install_dir(&self) -> PathBuf
fn get_base_install_dir(&self) -> PathBuf
Get base installation directory for this tool Read more
Source§fn remove_version<'life0, 'life1, 'async_trait>(
&'life0 self,
version: &'life1 str,
force: bool,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn remove_version<'life0, 'life1, 'async_trait>(
&'life0 self,
version: &'life1 str,
force: bool,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Remove a specific version of the tool Read more
Source§fn get_status<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<ToolStatus, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_status<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<ToolStatus, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get tool status (installed versions, active version, etc.) Read more
Source§fn default_install_workflow<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
version: &'life1 str,
install_dir: &'life2 Path,
) -> Pin<Box<dyn Future<Output = Result<PathBuf, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn default_install_workflow<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
version: &'life1 str,
install_dir: &'life2 Path,
) -> Pin<Box<dyn Future<Output = Result<PathBuf, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Default installation workflow (download + extract) Read more
Auto Trait Implementations§
impl Freeze for NpmTool
impl RefUnwindSafe for NpmTool
impl Send for NpmTool
impl Sync for NpmTool
impl Unpin for NpmTool
impl UnwindSafe for NpmTool
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