Trait proto::Tool

source ·
pub trait Tool<'tool>: Send + Sync + Describable<'tool> + Detector<'tool> + Resolvable<'tool> + Downloadable<'tool> + Verifiable<'tool> + Installable<'tool> + Executable<'tool> + Shimable<'tool> {
Show 14 methods // Required methods fn as_any(&self) -> &(dyn Any + 'static); fn get_manifest(&self) -> Result<&Manifest, ProtoError>; fn get_manifest_mut(&mut self) -> Result<&mut Manifest, ProtoError>; fn get_tool_dir(&self) -> &Path; // Provided methods fn get_manifest_path(&self) -> PathBuf { ... } fn before_setup<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, Self: 'async_trait { ... } fn setup<'life0, 'life1, 'async_trait>( &'life0 mut self, initial_version: &'life1 str ) -> Pin<Box<dyn Future<Output = Result<bool, ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait { ... } fn setup_shims<'life0, 'async_trait>( &'life0 mut self, force: bool ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, Self: 'async_trait { ... } fn is_setup<'life0, 'life1, 'async_trait>( &'life0 mut self, initial_version: &'life1 str ) -> Pin<Box<dyn Future<Output = Result<bool, ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait { ... } fn after_setup<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, Self: 'async_trait { ... } fn cleanup<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, Self: 'async_trait { ... } fn before_teardown<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, Self: 'async_trait { ... } fn teardown<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<bool, ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, Self: 'async_trait { ... } fn after_teardown<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>> where 'life0: 'async_trait, Self: 'async_trait { ... }
}

Required Methods§

source

fn as_any(&self) -> &(dyn Any + 'static)

source

fn get_manifest(&self) -> Result<&Manifest, ProtoError>

source

fn get_manifest_mut(&mut self) -> Result<&mut Manifest, ProtoError>

source

fn get_tool_dir(&self) -> &Path

Provided Methods§

source

fn get_manifest_path(&self) -> PathBuf

source

fn before_setup<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, Self: 'async_trait,

source

fn setup<'life0, 'life1, 'async_trait>( &'life0 mut self, initial_version: &'life1 str ) -> Pin<Box<dyn Future<Output = Result<bool, ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait,

source

fn setup_shims<'life0, 'async_trait>( &'life0 mut self, force: bool ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, Self: 'async_trait,

source

fn is_setup<'life0, 'life1, 'async_trait>( &'life0 mut self, initial_version: &'life1 str ) -> Pin<Box<dyn Future<Output = Result<bool, ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait,

source

fn after_setup<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, Self: 'async_trait,

source

fn cleanup<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, Self: 'async_trait,

source

fn before_teardown<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, Self: 'async_trait,

source

fn teardown<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<bool, ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, Self: 'async_trait,

source

fn after_teardown<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), ProtoError>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, Self: 'async_trait,

Implementations on Foreign Types§

source§

impl Tool<'_> for NodeLanguage

source§

fn as_any(&self) -> &(dyn Any + 'static)

source§

fn get_manifest(&self) -> Result<&Manifest, ProtoError>

source§

fn get_manifest_mut(&mut self) -> Result<&mut Manifest, ProtoError>

source§

fn get_tool_dir(&self) -> &Path

source§

impl Tool<'_> for NodeDependencyManager

source§

fn as_any(&self) -> &(dyn Any + 'static)

source§

fn get_manifest(&self) -> Result<&Manifest, ProtoError>

source§

fn get_manifest_mut(&mut self) -> Result<&mut Manifest, ProtoError>

source§

fn get_tool_dir(&self) -> &Path

source§

impl Tool<'_> for RustLanguage

source§

fn as_any(&self) -> &(dyn Any + 'static)

source§

fn get_manifest(&self) -> Result<&Manifest, ProtoError>

source§

fn get_manifest_mut(&mut self) -> Result<&mut Manifest, ProtoError>

source§

fn get_tool_dir(&self) -> &Path

source§

impl Tool<'_> for SchemaPlugin

source§

fn as_any(&self) -> &(dyn Any + 'static)

source§

fn get_manifest(&self) -> Result<&Manifest, ProtoError>

source§

fn get_manifest_mut(&mut self) -> Result<&mut Manifest, ProtoError>

source§

fn get_tool_dir(&self) -> &Path

source§

impl Tool<'_> for WasmPlugin

source§

fn as_any(&self) -> &(dyn Any + 'static)

source§

fn get_manifest(&self) -> Result<&Manifest, ProtoError>

source§

fn get_manifest_mut(&mut self) -> Result<&mut Manifest, ProtoError>

source§

fn get_tool_dir(&self) -> &Path

Implementors§