module Ribosome.Menu.Data.MenuRenderEvent where

import Ribosome.Menu.Data.Menu (Menu)
import Ribosome.Menu.Data.MenuEvent (QuitReason)

data MenuRenderEvent m a i =
  Render Bool (Menu i)
  |
  Quit (QuitReason m a)
  deriving Int -> MenuRenderEvent m a i -> ShowS
[MenuRenderEvent m a i] -> ShowS
MenuRenderEvent m a i -> String
(Int -> MenuRenderEvent m a i -> ShowS)
-> (MenuRenderEvent m a i -> String)
-> ([MenuRenderEvent m a i] -> ShowS)
-> Show (MenuRenderEvent m a i)
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
forall (m :: * -> *) a i.
Show i =>
Int -> MenuRenderEvent m a i -> ShowS
forall (m :: * -> *) a i.
Show i =>
[MenuRenderEvent m a i] -> ShowS
forall (m :: * -> *) a i. Show i => MenuRenderEvent m a i -> String
showList :: [MenuRenderEvent m a i] -> ShowS
$cshowList :: forall (m :: * -> *) a i.
Show i =>
[MenuRenderEvent m a i] -> ShowS
show :: MenuRenderEvent m a i -> String
$cshow :: forall (m :: * -> *) a i. Show i => MenuRenderEvent m a i -> String
showsPrec :: Int -> MenuRenderEvent m a i -> ShowS
$cshowsPrec :: forall (m :: * -> *) a i.
Show i =>
Int -> MenuRenderEvent m a i -> ShowS
Show