X-Git-Url: http://git.lukelau.me/?p=lsp-test.git;a=blobdiff_plain;f=src%2FLanguage%2FHaskell%2FLSP%2FTest.hs;h=bc1faa1b7976cfca975a8f72754a07318ca490cf;hp=3ba86905c2d48d6c015812421253fa7319f3a3e6;hb=b0865d289f761343190dbe6c9969539f17e2d72a;hpb=bece589927102eb7cc66db5200ec11b568d35748 diff --git a/src/Language/Haskell/LSP/Test.hs b/src/Language/Haskell/LSP/Test.hs index 3ba8690..bc1faa1 100644 --- a/src/Language/Haskell/LSP/Test.hs +++ b/src/Language/Haskell/LSP/Test.hs @@ -60,6 +60,8 @@ module Language.Haskell.LSP.Test , executeCodeAction -- ** Completions , getCompletions + -- ** References + , getReferences -- ** Edits , applyEdit ) where @@ -414,3 +416,9 @@ getCompletions doc pos = do case res of Completions (List items) -> return items CompletionList (CompletionListType _ (List items)) -> return items + +getReferences :: TextDocumentIdentifier -> Position -> Bool -> Session [Location] +getReferences doc pos inclDecl = + let ctx = ReferenceContext inclDecl + params = ReferenceParams doc pos ctx + in fromMaybe [] . (^. result) <$> sendRequest TextDocumentReferences params