soar_package/
traits.rs

1//! Traits for package operations.
2
3/// Trait for types that represent package metadata.
4///
5/// This trait provides access to basic package information needed for
6/// integration operations like desktop file creation and symlink management.
7pub trait PackageExt {
8    /// Returns the package name (human-readable name).
9    fn pkg_name(&self) -> &str;
10
11    /// Returns the unique package identifier.
12    fn pkg_id(&self) -> &str;
13
14    /// Returns the package version string.
15    fn version(&self) -> &str;
16
17    /// Returns the repository name this package belongs to.
18    fn repo_name(&self) -> &str;
19}