Fix all residual errors, need to polish off warnings and TODOS

This commit is contained in:
Isaac Clayton 2022-07-06 15:57:25 +02:00
parent 6585daccf9
commit d009e10a46
5 changed files with 19 additions and 19 deletions

View file

@ -6233,7 +6233,7 @@ mod tests {
platform::{WindowBounds, WindowOptions}, platform::{WindowBounds, WindowOptions},
}; };
use indoc::indoc; use indoc::indoc;
use language::{FakeLspAdapter, LanguageConfig, FakeLspAdapterInner}; use language::{FakeLspAdapter, FakeLspAdapterInner, LanguageConfig};
use lsp::FakeLanguageServer; use lsp::FakeLanguageServer;
use project::FakeFs; use project::FakeFs;
use settings::LanguageSettings; use settings::LanguageSettings;

View file

@ -78,7 +78,7 @@ pub struct LspAdapter {
} }
impl LspAdapter { impl LspAdapter {
pub async fn new(adapter: impl LspAdapterTrait) -> Arc<Self> { pub async fn new<T: LspAdapterTrait>(adapter: T) -> Arc<Self> {
let adapter = Box::new(adapter); let adapter = Box::new(adapter);
let name = adapter.name().await; let name = adapter.name().await;
let server_args = adapter.server_args().await; let server_args = adapter.server_args().await;

View file

@ -22,26 +22,26 @@ pub async fn init(languages: Arc<LanguageRegistry>, executor: Arc<Background>) {
( (
"c", "c",
tree_sitter_c::language(), tree_sitter_c::language(),
Some(Arc::new(c::CLspAdapter) as Arc<dyn LspAdapter>), Some(LspAdapter::new(c::CLspAdapter).await),
), ),
( (
"cpp", "cpp",
tree_sitter_cpp::language(), tree_sitter_cpp::language(),
Some(Arc::new(c::CLspAdapter) as Arc<dyn LspAdapter>), Some(LspAdapter::new(c::CLspAdapter).await),
), ),
( (
"go", "go",
tree_sitter_go::language(), tree_sitter_go::language(),
Some(Arc::new(go::GoLspAdapter) as Arc<dyn LspAdapter>), Some(LspAdapter::new(go::GoLspAdapter).await),
), ),
( (
"json", "json",
tree_sitter_json::language(), tree_sitter_json::language(),
// Some(Arc::new(json::JsonLspAdapter)), // Some(LspAdapter::new(json::JsonLspAdapter)),
language_plugin::new_json(executor) match language_plugin::new_json(executor).await.log_err() {
.await Some(lang) => Some(LspAdapter::new(lang).await),
.log_err() None => None,
.map(|lang| Arc::new(lang) as Arc<_>), },
), ),
( (
"markdown", "markdown",
@ -51,12 +51,12 @@ pub async fn init(languages: Arc<LanguageRegistry>, executor: Arc<Background>) {
( (
"python", "python",
tree_sitter_python::language(), tree_sitter_python::language(),
Some(Arc::new(python::PythonLspAdapter)), Some(LspAdapter::new(python::PythonLspAdapter).await),
), ),
( (
"rust", "rust",
tree_sitter_rust::language(), tree_sitter_rust::language(),
Some(Arc::new(rust::RustLspAdapter)), Some(LspAdapter::new(rust::RustLspAdapter).await),
), ),
( (
"toml", "toml",
@ -66,17 +66,17 @@ pub async fn init(languages: Arc<LanguageRegistry>, executor: Arc<Background>) {
( (
"tsx", "tsx",
tree_sitter_typescript::language_tsx(), tree_sitter_typescript::language_tsx(),
Some(Arc::new(typescript::TypeScriptLspAdapter)), Some(LspAdapter::new(typescript::TypeScriptLspAdapter).await),
), ),
( (
"typescript", "typescript",
tree_sitter_typescript::language_typescript(), tree_sitter_typescript::language_typescript(),
Some(Arc::new(typescript::TypeScriptLspAdapter)), Some(LspAdapter::new(typescript::TypeScriptLspAdapter).await),
), ),
( (
"javascript", "javascript",
tree_sitter_typescript::language_tsx(), tree_sitter_typescript::language_tsx(),
Some(Arc::new(typescript::TypeScriptLspAdapter)), Some(LspAdapter::new(typescript::TypeScriptLspAdapter).await),
), ),
] { ] {
languages.add(Arc::new(language(name, grammar, lsp_adapter))); languages.add(Arc::new(language(name, grammar, lsp_adapter)));
@ -86,7 +86,7 @@ pub async fn init(languages: Arc<LanguageRegistry>, executor: Arc<Background>) {
pub(crate) fn language( pub(crate) fn language(
name: &str, name: &str,
grammar: tree_sitter::Language, grammar: tree_sitter::Language,
lsp_adapter: Option<Arc<dyn LspAdapter>>, lsp_adapter: Option<Arc<LspAdapter>>,
) -> Language { ) -> Language {
let config = toml::from_slice( let config = toml::from_slice(
&LanguageDir::get(&format!("{}/config.toml", name)) &LanguageDir::get(&format!("{}/config.toml", name))

View file

@ -314,7 +314,7 @@ mod tests {
let language = language( let language = language(
"go", "go",
tree_sitter_go::language(), tree_sitter_go::language(),
Some(Arc::new(GoLspAdapter)), Some(smol::block_on(LspAdapter::new(GoLspAdapter))),
); );
let theme = SyntaxTheme::new(vec![ let theme = SyntaxTheme::new(vec![

View file

@ -305,7 +305,7 @@ mod tests {
let language = language( let language = language(
"rust", "rust",
tree_sitter_rust::language(), tree_sitter_rust::language(),
Some(Arc::new(RustLspAdapter)), Some(smol::block_on(LspAdapter::new(RustLspAdapter))),
); );
let grammar = language.grammar().unwrap(); let grammar = language.grammar().unwrap();
let theme = SyntaxTheme::new(vec![ let theme = SyntaxTheme::new(vec![
@ -384,7 +384,7 @@ mod tests {
let language = language( let language = language(
"rust", "rust",
tree_sitter_rust::language(), tree_sitter_rust::language(),
Some(Arc::new(RustLspAdapter)), Some(smol::block_on(LspAdapter::new(RustLspAdapter))),
); );
let grammar = language.grammar().unwrap(); let grammar = language.grammar().unwrap();
let theme = SyntaxTheme::new(vec![ let theme = SyntaxTheme::new(vec![