]> git.lizzy.rs Git - rust.git/commitdiff
IDE API
authorAleksey Kladov <aleksey.kladov@gmail.com>
Mon, 8 Jun 2020 10:52:28 +0000 (12:52 +0200)
committerAleksey Kladov <aleksey.kladov@gmail.com>
Mon, 8 Jun 2020 10:52:28 +0000 (12:52 +0200)
docs/dev/README.md

index 903cb4055a8398bb27328934ef2ebb8945e477e4..64d595b684a2d093c0736001ab818b7f1d02ffca 100644 (file)
@@ -268,6 +268,13 @@ IDE assumes that all information is available at all times.
 IDE should use only types from `ra_hir`, and should not depend on the underling compiler types.
 `ra_hir` is a facade.
 
+## IDE API
+
+The main IDE crate (`ra_ide`) uses "Plain Old Data" for the API.
+Rather than talking in definitions and references, it talks in Strings and textual offsets.
+In general, API is centered around UI concerns -- the result of the call is what the user sees in the editor, and not what the compiler sees underneath.
+The results are 100% Rust specific though.
+
 # Logging
 
 Logging is done by both rust-analyzer and VS Code, so it might be tricky to