{- ORMOLU_DISABLE -}
{- HLINT ignore -}
-- THIS IS A GENERATED FILE, DO NOT EDIT

{-# OPTIONS_GHC -Wno-unused-imports #-}
{-# OPTIONS_GHC -Wno-unused-matches #-}
{-# OPTIONS_GHC -Wno-deprecations #-}
module Language.LSP.Protocol.Internal.Types.PrepareSupportDefaultBehavior where

import Control.DeepSeq
import Data.Hashable
import GHC.Generics
import Language.LSP.Protocol.Utils.Misc
import Prettyprinter
import qualified Data.Aeson as Aeson
import qualified Data.Row.Aeson as Aeson
import qualified Data.Row.Hashable as Hashable
import qualified Data.Set
import qualified Data.String
import qualified Language.LSP.Protocol.Types.Common
import qualified Language.LSP.Protocol.Types.LspEnum

{-|

-}
data PrepareSupportDefaultBehavior = 
    {-|
  The client's default behavior is to select the identifier
  according the to language's syntax rule.
  -}
  PrepareSupportDefaultBehavior_Identifier
  deriving stock (Int -> PrepareSupportDefaultBehavior -> ShowS
[PrepareSupportDefaultBehavior] -> ShowS
PrepareSupportDefaultBehavior -> String
(Int -> PrepareSupportDefaultBehavior -> ShowS)
-> (PrepareSupportDefaultBehavior -> String)
-> ([PrepareSupportDefaultBehavior] -> ShowS)
-> Show PrepareSupportDefaultBehavior
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> PrepareSupportDefaultBehavior -> ShowS
showsPrec :: Int -> PrepareSupportDefaultBehavior -> ShowS
$cshow :: PrepareSupportDefaultBehavior -> String
show :: PrepareSupportDefaultBehavior -> String
$cshowList :: [PrepareSupportDefaultBehavior] -> ShowS
showList :: [PrepareSupportDefaultBehavior] -> ShowS
Show, PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
(PrepareSupportDefaultBehavior
 -> PrepareSupportDefaultBehavior -> Bool)
-> (PrepareSupportDefaultBehavior
    -> PrepareSupportDefaultBehavior -> Bool)
-> Eq PrepareSupportDefaultBehavior
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
== :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
$c/= :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
/= :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
Eq, Eq PrepareSupportDefaultBehavior
Eq PrepareSupportDefaultBehavior =>
(PrepareSupportDefaultBehavior
 -> PrepareSupportDefaultBehavior -> Ordering)
-> (PrepareSupportDefaultBehavior
    -> PrepareSupportDefaultBehavior -> Bool)
-> (PrepareSupportDefaultBehavior
    -> PrepareSupportDefaultBehavior -> Bool)
-> (PrepareSupportDefaultBehavior
    -> PrepareSupportDefaultBehavior -> Bool)
-> (PrepareSupportDefaultBehavior
    -> PrepareSupportDefaultBehavior -> Bool)
-> (PrepareSupportDefaultBehavior
    -> PrepareSupportDefaultBehavior -> PrepareSupportDefaultBehavior)
-> (PrepareSupportDefaultBehavior
    -> PrepareSupportDefaultBehavior -> PrepareSupportDefaultBehavior)
-> Ord PrepareSupportDefaultBehavior
PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Ordering
PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> PrepareSupportDefaultBehavior
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
$ccompare :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Ordering
compare :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Ordering
$c< :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
< :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
$c<= :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
<= :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
$c> :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
> :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
$c>= :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
>= :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> Bool
$cmax :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> PrepareSupportDefaultBehavior
max :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> PrepareSupportDefaultBehavior
$cmin :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> PrepareSupportDefaultBehavior
min :: PrepareSupportDefaultBehavior
-> PrepareSupportDefaultBehavior -> PrepareSupportDefaultBehavior
Ord, (forall x.
 PrepareSupportDefaultBehavior
 -> Rep PrepareSupportDefaultBehavior x)
-> (forall x.
    Rep PrepareSupportDefaultBehavior x
    -> PrepareSupportDefaultBehavior)
-> Generic PrepareSupportDefaultBehavior
forall x.
Rep PrepareSupportDefaultBehavior x
-> PrepareSupportDefaultBehavior
forall x.
PrepareSupportDefaultBehavior
-> Rep PrepareSupportDefaultBehavior x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
PrepareSupportDefaultBehavior
-> Rep PrepareSupportDefaultBehavior x
from :: forall x.
PrepareSupportDefaultBehavior
-> Rep PrepareSupportDefaultBehavior x
$cto :: forall x.
Rep PrepareSupportDefaultBehavior x
-> PrepareSupportDefaultBehavior
to :: forall x.
Rep PrepareSupportDefaultBehavior x
-> PrepareSupportDefaultBehavior
Generic)
  deriving anyclass (PrepareSupportDefaultBehavior -> ()
(PrepareSupportDefaultBehavior -> ())
-> NFData PrepareSupportDefaultBehavior
forall a. (a -> ()) -> NFData a
$crnf :: PrepareSupportDefaultBehavior -> ()
rnf :: PrepareSupportDefaultBehavior -> ()
NFData, Eq PrepareSupportDefaultBehavior
Eq PrepareSupportDefaultBehavior =>
(Int -> PrepareSupportDefaultBehavior -> Int)
-> (PrepareSupportDefaultBehavior -> Int)
-> Hashable PrepareSupportDefaultBehavior
Int -> PrepareSupportDefaultBehavior -> Int
PrepareSupportDefaultBehavior -> Int
forall a. Eq a => (Int -> a -> Int) -> (a -> Int) -> Hashable a
$chashWithSalt :: Int -> PrepareSupportDefaultBehavior -> Int
hashWithSalt :: Int -> PrepareSupportDefaultBehavior -> Int
$chash :: PrepareSupportDefaultBehavior -> Int
hash :: PrepareSupportDefaultBehavior -> Int
Hashable)
  deriving ( [PrepareSupportDefaultBehavior] -> Value
[PrepareSupportDefaultBehavior] -> Encoding
PrepareSupportDefaultBehavior -> Bool
PrepareSupportDefaultBehavior -> Value
PrepareSupportDefaultBehavior -> Encoding
(PrepareSupportDefaultBehavior -> Value)
-> (PrepareSupportDefaultBehavior -> Encoding)
-> ([PrepareSupportDefaultBehavior] -> Value)
-> ([PrepareSupportDefaultBehavior] -> Encoding)
-> (PrepareSupportDefaultBehavior -> Bool)
-> ToJSON PrepareSupportDefaultBehavior
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: PrepareSupportDefaultBehavior -> Value
toJSON :: PrepareSupportDefaultBehavior -> Value
$ctoEncoding :: PrepareSupportDefaultBehavior -> Encoding
toEncoding :: PrepareSupportDefaultBehavior -> Encoding
$ctoJSONList :: [PrepareSupportDefaultBehavior] -> Value
toJSONList :: [PrepareSupportDefaultBehavior] -> Value
$ctoEncodingList :: [PrepareSupportDefaultBehavior] -> Encoding
toEncodingList :: [PrepareSupportDefaultBehavior] -> Encoding
$comitField :: PrepareSupportDefaultBehavior -> Bool
omitField :: PrepareSupportDefaultBehavior -> Bool
Aeson.ToJSON
  , Maybe PrepareSupportDefaultBehavior
Value -> Parser [PrepareSupportDefaultBehavior]
Value -> Parser PrepareSupportDefaultBehavior
(Value -> Parser PrepareSupportDefaultBehavior)
-> (Value -> Parser [PrepareSupportDefaultBehavior])
-> Maybe PrepareSupportDefaultBehavior
-> FromJSON PrepareSupportDefaultBehavior
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser PrepareSupportDefaultBehavior
parseJSON :: Value -> Parser PrepareSupportDefaultBehavior
$cparseJSONList :: Value -> Parser [PrepareSupportDefaultBehavior]
parseJSONList :: Value -> Parser [PrepareSupportDefaultBehavior]
$comittedField :: Maybe PrepareSupportDefaultBehavior
omittedField :: Maybe PrepareSupportDefaultBehavior
Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum PrepareSupportDefaultBehavior)
  deriving (forall ann. PrepareSupportDefaultBehavior -> Doc ann)
-> (forall ann. [PrepareSupportDefaultBehavior] -> Doc ann)
-> Pretty PrepareSupportDefaultBehavior
forall ann. [PrepareSupportDefaultBehavior] -> Doc ann
forall ann. PrepareSupportDefaultBehavior -> Doc ann
forall a.
(forall ann. a -> Doc ann)
-> (forall ann. [a] -> Doc ann) -> Pretty a
$cpretty :: forall ann. PrepareSupportDefaultBehavior -> Doc ann
pretty :: forall ann. PrepareSupportDefaultBehavior -> Doc ann
$cprettyList :: forall ann. [PrepareSupportDefaultBehavior] -> Doc ann
prettyList :: forall ann. [PrepareSupportDefaultBehavior] -> Doc ann
Pretty via (ViaJSON PrepareSupportDefaultBehavior)

instance Language.LSP.Protocol.Types.LspEnum.LspEnum PrepareSupportDefaultBehavior where
  knownValues :: Set PrepareSupportDefaultBehavior
knownValues = [PrepareSupportDefaultBehavior]
-> Set PrepareSupportDefaultBehavior
forall a. Ord a => [a] -> Set a
Data.Set.fromList [PrepareSupportDefaultBehavior
PrepareSupportDefaultBehavior_Identifier]
  type EnumBaseType PrepareSupportDefaultBehavior = Language.LSP.Protocol.Types.Common.UInt
  toEnumBaseType :: PrepareSupportDefaultBehavior
-> EnumBaseType PrepareSupportDefaultBehavior
toEnumBaseType PrepareSupportDefaultBehavior
PrepareSupportDefaultBehavior_Identifier = EnumBaseType PrepareSupportDefaultBehavior
UInt
1
  fromEnumBaseType :: EnumBaseType PrepareSupportDefaultBehavior
-> Maybe PrepareSupportDefaultBehavior
fromEnumBaseType EnumBaseType PrepareSupportDefaultBehavior
1 = PrepareSupportDefaultBehavior
-> Maybe PrepareSupportDefaultBehavior
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
pure PrepareSupportDefaultBehavior
PrepareSupportDefaultBehavior_Identifier
  fromEnumBaseType EnumBaseType PrepareSupportDefaultBehavior
_ = Maybe PrepareSupportDefaultBehavior
forall a. Maybe a
Nothing