pub trait Extension: Send + Sync {
// Required methods
fn name(&self) -> String;
fn registries(&self) -> Vec<String>;
fn identify_package_dependencies(
&self,
package_name: &str,
package_version: &Option<&str>,
extension_args: &[String],
) -> Result<Vec<PackageDependencies>>;
fn identify_file_defined_dependencies(
&self,
working_directory: &Path,
extension_args: &[String],
) -> Result<Vec<FileDefinedDependencies>>;
fn registries_package_metadata(
&self,
package_name: &str,
package_version: &Option<&str>,
) -> Result<Vec<RegistryPackageMetadata>>;
// Provided method
fn review_target_policy(&self) -> ReviewTargetPolicy { ... }
}Expand description
Registry and dependency behavior implemented by every Thirdpass extension.
Required Methods§
Sourcefn registries(&self) -> Vec<String>
fn registries(&self) -> Vec<String>
Return registry host names supported by this extension.
Sourcefn identify_package_dependencies(
&self,
package_name: &str,
package_version: &Option<&str>,
extension_args: &[String],
) -> Result<Vec<PackageDependencies>>
fn identify_package_dependencies( &self, package_name: &str, package_version: &Option<&str>, extension_args: &[String], ) -> Result<Vec<PackageDependencies>>
Identify specific package dependencies.
Sourcefn identify_file_defined_dependencies(
&self,
working_directory: &Path,
extension_args: &[String],
) -> Result<Vec<FileDefinedDependencies>>
fn identify_file_defined_dependencies( &self, working_directory: &Path, extension_args: &[String], ) -> Result<Vec<FileDefinedDependencies>>
Identify file defined dependencies.
Sourcefn registries_package_metadata(
&self,
package_name: &str,
package_version: &Option<&str>,
) -> Result<Vec<RegistryPackageMetadata>>
fn registries_package_metadata( &self, package_name: &str, package_version: &Option<&str>, ) -> Result<Vec<RegistryPackageMetadata>>
Query package registries for package metadata.
Provided Methods§
Sourcefn review_target_policy(&self) -> ReviewTargetPolicy
fn review_target_policy(&self) -> ReviewTargetPolicy
Return automatic review-target selection policy for this extension.