module Chiasma.Codec.Data.PaneMode where import Chiasma.Codec (TmuxCodec) import Chiasma.Data.TmuxId (HasPaneId, PaneId) import qualified Chiasma.Data.TmuxId as HasPaneId (HasPaneId(paneId)) data PaneMode = PaneMode { PaneMode -> PaneId paneId :: PaneId, PaneMode -> Text paneMode :: Text } deriving (PaneMode -> PaneMode -> Bool (PaneMode -> PaneMode -> Bool) -> (PaneMode -> PaneMode -> Bool) -> Eq PaneMode forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: PaneMode -> PaneMode -> Bool $c/= :: PaneMode -> PaneMode -> Bool == :: PaneMode -> PaneMode -> Bool $c== :: PaneMode -> PaneMode -> Bool Eq, Int -> PaneMode -> ShowS [PaneMode] -> ShowS PaneMode -> String (Int -> PaneMode -> ShowS) -> (PaneMode -> String) -> ([PaneMode] -> ShowS) -> Show PaneMode forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [PaneMode] -> ShowS $cshowList :: [PaneMode] -> ShowS show :: PaneMode -> String $cshow :: PaneMode -> String showsPrec :: Int -> PaneMode -> ShowS $cshowsPrec :: Int -> PaneMode -> ShowS Show, (forall x. PaneMode -> Rep PaneMode x) -> (forall x. Rep PaneMode x -> PaneMode) -> Generic PaneMode forall x. Rep PaneMode x -> PaneMode forall x. PaneMode -> Rep PaneMode x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep PaneMode x -> PaneMode $cfrom :: forall x. PaneMode -> Rep PaneMode x Generic, TmuxQuery Text -> Either TmuxDecodeError PaneMode (Text -> Either TmuxDecodeError PaneMode) -> TmuxQuery -> TmuxCodec PaneMode forall a. (Text -> Either TmuxDecodeError a) -> TmuxQuery -> TmuxCodec a query :: TmuxQuery $cquery :: TmuxQuery decode :: Text -> Either TmuxDecodeError PaneMode $cdecode :: Text -> Either TmuxDecodeError PaneMode TmuxCodec) instance HasPaneId PaneMode where paneId :: PaneMode -> PaneId paneId = PaneMode -> PaneId paneId