Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/lib.rs')
-rw-r--r--crates/ide/src/lib.rs11
1 files changed, 10 insertions, 1 deletions
diff --git a/crates/ide/src/lib.rs b/crates/ide/src/lib.rs
index e131e7bdd1..88cb570c6b 100644
--- a/crates/ide/src/lib.rs
+++ b/crates/ide/src/lib.rs
@@ -41,6 +41,7 @@ mod matching_brace;
mod moniker;
mod move_item;
mod parent_module;
+mod predicate_eval;
mod references;
mod rename;
mod runnables;
@@ -122,7 +123,7 @@ pub use crate::{
},
test_explorer::{TestItem, TestItemKind},
};
-pub use hir::Semantics;
+pub use hir::{PredicateEvaluationResult, PredicateEvaluationStatus, Semantics};
pub use ide_assists::{
Assist, AssistConfig, AssistId, AssistKind, AssistResolveStrategy, SingleResolve,
};
@@ -391,6 +392,14 @@ impl Analysis {
self.with_db(|db| view_hir::view_hir(db, position))
}
+ pub fn evaluate_predicate(
+ &self,
+ text: String,
+ position: FilePosition,
+ ) -> Cancellable<PredicateEvaluationResult> {
+ self.with_db(|db| predicate_eval::evaluate_predicate(db, text, position))
+ }
+
pub fn view_mir(&self, position: FilePosition) -> Cancellable<String> {
self.with_db(|db| view_mir::view_mir(db, position))
}