Skip to content

Commit 58852d4

Browse files
committed
refactor: Add getters to MaybePackage
1 parent 8a86027 commit 58852d4

File tree

1 file changed

+39
-16
lines changed

1 file changed

+39
-16
lines changed

src/cargo/core/workspace.rs

Lines changed: 39 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -409,10 +409,7 @@ impl<'gctx> Workspace<'gctx> {
409409
}
410410

411411
pub fn profiles(&self) -> Option<&TomlProfiles> {
412-
match self.root_maybe() {
413-
MaybePackage::Package(p) => p.manifest().profiles(),
414-
MaybePackage::Virtual(vm) => vm.profiles(),
415-
}
412+
self.root_maybe().profiles()
416413
}
417414

418415
/// Returns the root path of this workspace.
@@ -907,10 +904,7 @@ impl<'gctx> Workspace<'gctx> {
907904

908905
/// Returns the unstable nightly-only features enabled via `cargo-features` in the manifest.
909906
pub fn unstable_features(&self) -> &Features {
910-
match self.root_maybe() {
911-
MaybePackage::Package(p) => p.manifest().unstable_features(),
912-
MaybePackage::Virtual(vm) => vm.unstable_features(),
913-
}
907+
self.root_maybe().unstable_features()
914908
}
915909

916910
pub fn resolve_behavior(&self) -> ResolveBehavior {
@@ -1262,15 +1256,9 @@ impl<'gctx> Workspace<'gctx> {
12621256
.cloned()
12631257
.unwrap_or(manifest::TomlToolLints::default());
12641258

1265-
let ws_contents = match self.root_maybe() {
1266-
MaybePackage::Package(pkg) => pkg.manifest().contents(),
1267-
MaybePackage::Virtual(v) => v.contents(),
1268-
};
1259+
let ws_contents = self.root_maybe().contents();
12691260

1270-
let ws_document = match self.root_maybe() {
1271-
MaybePackage::Package(pkg) => pkg.manifest().document(),
1272-
MaybePackage::Virtual(v) => v.document(),
1273-
};
1261+
let ws_document = self.root_maybe().document();
12741262

12751263
analyze_cargo_lints_table(
12761264
pkg,
@@ -1888,6 +1876,41 @@ impl MaybePackage {
18881876
MaybePackage::Virtual(_) => false,
18891877
}
18901878
}
1879+
1880+
pub fn contents(&self) -> &str {
1881+
match self {
1882+
MaybePackage::Package(p) => p.manifest().contents(),
1883+
MaybePackage::Virtual(v) => v.contents(),
1884+
}
1885+
}
1886+
1887+
pub fn document(&self) -> &toml::Spanned<toml::de::DeTable<'static>> {
1888+
match self {
1889+
MaybePackage::Package(p) => p.manifest().document(),
1890+
MaybePackage::Virtual(v) => v.document(),
1891+
}
1892+
}
1893+
1894+
pub fn edition(&self) -> Edition {
1895+
match self {
1896+
MaybePackage::Package(p) => p.manifest().edition(),
1897+
MaybePackage::Virtual(_) => Edition::default(),
1898+
}
1899+
}
1900+
1901+
pub fn profiles(&self) -> Option<&TomlProfiles> {
1902+
match self {
1903+
MaybePackage::Package(p) => p.manifest().profiles(),
1904+
MaybePackage::Virtual(v) => v.profiles(),
1905+
}
1906+
}
1907+
1908+
pub fn unstable_features(&self) -> &Features {
1909+
match self {
1910+
MaybePackage::Package(p) => p.manifest().unstable_features(),
1911+
MaybePackage::Virtual(vm) => vm.unstable_features(),
1912+
}
1913+
}
18911914
}
18921915

18931916
impl WorkspaceRootConfig {

0 commit comments

Comments
 (0)