-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | State variables -- -- This package contains tensor data types and their instances for some -- basic type classes. @package Tensor @version 1.0.0.0 -- | This package contains tensor data types and their instances for some -- basic type classes. module Data.Tensor -- | A vertex with y=0, z=0 and w=1. newtype Vertex1 a Vertex1 :: a -> Vertex1 a -- | A vertex with z=0 and w=1. data Vertex2 a Vertex2 :: !a -> !a -> Vertex2 a -- | A vertex with w=1. data Vertex3 a Vertex3 :: !a -> !a -> !a -> Vertex3 a -- | A fully-fledged four-dimensional vertex. data Vertex4 a Vertex4 :: !a -> !a -> !a -> !a -> Vertex4 a -- | A one-dimensional vector. newtype Vector1 a Vector1 :: a -> Vector1 a -- | A two-dimensional vector. data Vector2 a Vector2 :: !a -> !a -> Vector2 a -- | A three-dimensional vector. data Vector3 a Vector3 :: !a -> !a -> !a -> Vector3 a -- | A four-dimensional vector. data Vector4 a Vector4 :: !a -> !a -> !a -> !a -> Vector4 a instance (Eq a) => Eq (Vector4 a) instance (Ord a) => Ord (Vector4 a) instance (Ix a) => Ix (Vector4 a) instance (Bounded a) => Bounded (Vector4 a) instance (Show a) => Show (Vector4 a) instance (Read a) => Read (Vector4 a) instance (Eq a) => Eq (Vector3 a) instance (Ord a) => Ord (Vector3 a) instance (Ix a) => Ix (Vector3 a) instance (Bounded a) => Bounded (Vector3 a) instance (Show a) => Show (Vector3 a) instance (Read a) => Read (Vector3 a) instance (Eq a) => Eq (Vector2 a) instance (Ord a) => Ord (Vector2 a) instance (Ix a) => Ix (Vector2 a) instance (Bounded a) => Bounded (Vector2 a) instance (Show a) => Show (Vector2 a) instance (Read a) => Read (Vector2 a) instance (Eq a) => Eq (Vector1 a) instance (Ord a) => Ord (Vector1 a) instance (Ix a) => Ix (Vector1 a) instance (Bounded a) => Bounded (Vector1 a) instance (Show a) => Show (Vector1 a) instance (Read a) => Read (Vector1 a) instance (Eq a) => Eq (Vertex4 a) instance (Ord a) => Ord (Vertex4 a) instance (Ix a) => Ix (Vertex4 a) instance (Bounded a) => Bounded (Vertex4 a) instance (Show a) => Show (Vertex4 a) instance (Read a) => Read (Vertex4 a) instance (Eq a) => Eq (Vertex3 a) instance (Ord a) => Ord (Vertex3 a) instance (Ix a) => Ix (Vertex3 a) instance (Bounded a) => Bounded (Vertex3 a) instance (Show a) => Show (Vertex3 a) instance (Read a) => Read (Vertex3 a) instance (Eq a) => Eq (Vertex2 a) instance (Ord a) => Ord (Vertex2 a) instance (Ix a) => Ix (Vertex2 a) instance (Bounded a) => Bounded (Vertex2 a) instance (Show a) => Show (Vertex2 a) instance (Read a) => Read (Vertex2 a) instance (Eq a) => Eq (Vertex1 a) instance (Ord a) => Ord (Vertex1 a) instance (Ix a) => Ix (Vertex1 a) instance (Bounded a) => Bounded (Vertex1 a) instance (Show a) => Show (Vertex1 a) instance (Read a) => Read (Vertex1 a) instance (Storable a) => Storable (Vector4 a) instance (Typeable a) => Typeable (Vector4 a) instance Typeable1 Vector4 instance Traversable Vector4 instance Foldable Vector4 instance Applicative Vector4 instance Functor Vector4 instance (Storable a) => Storable (Vector3 a) instance (Typeable a) => Typeable (Vector3 a) instance Typeable1 Vector3 instance Traversable Vector3 instance Foldable Vector3 instance Applicative Vector3 instance Functor Vector3 instance (Storable a) => Storable (Vector2 a) instance (Typeable a) => Typeable (Vector2 a) instance Typeable1 Vector2 instance Traversable Vector2 instance Foldable Vector2 instance Applicative Vector2 instance Functor Vector2 instance (Storable a) => Storable (Vector1 a) instance (Typeable a) => Typeable (Vector1 a) instance Typeable1 Vector1 instance Traversable Vector1 instance Foldable Vector1 instance Applicative Vector1 instance Functor Vector1 instance (Storable a) => Storable (Vertex4 a) instance (Typeable a) => Typeable (Vertex4 a) instance Typeable1 Vertex4 instance Traversable Vertex4 instance Foldable Vertex4 instance Applicative Vertex4 instance Functor Vertex4 instance (Storable a) => Storable (Vertex3 a) instance (Typeable a) => Typeable (Vertex3 a) instance Typeable1 Vertex3 instance Traversable Vertex3 instance Foldable Vertex3 instance Applicative Vertex3 instance Functor Vertex3 instance (Storable a) => Storable (Vertex2 a) instance (Typeable a) => Typeable (Vertex2 a) instance Typeable1 Vertex2 instance Traversable Vertex2 instance Foldable Vertex2 instance Applicative Vertex2 instance Functor Vertex2 instance (Storable a) => Storable (Vertex1 a) instance (Typeable a) => Typeable (Vertex1 a) instance Typeable1 Vertex1 instance Traversable Vertex1 instance Foldable Vertex1 instance Applicative Vertex1 instance Functor Vertex1