1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-21 23:04:45 -05:00
denoland-deno/cli/lsp
2020-12-08 11:36:13 +01:00
..
analysis.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
capabilities.rs feat(lsp): basic support for textDocument/completion (#8651) 2020-12-08 11:36:13 +01:00
config.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
diagnostics.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
dispatch.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
handlers.rs feat(lsp): basic support for textDocument/completion (#8651) 2020-12-08 11:36:13 +01:00
lsp_extensions.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
memory_cache.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
mod.rs feat(lsp): basic support for textDocument/completion (#8651) 2020-12-08 11:36:13 +01:00
README.md feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
sources.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
state.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
text.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00
tsc.rs feat(lsp): basic support for textDocument/completion (#8651) 2020-12-08 11:36:13 +01:00
utils.rs feat: add mvp language server (#8515) 2020-12-07 21:46:39 +11:00

Deno Language Server

The Deno Language Server provides a server implementation of the Language Server Protocol which is specifically tailored to provide a Deno view of code. It is integrated into the command line and can be started via the lsp sub-command.

⚠️ The Language Server is highly experimental and far from feature complete.

This document gives an overview of the structure of the language server.

Acknowledgement

The structure of the language server was heavily influenced and adapted from rust-analyzer.

Structure

When the language server is started, a ServerState instance is created which holds all the state of the language server, as well as provides the infrastructure for receiving and sending notifications and requests from a language server client.