pub trait StandardToolConfig {
// Required methods
fn tool_name() -> &'static str;
fn create_install_config(
version: &str,
install_dir: PathBuf,
) -> InstallConfig;
fn get_install_methods() -> Vec<String>;
fn supports_auto_install() -> bool;
fn get_manual_instructions() -> String;
fn get_dependencies() -> Vec<ToolDependency>;
fn get_default_version() -> &'static str;
}Expand description
Standard tool configuration interface
Required Methods§
Sourcefn create_install_config(version: &str, install_dir: PathBuf) -> InstallConfig
fn create_install_config(version: &str, install_dir: PathBuf) -> InstallConfig
Create installation configuration for a version
Sourcefn get_install_methods() -> Vec<String>
fn get_install_methods() -> Vec<String>
Get available installation methods
Sourcefn supports_auto_install() -> bool
fn supports_auto_install() -> bool
Check if the tool supports automatic installation
Sourcefn get_manual_instructions() -> String
fn get_manual_instructions() -> String
Get manual installation instructions
Sourcefn get_dependencies() -> Vec<ToolDependency>
fn get_dependencies() -> Vec<ToolDependency>
Get tool dependencies
Sourcefn get_default_version() -> &'static str
fn get_default_version() -> &'static str
Get default version
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.