vector-heterogenous-0.1.1: A type-safe library for vectors whose elements can be of any type, or any type satisfying some constraints

Safe HaskellNone

Data.Vector.Heterogenous

Contents

Description

Heterogenous vectors. For more info on heterogenous collections, see http://www.haskell.org/haskellwiki/Heterogenous_collections

Synopsis

Documentation

newtype HVector box xs Source

Constructors

HVector 

Fields

getvec :: Vector box
 

Instances

Show box => Show (HVector k box xs) 
(Monoid (HList xs), Downcast (HList xs) box, HLength (HList xs), HListBuilder (Indexer (HVector * box xs)) (HList xs)) => Monoid (HVector * box xs) 

vec :: (HLength (HList xs), Downcast (HList xs) box) => (a -> box) -> HList xs -> HVector box (xs :: [*])Source

creates an HVector from an HList. For example:

Construction helpers

class (Downcast (HList xs) box, HLength (HList xs), HListBuilder (Indexer (HVector box xs)) (HList xs)) => ValidHVector box xs Source

Instances

(Downcast (HList xs) box, HLength (HList xs), HListBuilder (Indexer (HVector * box xs)) (HList xs)) => ValidHVector box xs 

toHList :: HListBuilder (Indexer (HVector box xs)) ys => HVector box xs -> ysSource

Modules