module Proteome.Data.ProjectLang where

import Ribosome (MsgpackDecode, MsgpackEncode)

newtype ProjectLang =
  ProjectLang { ProjectLang -> Text
unProjectLang :: Text }
  deriving stock (Eq ProjectLang
Eq ProjectLang
-> (ProjectLang -> ProjectLang -> Ordering)
-> (ProjectLang -> ProjectLang -> Bool)
-> (ProjectLang -> ProjectLang -> Bool)
-> (ProjectLang -> ProjectLang -> Bool)
-> (ProjectLang -> ProjectLang -> Bool)
-> (ProjectLang -> ProjectLang -> ProjectLang)
-> (ProjectLang -> ProjectLang -> ProjectLang)
-> Ord ProjectLang
ProjectLang -> ProjectLang -> Bool
ProjectLang -> ProjectLang -> Ordering
ProjectLang -> ProjectLang -> ProjectLang
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 :: ProjectLang -> ProjectLang -> ProjectLang
$cmin :: ProjectLang -> ProjectLang -> ProjectLang
max :: ProjectLang -> ProjectLang -> ProjectLang
$cmax :: ProjectLang -> ProjectLang -> ProjectLang
>= :: ProjectLang -> ProjectLang -> Bool
$c>= :: ProjectLang -> ProjectLang -> Bool
> :: ProjectLang -> ProjectLang -> Bool
$c> :: ProjectLang -> ProjectLang -> Bool
<= :: ProjectLang -> ProjectLang -> Bool
$c<= :: ProjectLang -> ProjectLang -> Bool
< :: ProjectLang -> ProjectLang -> Bool
$c< :: ProjectLang -> ProjectLang -> Bool
compare :: ProjectLang -> ProjectLang -> Ordering
$ccompare :: ProjectLang -> ProjectLang -> Ordering
Ord, ProjectLang -> ProjectLang -> Bool
(ProjectLang -> ProjectLang -> Bool)
-> (ProjectLang -> ProjectLang -> Bool) -> Eq ProjectLang
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProjectLang -> ProjectLang -> Bool
$c/= :: ProjectLang -> ProjectLang -> Bool
== :: ProjectLang -> ProjectLang -> Bool
$c== :: ProjectLang -> ProjectLang -> Bool
Eq, Int -> ProjectLang -> ShowS
[ProjectLang] -> ShowS
ProjectLang -> String
(Int -> ProjectLang -> ShowS)
-> (ProjectLang -> String)
-> ([ProjectLang] -> ShowS)
-> Show ProjectLang
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProjectLang] -> ShowS
$cshowList :: [ProjectLang] -> ShowS
show :: ProjectLang -> String
$cshow :: ProjectLang -> String
showsPrec :: Int -> ProjectLang -> ShowS
$cshowsPrec :: Int -> ProjectLang -> ShowS
Show, (forall x. ProjectLang -> Rep ProjectLang x)
-> (forall x. Rep ProjectLang x -> ProjectLang)
-> Generic ProjectLang
forall x. Rep ProjectLang x -> ProjectLang
forall x. ProjectLang -> Rep ProjectLang x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ProjectLang x -> ProjectLang
$cfrom :: forall x. ProjectLang -> Rep ProjectLang x
Generic)
  deriving newtype (ProjectLang -> Object
(ProjectLang -> Object) -> MsgpackEncode ProjectLang
forall a. (a -> Object) -> MsgpackEncode a
toMsgpack :: ProjectLang -> Object
$ctoMsgpack :: ProjectLang -> Object
MsgpackEncode, Object -> Either DecodeError ProjectLang
(Object -> Either DecodeError ProjectLang)
-> MsgpackDecode ProjectLang
forall a. (Object -> Either DecodeError a) -> MsgpackDecode a
fromMsgpack :: Object -> Either DecodeError ProjectLang
$cfromMsgpack :: Object -> Either DecodeError ProjectLang
MsgpackDecode, String -> ProjectLang
(String -> ProjectLang) -> IsString ProjectLang
forall a. (String -> a) -> IsString a
fromString :: String -> ProjectLang
$cfromString :: String -> ProjectLang
IsString)