module Ribosome.Menu.Data.MenuResult where

data MenuResult a =
  NoOutput
  |
  Error Text
  |
  Executed
  |
  Aborted
  |
  Return a
  deriving (MenuResult a -> MenuResult a -> Bool
(MenuResult a -> MenuResult a -> Bool)
-> (MenuResult a -> MenuResult a -> Bool) -> Eq (MenuResult a)
forall a. Eq a => MenuResult a -> MenuResult a -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MenuResult a -> MenuResult a -> Bool
$c/= :: forall a. Eq a => MenuResult a -> MenuResult a -> Bool
== :: MenuResult a -> MenuResult a -> Bool
$c== :: forall a. Eq a => MenuResult a -> MenuResult a -> Bool
Eq, Int -> MenuResult a -> ShowS
[MenuResult a] -> ShowS
MenuResult a -> String
(Int -> MenuResult a -> ShowS)
-> (MenuResult a -> String)
-> ([MenuResult a] -> ShowS)
-> Show (MenuResult a)
forall a. Show a => Int -> MenuResult a -> ShowS
forall a. Show a => [MenuResult a] -> ShowS
forall a. Show a => MenuResult a -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MenuResult a] -> ShowS
$cshowList :: forall a. Show a => [MenuResult a] -> ShowS
show :: MenuResult a -> String
$cshow :: forall a. Show a => MenuResult a -> String
showsPrec :: Int -> MenuResult a -> ShowS
$cshowsPrec :: forall a. Show a => Int -> MenuResult a -> ShowS
Show)