Commit Graph

27 Commits

Author SHA1 Message Date
Ben Langmuir
ea2e15bd08 [lsp] Document the logMessage notification and split into its own file 2018-12-07 22:29:02 -08:00
Ben Langmuir
4775d9689c [lsp] Document the didChangeConfiguration notification and split into its own file 2018-12-07 22:26:03 -08:00
Ben Langmuir
9ea71b531b [lsp] Document the workspaceFolders request and split into its own file 2018-12-07 22:18:43 -08:00
Ben Langmuir
8561419c6e [lsp] Document the text sync notifications and split into their own file 2018-12-07 22:07:37 -08:00
Ben Langmuir
fd830950c3 [lsp] Document the publishDiagnostics notification and split into its own file 2018-12-07 21:46:44 -08:00
Ben Langmuir
291fdc8e9e [lsp] Document the completion request and split into its own file 2018-12-07 21:37:30 -08:00
Ben Langmuir
e02b573dce [lsp] Document the hover request and split into its own file 2018-12-07 21:18:47 -08:00
Ben Langmuir
3db952465b [lsp] Document the definition request and split into its own file 2018-12-07 21:10:45 -08:00
Ben Langmuir
9732d065ad [lsp] Document the references request and split into its own file 2018-12-07 21:10:40 -08:00
Ben Langmuir
58f0144d08 [lsp] Document the documentHighlight request and split out of Messages.swift 2018-12-07 18:33:44 -08:00
Ben Langmuir
68867b3cfd [lsp] Document the formatting requests and split them into their own file 2018-12-07 18:33:44 -08:00
Ben Langmuir
882b20745e [lsp] Move SymbolInfoRequest to its own file 2018-12-07 18:33:44 -08:00
Ben Langmuir
4880184603 [gardening] Move synthesized conformances to primary declaration
The style I started with (putting each conformance on its own extension)
turned out to be pointlessly verbose in practice. It also separated the
protocol from the "implentation" in the sense that the property
declarations are what determine how the conformance works.
2018-12-07 17:38:52 -08:00
Ben Langmuir
740ccb9a1d [gardening] Remove unnecessary url: label from TextDocumentIdentifier 2018-12-07 17:30:04 -08:00
Ben Langmuir
dc32473696 Merge pull request #36 from benlangmuir/symbol-info
[sourcekit] Adopt symbolInfo to implement definition and references
2018-12-07 10:04:31 -08:00
Ben Langmuir
8b3cf55022 [swift] Cleanup CursorInfo and Hover requests
Factors the cursor_info requests into a single API to asynchronously
make the sourcekitd cursor_info request and wrap the result for easier
consumption from Swift (but not other processing).

Also, cleanup the now unused extensions on Hover that were superceded by
symbolInfo.
2018-12-07 00:41:45 -08:00
Ben Langmuir
4b3b7ba768 [swift] Add bestKnownDeclaration location to symbolInfo for Swift
This is useful for local jump to definition. For now, only swift
implements this.
2018-12-06 22:56:23 -08:00
Ben Langmuir
7c82c9b583 [swift] Implement symbolInfo for Swift 2018-12-06 22:38:25 -08:00
josh
22a49414e8 Fix merge conflicts (Toolchain, SwiftPMWorkspace, SwiftLanguageServer) 2018-12-07 13:39:43 +09:00
Joshua Kaplan
e3ade6c50f Use Void over () 2018-12-07 13:29:16 +09:00
Ben Langmuir
6c1c5d3283 Add textDocument/symbolInfo LSP extension
Clangd provides a symbolInfo request as an extension to LSP that is
equivalent to sourcekitd's cursor info. For now, just add the new types
and add plumb the request through so we can test it in isolation. In a
future commit this will be used to power jump-to-definition.
2018-12-06 20:06:51 -08:00
Marcin Krzyzanowski
34a654e27b Public initializer 2018-11-23 19:44:16 +01:00
Marcin Krzyzanowski
a25cfb8467 Add workspace/workspaceFolders request model. 2018-11-23 19:36:28 +01:00
Marcin Krzyzanowski
0cfd7cb38f Adds workspace/didChangeWorkspaceFolders notification 2018-11-23 19:23:25 +01:00
Ben Langmuir
048d72b163 Upgrade SwiftPM dependency to master branch
We are tied to using a SwiftPM that matches the toolchain, so upgrade
from 0.3.0 to .branch("master") and add a pins file to manage updating
that dependency.

This was driven by changes that broke loading packages being developed
with newer version of SwiftPM when using the 0.3.0 tag of libSwiftPM.
However, the changes seem to work when going in the other direction, so
using the newer libSwiftPM hasn't caused any known regressions for using
older toolchain versions (not guarantteed and not tested extensively
though).

This fixes using the latest (November 13) toolchain snapshot on macOS.
On Linux there are other issues not specific to LSP.
2018-11-16 15:11:38 -08:00
Adam Nemecek
97fd1e8cb3 trimmed whitespace 2018-11-15 14:12:34 -08:00
Ben Langmuir
aabf57a252 Import SourceKit-LSP sources 2018-11-13 15:50:48 -08:00