mirror of
https://github.com/Myriad-Dreamin/tinymist.git
synced 2025-08-03 17:58:17 +00:00
chore: remove redundant code
This commit is contained in:
parent
c19197178c
commit
5f4c55516a
3 changed files with 50 additions and 46 deletions
|
@ -1,6 +1,7 @@
|
|||
pub mod analysis;
|
||||
|
||||
pub(crate) mod diagnostics;
|
||||
|
||||
pub use diagnostics::*;
|
||||
pub(crate) mod signature_help;
|
||||
pub use signature_help::*;
|
||||
|
@ -30,6 +31,48 @@ pub use lsp_typst_boundary::*;
|
|||
|
||||
mod prelude;
|
||||
|
||||
mod polymorphic {
|
||||
use super::prelude::*;
|
||||
use super::*;
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct OnSaveExportRequest {
|
||||
pub path: PathBuf,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub enum CompilerQueryRequest {
|
||||
OnSaveExport(OnSaveExportRequest),
|
||||
Hover(HoverRequest),
|
||||
GotoDefinition(GotoDefinitionRequest),
|
||||
Completion(CompletionRequest),
|
||||
SignatureHelp(SignatureHelpRequest),
|
||||
DocumentSymbol(DocumentSymbolRequest),
|
||||
Symbol(SymbolRequest),
|
||||
SemanticTokensFull(SemanticTokensFullRequest),
|
||||
SemanticTokensDelta(SemanticTokensDeltaRequest),
|
||||
FoldingRange(FoldingRangeRequest),
|
||||
SelectionRange(SelectionRangeRequest),
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub enum CompilerQueryResponse {
|
||||
OnSaveExport(()),
|
||||
Hover(Option<Hover>),
|
||||
GotoDefinition(Option<GotoDefinitionResponse>),
|
||||
Completion(Option<CompletionResponse>),
|
||||
SignatureHelp(Option<SignatureHelp>),
|
||||
DocumentSymbol(Option<DocumentSymbolResponse>),
|
||||
Symbol(Option<Vec<SymbolInformation>>),
|
||||
SemanticTokensFull(Option<SemanticTokensResult>),
|
||||
SemanticTokensDelta(Option<SemanticTokensFullDeltaResult>),
|
||||
FoldingRange(Option<Vec<FoldingRange>>),
|
||||
SelectionRange(Option<Vec<SelectionRange>>),
|
||||
}
|
||||
}
|
||||
|
||||
pub use polymorphic::*;
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use core::fmt;
|
||||
|
|
|
@ -8,14 +8,11 @@ use anyhow::anyhow;
|
|||
use futures::future::join_all;
|
||||
use log::{error, trace, warn};
|
||||
use tinymist_query::{
|
||||
DiagnosticsMap, LspDiagnostic, LspRange, PositionEncoding, SemanticTokenCache,
|
||||
CompilerQueryRequest, CompilerQueryResponse, DiagnosticsMap, LspDiagnostic, LspRange,
|
||||
OnSaveExportRequest, PositionEncoding, SemanticTokenCache,
|
||||
};
|
||||
use tokio::sync::{broadcast, mpsc, watch, Mutex, RwLock};
|
||||
use tower_lsp::lsp_types::{
|
||||
CompletionResponse, DocumentSymbolResponse, FoldingRange, GotoDefinitionResponse, Hover,
|
||||
SelectionRange, SemanticTokensFullDeltaResult, SemanticTokensResult, SignatureHelp,
|
||||
SymbolInformation, TextDocumentContentChangeEvent, Url,
|
||||
};
|
||||
use tower_lsp::lsp_types::{TextDocumentContentChangeEvent, Url};
|
||||
use typst::diag::{FileResult, SourceDiagnostic, SourceResult};
|
||||
use typst::layout::Position;
|
||||
use typst::model::Document;
|
||||
|
@ -285,41 +282,6 @@ impl CompileCluster {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct OnSaveExportRequest {
|
||||
pub path: PathBuf,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub enum CompilerQueryRequest {
|
||||
OnSaveExport(OnSaveExportRequest),
|
||||
Hover(tinymist_query::HoverRequest),
|
||||
GotoDefinition(tinymist_query::GotoDefinitionRequest),
|
||||
Completion(tinymist_query::CompletionRequest),
|
||||
SignatureHelp(tinymist_query::SignatureHelpRequest),
|
||||
DocumentSymbol(tinymist_query::DocumentSymbolRequest),
|
||||
Symbol(tinymist_query::SymbolRequest),
|
||||
SemanticTokensFull(tinymist_query::SemanticTokensFullRequest),
|
||||
SemanticTokensDelta(tinymist_query::SemanticTokensDeltaRequest),
|
||||
FoldingRange(tinymist_query::FoldingRangeRequest),
|
||||
SelectionRange(tinymist_query::SelectionRangeRequest),
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub enum CompilerQueryResponse {
|
||||
OnSaveExport(()),
|
||||
Hover(Option<Hover>),
|
||||
GotoDefinition(Option<GotoDefinitionResponse>),
|
||||
Completion(Option<CompletionResponse>),
|
||||
SignatureHelp(Option<SignatureHelp>),
|
||||
DocumentSymbol(Option<DocumentSymbolResponse>),
|
||||
Symbol(Option<Vec<SymbolInformation>>),
|
||||
SemanticTokensFull(Option<SemanticTokensResult>),
|
||||
SemanticTokensDelta(Option<SemanticTokensFullDeltaResult>),
|
||||
FoldingRange(Option<Vec<FoldingRange>>),
|
||||
SelectionRange(Option<Vec<SelectionRange>>),
|
||||
}
|
||||
|
||||
macro_rules! query_state {
|
||||
($self:ident, $method:ident, $req:expr) => {{
|
||||
let doc = $self.handler.result.lock().unwrap().clone().ok();
|
||||
|
|
|
@ -17,8 +17,8 @@ use serde_json::Value as JsonValue;
|
|||
use tinymist_query::{
|
||||
get_semantic_tokens_options, get_semantic_tokens_registration,
|
||||
get_semantic_tokens_unregistration, CompletionRequest, DocumentSymbolRequest,
|
||||
FoldingRangeRequest, GotoDefinitionRequest, HoverRequest, PositionEncoding,
|
||||
SelectionRangeRequest, SemanticTokensDeltaRequest, SemanticTokensFullRequest,
|
||||
FoldingRangeRequest, GotoDefinitionRequest, HoverRequest, OnSaveExportRequest,
|
||||
PositionEncoding, SelectionRangeRequest, SemanticTokensDeltaRequest, SemanticTokensFullRequest,
|
||||
SignatureHelpRequest, SymbolRequest,
|
||||
};
|
||||
|
||||
|
@ -34,7 +34,6 @@ use typst::model::Document;
|
|||
use typst_ts_core::config::CompileOpts;
|
||||
|
||||
use crate::actor::typst::CompileCluster;
|
||||
use crate::actor::typst::{CompilerQueryResponse, OnSaveExportRequest};
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, Default, Deserialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
|
@ -234,14 +233,14 @@ macro_rules! run_query {
|
|||
let req = $req;
|
||||
$self
|
||||
.universe()
|
||||
.query(actor::typst::CompilerQueryRequest::$query(req.clone()))
|
||||
.query(tinymist_query::CompilerQueryRequest::$query(req.clone()))
|
||||
.await
|
||||
.map_err(|err| {
|
||||
error!("error getting $query: {err} with request {req:?}");
|
||||
jsonrpc::Error::internal_error()
|
||||
})
|
||||
.map(|resp| {
|
||||
let CompilerQueryResponse::$query(resp) = resp else {
|
||||
let tinymist_query::CompilerQueryResponse::$query(resp) = resp else {
|
||||
unreachable!()
|
||||
};
|
||||
resp
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue