aboutsummaryrefslogtreecommitdiff
path: root/docs/dev/architecture.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/dev/architecture.md')
-rw-r--r--docs/dev/architecture.md6
1 files changed, 3 insertions, 3 deletions
diff --git a/docs/dev/architecture.md b/docs/dev/architecture.md
index 41c3909f7..0343b6c81 100644
--- a/docs/dev/architecture.md
+++ b/docs/dev/architecture.md
@@ -134,7 +134,7 @@ APIs in this crate are IDE centric: they take text offsets as input and produce
134offsets and strings as output. This works on top of rich code model powered by 134offsets and strings as output. This works on top of rich code model powered by
135`hir`. 135`hir`.
136 136
137### `crates/ra_lsp_server` 137### `crates/rust-analyzer`
138 138
139An LSP implementation which wraps `ra_ide` into a language server protocol. 139An LSP implementation which wraps `ra_ide` into a language server protocol.
140 140
@@ -153,7 +153,7 @@ Rust Analyzer has three interesting [systems
153boundaries](https://www.tedinski.com/2018/04/10/making-tests-a-positive-influence-on-design.html) 153boundaries](https://www.tedinski.com/2018/04/10/making-tests-a-positive-influence-on-design.html)
154to concentrate tests on. 154to concentrate tests on.
155 155
156The outermost boundary is the `ra_lsp_server` crate, which defines an LSP 156The outermost boundary is the `rust-analyzer` crate, which defines an LSP
157interface in terms of stdio. We do integration testing of this component, by 157interface in terms of stdio. We do integration testing of this component, by
158feeding it with a stream of LSP requests and checking responses. These tests are 158feeding it with a stream of LSP requests and checking responses. These tests are
159known as "heavy", because they interact with Cargo and read real files from 159known as "heavy", because they interact with Cargo and read real files from
@@ -162,7 +162,7 @@ in a statically typed language, it's hard to make an error in the protocol
162itself if messages are themselves typed. 162itself if messages are themselves typed.
163 163
164The middle, and most important, boundary is `ra_ide`. Unlike 164The middle, and most important, boundary is `ra_ide`. Unlike
165`ra_lsp_server`, which exposes API, `ide` uses Rust API and is intended to 165`rust-analyzer`, which exposes API, `ide` uses Rust API and is intended to
166use by various tools. Typical test creates an `AnalysisHost`, calls some 166use by various tools. Typical test creates an `AnalysisHost`, calls some
167`Analysis` functions and compares the results against expectation. 167`Analysis` functions and compares the results against expectation.
168 168