Highlighting doesnt crash on failed parse
This commit is contained in:
parent
eac62e4198
commit
dd761e8321
@ -18,8 +18,9 @@ tokenHandler :: Handlers (LspM ())
|
|||||||
tokenHandler = requestHandler SMethod_TextDocumentSemanticTokensFull $ \req responder -> do
|
tokenHandler = requestHandler SMethod_TextDocumentSemanticTokensFull $ \req responder -> do
|
||||||
c <- virtualFileText . fromJust <$> getVirtualFile (toNormalizedUri $ req ^. docUri)
|
c <- virtualFileText . fromJust <$> getVirtualFile (toNormalizedUri $ req ^. docUri)
|
||||||
let
|
let
|
||||||
parsedProgram = fromRight (error "") $ runParser parseProgram "" c
|
absTokens = case runParser parseProgram "" c of
|
||||||
absTokens = highlightProg parsedProgram
|
Left _ -> []
|
||||||
|
Right prog -> highlightProg prog
|
||||||
tokens = fromRight (error "") $ makeSemanticTokens defaultSemanticTokensLegend absTokens
|
tokens = fromRight (error "") $ makeSemanticTokens defaultSemanticTokensLegend absTokens
|
||||||
|
|
||||||
responder (Right $ InL tokens)
|
responder (Right $ InL tokens)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user