Copyright | (C) 2013 Amgen Inc. |
---|---|
Safe Haskell | None |
Language | Haskell2010 |
Phantom type indices for segregating values into "regions" of memory, which are markers that serve as static conservative approximations of the liveness of an object. That is, regions have scopes, and objects within a region are guaranteed to remain live within the scope of that region.
- type GlobalRegion = RealWorld
- data Void
- type G = GlobalRegion
- type V = Void
- type family a <= b :: Constraint
Documentation
type GlobalRegion = RealWorld Source #
The global region is a special region whose scope extends all the way to the end of the program. As such, any object allocated within this region lives "forever". In this sense, it is the top-level region, whose scope includes all other regions.
Void is not a region. It is a placeholder marking the absence of region. Useful to tag objects that belong to no region at all.
type G = GlobalRegion Source #
Convenient shorthand.