From a841362ec953bf6587768e97c2d87504f49ae7d8 Mon Sep 17 00:00:00 2001 From: Alan Zimmerman Date: Sun, 25 Aug 2019 11:12:53 +0200 Subject: [PATCH] Fix compilation for PrepareRename The merge for #179 failed, and there were some bits missing for the full implementation of the feature. --- src/Language/Haskell/LSP/Core.hs | 6 ++++-- src/Language/Haskell/LSP/Messages.hs | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Language/Haskell/LSP/Core.hs b/src/Language/Haskell/LSP/Core.hs index a1b3d74aa..6f4dc1fd9 100644 --- a/src/Language/Haskell/LSP/Core.hs +++ b/src/Language/Haskell/LSP/Core.hs @@ -118,7 +118,7 @@ data Options = instance Default Options where def = Options Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing - Nothing Nothing + Nothing Nothing Nothing -- | A function to publish diagnostics. It aggregates all diagnostics pertaining -- to a particular version of a document, by source, and sends a @@ -238,6 +238,7 @@ data Handlers = , documentRangeFormattingHandler :: !(Maybe (Handler J.DocumentRangeFormattingRequest)) , documentTypeFormattingHandler :: !(Maybe (Handler J.DocumentOnTypeFormattingRequest)) , renameHandler :: !(Maybe (Handler J.RenameRequest)) + , prepareRenameHandler :: !(Maybe (Handler J.PrepareRenameRequest)) , foldingRangeHandler :: !(Maybe (Handler J.FoldingRangeRequest)) -- new in 3.0 , documentLinkHandler :: !(Maybe (Handler J.DocumentLinkRequest)) @@ -293,7 +294,7 @@ instance Default Handlers where Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing - Nothing Nothing Nothing Nothing + Nothing Nothing Nothing Nothing Nothing -- --------------------------------------------------------------------- nop :: a -> b -> IO a @@ -367,6 +368,7 @@ handlerMap _ h J.TextDocumentColorPresentation = hh nop ReqColorPresentation $ handlerMap _ h J.TextDocumentDocumentLink = hh nop ReqDocumentLink $ documentLinkHandler h handlerMap _ h J.DocumentLinkResolve = hh nop ReqDocumentLinkResolve $ documentLinkResolveHandler h handlerMap _ h J.TextDocumentRename = hh nop ReqRename $ renameHandler h +handlerMap _ h J.TextDocumentPrepareRename = hh nop ReqPrepareRename $ prepareRenameHandler h handlerMap _ h J.TextDocumentFoldingRange = hh nop ReqFoldingRange $ foldingRangeHandler h handlerMap _ _ J.WindowProgressCancel = helper progressCancelHandler handlerMap _ h (J.CustomClientMethod _) = \ctxData val -> diff --git a/src/Language/Haskell/LSP/Messages.hs b/src/Language/Haskell/LSP/Messages.hs index b0f8bac3c..c1be23b77 100644 --- a/src/Language/Haskell/LSP/Messages.hs +++ b/src/Language/Haskell/LSP/Messages.hs @@ -39,6 +39,7 @@ data FromClientMessage = ReqInitialize InitializeRequest | ReqDocumentRangeFormatting DocumentRangeFormattingRequest | ReqDocumentOnTypeFormatting DocumentOnTypeFormattingRequest | ReqRename RenameRequest + | ReqPrepareRename PrepareRenameRequest | ReqFoldingRange FoldingRangeRequest | ReqExecuteCommand ExecuteCommandRequest | ReqWillSaveWaitUntil WillSaveWaitUntilTextDocumentRequest