Unnamed repository; edit this file 'description' to name the repository.
Merge pull request #18396 from lnicola/hide-default-config
internal: Hide `Config::default_config`
Laurențiu Nicola 2024-10-24
parent 6342667 · parent 0d3d891 · commit 16785c8
-rw-r--r--Cargo.lock4
-rw-r--r--Cargo.toml2
-rw-r--r--crates/rust-analyzer/src/config.rs22
3 files changed, 24 insertions, 4 deletions
diff --git a/Cargo.lock b/Cargo.lock
index 368e182895..8bbccc82ae 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1885,9 +1885,9 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
[[package]]
name = "smol_str"
-version = "0.3.1"
+version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "66eaf762c5af19db3108300515c8aa7a50efc90ff745f4c62288052ebf9fdd25"
+checksum = "9676b89cd56310a87b93dec47b11af744f34d5fc9f367b829474eec0a891350d"
dependencies = [
"borsh",
"serde",
diff --git a/Cargo.toml b/Cargo.toml
index 9db62de9ab..3c2d3a13b1 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -145,7 +145,7 @@ smallvec = { version = "1.10.0", features = [
"union",
"const_generics",
] }
-smol_str = "0.3.1"
+smol_str = "0.3.2"
snap = "1.1.0"
text-size = "1.1.1"
tracing = "0.1.40"
diff --git a/crates/rust-analyzer/src/config.rs b/crates/rust-analyzer/src/config.rs
index 518b588cb7..f5b0fcecf3 100644
--- a/crates/rust-analyzer/src/config.rs
+++ b/crates/rust-analyzer/src/config.rs
@@ -727,7 +727,7 @@ enum RatomlFile {
Crate(LocalConfigInput),
}
-#[derive(Debug, Clone)]
+#[derive(Clone)]
pub struct Config {
/// Projects that have a Cargo.toml or a rust-project.json in a
/// parent directory, so we can discover them by walking the
@@ -765,6 +765,26 @@ pub struct Config {
detached_files: Vec<AbsPathBuf>,
}
+impl fmt::Debug for Config {
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
+ f.debug_struct("Config")
+ .field("discovered_projects_from_filesystem", &self.discovered_projects_from_filesystem)
+ .field("discovered_projects_from_command", &self.discovered_projects_from_command)
+ .field("workspace_roots", &self.workspace_roots)
+ .field("caps", &self.caps)
+ .field("root_path", &self.root_path)
+ .field("snippets", &self.snippets)
+ .field("visual_studio_code_version", &self.visual_studio_code_version)
+ .field("client_config", &self.client_config)
+ .field("user_config", &self.user_config)
+ .field("ratoml_file", &self.ratoml_file)
+ .field("source_root_parent_map", &self.source_root_parent_map)
+ .field("validation_errors", &self.validation_errors)
+ .field("detached_files", &self.detached_files)
+ .finish()
+ }
+}
+
// Delegate capability fetching methods
impl std::ops::Deref for Config {
type Target = ClientCapabilities;