diff options
Diffstat (limited to 'src/tools/rust-analyzer/crates/hir/src/db.rs')
-rw-r--r-- | src/tools/rust-analyzer/crates/hir/src/db.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/tools/rust-analyzer/crates/hir/src/db.rs b/src/tools/rust-analyzer/crates/hir/src/db.rs new file mode 100644 index 000000000..e25d86784 --- /dev/null +++ b/src/tools/rust-analyzer/crates/hir/src/db.rs @@ -0,0 +1,16 @@ +//! Re-exports various subcrates databases so that the calling code can depend +//! only on `hir`. This breaks abstraction boundary a bit, it would be cool if +//! we didn't do that. +//! +//! But we need this for at least LRU caching at the query level. +pub use hir_def::db::*; +pub use hir_expand::db::{ + AstDatabase, AstDatabaseStorage, AstIdMapQuery, HygieneFrameQuery, InternMacroCallQuery, + MacroArgTextQuery, MacroDefQuery, MacroExpandQuery, ParseMacroExpansionQuery, +}; +pub use hir_ty::db::*; + +#[test] +fn hir_database_is_object_safe() { + fn _assert_object_safe(_: &dyn HirDatabase) {} +} |