mirror of
https://github.com/RGBCube/serenity
synced 2026-01-14 12:30:59 +00:00
This is a pretty fundamental refactor of the way CppComprehensionEngine works. Previously, in order to answer queries such as "goto definition" or "autocomplete", we would do ad-hoc logic of walking the AST, collecting available declaration nodes, computing scopes, and so on. This commit introduces an architectural change where each Document builds a hashmap of symbols on creation. With these hashmaps, it's easier to iterate over all of the available symbols, and to answer a query such as "which symbols are defined in this scope". |
||
|---|---|---|
| .. | ||
| Cpp | ||
| Shell | ||
| ClientConnection.cpp | ||
| ClientConnection.h | ||
| CMakeLists.txt | ||
| CodeComprehensionEngine.cpp | ||
| CodeComprehensionEngine.h | ||
| FileDB.cpp | ||
| FileDB.h | ||
| LanguageClient.ipc | ||
| LanguageServer.ipc | ||