From 01fa10fefb0b577210881f53490e4ff3a6c0212c Mon Sep 17 00:00:00 2001 From: Joscha Date: Mon, 14 Dec 2020 11:21:42 +0000 Subject: [PATCH] Fix when "Yes." is displayed. It is now displayed whenever a solution is found but no variable assignments is printed. --- src/Propa/Prolog/Display.hs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Propa/Prolog/Display.hs b/src/Propa/Prolog/Display.hs index 433dfc7..d4e1eeb 100644 --- a/src/Propa/Prolog/Display.hs +++ b/src/Propa/Prolog/Display.hs @@ -62,9 +62,9 @@ displayDefs :: [Def T.Text] -> T.Text displayDefs = T.intercalate "\n" . map displayDef displayResult :: Map.Map T.Text (Term T.Text) -> T.Text -displayResult m | Map.null m = "Yes." displayResult m - = T.intercalate "\n" - $ map (\(k, v) -> k <> " = " <> displayTerm v) - $ filter (\(k, v) -> v /= TVar k) - $ Map.assocs m + | null termsToDisplay = "Yes." + | otherwise = T.intercalate "\n" termsAsStrings + where + termsToDisplay = filter (\(k, v) -> v /= TVar k) $ Map.assocs m + termsAsStrings = map (\(k, v) -> k <> " = " <> displayTerm v) termsToDisplay