{- This file was auto-generated from tensorflow/core/lib/core/error_codes.proto by the proto-lens-protoc program. -}
{-# LANGUAGE ScopedTypeVariables, DataKinds, TypeFamilies,
  UndecidableInstances, MultiParamTypeClasses, FlexibleContexts,
  FlexibleInstances, PatternSynonyms, MagicHash, NoImplicitPrelude
  #-}
{-# OPTIONS_GHC -fno-warn-unused-imports#-}
module Proto.Tensorflow.Core.Lib.Core.ErrorCodes where
import qualified Data.ProtoLens.Reexport.Prelude as Prelude
import qualified Data.ProtoLens.Reexport.Data.Int as Data.Int
import qualified Data.ProtoLens.Reexport.Data.Word as Data.Word
import qualified Data.ProtoLens.Reexport.Data.ProtoLens
       as Data.ProtoLens
import qualified
       Data.ProtoLens.Reexport.Data.ProtoLens.Message.Enum
       as Data.ProtoLens.Message.Enum
import qualified Data.ProtoLens.Reexport.Lens.Family2
       as Lens.Family2
import qualified Data.ProtoLens.Reexport.Lens.Family2.Unchecked
       as Lens.Family2.Unchecked
import qualified Data.ProtoLens.Reexport.Data.Default.Class
       as Data.Default.Class
import qualified Data.ProtoLens.Reexport.Data.Text as Data.Text
import qualified Data.ProtoLens.Reexport.Data.Map as Data.Map
import qualified Data.ProtoLens.Reexport.Data.ByteString
       as Data.ByteString
import qualified Data.ProtoLens.Reexport.Lens.Labels as Lens.Labels

data Code = OK
          | CANCELLED
          | UNKNOWN
          | INVALID_ARGUMENT
          | DEADLINE_EXCEEDED
          | NOT_FOUND
          | ALREADY_EXISTS
          | PERMISSION_DENIED
          | RESOURCE_EXHAUSTED
          | FAILED_PRECONDITION
          | ABORTED
          | OUT_OF_RANGE
          | UNIMPLEMENTED
          | INTERNAL
          | UNAVAILABLE
          | DATA_LOSS
          | UNAUTHENTICATED
          | DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_
          deriving (Prelude.Show, Prelude.Eq, Prelude.Ord)

instance Data.Default.Class.Default Code where
        def = OK

instance Data.ProtoLens.FieldDefault Code where
        fieldDefault = OK

instance Data.ProtoLens.MessageEnum Code where
        maybeToEnum 0 = Prelude.Just OK
        maybeToEnum 1 = Prelude.Just CANCELLED
        maybeToEnum 2 = Prelude.Just UNKNOWN
        maybeToEnum 3 = Prelude.Just INVALID_ARGUMENT
        maybeToEnum 4 = Prelude.Just DEADLINE_EXCEEDED
        maybeToEnum 5 = Prelude.Just NOT_FOUND
        maybeToEnum 6 = Prelude.Just ALREADY_EXISTS
        maybeToEnum 7 = Prelude.Just PERMISSION_DENIED
        maybeToEnum 8 = Prelude.Just RESOURCE_EXHAUSTED
        maybeToEnum 9 = Prelude.Just FAILED_PRECONDITION
        maybeToEnum 10 = Prelude.Just ABORTED
        maybeToEnum 11 = Prelude.Just OUT_OF_RANGE
        maybeToEnum 12 = Prelude.Just UNIMPLEMENTED
        maybeToEnum 13 = Prelude.Just INTERNAL
        maybeToEnum 14 = Prelude.Just UNAVAILABLE
        maybeToEnum 15 = Prelude.Just DATA_LOSS
        maybeToEnum 16 = Prelude.Just UNAUTHENTICATED
        maybeToEnum 20
          = Prelude.Just
              DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_
        maybeToEnum _ = Prelude.Nothing
        showEnum OK = "OK"
        showEnum CANCELLED = "CANCELLED"
        showEnum UNKNOWN = "UNKNOWN"
        showEnum INVALID_ARGUMENT = "INVALID_ARGUMENT"
        showEnum DEADLINE_EXCEEDED = "DEADLINE_EXCEEDED"
        showEnum NOT_FOUND = "NOT_FOUND"
        showEnum ALREADY_EXISTS = "ALREADY_EXISTS"
        showEnum PERMISSION_DENIED = "PERMISSION_DENIED"
        showEnum RESOURCE_EXHAUSTED = "RESOURCE_EXHAUSTED"
        showEnum FAILED_PRECONDITION = "FAILED_PRECONDITION"
        showEnum ABORTED = "ABORTED"
        showEnum OUT_OF_RANGE = "OUT_OF_RANGE"
        showEnum UNIMPLEMENTED = "UNIMPLEMENTED"
        showEnum INTERNAL = "INTERNAL"
        showEnum UNAVAILABLE = "UNAVAILABLE"
        showEnum DATA_LOSS = "DATA_LOSS"
        showEnum UNAUTHENTICATED = "UNAUTHENTICATED"
        showEnum
          DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_
          = "DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_"
        readEnum "OK" = Prelude.Just OK
        readEnum "CANCELLED" = Prelude.Just CANCELLED
        readEnum "UNKNOWN" = Prelude.Just UNKNOWN
        readEnum "INVALID_ARGUMENT" = Prelude.Just INVALID_ARGUMENT
        readEnum "DEADLINE_EXCEEDED" = Prelude.Just DEADLINE_EXCEEDED
        readEnum "NOT_FOUND" = Prelude.Just NOT_FOUND
        readEnum "ALREADY_EXISTS" = Prelude.Just ALREADY_EXISTS
        readEnum "PERMISSION_DENIED" = Prelude.Just PERMISSION_DENIED
        readEnum "RESOURCE_EXHAUSTED" = Prelude.Just RESOURCE_EXHAUSTED
        readEnum "FAILED_PRECONDITION" = Prelude.Just FAILED_PRECONDITION
        readEnum "ABORTED" = Prelude.Just ABORTED
        readEnum "OUT_OF_RANGE" = Prelude.Just OUT_OF_RANGE
        readEnum "UNIMPLEMENTED" = Prelude.Just UNIMPLEMENTED
        readEnum "INTERNAL" = Prelude.Just INTERNAL
        readEnum "UNAVAILABLE" = Prelude.Just UNAVAILABLE
        readEnum "DATA_LOSS" = Prelude.Just DATA_LOSS
        readEnum "UNAUTHENTICATED" = Prelude.Just UNAUTHENTICATED
        readEnum
          "DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_"
          = Prelude.Just
              DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_
        readEnum _ = Prelude.Nothing

instance Prelude.Enum Code where
        toEnum k__
          = Prelude.maybe
              (Prelude.error
                 ((Prelude.++) "toEnum: unknown value for enum Code: "
                    (Prelude.show k__)))
              Prelude.id
              (Data.ProtoLens.maybeToEnum k__)
        fromEnum OK = 0
        fromEnum CANCELLED = 1
        fromEnum UNKNOWN = 2
        fromEnum INVALID_ARGUMENT = 3
        fromEnum DEADLINE_EXCEEDED = 4
        fromEnum NOT_FOUND = 5
        fromEnum ALREADY_EXISTS = 6
        fromEnum PERMISSION_DENIED = 7
        fromEnum RESOURCE_EXHAUSTED = 8
        fromEnum FAILED_PRECONDITION = 9
        fromEnum ABORTED = 10
        fromEnum OUT_OF_RANGE = 11
        fromEnum UNIMPLEMENTED = 12
        fromEnum INTERNAL = 13
        fromEnum UNAVAILABLE = 14
        fromEnum DATA_LOSS = 15
        fromEnum UNAUTHENTICATED = 16
        fromEnum
          DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_
          = 20
        succ
          DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_
          = Prelude.error
              "Code.succ: bad argument DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_. This value would be out of bounds."
        succ OK = CANCELLED
        succ CANCELLED = UNKNOWN
        succ UNKNOWN = INVALID_ARGUMENT
        succ INVALID_ARGUMENT = DEADLINE_EXCEEDED
        succ DEADLINE_EXCEEDED = NOT_FOUND
        succ NOT_FOUND = ALREADY_EXISTS
        succ ALREADY_EXISTS = PERMISSION_DENIED
        succ PERMISSION_DENIED = RESOURCE_EXHAUSTED
        succ RESOURCE_EXHAUSTED = FAILED_PRECONDITION
        succ FAILED_PRECONDITION = ABORTED
        succ ABORTED = OUT_OF_RANGE
        succ OUT_OF_RANGE = UNIMPLEMENTED
        succ UNIMPLEMENTED = INTERNAL
        succ INTERNAL = UNAVAILABLE
        succ UNAVAILABLE = DATA_LOSS
        succ DATA_LOSS = UNAUTHENTICATED
        succ UNAUTHENTICATED
          = DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_
        pred OK
          = Prelude.error
              "Code.pred: bad argument OK. This value would be out of bounds."
        pred CANCELLED = OK
        pred UNKNOWN = CANCELLED
        pred INVALID_ARGUMENT = UNKNOWN
        pred DEADLINE_EXCEEDED = INVALID_ARGUMENT
        pred NOT_FOUND = DEADLINE_EXCEEDED
        pred ALREADY_EXISTS = NOT_FOUND
        pred PERMISSION_DENIED = ALREADY_EXISTS
        pred RESOURCE_EXHAUSTED = PERMISSION_DENIED
        pred FAILED_PRECONDITION = RESOURCE_EXHAUSTED
        pred ABORTED = FAILED_PRECONDITION
        pred OUT_OF_RANGE = ABORTED
        pred UNIMPLEMENTED = OUT_OF_RANGE
        pred INTERNAL = UNIMPLEMENTED
        pred UNAVAILABLE = INTERNAL
        pred DATA_LOSS = UNAVAILABLE
        pred UNAUTHENTICATED = DATA_LOSS
        pred
          DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_
          = UNAUTHENTICATED
        enumFrom = Data.ProtoLens.Message.Enum.messageEnumFrom
        enumFromTo = Data.ProtoLens.Message.Enum.messageEnumFromTo
        enumFromThen = Data.ProtoLens.Message.Enum.messageEnumFromThen
        enumFromThenTo = Data.ProtoLens.Message.Enum.messageEnumFromThenTo

instance Prelude.Bounded Code where
        minBound = OK
        maxBound
          = DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_