module Network.Bugsnag.Thread ( BugsnagThread(..) , bugsnagThread ) where import Prelude import Data.Aeson import Data.Aeson.Ext import Data.Text (Text) import GHC.Generics import Network.Bugsnag.StackFrame data BugsnagThread = BugsnagThread { BugsnagThread -> Maybe Text btId :: Maybe Text , BugsnagThread -> Maybe Text btName :: Maybe Text , BugsnagThread -> Maybe [BugsnagStackFrame] btStacktrace :: Maybe [BugsnagStackFrame] } deriving stock (forall x. BugsnagThread -> Rep BugsnagThread x) -> (forall x. Rep BugsnagThread x -> BugsnagThread) -> Generic BugsnagThread forall x. Rep BugsnagThread x -> BugsnagThread forall x. BugsnagThread -> Rep BugsnagThread x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep BugsnagThread x -> BugsnagThread $cfrom :: forall x. BugsnagThread -> Rep BugsnagThread x Generic instance ToJSON BugsnagThread where toJSON :: BugsnagThread -> Value toJSON = Options -> BugsnagThread -> Value forall a. (Generic a, GToJSON' Value Zero (Rep a)) => Options -> a -> Value genericToJSON (Options -> BugsnagThread -> Value) -> Options -> BugsnagThread -> Value forall a b. (a -> b) -> a -> b $ String -> Options bsAesonOptions String "bt" toEncoding :: BugsnagThread -> Encoding toEncoding = Options -> BugsnagThread -> Encoding forall a. (Generic a, GToJSON' Encoding Zero (Rep a)) => Options -> a -> Encoding genericToEncoding (Options -> BugsnagThread -> Encoding) -> Options -> BugsnagThread -> Encoding forall a b. (a -> b) -> a -> b $ String -> Options bsAesonOptions String "bt" bugsnagThread :: BugsnagThread bugsnagThread :: BugsnagThread bugsnagThread = BugsnagThread :: Maybe Text -> Maybe Text -> Maybe [BugsnagStackFrame] -> BugsnagThread BugsnagThread { btId :: Maybe Text btId = Maybe Text forall a. Maybe a Nothing, btName :: Maybe Text btName = Maybe Text forall a. Maybe a Nothing, btStacktrace :: Maybe [BugsnagStackFrame] btStacktrace = Maybe [BugsnagStackFrame] forall a. Maybe a Nothing }