| Safe Haskell | None |
|---|
Ivory.Language.Type
- class IvoryType t where
- class IvoryType t => IvoryVar t where
- wrapVar :: Var -> t
- unwrapExpr :: t -> Expr
- class IvoryVar t => IvoryExpr t where
- wrapVarExpr :: IvoryExpr t => Var -> t
- typedExpr :: forall t. IvoryVar t => t -> Typed Expr
- exprBinop :: IvoryExpr a => (Expr -> Expr -> Expr) -> a -> a -> a
- exprUnary :: IvoryExpr a => (Expr -> Expr) -> a -> a
- data OpaqueType = OpaqueType
Documentation
The connection between haskell and ivory types.
Instances
| IvoryType () | |
| IvoryType OpaqueType | |
| IvoryType IString | |
| IvoryType IChar | |
| IvoryType Sint64 | |
| IvoryType Sint32 | |
| IvoryType Sint16 | |
| IvoryType Sint8 | |
| IvoryType Uint64 | |
| IvoryType Uint32 | |
| IvoryType Uint16 | |
| IvoryType Uint8 | |
| IvoryType IBool | |
| IvoryType IDouble | |
| IvoryType IFloat | |
| ProcType proc => IvoryType (Def proc) | |
| ProcType proc => IvoryType (ProcPtr proc) | |
| SingI Nat n => IvoryType (Ix n) | |
| IvoryArea area => IvoryType (ConstRef s area) | |
| IvoryArea area => IvoryType (Ref s area) | |
| IvoryArea area => IvoryType (Ptr s area) |
class IvoryType t => IvoryVar t whereSource
Lifting a variable name.
Instances
| IvoryVar IString | |
| IvoryVar IChar | |
| IvoryVar Sint64 | |
| IvoryVar Sint32 | |
| IvoryVar Sint16 | |
| IvoryVar Sint8 | |
| IvoryVar Uint64 | |
| IvoryVar Uint32 | |
| IvoryVar Uint16 | |
| IvoryVar Uint8 | |
| IvoryVar IBool | |
| IvoryVar IDouble | |
| IvoryVar IFloat | |
| ProcType proc => IvoryVar (ProcPtr proc) | |
| SingI Nat n => IvoryVar (Ix n) | |
| IvoryArea area => IvoryVar (ConstRef s area) | |
| IvoryArea area => IvoryVar (Ref s area) | |
| IvoryArea area => IvoryVar (Ptr s area) |
class IvoryVar t => IvoryExpr t whereSource
Unwrapping for ivory expressions.
Instances
| IvoryExpr IString | |
| IvoryExpr IChar | |
| IvoryExpr Sint64 | |
| IvoryExpr Sint32 | |
| IvoryExpr Sint16 | |
| IvoryExpr Sint8 | |
| IvoryExpr Uint64 | |
| IvoryExpr Uint32 | |
| IvoryExpr Uint16 | |
| IvoryExpr Uint8 | |
| IvoryExpr IBool | |
| IvoryExpr IDouble | |
| IvoryExpr IFloat | |
| SingI Nat n => IvoryExpr (Ix n) | |
| IvoryArea area => IvoryExpr (ConstRef s area) | |
| IvoryArea area => IvoryExpr (Ref s area) | |
| IvoryArea area => IvoryExpr (Ptr s area) |
wrapVarExpr :: IvoryExpr t => Var -> tSource
data OpaqueType Source
An opaque type that can never be implemented.
Constructors
| OpaqueType |
Instances