ivory-0.1.0.7: Safe embedded C programming.

Safe HaskellNone
LanguageHaskell2010

Ivory.Language.Area

Synopsis

Documentation

type AProxy a = Proxy (a :: Area *) Source #

Type proxies for Areas.

data Area k Source #

The kind of memory-area types.

Constructors

Struct Symbol 
Array Nat (Area k) 
CArray (Area k) 
Stored k

This is lifting for a *-kinded type

class IvoryArea a where Source #

Guard the inhabitants of the Area type, as not all *s are Ivory *s.

Minimal complete definition

ivoryArea

Methods

ivoryArea :: Proxy a -> Type Source #

Instances

IvoryType a => IvoryArea (Stored * a) Source # 

Methods

ivoryArea :: Proxy (Area *) (Stored * a) -> Type Source #

(ANat len, IvoryArea area) => IvoryArea (Array * len area) Source # 

Methods

ivoryArea :: Proxy (Area *) (Array * len area) -> Type Source #