glirc-2.33: src/Client/UserHost.hs
{-# Language TemplateHaskell #-}
{-|
Module : Client.UserHost
Description : Type for tracking user, host and account
Copyright : (c) Eric Mertens, 2019
License : ISC
Maintainer : emertens@gmail.com
-}
module Client.UserHost
(
-- * User information
UserAndHost(..)
, uhUser
, uhHost
, uhAccount
) where
import Control.Lens (makeLenses)
import Data.Text (Text)
-- | Pair of username and hostname. Empty strings represent missing information.
data UserAndHost = UserAndHost
{ _uhUser :: {-# UNPACK #-}!Text -- ^ username
, _uhHost :: {-# UNPACK #-}!Text -- ^ hostname
, _uhAccount :: {-# UNPACK #-}!Text -- ^ services account
}
deriving (Read, Show)
makeLenses ''UserAndHost