{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.ResourceGroupsTagging.Types.ResourceErrorCode
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.ResourceGroupsTagging.Types.ResourceErrorCode
  ( ResourceErrorCode
      ( ..,
        ResourceErrorCode_InternalServiceException,
        ResourceErrorCode_InvalidParameterException
      ),
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude

newtype ResourceErrorCode = ResourceErrorCode'
  { ResourceErrorCode -> Text
fromResourceErrorCode ::
      Data.Text
  }
  deriving stock
    ( Int -> ResourceErrorCode -> ShowS
[ResourceErrorCode] -> ShowS
ResourceErrorCode -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ResourceErrorCode] -> ShowS
$cshowList :: [ResourceErrorCode] -> ShowS
show :: ResourceErrorCode -> String
$cshow :: ResourceErrorCode -> String
showsPrec :: Int -> ResourceErrorCode -> ShowS
$cshowsPrec :: Int -> ResourceErrorCode -> ShowS
Prelude.Show,
      ReadPrec [ResourceErrorCode]
ReadPrec ResourceErrorCode
Int -> ReadS ResourceErrorCode
ReadS [ResourceErrorCode]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ResourceErrorCode]
$creadListPrec :: ReadPrec [ResourceErrorCode]
readPrec :: ReadPrec ResourceErrorCode
$creadPrec :: ReadPrec ResourceErrorCode
readList :: ReadS [ResourceErrorCode]
$creadList :: ReadS [ResourceErrorCode]
readsPrec :: Int -> ReadS ResourceErrorCode
$creadsPrec :: Int -> ReadS ResourceErrorCode
Prelude.Read,
      ResourceErrorCode -> ResourceErrorCode -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ResourceErrorCode -> ResourceErrorCode -> Bool
$c/= :: ResourceErrorCode -> ResourceErrorCode -> Bool
== :: ResourceErrorCode -> ResourceErrorCode -> Bool
$c== :: ResourceErrorCode -> ResourceErrorCode -> Bool
Prelude.Eq,
      Eq ResourceErrorCode
ResourceErrorCode -> ResourceErrorCode -> Bool
ResourceErrorCode -> ResourceErrorCode -> Ordering
ResourceErrorCode -> ResourceErrorCode -> ResourceErrorCode
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: ResourceErrorCode -> ResourceErrorCode -> ResourceErrorCode
$cmin :: ResourceErrorCode -> ResourceErrorCode -> ResourceErrorCode
max :: ResourceErrorCode -> ResourceErrorCode -> ResourceErrorCode
$cmax :: ResourceErrorCode -> ResourceErrorCode -> ResourceErrorCode
>= :: ResourceErrorCode -> ResourceErrorCode -> Bool
$c>= :: ResourceErrorCode -> ResourceErrorCode -> Bool
> :: ResourceErrorCode -> ResourceErrorCode -> Bool
$c> :: ResourceErrorCode -> ResourceErrorCode -> Bool
<= :: ResourceErrorCode -> ResourceErrorCode -> Bool
$c<= :: ResourceErrorCode -> ResourceErrorCode -> Bool
< :: ResourceErrorCode -> ResourceErrorCode -> Bool
$c< :: ResourceErrorCode -> ResourceErrorCode -> Bool
compare :: ResourceErrorCode -> ResourceErrorCode -> Ordering
$ccompare :: ResourceErrorCode -> ResourceErrorCode -> Ordering
Prelude.Ord,
      forall x. Rep ResourceErrorCode x -> ResourceErrorCode
forall x. ResourceErrorCode -> Rep ResourceErrorCode x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ResourceErrorCode x -> ResourceErrorCode
$cfrom :: forall x. ResourceErrorCode -> Rep ResourceErrorCode x
Prelude.Generic
    )
  deriving newtype
    ( Eq ResourceErrorCode
Int -> ResourceErrorCode -> Int
ResourceErrorCode -> Int
forall a. Eq a -> (Int -> a -> Int) -> (a -> Int) -> Hashable a
hash :: ResourceErrorCode -> Int
$chash :: ResourceErrorCode -> Int
hashWithSalt :: Int -> ResourceErrorCode -> Int
$chashWithSalt :: Int -> ResourceErrorCode -> Int
Prelude.Hashable,
      ResourceErrorCode -> ()
forall a. (a -> ()) -> NFData a
rnf :: ResourceErrorCode -> ()
$crnf :: ResourceErrorCode -> ()
Prelude.NFData,
      Text -> Either String ResourceErrorCode
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String ResourceErrorCode
$cfromText :: Text -> Either String ResourceErrorCode
Data.FromText,
      ResourceErrorCode -> Text
forall a. (a -> Text) -> ToText a
toText :: ResourceErrorCode -> Text
$ctoText :: ResourceErrorCode -> Text
Data.ToText,
      ResourceErrorCode -> ByteString
forall a. (a -> ByteString) -> ToByteString a
toBS :: ResourceErrorCode -> ByteString
$ctoBS :: ResourceErrorCode -> ByteString
Data.ToByteString,
      ResourceErrorCode -> ByteStringBuilder
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: ResourceErrorCode -> ByteStringBuilder
$cbuild :: ResourceErrorCode -> ByteStringBuilder
Data.ToLog,
      HeaderName -> ResourceErrorCode -> [Header]
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> ResourceErrorCode -> [Header]
$ctoHeader :: HeaderName -> ResourceErrorCode -> [Header]
Data.ToHeader,
      ResourceErrorCode -> QueryString
forall a. (a -> QueryString) -> ToQuery a
toQuery :: ResourceErrorCode -> QueryString
$ctoQuery :: ResourceErrorCode -> QueryString
Data.ToQuery,
      Value -> Parser [ResourceErrorCode]
Value -> Parser ResourceErrorCode
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [ResourceErrorCode]
$cparseJSONList :: Value -> Parser [ResourceErrorCode]
parseJSON :: Value -> Parser ResourceErrorCode
$cparseJSON :: Value -> Parser ResourceErrorCode
Data.FromJSON,
      FromJSONKeyFunction [ResourceErrorCode]
FromJSONKeyFunction ResourceErrorCode
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [ResourceErrorCode]
$cfromJSONKeyList :: FromJSONKeyFunction [ResourceErrorCode]
fromJSONKey :: FromJSONKeyFunction ResourceErrorCode
$cfromJSONKey :: FromJSONKeyFunction ResourceErrorCode
Data.FromJSONKey,
      [ResourceErrorCode] -> Encoding
[ResourceErrorCode] -> Value
ResourceErrorCode -> Encoding
ResourceErrorCode -> Value
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [ResourceErrorCode] -> Encoding
$ctoEncodingList :: [ResourceErrorCode] -> Encoding
toJSONList :: [ResourceErrorCode] -> Value
$ctoJSONList :: [ResourceErrorCode] -> Value
toEncoding :: ResourceErrorCode -> Encoding
$ctoEncoding :: ResourceErrorCode -> Encoding
toJSON :: ResourceErrorCode -> Value
$ctoJSON :: ResourceErrorCode -> Value
Data.ToJSON,
      ToJSONKeyFunction [ResourceErrorCode]
ToJSONKeyFunction ResourceErrorCode
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [ResourceErrorCode]
$ctoJSONKeyList :: ToJSONKeyFunction [ResourceErrorCode]
toJSONKey :: ToJSONKeyFunction ResourceErrorCode
$ctoJSONKey :: ToJSONKeyFunction ResourceErrorCode
Data.ToJSONKey,
      [Node] -> Either String ResourceErrorCode
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String ResourceErrorCode
$cparseXML :: [Node] -> Either String ResourceErrorCode
Data.FromXML,
      ResourceErrorCode -> XML
forall a. (a -> XML) -> ToXML a
toXML :: ResourceErrorCode -> XML
$ctoXML :: ResourceErrorCode -> XML
Data.ToXML
    )

pattern ResourceErrorCode_InternalServiceException :: ResourceErrorCode
pattern $bResourceErrorCode_InternalServiceException :: ResourceErrorCode
$mResourceErrorCode_InternalServiceException :: forall {r}. ResourceErrorCode -> ((# #) -> r) -> ((# #) -> r) -> r
ResourceErrorCode_InternalServiceException = ResourceErrorCode' "InternalServiceException"

pattern ResourceErrorCode_InvalidParameterException :: ResourceErrorCode
pattern $bResourceErrorCode_InvalidParameterException :: ResourceErrorCode
$mResourceErrorCode_InvalidParameterException :: forall {r}. ResourceErrorCode -> ((# #) -> r) -> ((# #) -> r) -> r
ResourceErrorCode_InvalidParameterException = ResourceErrorCode' "InvalidParameterException"

{-# COMPLETE
  ResourceErrorCode_InternalServiceException,
  ResourceErrorCode_InvalidParameterException,
  ResourceErrorCode'
  #-}