ilya-biryukov added inline comments.

================
Comment at: clangd/ClangdServer.h:266
+
+    ParseInputs Inputs;
+    std::shared_ptr<CppFile> Resources;
----------------
These fields should probably be grouped into multiple groups:
- `Inputs` - capture the latest input. Can only be used on the main thread.
- `Resource->Preamble` - capture some built preamble (that's always available). 
Can be accessed on both the main thread and any of the worker threads.
- `LastRequestIsUpdate` and `LastUpdateCF` - capture the state of last update 
to allow cancelling it. Can be accessed only on the main thread.
- `Queue` and `Resources->AST` - capture the latest AST, Queue is used to 
schedule requests on the main thread, `Resources->AST` can only be accessed 
from actions on scheduled on the corresponding queue.



Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D42573



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to