hydra-0.12.0: src/gen-main/haskell/Hydra/Show/Mantle.hs
-- | String representations of hydra.mantle types
module Hydra.Show.Mantle where
import qualified Hydra.Mantle as Mantle
import Prelude hiding (Enum, Ordering, fail, map, pure, sum)
import qualified Data.Int as I
import qualified Data.List as L
import qualified Data.Map as M
import qualified Data.Set as S
-- | Show a term variant as a string
termVariant :: (Mantle.TermVariant -> String)
termVariant x = case x of
Mantle.TermVariantAnnotated -> "annotated"
Mantle.TermVariantApplication -> "application"
Mantle.TermVariantFunction -> "function"
Mantle.TermVariantLet -> "let"
Mantle.TermVariantList -> "list"
Mantle.TermVariantLiteral -> "literal"
Mantle.TermVariantMap -> "map"
Mantle.TermVariantOptional -> "optional"
Mantle.TermVariantProduct -> "product"
Mantle.TermVariantRecord -> "record"
Mantle.TermVariantSet -> "set"
Mantle.TermVariantSum -> "sum"
Mantle.TermVariantTypeLambda -> "typeLambda"
Mantle.TermVariantTypeApplication -> "typeApplication"
Mantle.TermVariantUnion -> "union"
Mantle.TermVariantUnit -> "unit"
Mantle.TermVariantVariable -> "variable"
Mantle.TermVariantWrap -> "wrap"
-- | Show a type variant as a string
typeVariant :: (Mantle.TypeVariant -> String)
typeVariant x = case x of
Mantle.TypeVariantAnnotated -> "annotated"
Mantle.TypeVariantApplication -> "application"
Mantle.TypeVariantForall -> "forall"
Mantle.TypeVariantFunction -> "function"
Mantle.TypeVariantList -> "list"
Mantle.TypeVariantLiteral -> "literal"
Mantle.TypeVariantMap -> "map"
Mantle.TypeVariantOptional -> "optional"
Mantle.TypeVariantProduct -> "product"
Mantle.TypeVariantRecord -> "record"
Mantle.TypeVariantSet -> "set"
Mantle.TypeVariantSum -> "sum"
Mantle.TypeVariantUnion -> "union"
Mantle.TypeVariantUnit -> "unit"
Mantle.TypeVariantVariable -> "variable"
Mantle.TypeVariantWrap -> "wrap"