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}