pub trait StaticAnalyzer {
// Required methods
fn command(self) -> String;
fn analyze(
&self,
id: String,
content: String,
output: Option<String>,
) -> usize;
fn download(self, config: Option<ValeConfig>) -> Self;
fn download_checksums(self) -> Result<HashMap<String, String>, String>;
fn extract(self, path: PathBuf, destination: Option<PathBuf>) -> PathBuf;
fn sync(self) -> Result<(), Error>;
fn with_binary(self, path: PathBuf) -> Self;
fn with_config(self, value: ValeConfig) -> Self;
fn with_system_command(self) -> Self;
fn with_version(self, value: String) -> Self;
}
Required Methods§
fn command(self) -> String
fn analyze(&self, id: String, content: String, output: Option<String>) -> usize
fn download(self, config: Option<ValeConfig>) -> Self
fn download_checksums(self) -> Result<HashMap<String, String>, String>
fn extract(self, path: PathBuf, destination: Option<PathBuf>) -> PathBuf
fn sync(self) -> Result<(), Error>
fn with_binary(self, path: PathBuf) -> Self
fn with_config(self, value: ValeConfig) -> Self
fn with_system_command(self) -> Self
fn with_version(self, value: String) -> Self
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.