{-# OPTIONS_GHC -Wno-unused-imports #-}
{-# OPTIONS_GHC -Wno-unused-matches #-}
{-# OPTIONS_GHC -Wno-deprecations #-}
module Language.LSP.Protocol.Internal.Types.CompletionTriggerKind 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 CompletionTriggerKind =
CompletionTriggerKind_Invoked
|
CompletionTriggerKind_TriggerCharacter
|
CompletionTriggerKind_TriggerForIncompleteCompletions
deriving stock (Int -> CompletionTriggerKind -> ShowS
[CompletionTriggerKind] -> ShowS
CompletionTriggerKind -> String
(Int -> CompletionTriggerKind -> ShowS)
-> (CompletionTriggerKind -> String)
-> ([CompletionTriggerKind] -> ShowS)
-> Show CompletionTriggerKind
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CompletionTriggerKind -> ShowS
showsPrec :: Int -> CompletionTriggerKind -> ShowS
$cshow :: CompletionTriggerKind -> String
show :: CompletionTriggerKind -> String
$cshowList :: [CompletionTriggerKind] -> ShowS
showList :: [CompletionTriggerKind] -> ShowS
Show, CompletionTriggerKind -> CompletionTriggerKind -> Bool
(CompletionTriggerKind -> CompletionTriggerKind -> Bool)
-> (CompletionTriggerKind -> CompletionTriggerKind -> Bool)
-> Eq CompletionTriggerKind
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
== :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
$c/= :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
/= :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
Eq, Eq CompletionTriggerKind
Eq CompletionTriggerKind =>
(CompletionTriggerKind -> CompletionTriggerKind -> Ordering)
-> (CompletionTriggerKind -> CompletionTriggerKind -> Bool)
-> (CompletionTriggerKind -> CompletionTriggerKind -> Bool)
-> (CompletionTriggerKind -> CompletionTriggerKind -> Bool)
-> (CompletionTriggerKind -> CompletionTriggerKind -> Bool)
-> (CompletionTriggerKind
-> CompletionTriggerKind -> CompletionTriggerKind)
-> (CompletionTriggerKind
-> CompletionTriggerKind -> CompletionTriggerKind)
-> Ord CompletionTriggerKind
CompletionTriggerKind -> CompletionTriggerKind -> Bool
CompletionTriggerKind -> CompletionTriggerKind -> Ordering
CompletionTriggerKind
-> CompletionTriggerKind -> CompletionTriggerKind
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 :: CompletionTriggerKind -> CompletionTriggerKind -> Ordering
compare :: CompletionTriggerKind -> CompletionTriggerKind -> Ordering
$c< :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
< :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
$c<= :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
<= :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
$c> :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
> :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
$c>= :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
>= :: CompletionTriggerKind -> CompletionTriggerKind -> Bool
$cmax :: CompletionTriggerKind
-> CompletionTriggerKind -> CompletionTriggerKind
max :: CompletionTriggerKind
-> CompletionTriggerKind -> CompletionTriggerKind
$cmin :: CompletionTriggerKind
-> CompletionTriggerKind -> CompletionTriggerKind
min :: CompletionTriggerKind
-> CompletionTriggerKind -> CompletionTriggerKind
Ord, (forall x. CompletionTriggerKind -> Rep CompletionTriggerKind x)
-> (forall x. Rep CompletionTriggerKind x -> CompletionTriggerKind)
-> Generic CompletionTriggerKind
forall x. Rep CompletionTriggerKind x -> CompletionTriggerKind
forall x. CompletionTriggerKind -> Rep CompletionTriggerKind x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. CompletionTriggerKind -> Rep CompletionTriggerKind x
from :: forall x. CompletionTriggerKind -> Rep CompletionTriggerKind x
$cto :: forall x. Rep CompletionTriggerKind x -> CompletionTriggerKind
to :: forall x. Rep CompletionTriggerKind x -> CompletionTriggerKind
Generic)
deriving anyclass (CompletionTriggerKind -> ()
(CompletionTriggerKind -> ()) -> NFData CompletionTriggerKind
forall a. (a -> ()) -> NFData a
$crnf :: CompletionTriggerKind -> ()
rnf :: CompletionTriggerKind -> ()
NFData, Eq CompletionTriggerKind
Eq CompletionTriggerKind =>
(Int -> CompletionTriggerKind -> Int)
-> (CompletionTriggerKind -> Int) -> Hashable CompletionTriggerKind
Int -> CompletionTriggerKind -> Int
CompletionTriggerKind -> Int
forall a. Eq a => (Int -> a -> Int) -> (a -> Int) -> Hashable a
$chashWithSalt :: Int -> CompletionTriggerKind -> Int
hashWithSalt :: Int -> CompletionTriggerKind -> Int
$chash :: CompletionTriggerKind -> Int
hash :: CompletionTriggerKind -> Int
Hashable)
deriving ( [CompletionTriggerKind] -> Value
[CompletionTriggerKind] -> Encoding
CompletionTriggerKind -> Bool
CompletionTriggerKind -> Value
CompletionTriggerKind -> Encoding
(CompletionTriggerKind -> Value)
-> (CompletionTriggerKind -> Encoding)
-> ([CompletionTriggerKind] -> Value)
-> ([CompletionTriggerKind] -> Encoding)
-> (CompletionTriggerKind -> Bool)
-> ToJSON CompletionTriggerKind
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: CompletionTriggerKind -> Value
toJSON :: CompletionTriggerKind -> Value
$ctoEncoding :: CompletionTriggerKind -> Encoding
toEncoding :: CompletionTriggerKind -> Encoding
$ctoJSONList :: [CompletionTriggerKind] -> Value
toJSONList :: [CompletionTriggerKind] -> Value
$ctoEncodingList :: [CompletionTriggerKind] -> Encoding
toEncodingList :: [CompletionTriggerKind] -> Encoding
$comitField :: CompletionTriggerKind -> Bool
omitField :: CompletionTriggerKind -> Bool
Aeson.ToJSON
, Maybe CompletionTriggerKind
Value -> Parser [CompletionTriggerKind]
Value -> Parser CompletionTriggerKind
(Value -> Parser CompletionTriggerKind)
-> (Value -> Parser [CompletionTriggerKind])
-> Maybe CompletionTriggerKind
-> FromJSON CompletionTriggerKind
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser CompletionTriggerKind
parseJSON :: Value -> Parser CompletionTriggerKind
$cparseJSONList :: Value -> Parser [CompletionTriggerKind]
parseJSONList :: Value -> Parser [CompletionTriggerKind]
$comittedField :: Maybe CompletionTriggerKind
omittedField :: Maybe CompletionTriggerKind
Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CompletionTriggerKind)
deriving (forall ann. CompletionTriggerKind -> Doc ann)
-> (forall ann. [CompletionTriggerKind] -> Doc ann)
-> Pretty CompletionTriggerKind
forall ann. [CompletionTriggerKind] -> Doc ann
forall ann. CompletionTriggerKind -> Doc ann
forall a.
(forall ann. a -> Doc ann)
-> (forall ann. [a] -> Doc ann) -> Pretty a
$cpretty :: forall ann. CompletionTriggerKind -> Doc ann
pretty :: forall ann. CompletionTriggerKind -> Doc ann
$cprettyList :: forall ann. [CompletionTriggerKind] -> Doc ann
prettyList :: forall ann. [CompletionTriggerKind] -> Doc ann
Pretty via (ViaJSON CompletionTriggerKind)
instance Language.LSP.Protocol.Types.LspEnum.LspEnum CompletionTriggerKind where
knownValues :: Set CompletionTriggerKind
knownValues = [CompletionTriggerKind] -> Set CompletionTriggerKind
forall a. Ord a => [a] -> Set a
Data.Set.fromList [CompletionTriggerKind
CompletionTriggerKind_Invoked
,CompletionTriggerKind
CompletionTriggerKind_TriggerCharacter
,CompletionTriggerKind
CompletionTriggerKind_TriggerForIncompleteCompletions]
type EnumBaseType CompletionTriggerKind = Language.LSP.Protocol.Types.Common.UInt
toEnumBaseType :: CompletionTriggerKind -> EnumBaseType CompletionTriggerKind
toEnumBaseType CompletionTriggerKind
CompletionTriggerKind_Invoked = EnumBaseType CompletionTriggerKind
UInt
1
toEnumBaseType CompletionTriggerKind
CompletionTriggerKind_TriggerCharacter = EnumBaseType CompletionTriggerKind
UInt
2
toEnumBaseType CompletionTriggerKind
CompletionTriggerKind_TriggerForIncompleteCompletions = EnumBaseType CompletionTriggerKind
UInt
3
fromEnumBaseType :: EnumBaseType CompletionTriggerKind -> Maybe CompletionTriggerKind
fromEnumBaseType EnumBaseType CompletionTriggerKind
1 = CompletionTriggerKind -> Maybe CompletionTriggerKind
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
pure CompletionTriggerKind
CompletionTriggerKind_Invoked
fromEnumBaseType EnumBaseType CompletionTriggerKind
2 = CompletionTriggerKind -> Maybe CompletionTriggerKind
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
pure CompletionTriggerKind
CompletionTriggerKind_TriggerCharacter
fromEnumBaseType EnumBaseType CompletionTriggerKind
3 = CompletionTriggerKind -> Maybe CompletionTriggerKind
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
pure CompletionTriggerKind
CompletionTriggerKind_TriggerForIncompleteCompletions
fromEnumBaseType EnumBaseType CompletionTriggerKind
_ = Maybe CompletionTriggerKind
forall a. Maybe a
Nothing