Handle all cases in button accumulation

This commit is contained in:
Gregor Kleen 2017-11-15 13:38:06 +01:00
parent 725e00cf68
commit 8bffe66a6d

View File

@ -64,9 +64,12 @@ buttonForm html = do
accResult = Foldable.foldr accResult' FormMissing accResult = Foldable.foldr accResult' FormMissing
accResult' :: FormResult (Maybe a) -> FormResult a -> FormResult a accResult' :: FormResult (Maybe a) -> FormResult a -> FormResult a
accResult' (FormSuccess _) (FormSuccess _) = FormFailure ["Ambiguous parse"] accResult' (FormSuccess (Just _)) (FormSuccess _) = FormFailure ["Ambiguous parse"]
accResult' (FormSuccess (Just x)) _ = FormSuccess x accResult' (FormSuccess (Just x)) _ = FormSuccess x
accResult' _ x = x accResult' _ x@(FormSuccess _) = x
accResult' (FormSuccess Nothing) x = x
accResult' FormMissing _ = FormMissing
accResult' (FormFailure errs) _ = FormFailure errs
---------------------------- ----------------------------
-- Buttons (old version ) -- -- Buttons (old version ) --