{-# OPTIONS_GHC -Wno-unused-imports #-}
{-# OPTIONS_GHC -Wno-unused-matches #-}
{-# OPTIONS_GHC -Wno-deprecations #-}
module Language.LSP.Protocol.Internal.Types.ChangeAnnotationIdentifier 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.Text
newtype ChangeAnnotationIdentifier = ChangeAnnotationIdentifier Data.Text.Text
deriving newtype ( [ChangeAnnotationIdentifier] -> Value
[ChangeAnnotationIdentifier] -> Encoding
ChangeAnnotationIdentifier -> Bool
ChangeAnnotationIdentifier -> Value
ChangeAnnotationIdentifier -> Encoding
(ChangeAnnotationIdentifier -> Value)
-> (ChangeAnnotationIdentifier -> Encoding)
-> ([ChangeAnnotationIdentifier] -> Value)
-> ([ChangeAnnotationIdentifier] -> Encoding)
-> (ChangeAnnotationIdentifier -> Bool)
-> ToJSON ChangeAnnotationIdentifier
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: ChangeAnnotationIdentifier -> Value
toJSON :: ChangeAnnotationIdentifier -> Value
$ctoEncoding :: ChangeAnnotationIdentifier -> Encoding
toEncoding :: ChangeAnnotationIdentifier -> Encoding
$ctoJSONList :: [ChangeAnnotationIdentifier] -> Value
toJSONList :: [ChangeAnnotationIdentifier] -> Value
$ctoEncodingList :: [ChangeAnnotationIdentifier] -> Encoding
toEncodingList :: [ChangeAnnotationIdentifier] -> Encoding
$comitField :: ChangeAnnotationIdentifier -> Bool
omitField :: ChangeAnnotationIdentifier -> Bool
Aeson.ToJSON
, Maybe ChangeAnnotationIdentifier
Value -> Parser [ChangeAnnotationIdentifier]
Value -> Parser ChangeAnnotationIdentifier
(Value -> Parser ChangeAnnotationIdentifier)
-> (Value -> Parser [ChangeAnnotationIdentifier])
-> Maybe ChangeAnnotationIdentifier
-> FromJSON ChangeAnnotationIdentifier
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser ChangeAnnotationIdentifier
parseJSON :: Value -> Parser ChangeAnnotationIdentifier
$cparseJSONList :: Value -> Parser [ChangeAnnotationIdentifier]
parseJSONList :: Value -> Parser [ChangeAnnotationIdentifier]
$comittedField :: Maybe ChangeAnnotationIdentifier
omittedField :: Maybe ChangeAnnotationIdentifier
Aeson.FromJSON
, ToJSONKeyFunction [ChangeAnnotationIdentifier]
ToJSONKeyFunction ChangeAnnotationIdentifier
ToJSONKeyFunction ChangeAnnotationIdentifier
-> ToJSONKeyFunction [ChangeAnnotationIdentifier]
-> ToJSONKey ChangeAnnotationIdentifier
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
$ctoJSONKey :: ToJSONKeyFunction ChangeAnnotationIdentifier
toJSONKey :: ToJSONKeyFunction ChangeAnnotationIdentifier
$ctoJSONKeyList :: ToJSONKeyFunction [ChangeAnnotationIdentifier]
toJSONKeyList :: ToJSONKeyFunction [ChangeAnnotationIdentifier]
Aeson.ToJSONKey
, FromJSONKeyFunction [ChangeAnnotationIdentifier]
FromJSONKeyFunction ChangeAnnotationIdentifier
FromJSONKeyFunction ChangeAnnotationIdentifier
-> FromJSONKeyFunction [ChangeAnnotationIdentifier]
-> FromJSONKey ChangeAnnotationIdentifier
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
$cfromJSONKey :: FromJSONKeyFunction ChangeAnnotationIdentifier
fromJSONKey :: FromJSONKeyFunction ChangeAnnotationIdentifier
$cfromJSONKeyList :: FromJSONKeyFunction [ChangeAnnotationIdentifier]
fromJSONKeyList :: FromJSONKeyFunction [ChangeAnnotationIdentifier]
Aeson.FromJSONKey )
deriving stock (Int -> ChangeAnnotationIdentifier -> ShowS
[ChangeAnnotationIdentifier] -> ShowS
ChangeAnnotationIdentifier -> String
(Int -> ChangeAnnotationIdentifier -> ShowS)
-> (ChangeAnnotationIdentifier -> String)
-> ([ChangeAnnotationIdentifier] -> ShowS)
-> Show ChangeAnnotationIdentifier
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ChangeAnnotationIdentifier -> ShowS
showsPrec :: Int -> ChangeAnnotationIdentifier -> ShowS
$cshow :: ChangeAnnotationIdentifier -> String
show :: ChangeAnnotationIdentifier -> String
$cshowList :: [ChangeAnnotationIdentifier] -> ShowS
showList :: [ChangeAnnotationIdentifier] -> ShowS
Show, ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
(ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool)
-> (ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Bool)
-> Eq ChangeAnnotationIdentifier
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
== :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
$c/= :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
/= :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
Eq, Eq ChangeAnnotationIdentifier
Eq ChangeAnnotationIdentifier =>
(ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Ordering)
-> (ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Bool)
-> (ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Bool)
-> (ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Bool)
-> (ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Bool)
-> (ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier)
-> (ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier)
-> Ord ChangeAnnotationIdentifier
ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Ordering
ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier
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 :: ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Ordering
compare :: ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> Ordering
$c< :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
< :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
$c<= :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
<= :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
$c> :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
> :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
$c>= :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
>= :: ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier -> Bool
$cmax :: ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier
max :: ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier
$cmin :: ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier
min :: ChangeAnnotationIdentifier
-> ChangeAnnotationIdentifier -> ChangeAnnotationIdentifier
Ord, (forall x.
ChangeAnnotationIdentifier -> Rep ChangeAnnotationIdentifier x)
-> (forall x.
Rep ChangeAnnotationIdentifier x -> ChangeAnnotationIdentifier)
-> Generic ChangeAnnotationIdentifier
forall x.
Rep ChangeAnnotationIdentifier x -> ChangeAnnotationIdentifier
forall x.
ChangeAnnotationIdentifier -> Rep ChangeAnnotationIdentifier x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
ChangeAnnotationIdentifier -> Rep ChangeAnnotationIdentifier x
from :: forall x.
ChangeAnnotationIdentifier -> Rep ChangeAnnotationIdentifier x
$cto :: forall x.
Rep ChangeAnnotationIdentifier x -> ChangeAnnotationIdentifier
to :: forall x.
Rep ChangeAnnotationIdentifier x -> ChangeAnnotationIdentifier
Generic)
deriving anyclass (ChangeAnnotationIdentifier -> ()
(ChangeAnnotationIdentifier -> ())
-> NFData ChangeAnnotationIdentifier
forall a. (a -> ()) -> NFData a
$crnf :: ChangeAnnotationIdentifier -> ()
rnf :: ChangeAnnotationIdentifier -> ()
NFData, Eq ChangeAnnotationIdentifier
Eq ChangeAnnotationIdentifier =>
(Int -> ChangeAnnotationIdentifier -> Int)
-> (ChangeAnnotationIdentifier -> Int)
-> Hashable ChangeAnnotationIdentifier
Int -> ChangeAnnotationIdentifier -> Int
ChangeAnnotationIdentifier -> Int
forall a. Eq a => (Int -> a -> Int) -> (a -> Int) -> Hashable a
$chashWithSalt :: Int -> ChangeAnnotationIdentifier -> Int
hashWithSalt :: Int -> ChangeAnnotationIdentifier -> Int
$chash :: ChangeAnnotationIdentifier -> Int
hash :: ChangeAnnotationIdentifier -> Int
Hashable)
deriving (forall ann. ChangeAnnotationIdentifier -> Doc ann)
-> (forall ann. [ChangeAnnotationIdentifier] -> Doc ann)
-> Pretty ChangeAnnotationIdentifier
forall ann. [ChangeAnnotationIdentifier] -> Doc ann
forall ann. ChangeAnnotationIdentifier -> Doc ann
forall a.
(forall ann. a -> Doc ann)
-> (forall ann. [a] -> Doc ann) -> Pretty a
$cpretty :: forall ann. ChangeAnnotationIdentifier -> Doc ann
pretty :: forall ann. ChangeAnnotationIdentifier -> Doc ann
$cprettyList :: forall ann. [ChangeAnnotationIdentifier] -> Doc ann
prettyList :: forall ann. [ChangeAnnotationIdentifier] -> Doc ann
Pretty via (ViaJSON ChangeAnnotationIdentifier)