[PATCH] D96244: [clangd] Introduce Modules

Sam McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Feb 12 06:40:02 PST 2021


sammccall accepted this revision.
sammccall added inline comments.
This revision is now accepted and ready to land.


================
Comment at: clang-tools-extra/clangd/ClangdServer.h:33
 #include "clang/Tooling/Core/Replacement.h"
+#include "llvm/ADT/ArrayRef.h"
 #include "llvm/ADT/FunctionExtras.h"
----------------
(include no longer used?)


================
Comment at: clang-tools-extra/clangd/Module.h:19
+///  - these modules are then passed to ClangdLSPServer and ClangdServer
+///    FIXME: LSP bindings should be registered at ClangdLSPServer creation, and
+///    we should make some server facilities like TUScheduler and index
----------------
not at creation, but rather at `initialize` time


================
Comment at: clang-tools-extra/clangd/Module.h:20
+///    FIXME: LSP bindings should be registered at ClangdLSPServer creation, and
+///    we should make some server facilities like TUScheduler and index
+///    available to those modules after ClangdServer is initalized.
----------------
maybe this is a separate fixme (basically ClangdLSPServer vs Server)


================
Comment at: clang-tools-extra/clangd/Module.h:22
+///    available to those modules after ClangdServer is initalized.
+///  - module hooks can be called afterwards.
+///  - ClangdServer will not be destroyed until all the requests are done.
----------------
after what? at this point?


================
Comment at: clang-tools-extra/clangd/Module.h:31
+public:
+  virtual ~Module() = default;
+
----------------
Should either:
 - doc that destructor should cancel as much background work as possible and block until it's done
 - add a requestStop() and doc that destructor should block
 - remove the concept of background work completely (i.e. blockUntilIdle())


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D96244/new/

https://reviews.llvm.org/D96244



More information about the cfe-commits mailing list