Bubble up exceptions thrown on server listener thread
[lsp-test.git] / src / Language / Haskell / LSP / Test / Exceptions.hs
index e1e281fa435486e6bdd4bd4c9b9dfbcc2c1134d9..b1e0635e31b435b6a8e480e19b83b43fdab6802b 100644 (file)
@@ -17,6 +17,7 @@ data SessionException = Timeout
                       | UnexpectedDiagnostics
                       | IncorrectApplyEditRequest String
                       | UnexpectedResponseError LspIdRsp ResponseError
+                      | UnexpectedServerTermination
   deriving Eq
 
 instance Exception SessionException
@@ -42,6 +43,7 @@ instance Show SessionException where
                                           ++ msgStr
   show (UnexpectedResponseError lid e) = "Received an exepected error in a response for id " ++ show lid ++ ":\n"
                                           ++ show e
+  show UnexpectedServerTermination = "Language server unexpectedly terminated"
 
 -- | A predicate that matches on any 'SessionException'
 anySessionException :: SessionException -> Bool