@@ -409,10 +409,7 @@ impl<'gctx> Workspace<'gctx> {
409
409
}
410
410
411
411
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 ( )
416
413
}
417
414
418
415
/// Returns the root path of this workspace.
@@ -907,10 +904,7 @@ impl<'gctx> Workspace<'gctx> {
907
904
908
905
/// Returns the unstable nightly-only features enabled via `cargo-features` in the manifest.
909
906
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 ( )
914
908
}
915
909
916
910
pub fn resolve_behavior ( & self ) -> ResolveBehavior {
@@ -1262,15 +1256,9 @@ impl<'gctx> Workspace<'gctx> {
1262
1256
. cloned ( )
1263
1257
. unwrap_or ( manifest:: TomlToolLints :: default ( ) ) ;
1264
1258
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 ( ) ;
1269
1260
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 ( ) ;
1274
1262
1275
1263
analyze_cargo_lints_table (
1276
1264
pkg,
@@ -1888,6 +1876,41 @@ impl MaybePackage {
1888
1876
MaybePackage :: Virtual ( _) => false ,
1889
1877
}
1890
1878
}
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
+ }
1891
1914
}
1892
1915
1893
1916
impl WorkspaceRootConfig {
0 commit comments