Safe Haskell | None |
---|---|
Language | Haskell98 |
This module exports vect-floating instances to make Vec2, Normal2, Vec3, Normal3, Vec4, Normal4, Quaternion, and UnitQuaternion compatible with accelerate.
The instances are defined:
Vec2
Accelerate Instances:
instance
Elt
a =>Elt
(Vec2
a)instance
IsTuple
(Vec2
a)instance (
Lift
Exp
a,Elt
(Plain
a)) =>Lift
Exp
(Vec2
a)instance (
Elt
a) =>Unlift
Exp
(Vec2
(Exp
a))
Normal2
Accelerate Instances:
instance (
Elt
a,Floating
a) =>Elt
(Normal2
a)instance
Floating
a =>IsTuple
(Normal2
a)instance (
Lift
Exp
a,Elt
(Plain
a),Floating
a,Floating
(Plain
a)) =>Lift
Exp
(Normal2
a)instance (
Elt
a,Floating
a,IsFloating
a) =>Unlift
Exp
(Normal2
(Exp
a))
Vec3
Accelerate Instances:
instance
Elt
a =>Elt
(Vec3
a)instance
IsTuple
(Vec3
a)instance (
Lift
Exp
a,Elt
(Plain
a)) =>Lift
Exp
(Vec3
a)instance
Elt
a =>Unlift
Exp
(Vec3
(Exp
a))
Normal3
Accelerate Instances:
instance (
Elt
a,Floating
a) =>Elt
(Normal3
a)instance
Floating
a =>IsTuple
(Normal3
a)instance (
Lift
Exp
a,Elt
(Plain
a),Floating
a,Floating
(Plain
a)) =>Lift
Exp
(Normal3
a)instance (
Elt
a,Floating
a,IsFloating
a) =>Unlift
Exp
(Normal3
(Exp
a))
Vec4
Accelerate Instances:
instance
Elt
a =>Elt
(Vec4
a)instance
IsTuple
(Vec4
a)instance (
Lift
Exp
a,Elt
(Plain
a)) =>Lift
Exp
(Vec4
a)instance
Elt
a =>Unlift
Exp
(Vec4
(Exp
a))
Normal4
Accelerate Instances:
instance (
Elt
a,Floating
a) =>Elt
(Normal4
a)instance
Floating
a =>IsTuple
(Normal4
a)instance (
Lift
Exp
a,Elt
(Plain
a),Floating
a,Floating
(Plain
a)) =>Lift
Exp
(Normal4
a)instance (
Elt
a,Floating
a,IsFloating
a) =>Unlift
Exp
(Normal4
(Exp
a))
Quaternion
Accelerate Instances:
instance
Elt
a =>Elt
(Quaternion
a)instance
IsTuple
(Quaternion
a)instance (
Lift
Exp
a,Elt
(Plain
a)) =>Lift
Exp
(Quaternion
a)instance
Elt
a =>Unlift
Exp
(Quaternion
(Exp
a))
UnitQuaternion
Accelerate Instances:
instance (
Elt
a,Floating
a) =>Elt
(UnitQuaternion
a)instance
Floating
a =>IsTuple
(UnitQuaternion
a)instance (
Lift
Exp
a,Elt
(Plain
a),Floating
a,Floating
(Plain
a)) =>Lift
Exp
(UnitQuaternion
a)instance (
Elt
a,IsFloating
a) =>Unlift
Exp
(UnitQuaternion
(Exp
a))