uv_resolver/dependency_mode.rs
1#[derive(Debug, Default, Clone, Copy, PartialEq, Eq, serde::Deserialize)]
2pub enum DependencyMode {
3 /// Include all dependencies, whether direct or transitive.
4 #[default]
5 Transitive,
6 /// Exclude transitive dependencies, only resolving the root package's immediate dependencies.
7 Direct,
8}
9
10impl DependencyMode {
11 /// Returns `true` if transitive dependencies should be included.
12 pub fn is_transitive(self) -> bool {
13 matches!(self, Self::Transitive)
14 }
15
16 /// Returns `true` if (only) direct dependencies should be excluded.
17 pub fn is_direct(self) -> bool {
18 matches!(self, Self::Direct)
19 }
20}