sammccall added a comment.

This patch is the right direction, but if you're up for it we can simplify 
interfaces further I think.



================
Comment at: clangd/TUScheduler.h:62
 
+  /// Returns a list of currently tracked files. File starts being trakced on
+  /// first update() call to it and stops being tracked on remove() call.
----------------
simark wrote:
> "trakced"
tracked


================
Comment at: clangd/TUScheduler.h:69
+  /// FIXME: remove the callback from this function
+  void updateCompileCommand(PathRef File, tooling::CompileCommand NewCommand,
+                            IntrusiveRefCntPtr<vfs::FileSystem> FS,
----------------
(summarizing offline discussion)

this is so close to `update`, it'd be nice if we could just call `update` 
instead.

For that we need the contents, so forceReparse needs contents, so... can 
forceReparse just be addDocument(skipCache=true) or something?

Requiring content to be passed doesn't seem like a big burden in practice, and 
makes it clear that clangdserver is never responsible for maintaining copies of 
the content on the callers behalf (and clangdlspserver is).

reparseOpenFiles needs to move to clangdlspserver, but this seems consistent 
with the design. (so I think we can drop getTrackedFiles?)


Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D44462



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

Reply via email to