module Horizon.Spec.Types.Name (Name(MkName), fromName) where import Data.Kind (Type) import Data.String (IsString) import Data.Text (Text) import Dhall (FromDhall, ToDhall) type Name :: Type newtype Name = MkName { Name -> Text fromName :: Text } deriving stock (Name -> Name -> Bool forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: Name -> Name -> Bool $c/= :: Name -> Name -> Bool == :: Name -> Name -> Bool $c== :: Name -> Name -> Bool Eq, Int -> Name -> ShowS [Name] -> ShowS Name -> String forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [Name] -> ShowS $cshowList :: [Name] -> ShowS show :: Name -> String $cshow :: Name -> String showsPrec :: Int -> Name -> ShowS $cshowsPrec :: Int -> Name -> ShowS Show, Eq Name Name -> Name -> Bool Name -> Name -> Ordering Name -> Name -> Name 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 :: Name -> Name -> Name $cmin :: Name -> Name -> Name max :: Name -> Name -> Name $cmax :: Name -> Name -> Name >= :: Name -> Name -> Bool $c>= :: Name -> Name -> Bool > :: Name -> Name -> Bool $c> :: Name -> Name -> Bool <= :: Name -> Name -> Bool $c<= :: Name -> Name -> Bool < :: Name -> Name -> Bool $c< :: Name -> Name -> Bool compare :: Name -> Name -> Ordering $ccompare :: Name -> Name -> Ordering Ord) deriving newtype (InputNormalizer -> Decoder Name forall a. (InputNormalizer -> Decoder a) -> FromDhall a autoWith :: InputNormalizer -> Decoder Name $cautoWith :: InputNormalizer -> Decoder Name FromDhall, InputNormalizer -> Encoder Name forall a. (InputNormalizer -> Encoder a) -> ToDhall a injectWith :: InputNormalizer -> Encoder Name $cinjectWith :: InputNormalizer -> Encoder Name ToDhall, String -> Name forall a. (String -> a) -> IsString a fromString :: String -> Name $cfromString :: String -> Name IsString)