Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/base-db/src/lib.rs')
-rw-r--r--crates/base-db/src/lib.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/crates/base-db/src/lib.rs b/crates/base-db/src/lib.rs
index 83857cf2dd..9fbeace76c 100644
--- a/crates/base-db/src/lib.rs
+++ b/crates/base-db/src/lib.rs
@@ -303,6 +303,19 @@ pub struct CrateWorkspaceData {
pub toolchain: Option<Version>,
}
+impl CrateWorkspaceData {
+ pub fn is_atleast_187(&self) -> bool {
+ const VERSION_187: Version = Version {
+ major: 1,
+ minor: 87,
+ patch: 0,
+ pre: Prerelease::EMPTY,
+ build: BuildMetadata::EMPTY,
+ };
+ self.toolchain.as_ref().map_or(false, |v| *v >= VERSION_187)
+ }
+}
+
fn toolchain_channel(db: &dyn RootQueryDb, krate: Crate) -> Option<ReleaseChannel> {
krate.workspace_data(db).toolchain.as_ref().and_then(|v| ReleaseChannel::from_str(&v.pre))
}