]> git.lizzy.rs Git - rust.git/blobdiff - crates/rust-analyzer/src/lib.rs
internal: prepare to track changes to mem_docs
[rust.git] / crates / rust-analyzer / src / lib.rs
index 369830973a6113fa3762d8b1853d65870c35d3bb..a5997d69d9ae88b3c674df8cca990b329baeb059 100644 (file)
@@ -1,6 +1,6 @@
 //! Implementation of the LSP for rust-analyzer.
 //!
-//! This crate takes Rust-specific analysis results from ra_ide and translates
+//! This crate takes Rust-specific analysis results from ide and translates
 //! into LSP types.
 //!
 //! It also is the root of all state. `world` module defines the bulk of the
@@ -29,23 +29,29 @@ macro_rules! eprintln {
 mod semantic_tokens;
 mod markdown;
 mod diagnostics;
-mod line_endings;
+mod line_index;
 mod request_metrics;
 mod lsp_utils;
 mod thread_pool;
+mod mem_docs;
+mod diff;
+mod op_queue;
 pub mod lsp_ext;
 pub mod config;
 
+#[cfg(test)]
+mod integrated_benchmarks;
+
 use serde::de::DeserializeOwned;
+use std::fmt;
 
-pub type Result<T, E = Box<dyn std::error::Error + Send + Sync>> = std::result::Result<T, E>;
 pub use crate::{caps::server_capabilities, main_loop::main_loop};
-use ra_ide::AnalysisHost;
-use std::fmt;
-use vfs::Vfs;
+
+pub type Error = Box<dyn std::error::Error + Send + Sync>;
+pub type Result<T, E = Error> = std::result::Result<T, E>;
 
 pub fn from_json<T: DeserializeOwned>(what: &'static str, json: serde_json::Value) -> Result<T> {
-    let res = T::deserialize(&json)
+    let res = serde_path_to_error::deserialize(&json)
         .map_err(|e| format!("Failed to deserialize {}: {}; {}", what, e, json))?;
     Ok(res)
 }
@@ -69,22 +75,3 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
 }
 
 impl std::error::Error for LspError {}
-
-fn print_memory_usage(mut host: AnalysisHost, vfs: Vfs) {
-    let mut mem = host.per_query_memory_usage();
-
-    let before = ra_prof::memory_usage();
-    drop(vfs);
-    let vfs = before.allocated - ra_prof::memory_usage().allocated;
-    mem.push(("VFS".into(), vfs));
-
-    let before = ra_prof::memory_usage();
-    drop(host);
-    mem.push(("Unaccounted".into(), before.allocated - ra_prof::memory_usage().allocated));
-
-    mem.push(("Remaining".into(), ra_prof::memory_usage().allocated));
-
-    for (name, bytes) in mem {
-        println!("{:>8} {}", bytes, name);
-    }
-}