module Chiasma.Codec.Data.Client where import Chiasma.Codec (TmuxCodec) import Chiasma.Data.TmuxId (ClientId, SessionId) data Client = Client { Client -> ClientId clientName :: ClientId, Client -> Bool clientControlMode :: Bool, Client -> SessionId sessionId :: SessionId } deriving stock (Client -> Client -> Bool (Client -> Client -> Bool) -> (Client -> Client -> Bool) -> Eq Client forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: Client -> Client -> Bool == :: Client -> Client -> Bool $c/= :: Client -> Client -> Bool /= :: Client -> Client -> Bool Eq, Int -> Client -> ShowS [Client] -> ShowS Client -> String (Int -> Client -> ShowS) -> (Client -> String) -> ([Client] -> ShowS) -> Show Client forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> Client -> ShowS showsPrec :: Int -> Client -> ShowS $cshow :: Client -> String show :: Client -> String $cshowList :: [Client] -> ShowS showList :: [Client] -> ShowS Show, (forall x. Client -> Rep Client x) -> (forall x. Rep Client x -> Client) -> Generic Client forall x. Rep Client x -> Client forall x. Client -> Rep Client x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. Client -> Rep Client x from :: forall x. Client -> Rep Client x $cto :: forall x. Rep Client x -> Client to :: forall x. Rep Client x -> Client Generic) deriving anyclass (TmuxQuery Text -> Either DecodeError Client (Text -> Either DecodeError Client) -> TmuxQuery -> TmuxCodec Client forall a. (Text -> Either DecodeError a) -> TmuxQuery -> TmuxCodec a $cdecode :: Text -> Either DecodeError Client decode :: Text -> Either DecodeError Client $cquery :: TmuxQuery query :: TmuxQuery TmuxCodec)