Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Phantom types for use in model definitions
Synopsis
- newtype Case a = Case {}
- _Case :: Name
- newtype Datum a = Datum {}
- _Datum :: Name
- data Definition a = Definition {
- definitionName :: Name
- definitionDatum :: Datum a
- _Definition :: Name
- _Definition_name :: Name
- _Definition_datum :: Name
- newtype Fld a = Fld {}
- _Fld :: Name
- data Reference a = Reference {
- _Reference :: Name
Documentation
An association of a field name (as in a case statement) with a phantom type
An association of a term with a phantom type
data Definition a Source #
An association with a named term with a phantom type
Definition | |
|
Instances
Read (Definition a) Source # | |
Defined in Hydra.Phantoms readsPrec :: Int -> ReadS (Definition a) # readList :: ReadS [Definition a] # readPrec :: ReadPrec (Definition a) # readListPrec :: ReadPrec [Definition a] # | |
Show (Definition a) Source # | |
Defined in Hydra.Phantoms showsPrec :: Int -> Definition a -> ShowS # show :: Definition a -> String # showList :: [Definition a] -> ShowS # | |
Eq (Definition a) Source # | |
Defined in Hydra.Phantoms (==) :: Definition a -> Definition a -> Bool # (/=) :: Definition a -> Definition a -> Bool # | |
Ord (Definition a) Source # | |
Defined in Hydra.Phantoms compare :: Definition a -> Definition a -> Ordering # (<) :: Definition a -> Definition a -> Bool # (<=) :: Definition a -> Definition a -> Bool # (>) :: Definition a -> Definition a -> Bool # (>=) :: Definition a -> Definition a -> Bool # max :: Definition a -> Definition a -> Definition a # min :: Definition a -> Definition a -> Definition a # |
_Definition :: Name Source #
An association with a term-level field with a phantom type
A pure association with a phantom type
Instances
Read (Reference a) Source # | |
Show (Reference a) Source # | |
Eq (Reference a) Source # | |
Ord (Reference a) Source # | |
Defined in Hydra.Phantoms |
_Reference :: Name Source #