[PATCH] D40596: [clangd] New conventions for JSON-marshalling functions, centralize machinery

Sam McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Nov 29 03:49:11 PST 2017


sammccall created this revision.
Herald added subscribers: cfe-commits, klimek.

- JSON<->Obj interface is now ADL functions, so they play nicely with enums
- recursive vector/map parsing and ObjectMapper moved to JSONExpr and tested
- renamed (un)parse to (de)serialize, since text -> JSON is called parse
- Protocol.cpp gets a bit shorter

Sorry for the giant patch, it's prety mechanical though


Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D40596

Files:
  clangd/ClangdLSPServer.cpp
  clangd/JSONExpr.h
  clangd/Protocol.cpp
  clangd/Protocol.h
  clangd/ProtocolHandlers.cpp
  test/clangd/trace.test
  unittests/clangd/JSONExprTests.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D40596.124715.patch
Type: text/x-patch
Size: 42797 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20171129/f92627fc/attachment-0001.bin>


More information about the cfe-commits mailing list