module Network.Bugsnag.User ( BugsnagUser(..) , bugsnagUser ) where import Prelude import Data.Aeson import Data.Aeson.Ext import Data.Text (Text) import GHC.Generics data BugsnagUser = BugsnagUser { BugsnagUser -> Maybe Text buId :: Maybe Text , BugsnagUser -> Maybe Text buEmailAddress :: Maybe Text , BugsnagUser -> Maybe Text buUsername :: Maybe Text } deriving stock (forall x. BugsnagUser -> Rep BugsnagUser x) -> (forall x. Rep BugsnagUser x -> BugsnagUser) -> Generic BugsnagUser forall x. Rep BugsnagUser x -> BugsnagUser forall x. BugsnagUser -> Rep BugsnagUser x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep BugsnagUser x -> BugsnagUser $cfrom :: forall x. BugsnagUser -> Rep BugsnagUser x Generic instance ToJSON BugsnagUser where toJSON :: BugsnagUser -> Value toJSON = Options -> BugsnagUser -> Value forall a. (Generic a, GToJSON' Value Zero (Rep a)) => Options -> a -> Value genericToJSON (Options -> BugsnagUser -> Value) -> Options -> BugsnagUser -> Value forall a b. (a -> b) -> a -> b $ String -> Options bsAesonOptions String "bu" toEncoding :: BugsnagUser -> Encoding toEncoding = Options -> BugsnagUser -> Encoding forall a. (Generic a, GToJSON' Encoding Zero (Rep a)) => Options -> a -> Encoding genericToEncoding (Options -> BugsnagUser -> Encoding) -> Options -> BugsnagUser -> Encoding forall a b. (a -> b) -> a -> b $ String -> Options bsAesonOptions String "bu" bugsnagUser :: BugsnagUser bugsnagUser :: BugsnagUser bugsnagUser = BugsnagUser :: Maybe Text -> Maybe Text -> Maybe Text -> BugsnagUser BugsnagUser { buId :: Maybe Text buId = Maybe Text forall a. Maybe a Nothing , buEmailAddress :: Maybe Text buEmailAddress = Maybe Text forall a. Maybe a Nothing , buUsername :: Maybe Text buUsername = Maybe Text forall a. Maybe a Nothing }