[PATCH] D42517: [clangd] RFC: Pass Context implicitly using TLS.

Sam McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jan 24 18:50:15 PST 2018


sammccall created this revision.
sammccall added a reviewer: ilya-biryukov.
Herald added subscribers: cfe-commits, ioeric, jkorous-apple, klimek.

This is mostly to show what it would look like. I think it's pretty nice!

The lit tests pass, but the unit tests don't build because I ripped out some
std::future APIs and just return void, so the tests have no way to sync.
These probably need to be converted to callbacks first (callback APIs play
nicely with implicit contexts).


Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D42517

Files:
  clangd/ClangdLSPServer.cpp
  clangd/ClangdLSPServer.h
  clangd/ClangdServer.cpp
  clangd/ClangdServer.h
  clangd/ClangdUnit.cpp
  clangd/ClangdUnit.h
  clangd/CodeComplete.cpp
  clangd/CodeComplete.h
  clangd/Context.cpp
  clangd/Context.h
  clangd/Function.h
  clangd/GlobalCompilationDatabase.cpp
  clangd/JSONRPCDispatcher.cpp
  clangd/JSONRPCDispatcher.h
  clangd/Logger.cpp
  clangd/Logger.h
  clangd/ProtocolHandlers.cpp
  clangd/ProtocolHandlers.h
  clangd/Trace.cpp
  clangd/Trace.h
  clangd/XRefs.cpp
  clangd/XRefs.h
  clangd/index/FileIndex.cpp
  clangd/index/FileIndex.h
  clangd/index/Index.h
  clangd/index/MemIndex.cpp
  clangd/index/MemIndex.h
  clangd/index/Merge.cpp
  unittests/clangd/TraceTests.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D42517.131384.patch
Type: text/x-patch
Size: 88155 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180125/02dc650a/attachment-0001.bin>


More information about the cfe-commits mailing list