lsp
lsp copied to clipboard
WorkspaceEdit should be Either WorkspaceEditMap (List TextDocumentEdit)
The specification states that either the changes or the documentChanges field should be set. There are some bugs caused by accidentally setting both and applying the change twice. It would be nice to have this checked at the type level, where we have a custom toJSON and fromJSON instances to handle encoding it back into different fields.