+-- | Returns the completions for the position in the document.
+getCompletions :: TextDocumentIdentifier -> Position -> Session [CompletionItem]
+getCompletions doc pos = do
+ rsp <- sendRequest TextDocumentCompletion (TextDocumentPositionParams doc pos)
+
+ let exc = throw $ UnexpectedResponseError (rsp ^. LSP.id)
+ (fromJust $ rsp ^. LSP.error)
+ res = fromMaybe exc (rsp ^. result)
+ case res of
+ Completions (List items) -> return items
+ CompletionList (CompletionListType _ (List items)) -> return items