Hydra.Impl.Haskell.Dsl.Base
el :: Definition a -> Element Meta Source #
(>:) :: String -> Datum a -> Fld a infixr 0 Source #
(<.>) :: Datum (b -> c) -> Datum (a -> b) -> Datum (a -> c) Source #
($$) :: Datum (a -> b) -> Datum a -> Datum b Source #
(@@) :: Datum (a -> b) -> Datum a -> Datum b Source #
(@->) :: a -> b -> (a, b) infixr 0 Source #
(-->) :: Case a -> Datum (a -> b) -> Field Meta infixr 0 Source #
(++) :: Datum String -> Datum String -> Datum String Source #
apply :: Datum (a -> b) -> Datum a -> Datum b Source #
apply2 :: Datum (a -> b -> c) -> Datum a -> Datum b -> Datum c Source #
caseField :: Case a -> Datum (a -> b) -> Field Meta Source #
compareTo :: Datum a -> Datum (a -> Bool) Source #
compose :: Datum (b -> c) -> Datum (a -> b) -> Datum (a -> c) Source #
constant :: Datum a -> Datum (b -> a) Source #
denom :: Name -> Datum (a -> b) Source #
delta :: Datum (Reference a -> a) Source #
doc :: String -> Datum a -> Datum a Source #
element :: Definition a -> Datum (Reference a) Source #
field :: FieldName -> Datum a -> Field Meta Source #
function :: Type Meta -> Type Meta -> Datum a -> Datum a Source #
functionN :: [Type Meta] -> Type Meta -> Datum a -> Datum a Source #
lambda :: String -> Datum x -> Datum (a -> b) Source #
list :: [Datum a] -> Datum [a] Source #
map :: Map (Datum a) (Datum b) -> Datum (Map a b) Source #
matchData :: Name -> [(FieldName, Datum (x -> b))] -> Datum (a -> b) Source #
matchOpt :: Datum b -> Datum (a -> b) -> Datum (Maybe a -> b) Source #
match :: Name -> Type Meta -> [Field Meta] -> Datum (u -> b) Source #
matchToEnum :: Name -> Name -> [(FieldName, FieldName)] -> Datum (a -> b) Source #
matchToUnion :: Name -> Name -> [(FieldName, Field Meta)] -> Datum (a -> b) Source #
nom :: Name -> Datum a -> Datum b Source #
opt :: Maybe (Datum a) -> Datum (Maybe a) Source #
primitive :: Name -> Datum a Source #
project :: Name -> Type Meta -> FieldName -> Datum (a -> b) Source #
record :: Name -> [Fld a] -> Datum a Source #
ref :: Definition a -> Datum a Source #
set :: Set (Datum a) -> Datum (Set a) Source #
typed :: Type Meta -> Datum a -> Datum a Source #
union :: Name -> FieldName -> Datum a -> Datum b Source #
union2 :: Name -> FieldName -> Datum (a -> b) Source #
unit :: Datum a Source #
unitVariant :: Name -> FieldName -> Datum a Source #
var :: String -> Datum a Source #
variant :: Name -> FieldName -> Datum a -> Datum b Source #
module Hydra.Impl.Haskell.Dsl.PhantomLiterals
coreContext :: Context Meta Source #