{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} module Github.Auth where import Control.DeepSeq (NFData (..)) import Control.DeepSeq.Generics (genericRnf) import Data.Data (Data, Typeable) import GHC.Generics (Generic) import qualified Data.ByteString as BS -- | The Github auth data type data GithubAuth = GithubBasicAuth BS.ByteString BS.ByteString | GithubOAuth String -- ^ token | GithubEnterpriseOAuth String -- custom API endpoint without -- trailing slash String -- token deriving (Show, Data, Typeable, Eq, Ord, Generic) instance NFData GithubAuth where rnf = genericRnf