arch_pkg_text/value/
dependency.rs

1use super::{Dependency, DependencyName, DependencySpecification};
2
3impl<'a> Dependency<'a> {
4    /// Extract [`DependencyName`] and [`DependencySpecification`].
5    ///
6    /// ```
7    /// # use arch_pkg_text::value::{Dependency, DependencyName, DependencySpecification};
8    /// # use pretty_assertions::assert_eq;
9    /// let depend = Dependency("rustup>=1.27.0-1");
10    /// let (name, spec) = depend.components();
11    /// assert_eq!(name, DependencyName("rustup"));
12    /// assert_eq!(spec, DependencySpecification(">=1.27.0-1"));
13    /// ```
14    pub fn components(&self) -> (DependencyName<'a>, DependencySpecification<'a>) {
15        let (name, spec) = DependencyName::parse(self);
16        let spec = DependencySpecification(spec);
17        (name, spec)
18    }
19}