[all-commits] [llvm/llvm-project] 0250b0: [clangd] Add a Filesystem that overlays Dirty files.
Nathan James via All-commits
all-commits at lists.llvm.org
Tue Mar 9 06:35:44 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0250b053b5aa7fc16408e6c037e5e71db5e9b012
https://github.com/llvm/llvm-project/commit/0250b053b5aa7fc16408e6c037e5e71db5e9b012
Author: Nathan James <n.james93 at hotmail.co.uk>
Date: 2021-03-09 (Tue, 09 Mar 2021)
Changed paths:
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/ClangdServer.h
M clang-tools-extra/clangd/DraftStore.cpp
M clang-tools-extra/clangd/DraftStore.h
M clang-tools-extra/clangd/unittests/DraftStoreTests.cpp
Log Message:
-----------
[clangd] Add a Filesystem that overlays Dirty files.
Create a `ThreadsafeFS` in the `DraftStore` that overlays the dirty file contents over another `ThreadsafeFS`.
This provides a nice thread-safe interface for using dirty file contents throughout the codebase, for example cross file refactoring.
Creating a Filesystem view will overlay a snapshot of the current contents, so if the draft store is updated while the view is being used, it will contain stale contents.
Reviewed By: sammccall
Differential Revision: https://reviews.llvm.org/D94554
More information about the All-commits
mailing list