syncable_cli/analyzer/vulnerability/checkers/
mod.rs1pub mod rust;
4pub mod javascript;
5pub mod python;
6pub mod go;
7pub mod java;
8
9pub use rust::RustVulnerabilityChecker;
10pub use javascript::JavaScriptVulnerabilityChecker;
11pub use python::PythonVulnerabilityChecker;
12pub use go::GoVulnerabilityChecker;
13pub use java::JavaVulnerabilityChecker;
14
15use std::path::Path;
16use crate::analyzer::dependency_parser::DependencyInfo;
17use super::types::{VulnerableDependency, VulnerabilityError};
18
19pub trait LanguageVulnerabilityChecker {
21 fn check_vulnerabilities(
22 &self,
23 dependencies: &[DependencyInfo],
24 project_path: &Path
25 ) -> Result<Vec<VulnerableDependency>, VulnerabilityError>;
26}
27
28pub trait MutableLanguageVulnerabilityChecker {
30 fn check_vulnerabilities(
31 &mut self,
32 dependencies: &[DependencyInfo],
33 project_path: &Path
34 ) -> Result<Vec<VulnerableDependency>, VulnerabilityError>;
35}