internal: reduce crate interdependence

I don't think there's anything wrong with project_model depending on
proc_macro_api directly -- fundamentally, both are about gluing our pure
data model to the messy outside world.

However, it's easy enough to avoid the dependency, so why not.

As an additional consideration, `proc_macro_api` now pulls in `base_db`.
project_model should definitely not depend on that!
This commit is contained in:
Aleksey Kladov 2021-08-22 13:32:00 +03:00
parent 5cef007bff
commit 881d71a489
9 changed files with 44 additions and 41 deletions

View file

@ -11,9 +11,8 @@ use ide::{Analysis, AnalysisHost, Cancellable, Change, FileId};
use ide_db::base_db::CrateId;
use lsp_types::{SemanticTokens, Url};
use parking_lot::{Mutex, RwLock};
use project_model::{
CargoWorkspace, ProcMacroClient, ProjectWorkspace, Target, WorkspaceBuildScripts,
};
use proc_macro_api::ProcMacroClient;
use project_model::{CargoWorkspace, ProjectWorkspace, Target, WorkspaceBuildScripts};
use rustc_hash::FxHashMap;
use vfs::AnchoredPathBuf;