llvm-project/clang-tools-extra/test/clangd
Sam McCall 38a0491c68 [clangd] Simplify common JSON-parsing patterns in Protocol.
Summary:
This makes the parse() functions about as short as they can be given the
current signature, and moves all array-traversal etc code to a
central location.

We keep the ability to distinguish between optional and required fields:
and we don't propagate parse errors for optional fields.

I've made most fields required per the LSP spec - the looseness we had
here was mostly a historical accident I think.

Reviewers: ioeric

Subscribers: klimek, cfe-commits, ilya-biryukov

Differential Revision: https://reviews.llvm.org/D40564

llvm-svn: 319309
2017-11-29 11:36:46 +00:00
..
authority-less-uri.test [clangd] Switch from YAMLParser to JSONExpr 2017-11-28 09:37:43 +00:00
completion-items-kinds.test [clangd] Make completion scores use 0-1 floats internally. 2017-11-23 17:09:04 +00:00
completion-priorities.test [clangd] Make completion scores use 0-1 floats internally. 2017-11-23 17:09:04 +00:00
completion-qualifiers.test [clangd] Make completion scores use 0-1 floats internally. 2017-11-23 17:09:04 +00:00
completion-snippet.test [clangd] Make completion scores use 0-1 floats internally. 2017-11-23 17:09:04 +00:00
completion.test [clangd] Make completion scores use 0-1 floats internally. 2017-11-23 17:09:04 +00:00
definitions.test [clangd] Switch from YAMLParser to JSONExpr 2017-11-28 09:37:43 +00:00
diagnostics-preamble.test [clangd] Use in-memory preambles in clangd. 2017-11-16 16:25:18 +00:00
diagnostics.test [clangd] Switch from YAMLParser to JSONExpr 2017-11-28 09:37:43 +00:00
execute-command.test Adds a json::Expr type to represent intermediate JSON expressions. 2017-11-06 15:40:30 +00:00
extra-flags.test Adds a json::Expr type to represent intermediate JSON expressions. 2017-11-06 15:40:30 +00:00
fixits.test Adds a json::Expr type to represent intermediate JSON expressions. 2017-11-06 15:40:30 +00:00
formatting.test Adds a json::Expr type to represent intermediate JSON expressions. 2017-11-06 15:40:30 +00:00
initialize-params-invalid.test [clangd] Simplify common JSON-parsing patterns in Protocol. 2017-11-29 11:36:46 +00:00
initialize-params.test [clangd] Add rename support. 2017-11-09 11:30:04 +00:00
input-mirror.test Adds a json::Expr type to represent intermediate JSON expressions. 2017-11-06 15:40:30 +00:00
lit.local.cfg [clangd] Revert broken r318329 and disable tests on PS4 2017-11-15 21:33:56 +00:00
protocol.test [clangd] Switch from YAMLParser to JSONExpr 2017-11-28 09:37:43 +00:00
rename.test [clangd] Add rename support. 2017-11-09 11:30:04 +00:00
shutdown-with-exit.test [clangd] Handle exit notification (proper shutdown) 2017-10-25 08:45:41 +00:00
shutdown-without-exit.test [clangd] Handle exit notification (proper shutdown) 2017-10-25 08:45:41 +00:00
signature-help.test Adds a json::Expr type to represent intermediate JSON expressions. 2017-11-06 15:40:30 +00:00
too_large.test [clangd] Don't crash on extremely large JSON messages. 2017-10-27 17:06:41 +00:00
trace.test [clangd] Tracing improvements 2017-11-23 17:12:04 +00:00
unsupported-method.test Adds a json::Expr type to represent intermediate JSON expressions. 2017-11-06 15:40:30 +00:00