packages feed

bugsnag-types-1.1.0.1: src/Data/Bugsnag/Types/BinaryArch.hs

module Data.Bugsnag.Types.BinaryArch
  ( BinaryArch (..)
  , exampleBinaryArch
  ) where

import Data.Bugsnag.Types.Prelude

-- | The architecture of the running binary.
data BinaryArch
  = X86
  | X86_64
  | Arm32
  | Arm64
  | Arm64e
  | Armv6
  | Armv7
  | Armv7f
  | Armv7k
  | Armv7s
  | Armv8
  | Amd64
  deriving stock (Bounded, Enum, Eq, Show, Generic)

instance FromJSON BinaryArch where
  parseJSON = genericParseJSON aesonOptions

instance ToJSON BinaryArch where
  toJSON = genericToJSON aesonOptions
  toEncoding = genericToEncoding aesonOptions

exampleBinaryArch :: BinaryArch
exampleBinaryArch = X86