sdl2-2.5.6.0: Both high- and low-level bindings to the SDL library (version 2.0.6+).
Safe HaskellSafe-Inferred
LanguageHaskell2010

SDL.Vect

Contents

Description

SDL's vector representation.

By default, re-exports the Linear and Linear.Affine modules from the linear package. With the no-linear Cabal flag, instead exports a duplicate implementation of the V2, V3, V4 and Point types from SDL.Internal.Vect, which provides as many instances as possible for those types while avoiding any additional dependencies.

Synopsis
  • vector :: Num a => V3 a -> V4 a
  • unit :: (Additive t, Num a) => ASetter' (t a) a -> t a
  • data family Vector a
  • newtype Point (f :: Type -> Type) a = P (f a)
  • data V2 a = V2 !a !a
  • data V3 a = V3 !a !a !a
  • data V4 a = V4 !a !a !a !a
  • class Additive (Diff p) => Affine (p :: Type -> Type) where
    • type Diff (p :: Type -> Type) :: Type -> Type
    • (.-.) :: Num a => p a -> p a -> Diff p a
    • (.+^) :: Num a => p a -> Diff p a -> p a
    • (.-^) :: Num a => p a -> Diff p a -> p a
  • rotate :: (Conjugate a, RealFloat a) => Quaternion a -> V3 a -> V3 a
  • (#.) :: Coercible c b => (b -> c) -> (a -> b) -> a -> c
  • class R1 (t :: Type -> Type) where
    • _x :: Lens' (t a) a
  • newtype V1 a = V1 a
  • outer :: (Functor f, Functor g, Num a) => f a -> g a -> f (g a)
  • transpose :: (Distributive g, Functor f) => f (g a) -> g (f a)
  • class Num a => Conjugate a where
  • class Functor f => Additive (f :: Type -> Type) where
    • zero :: Num a => f a
    • (^+^) :: Num a => f a -> f a -> f a
    • (^-^) :: Num a => f a -> f a -> f a
    • lerp :: Num a => a -> f a -> f a -> f a
    • liftU2 :: (a -> a -> a) -> f a -> f a -> f a
    • liftI2 :: (a -> b -> c) -> f a -> f b -> f c
  • (.#) :: Coercible b a => (b -> c) -> (a -> b) -> a -> c
  • triple :: Num a => V3 a -> V3 a -> V3 a -> a
  • class Complicated (t :: Type -> Type) where
    • _e :: Lens' (t a) a
    • _i :: Lens' (t a) a
  • ex :: forall (t :: Type -> Type). R1 t => E t
  • data family MVector s a
  • class Complicated t => Hamiltonian (t :: Type -> Type) where
    • _j :: Lens' (t a) a
    • _k :: Lens' (t a) a
    • _ijk :: Lens' (t a) (V3 a)
  • class R2 t => R3 (t :: Type -> Type) where
    • _z :: Lens' (t a) a
    • _xyz :: Lens' (t a) (V3 a)
  • class Functor m => Trace (m :: Type -> Type) where
  • class R1 t => R2 (t :: Type -> Type) where
    • _y :: Lens' (t a) a
    • _xy :: Lens' (t a) (V2 a)
  • class Num r => Algebra r m where
    • mult :: (m -> m -> r) -> m -> r
    • unital :: r -> m -> r
  • class Num r => Coalgebra r m where
  • comultRep :: (Representable f, Coalgebra r (Rep f)) => f r -> f (f r)
  • counitalRep :: (Representable f, Coalgebra r (Rep f)) => f r -> r
  • multRep :: (Representable f, Algebra r (Rep f)) => f (f r) -> f r
  • unitalRep :: (Representable f, Algebra r (Rep f)) => r -> f r
  • getLinear :: (Binary a, Applicative t, Traversable t) => Get (t a)
  • putLinear :: (Binary a, Foldable t) => t a -> Put
  • class Conjugate a => TrivialConjugate a
  • ($*) :: Representable f => Covector r (Rep f) -> f r -> r
  • newtype Covector r a = Covector {}
  • class Num a => Epsilon a where
  • (!!*) :: (Functor m, Functor r, Num a) => m (r a) -> a -> m (r a)
  • (!!/) :: (Functor m, Functor r, Fractional a) => m (r a) -> a -> m (r a)
  • (!*) :: (Functor m, Foldable r, Additive r, Num a) => m (r a) -> r a -> m a
  • (!*!) :: (Functor m, Foldable t, Additive t, Additive n, Num a) => m (t a) -> t (n a) -> m (n a)
  • (!+!) :: (Additive m, Additive n, Num a) => m (n a) -> m (n a) -> m (n a)
  • (!-!) :: (Additive m, Additive n, Num a) => m (n a) -> m (n a) -> m (n a)
  • (*!) :: (Num a, Foldable t, Additive f, Additive t) => t a -> t (f a) -> f a
  • (*!!) :: (Functor m, Functor r, Num a) => a -> m (r a) -> m (r a)
  • type M22 a = V2 (V2 a)
  • type M23 a = V2 (V3 a)
  • type M24 a = V2 (V4 a)
  • type M32 a = V3 (V2 a)
  • type M33 a = V3 (V3 a)
  • type M34 a = V3 (V4 a)
  • type M42 a = V4 (V2 a)
  • type M43 a = V4 (V3 a)
  • type M44 a = V4 (V4 a)
  • _m22 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R2 t, R2 v) => Lens' (t (v a)) (M22 a)
  • _m23 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R2 t, R3 v) => Lens' (t (v a)) (M23 a)
  • _m24 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R2 t, R4 v) => Lens' (t (v a)) (M24 a)
  • _m32 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R3 t, R2 v) => Lens' (t (v a)) (M32 a)
  • _m33 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R3 t, R3 v) => Lens' (t (v a)) (M33 a)
  • _m34 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R3 t, R4 v) => Lens' (t (v a)) (M34 a)
  • _m42 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R4 t, R2 v) => Lens' (t (v a)) (M42 a)
  • _m43 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R4 t, R3 v) => Lens' (t (v a)) (M43 a)
  • _m44 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R4 t, R4 v) => Lens' (t (v a)) (M44 a)
  • adjoint :: (Functor m, Distributive n, Conjugate a) => m (n a) -> n (m a)
  • backwardSub :: (Num a, Fractional a, Foldable m, Additive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Ord i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a))) => m (m a) -> m a -> m a
  • backwardSubFinite :: forall a m (n :: Nat). (Num a, Fractional a, Foldable m, n ~ Size m, KnownNat n, Additive m, Finite m) => m (m a) -> m a -> m a
  • column :: forall (f :: Type -> Type) a b s t. Representable f => LensLike (Context a b) s t a b -> Lens (f s) (f t) (f a) (f b)
  • det22 :: Num a => M22 a -> a
  • det33 :: Num a => M33 a -> a
  • det44 :: Num a => M44 a -> a
  • forwardSub :: (Num a, Fractional a, Foldable m, Additive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Ord i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a))) => m (m a) -> m a -> m a
  • forwardSubFinite :: forall a m (n :: Nat). (Num a, Fractional a, Foldable m, n ~ Size m, KnownNat n, Additive m, Finite m) => m (m a) -> m a -> m a
  • fromQuaternion :: Num a => Quaternion a -> M33 a
  • identity :: (Num a, Traversable t, Applicative t) => t (t a)
  • inv22 :: Fractional a => M22 a -> M22 a
  • inv33 :: Fractional a => M33 a -> M33 a
  • inv44 :: Fractional a => M44 a -> M44 a
  • lu :: (Num a, Fractional a, Foldable m, Traversable m, Applicative m, Additive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a)), Num (m a)) => m (m a) -> (m (m a), m (m a))
  • luDet :: (Num a, Fractional a, Foldable m, Traversable m, Applicative m, Additive m, Trace m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a)), Num (m a)) => m (m a) -> a
  • luDetFinite :: forall a m (n :: Nat). (Num a, Fractional a, Functor m, Finite m, n ~ Size m, KnownNat n, Num (m a)) => m (m a) -> a
  • luFinite :: forall a m (n :: Nat). (Num a, Fractional a, Functor m, Finite m, n ~ Size m, KnownNat n, Num (m a)) => m (m a) -> (m (m a), m (m a))
  • luInv :: (Num a, Fractional a, Foldable m, Traversable m, Applicative m, Additive m, Distributive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a)), Num (m a)) => m (m a) -> m (m a)
  • luInvFinite :: forall a m (n :: Nat). (Num a, Fractional a, Functor m, Finite m, n ~ Size m, KnownNat n, Num (m a)) => m (m a) -> m (m a)
  • luSolve :: (Num a, Fractional a, Foldable m, Traversable m, Applicative m, Additive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a)), Num (m a)) => m (m a) -> m a -> m a
  • luSolveFinite :: forall a m (n :: Nat). (Num a, Fractional a, Functor m, Finite m, n ~ Size m, KnownNat n, Num (m a)) => m (m a) -> m a -> m a
  • m33_to_m44 :: Num a => M33 a -> M44 a
  • m43_to_m44 :: Num a => M43 a -> M44 a
  • mkTransformation :: Num a => Quaternion a -> V3 a -> M44 a
  • mkTransformationMat :: Num a => M33 a -> V3 a -> M44 a
  • translation :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R3 t, R4 v) => Lens' (t (v a)) (V3 a)
  • class Additive f => Metric (f :: Type -> Type) where
    • dot :: Num a => f a -> f a -> a
    • quadrance :: Num a => f a -> a
    • qd :: Num a => f a -> f a -> a
    • distance :: Floating a => f a -> f a -> a
    • norm :: Floating a => f a -> a
    • signorm :: Floating a => f a -> f a
  • normalize :: (Floating a, Metric f, Epsilon a) => f a -> f a
  • project :: (Metric v, Fractional a) => v a -> v a -> v a
  • frustum :: Floating a => a -> a -> a -> a -> a -> a -> M44 a
  • infinitePerspective :: Floating a => a -> a -> a -> M44 a
  • inverseFrustum :: Floating a => a -> a -> a -> a -> a -> a -> M44 a
  • inverseInfinitePerspective :: Floating a => a -> a -> a -> M44 a
  • inverseOrtho :: Fractional a => a -> a -> a -> a -> a -> a -> M44 a
  • inversePerspective :: Floating a => a -> a -> a -> a -> M44 a
  • lookAt :: (Epsilon a, Floating a) => V3 a -> V3 a -> V3 a -> M44 a
  • ortho :: Fractional a => a -> a -> a -> a -> a -> a -> M44 a
  • perspective :: Floating a => a -> a -> a -> a -> M44 a
  • data Quaternion a = Quaternion !a !(V3 a)
  • absi :: Floating a => Quaternion a -> a
  • acoshq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a
  • acosq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a
  • asinhq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a
  • asinq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a
  • atanhq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a
  • atanq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a
  • axisAngle :: (Epsilon a, Floating a) => V3 a -> a -> Quaternion a
  • ee :: forall (t :: Type -> Type). Complicated t => E t
  • ei :: forall (t :: Type -> Type). Complicated t => E t
  • ej :: forall (t :: Type -> Type). Hamiltonian t => E t
  • ek :: forall (t :: Type -> Type). Hamiltonian t => E t
  • pow :: RealFloat a => Quaternion a -> a -> Quaternion a
  • slerp :: RealFloat a => Quaternion a -> Quaternion a -> a -> Quaternion a
  • frobenius :: (Num a, Foldable f, Additive f, Additive g, Distributive g, Trace g) => f (g a) -> a
  • data V0 a = V0
  • _yx :: forall (t :: Type -> Type) a. R2 t => Lens' (t a) (V2 a)
  • angle :: Floating a => a -> V2 a
  • crossZ :: Num a => V2 a -> V2 a -> a
  • ey :: forall (t :: Type -> Type). R2 t => E t
  • perp :: Num a => V2 a -> V2 a
  • unangle :: (Floating a, Ord a) => V2 a -> a
  • _xz :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V2 a)
  • _xzy :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a)
  • _yxz :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a)
  • _yz :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V2 a)
  • _yzx :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a)
  • _zx :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V2 a)
  • _zxy :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a)
  • _zy :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V2 a)
  • _zyx :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a)
  • cross :: Num a => V3 a -> V3 a -> V3 a
  • ez :: forall (t :: Type -> Type). R3 t => E t
  • class R3 t => R4 (t :: Type -> Type) where
    • _w :: Lens' (t a) a
    • _xyzw :: Lens' (t a) (V4 a)
  • _wx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a)
  • _wxy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _wxyz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _wxz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _wxzy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _wy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a)
  • _wyx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _wyxz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _wyz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _wyzx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _wz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a)
  • _wzx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _wzxy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _wzy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _wzyx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _xw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a)
  • _xwy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _xwyz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _xwz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _xwzy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _xyw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _xywz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _xzw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _xzwy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _xzyw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _yw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a)
  • _ywx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _ywxz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _ywz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _ywzx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _yxw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _yxwz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _yxzw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _yzw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _yzwx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _yzxw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _zw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a)
  • _zwx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _zwxy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _zwy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _zwyx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _zxw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _zxwy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _zxyw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _zyw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a)
  • _zywx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • _zyxw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a)
  • ew :: forall (t :: Type -> Type). R4 t => E t
  • normalizePoint :: Fractional a => V4 a -> V3 a
  • point :: Num a => V3 a -> V4 a
  • (*^) :: (Functor f, Num a) => a -> f a -> f a
  • newtype E (t :: Type -> Type) = E {
    • el :: forall x. Lens' (t x) x
    }
  • (^*) :: (Functor f, Num a) => f a -> a -> f a
  • (^/) :: (Functor f, Fractional a) => f a -> a -> f a
  • basis :: (Additive t, Traversable t, Num a) => [t a]
  • basisFor :: (Traversable t, Num a) => t b -> [t a]
  • negated :: (Functor f, Num a) => f a -> f a
  • scaled :: (Traversable t, Num a) => t a -> t (t a)
  • sumV :: (Foldable f, Additive v, Num a) => f (v a) -> v a
  • type family Diff (p :: Type -> Type) :: Type -> Type
  • _Point :: forall f1 a g b p f2. (Profunctor p, Functor f2) => p (f1 a) (f2 (g b)) -> p (Point f1 a) (f2 (Point g b))
  • distanceA :: (Floating a, Foldable (Diff p), Affine p) => p a -> p a -> a
  • lensP :: forall f1 a g b f2. Functor f2 => (f1 a -> f2 (g b)) -> Point f1 a -> f2 (Point g b)
  • origin :: forall (f :: Type -> Type) a. (Additive f, Num a) => Point f a
  • qdA :: (Affine p, Foldable (Diff p), Num a) => p a -> p a -> a
  • relative :: forall (f :: Type -> Type) a. (Additive f, Num a) => Point f a -> Iso' (Point f a) (f a)
  • unP :: Point f a -> f a
  • newtype Point (f :: Type -> Type) a = P (f a)
  • data V2 a = V2 !a !a
  • data V3 a = V3 !a !a !a
  • data V4 a = V4 !a !a !a !a

Documentation

vector :: Num a => V3 a -> V4 a #

unit :: (Additive t, Num a) => ASetter' (t a) a -> t a #

data family Vector a #

Instances

Instances details
NFData1 Vector 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

liftRnf :: (a -> ()) -> Vector a -> ()

Vector Vector All 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s All -> ST s (Vector All)

basicUnsafeThaw :: Vector All -> ST s (Mutable Vector s All)

basicLength :: Vector All -> Int

basicUnsafeSlice :: Int -> Int -> Vector All -> Vector All

basicUnsafeIndexM :: Vector All -> Int -> Box All

basicUnsafeCopy :: Mutable Vector s All -> Vector All -> ST s ()

elemseq :: Vector All -> All -> b -> b

Vector Vector Any 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Any -> ST s (Vector Any)

basicUnsafeThaw :: Vector Any -> ST s (Mutable Vector s Any)

basicLength :: Vector Any -> Int

basicUnsafeSlice :: Int -> Int -> Vector Any -> Vector Any

basicUnsafeIndexM :: Vector Any -> Int -> Box Any

basicUnsafeCopy :: Mutable Vector s Any -> Vector Any -> ST s ()

elemseq :: Vector Any -> Any -> b -> b

Vector Vector Int16 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Int16 -> ST s (Vector Int16)

basicUnsafeThaw :: Vector Int16 -> ST s (Mutable Vector s Int16)

basicLength :: Vector Int16 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Int16 -> Vector Int16

basicUnsafeIndexM :: Vector Int16 -> Int -> Box Int16

basicUnsafeCopy :: Mutable Vector s Int16 -> Vector Int16 -> ST s ()

elemseq :: Vector Int16 -> Int16 -> b -> b

Vector Vector Int32 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Int32 -> ST s (Vector Int32)

basicUnsafeThaw :: Vector Int32 -> ST s (Mutable Vector s Int32)

basicLength :: Vector Int32 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Int32 -> Vector Int32

basicUnsafeIndexM :: Vector Int32 -> Int -> Box Int32

basicUnsafeCopy :: Mutable Vector s Int32 -> Vector Int32 -> ST s ()

elemseq :: Vector Int32 -> Int32 -> b -> b

Vector Vector Int64 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Int64 -> ST s (Vector Int64)

basicUnsafeThaw :: Vector Int64 -> ST s (Mutable Vector s Int64)

basicLength :: Vector Int64 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Int64 -> Vector Int64

basicUnsafeIndexM :: Vector Int64 -> Int -> Box Int64

basicUnsafeCopy :: Mutable Vector s Int64 -> Vector Int64 -> ST s ()

elemseq :: Vector Int64 -> Int64 -> b -> b

Vector Vector Int8 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Int8 -> ST s (Vector Int8)

basicUnsafeThaw :: Vector Int8 -> ST s (Mutable Vector s Int8)

basicLength :: Vector Int8 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Int8 -> Vector Int8

basicUnsafeIndexM :: Vector Int8 -> Int -> Box Int8

basicUnsafeCopy :: Mutable Vector s Int8 -> Vector Int8 -> ST s ()

elemseq :: Vector Int8 -> Int8 -> b -> b

Vector Vector Word16 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word16 -> ST s (Vector Word16)

basicUnsafeThaw :: Vector Word16 -> ST s (Mutable Vector s Word16)

basicLength :: Vector Word16 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word16 -> Vector Word16

basicUnsafeIndexM :: Vector Word16 -> Int -> Box Word16

basicUnsafeCopy :: Mutable Vector s Word16 -> Vector Word16 -> ST s ()

elemseq :: Vector Word16 -> Word16 -> b -> b

Vector Vector Word32 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word32 -> ST s (Vector Word32)

basicUnsafeThaw :: Vector Word32 -> ST s (Mutable Vector s Word32)

basicLength :: Vector Word32 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word32 -> Vector Word32

basicUnsafeIndexM :: Vector Word32 -> Int -> Box Word32

basicUnsafeCopy :: Mutable Vector s Word32 -> Vector Word32 -> ST s ()

elemseq :: Vector Word32 -> Word32 -> b -> b

Vector Vector Word64 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word64 -> ST s (Vector Word64)

basicUnsafeThaw :: Vector Word64 -> ST s (Mutable Vector s Word64)

basicLength :: Vector Word64 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word64 -> Vector Word64

basicUnsafeIndexM :: Vector Word64 -> Int -> Box Word64

basicUnsafeCopy :: Mutable Vector s Word64 -> Vector Word64 -> ST s ()

elemseq :: Vector Word64 -> Word64 -> b -> b

Vector Vector Word8 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word8 -> ST s (Vector Word8)

basicUnsafeThaw :: Vector Word8 -> ST s (Mutable Vector s Word8)

basicLength :: Vector Word8 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word8 -> Vector Word8

basicUnsafeIndexM :: Vector Word8 -> Int -> Box Word8

basicUnsafeCopy :: Mutable Vector s Word8 -> Vector Word8 -> ST s ()

elemseq :: Vector Word8 -> Word8 -> b -> b

Vector Vector () 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s () -> ST s (Vector ())

basicUnsafeThaw :: Vector () -> ST s (Mutable Vector s ())

basicLength :: Vector () -> Int

basicUnsafeSlice :: Int -> Int -> Vector () -> Vector ()

basicUnsafeIndexM :: Vector () -> Int -> Box ()

basicUnsafeCopy :: Mutable Vector s () -> Vector () -> ST s ()

elemseq :: Vector () -> () -> b -> b

Vector Vector Bool 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Bool -> ST s (Vector Bool)

basicUnsafeThaw :: Vector Bool -> ST s (Mutable Vector s Bool)

basicLength :: Vector Bool -> Int

basicUnsafeSlice :: Int -> Int -> Vector Bool -> Vector Bool

basicUnsafeIndexM :: Vector Bool -> Int -> Box Bool

basicUnsafeCopy :: Mutable Vector s Bool -> Vector Bool -> ST s ()

elemseq :: Vector Bool -> Bool -> b -> b

Vector Vector Char 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Char -> ST s (Vector Char)

basicUnsafeThaw :: Vector Char -> ST s (Mutable Vector s Char)

basicLength :: Vector Char -> Int

basicUnsafeSlice :: Int -> Int -> Vector Char -> Vector Char

basicUnsafeIndexM :: Vector Char -> Int -> Box Char

basicUnsafeCopy :: Mutable Vector s Char -> Vector Char -> ST s ()

elemseq :: Vector Char -> Char -> b -> b

Vector Vector Double 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Double -> ST s (Vector Double)

basicUnsafeThaw :: Vector Double -> ST s (Mutable Vector s Double)

basicLength :: Vector Double -> Int

basicUnsafeSlice :: Int -> Int -> Vector Double -> Vector Double

basicUnsafeIndexM :: Vector Double -> Int -> Box Double

basicUnsafeCopy :: Mutable Vector s Double -> Vector Double -> ST s ()

elemseq :: Vector Double -> Double -> b -> b

Vector Vector Float 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Float -> ST s (Vector Float)

basicUnsafeThaw :: Vector Float -> ST s (Mutable Vector s Float)

basicLength :: Vector Float -> Int

basicUnsafeSlice :: Int -> Int -> Vector Float -> Vector Float

basicUnsafeIndexM :: Vector Float -> Int -> Box Float

basicUnsafeCopy :: Mutable Vector s Float -> Vector Float -> ST s ()

elemseq :: Vector Float -> Float -> b -> b

Vector Vector Int 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Int -> ST s (Vector Int)

basicUnsafeThaw :: Vector Int -> ST s (Mutable Vector s Int)

basicLength :: Vector Int -> Int

basicUnsafeSlice :: Int -> Int -> Vector Int -> Vector Int

basicUnsafeIndexM :: Vector Int -> Int -> Box Int

basicUnsafeCopy :: Mutable Vector s Int -> Vector Int -> ST s ()

elemseq :: Vector Int -> Int -> b -> b

Vector Vector Word 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word -> ST s (Vector Word)

basicUnsafeThaw :: Vector Word -> ST s (Mutable Vector s Word)

basicLength :: Vector Word -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word -> Vector Word

basicUnsafeIndexM :: Vector Word -> Int -> Box Word

basicUnsafeCopy :: Mutable Vector s Word -> Vector Word -> ST s ()

elemseq :: Vector Word -> Word -> b -> b

Unbox a => Vector Vector (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Complex a) -> ST s (Vector (Complex a))

basicUnsafeThaw :: Vector (Complex a) -> ST s (Mutable Vector s (Complex a))

basicLength :: Vector (Complex a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Complex a) -> Vector (Complex a)

basicUnsafeIndexM :: Vector (Complex a) -> Int -> Box (Complex a)

basicUnsafeCopy :: Mutable Vector s (Complex a) -> Vector (Complex a) -> ST s ()

elemseq :: Vector (Complex a) -> Complex a -> b -> b

Unbox a => Vector Vector (Identity a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Identity a) -> ST s (Vector (Identity a))

basicUnsafeThaw :: Vector (Identity a) -> ST s (Mutable Vector s (Identity a))

basicLength :: Vector (Identity a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Identity a) -> Vector (Identity a)

basicUnsafeIndexM :: Vector (Identity a) -> Int -> Box (Identity a)

basicUnsafeCopy :: Mutable Vector s (Identity a) -> Vector (Identity a) -> ST s ()

elemseq :: Vector (Identity a) -> Identity a -> b -> b

Unbox a => Vector Vector (Down a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Down a) -> ST s (Vector (Down a))

basicUnsafeThaw :: Vector (Down a) -> ST s (Mutable Vector s (Down a))

basicLength :: Vector (Down a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Down a) -> Vector (Down a)

basicUnsafeIndexM :: Vector (Down a) -> Int -> Box (Down a)

basicUnsafeCopy :: Mutable Vector s (Down a) -> Vector (Down a) -> ST s ()

elemseq :: Vector (Down a) -> Down a -> b -> b

Unbox a => Vector Vector (First a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (First a) -> ST s (Vector (First a))

basicUnsafeThaw :: Vector (First a) -> ST s (Mutable Vector s (First a))

basicLength :: Vector (First a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (First a) -> Vector (First a)

basicUnsafeIndexM :: Vector (First a) -> Int -> Box (First a)

basicUnsafeCopy :: Mutable Vector s (First a) -> Vector (First a) -> ST s ()

elemseq :: Vector (First a) -> First a -> b -> b

Unbox a => Vector Vector (Last a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Last a) -> ST s (Vector (Last a))

basicUnsafeThaw :: Vector (Last a) -> ST s (Mutable Vector s (Last a))

basicLength :: Vector (Last a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Last a) -> Vector (Last a)

basicUnsafeIndexM :: Vector (Last a) -> Int -> Box (Last a)

basicUnsafeCopy :: Mutable Vector s (Last a) -> Vector (Last a) -> ST s ()

elemseq :: Vector (Last a) -> Last a -> b -> b

Unbox a => Vector Vector (Max a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Max a) -> ST s (Vector (Max a))

basicUnsafeThaw :: Vector (Max a) -> ST s (Mutable Vector s (Max a))

basicLength :: Vector (Max a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Max a) -> Vector (Max a)

basicUnsafeIndexM :: Vector (Max a) -> Int -> Box (Max a)

basicUnsafeCopy :: Mutable Vector s (Max a) -> Vector (Max a) -> ST s ()

elemseq :: Vector (Max a) -> Max a -> b -> b

Unbox a => Vector Vector (Min a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Min a) -> ST s (Vector (Min a))

basicUnsafeThaw :: Vector (Min a) -> ST s (Mutable Vector s (Min a))

basicLength :: Vector (Min a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Min a) -> Vector (Min a)

basicUnsafeIndexM :: Vector (Min a) -> Int -> Box (Min a)

basicUnsafeCopy :: Mutable Vector s (Min a) -> Vector (Min a) -> ST s ()

elemseq :: Vector (Min a) -> Min a -> b -> b

Unbox a => Vector Vector (WrappedMonoid a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (WrappedMonoid a) -> ST s (Vector (WrappedMonoid a))

basicUnsafeThaw :: Vector (WrappedMonoid a) -> ST s (Mutable Vector s (WrappedMonoid a))

basicLength :: Vector (WrappedMonoid a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (WrappedMonoid a) -> Vector (WrappedMonoid a)

basicUnsafeIndexM :: Vector (WrappedMonoid a) -> Int -> Box (WrappedMonoid a)

basicUnsafeCopy :: Mutable Vector s (WrappedMonoid a) -> Vector (WrappedMonoid a) -> ST s ()

elemseq :: Vector (WrappedMonoid a) -> WrappedMonoid a -> b -> b

Unbox a => Vector Vector (Dual a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Dual a) -> ST s (Vector (Dual a))

basicUnsafeThaw :: Vector (Dual a) -> ST s (Mutable Vector s (Dual a))

basicLength :: Vector (Dual a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Dual a) -> Vector (Dual a)

basicUnsafeIndexM :: Vector (Dual a) -> Int -> Box (Dual a)

basicUnsafeCopy :: Mutable Vector s (Dual a) -> Vector (Dual a) -> ST s ()

elemseq :: Vector (Dual a) -> Dual a -> b -> b

Unbox a => Vector Vector (Product a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Product a) -> ST s (Vector (Product a))

basicUnsafeThaw :: Vector (Product a) -> ST s (Mutable Vector s (Product a))

basicLength :: Vector (Product a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Product a) -> Vector (Product a)

basicUnsafeIndexM :: Vector (Product a) -> Int -> Box (Product a)

basicUnsafeCopy :: Mutable Vector s (Product a) -> Vector (Product a) -> ST s ()

elemseq :: Vector (Product a) -> Product a -> b -> b

Unbox a => Vector Vector (Sum a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Sum a) -> ST s (Vector (Sum a))

basicUnsafeThaw :: Vector (Sum a) -> ST s (Mutable Vector s (Sum a))

basicLength :: Vector (Sum a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Sum a) -> Vector (Sum a)

basicUnsafeIndexM :: Vector (Sum a) -> Int -> Box (Sum a)

basicUnsafeCopy :: Mutable Vector s (Sum a) -> Vector (Sum a) -> ST s ()

elemseq :: Vector (Sum a) -> Sum a -> b -> b

Unbox a => Vector Vector (Plucker a) 
Instance details

Defined in Linear.Plucker

Methods

basicUnsafeFreeze :: Mutable Vector s (Plucker a) -> ST s (Vector (Plucker a))

basicUnsafeThaw :: Vector (Plucker a) -> ST s (Mutable Vector s (Plucker a))

basicLength :: Vector (Plucker a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Plucker a) -> Vector (Plucker a)

basicUnsafeIndexM :: Vector (Plucker a) -> Int -> Box (Plucker a)

basicUnsafeCopy :: Mutable Vector s (Plucker a) -> Vector (Plucker a) -> ST s ()

elemseq :: Vector (Plucker a) -> Plucker a -> b -> b

Unbox a => Vector Vector (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

basicUnsafeFreeze :: Mutable Vector s (Quaternion a) -> ST s (Vector (Quaternion a))

basicUnsafeThaw :: Vector (Quaternion a) -> ST s (Mutable Vector s (Quaternion a))

basicLength :: Vector (Quaternion a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Quaternion a) -> Vector (Quaternion a)

basicUnsafeIndexM :: Vector (Quaternion a) -> Int -> Box (Quaternion a)

basicUnsafeCopy :: Mutable Vector s (Quaternion a) -> Vector (Quaternion a) -> ST s ()

elemseq :: Vector (Quaternion a) -> Quaternion a -> b -> b

Vector Vector (V0 a) 
Instance details

Defined in Linear.V0

Methods

basicUnsafeFreeze :: Mutable Vector s (V0 a) -> ST s (Vector (V0 a))

basicUnsafeThaw :: Vector (V0 a) -> ST s (Mutable Vector s (V0 a))

basicLength :: Vector (V0 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V0 a) -> Vector (V0 a)

basicUnsafeIndexM :: Vector (V0 a) -> Int -> Box (V0 a)

basicUnsafeCopy :: Mutable Vector s (V0 a) -> Vector (V0 a) -> ST s ()

elemseq :: Vector (V0 a) -> V0 a -> b -> b

Unbox a => Vector Vector (V1 a) 
Instance details

Defined in Linear.V1

Methods

basicUnsafeFreeze :: Mutable Vector s (V1 a) -> ST s (Vector (V1 a))

basicUnsafeThaw :: Vector (V1 a) -> ST s (Mutable Vector s (V1 a))

basicLength :: Vector (V1 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V1 a) -> Vector (V1 a)

basicUnsafeIndexM :: Vector (V1 a) -> Int -> Box (V1 a)

basicUnsafeCopy :: Mutable Vector s (V1 a) -> Vector (V1 a) -> ST s ()

elemseq :: Vector (V1 a) -> V1 a -> b -> b

Unbox a => Vector Vector (V2 a) 
Instance details

Defined in Linear.V2

Methods

basicUnsafeFreeze :: Mutable Vector s (V2 a) -> ST s (Vector (V2 a))

basicUnsafeThaw :: Vector (V2 a) -> ST s (Mutable Vector s (V2 a))

basicLength :: Vector (V2 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V2 a) -> Vector (V2 a)

basicUnsafeIndexM :: Vector (V2 a) -> Int -> Box (V2 a)

basicUnsafeCopy :: Mutable Vector s (V2 a) -> Vector (V2 a) -> ST s ()

elemseq :: Vector (V2 a) -> V2 a -> b -> b

Unbox a => Vector Vector (V3 a) 
Instance details

Defined in Linear.V3

Methods

basicUnsafeFreeze :: Mutable Vector s (V3 a) -> ST s (Vector (V3 a))

basicUnsafeThaw :: Vector (V3 a) -> ST s (Mutable Vector s (V3 a))

basicLength :: Vector (V3 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V3 a) -> Vector (V3 a)

basicUnsafeIndexM :: Vector (V3 a) -> Int -> Box (V3 a)

basicUnsafeCopy :: Mutable Vector s (V3 a) -> Vector (V3 a) -> ST s ()

elemseq :: Vector (V3 a) -> V3 a -> b -> b

Unbox a => Vector Vector (V4 a) 
Instance details

Defined in Linear.V4

Methods

basicUnsafeFreeze :: Mutable Vector s (V4 a) -> ST s (Vector (V4 a))

basicUnsafeThaw :: Vector (V4 a) -> ST s (Mutable Vector s (V4 a))

basicLength :: Vector (V4 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V4 a) -> Vector (V4 a)

basicUnsafeIndexM :: Vector (V4 a) -> Int -> Box (V4 a)

basicUnsafeCopy :: Mutable Vector s (V4 a) -> Vector (V4 a) -> ST s ()

elemseq :: Vector (V4 a) -> V4 a -> b -> b

Unbox a => Vector Vector (V2 a) 
Instance details

Defined in SDL.Internal.Vect

Methods

basicUnsafeFreeze :: Mutable Vector s (V2 a) -> ST s (Vector (V2 a))

basicUnsafeThaw :: Vector (V2 a) -> ST s (Mutable Vector s (V2 a))

basicLength :: Vector (V2 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V2 a) -> Vector (V2 a)

basicUnsafeIndexM :: Vector (V2 a) -> Int -> Box (V2 a)

basicUnsafeCopy :: Mutable Vector s (V2 a) -> Vector (V2 a) -> ST s ()

elemseq :: Vector (V2 a) -> V2 a -> b -> b

Unbox a => Vector Vector (V3 a) 
Instance details

Defined in SDL.Internal.Vect

Methods

basicUnsafeFreeze :: Mutable Vector s (V3 a) -> ST s (Vector (V3 a))

basicUnsafeThaw :: Vector (V3 a) -> ST s (Mutable Vector s (V3 a))

basicLength :: Vector (V3 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V3 a) -> Vector (V3 a)

basicUnsafeIndexM :: Vector (V3 a) -> Int -> Box (V3 a)

basicUnsafeCopy :: Mutable Vector s (V3 a) -> Vector (V3 a) -> ST s ()

elemseq :: Vector (V3 a) -> V3 a -> b -> b

Unbox a => Vector Vector (V4 a) 
Instance details

Defined in SDL.Internal.Vect

Methods

basicUnsafeFreeze :: Mutable Vector s (V4 a) -> ST s (Vector (V4 a))

basicUnsafeThaw :: Vector (V4 a) -> ST s (Mutable Vector s (V4 a))

basicLength :: Vector (V4 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V4 a) -> Vector (V4 a)

basicUnsafeIndexM :: Vector (V4 a) -> Int -> Box (V4 a)

basicUnsafeCopy :: Mutable Vector s (V4 a) -> Vector (V4 a) -> ST s ()

elemseq :: Vector (V4 a) -> V4 a -> b -> b

Unbox a => Vector Vector (Rectangle a) 
Instance details

Defined in SDL.Video.Renderer

Methods

basicUnsafeFreeze :: Mutable Vector s (Rectangle a) -> ST s (Vector (Rectangle a))

basicUnsafeThaw :: Vector (Rectangle a) -> ST s (Mutable Vector s (Rectangle a))

basicLength :: Vector (Rectangle a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Rectangle a) -> Vector (Rectangle a)

basicUnsafeIndexM :: Vector (Rectangle a) -> Int -> Box (Rectangle a)

basicUnsafeCopy :: Mutable Vector s (Rectangle a) -> Vector (Rectangle a) -> ST s ()

elemseq :: Vector (Rectangle a) -> Rectangle a -> b -> b

Prim a => Vector Vector (UnboxViaPrim a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (UnboxViaPrim a) -> ST s (Vector (UnboxViaPrim a))

basicUnsafeThaw :: Vector (UnboxViaPrim a) -> ST s (Mutable Vector s (UnboxViaPrim a))

basicLength :: Vector (UnboxViaPrim a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (UnboxViaPrim a) -> Vector (UnboxViaPrim a)

basicUnsafeIndexM :: Vector (UnboxViaPrim a) -> Int -> Box (UnboxViaPrim a)

basicUnsafeCopy :: Mutable Vector s (UnboxViaPrim a) -> Vector (UnboxViaPrim a) -> ST s ()

elemseq :: Vector (UnboxViaPrim a) -> UnboxViaPrim a -> b -> b

(Unbox a, Unbox b) => Vector Vector (Arg a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Arg a b) -> ST s (Vector (Arg a b))

basicUnsafeThaw :: Vector (Arg a b) -> ST s (Mutable Vector s (Arg a b))

basicLength :: Vector (Arg a b) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Arg a b) -> Vector (Arg a b)

basicUnsafeIndexM :: Vector (Arg a b) -> Int -> Box (Arg a b)

basicUnsafeCopy :: Mutable Vector s (Arg a b) -> Vector (Arg a b) -> ST s ()

elemseq :: Vector (Arg a b) -> Arg a b -> b0 -> b0

Unbox (f a) => Vector Vector (Point f a) 
Instance details

Defined in Linear.Affine

Methods

basicUnsafeFreeze :: Mutable Vector s (Point f a) -> ST s (Vector (Point f a))

basicUnsafeThaw :: Vector (Point f a) -> ST s (Mutable Vector s (Point f a))

basicLength :: Vector (Point f a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Point f a) -> Vector (Point f a)

basicUnsafeIndexM :: Vector (Point f a) -> Int -> Box (Point f a)

basicUnsafeCopy :: Mutable Vector s (Point f a) -> Vector (Point f a) -> ST s ()

elemseq :: Vector (Point f a) -> Point f a -> b -> b

Unbox (f a) => Vector Vector (Point f a) 
Instance details

Defined in SDL.Internal.Vect

Methods

basicUnsafeFreeze :: Mutable Vector s (Point f a) -> ST s (Vector (Point f a))

basicUnsafeThaw :: Vector (Point f a) -> ST s (Mutable Vector s (Point f a))

basicLength :: Vector (Point f a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Point f a) -> Vector (Point f a)

basicUnsafeIndexM :: Vector (Point f a) -> Int -> Box (Point f a)

basicUnsafeCopy :: Mutable Vector s (Point f a) -> Vector (Point f a) -> ST s ()

elemseq :: Vector (Point f a) -> Point f a -> b -> b

(IsoUnbox a b, Unbox b) => Vector Vector (As a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (As a b) -> ST s (Vector (As a b))

basicUnsafeThaw :: Vector (As a b) -> ST s (Mutable Vector s (As a b))

basicLength :: Vector (As a b) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (As a b) -> Vector (As a b)

basicUnsafeIndexM :: Vector (As a b) -> Int -> Box (As a b)

basicUnsafeCopy :: Mutable Vector s (As a b) -> Vector (As a b) -> ST s ()

elemseq :: Vector (As a b) -> As a b -> b0 -> b0

(Unbox a, Unbox b) => Vector Vector (a, b) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (a, b) -> ST s (Vector (a, b))

basicUnsafeThaw :: Vector (a, b) -> ST s (Mutable Vector s (a, b))

basicLength :: Vector (a, b) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (a, b) -> Vector (a, b)

basicUnsafeIndexM :: Vector (a, b) -> Int -> Box (a, b)

basicUnsafeCopy :: Mutable Vector s (a, b) -> Vector (a, b) -> ST s ()

elemseq :: Vector (a, b) -> (a, b) -> b0 -> b0

Unbox a => Vector Vector (Const a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Const a b) -> ST s (Vector (Const a b))

basicUnsafeThaw :: Vector (Const a b) -> ST s (Mutable Vector s (Const a b))

basicLength :: Vector (Const a b) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Const a b) -> Vector (Const a b)

basicUnsafeIndexM :: Vector (Const a b) -> Int -> Box (Const a b)

basicUnsafeCopy :: Mutable Vector s (Const a b) -> Vector (Const a b) -> ST s ()

elemseq :: Vector (Const a b) -> Const a b -> b0 -> b0

Unbox (f a) => Vector Vector (Alt f a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Alt f a) -> ST s (Vector (Alt f a))

basicUnsafeThaw :: Vector (Alt f a) -> ST s (Mutable Vector s (Alt f a))

basicLength :: Vector (Alt f a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Alt f a) -> Vector (Alt f a)

basicUnsafeIndexM :: Vector (Alt f a) -> Int -> Box (Alt f a)

basicUnsafeCopy :: Mutable Vector s (Alt f a) -> Vector (Alt f a) -> ST s ()

elemseq :: Vector (Alt f a) -> Alt f a -> b -> b

(Dim n, Unbox a) => Vector Vector (V n a) 
Instance details

Defined in Linear.V

Methods

basicUnsafeFreeze :: Mutable Vector s (V n a) -> ST s (Vector (V n a))

basicUnsafeThaw :: Vector (V n a) -> ST s (Mutable Vector s (V n a))

basicLength :: Vector (V n a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V n a) -> Vector (V n a)

basicUnsafeIndexM :: Vector (V n a) -> Int -> Box (V n a)

basicUnsafeCopy :: Mutable Vector s (V n a) -> Vector (V n a) -> ST s ()

elemseq :: Vector (V n a) -> V n a -> b -> b

(Unbox a, Unbox b, Unbox c) => Vector Vector (a, b, c) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (a, b, c) -> ST s (Vector (a, b, c))

basicUnsafeThaw :: Vector (a, b, c) -> ST s (Mutable Vector s (a, b, c))

basicLength :: Vector (a, b, c) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (a, b, c) -> Vector (a, b, c)

basicUnsafeIndexM :: Vector (a, b, c) -> Int -> Box (a, b, c)

basicUnsafeCopy :: Mutable Vector s (a, b, c) -> Vector (a, b, c) -> ST s ()

elemseq :: Vector (a, b, c) -> (a, b, c) -> b0 -> b0

(Unbox a, Unbox b, Unbox c, Unbox d) => Vector Vector (a, b, c, d) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (a, b, c, d) -> ST s (Vector (a, b, c, d))

basicUnsafeThaw :: Vector (a, b, c, d) -> ST s (Mutable Vector s (a, b, c, d))

basicLength :: Vector (a, b, c, d) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (a, b, c, d) -> Vector (a, b, c, d)

basicUnsafeIndexM :: Vector (a, b, c, d) -> Int -> Box (a, b, c, d)

basicUnsafeCopy :: Mutable Vector s (a, b, c, d) -> Vector (a, b, c, d) -> ST s ()

elemseq :: Vector (a, b, c, d) -> (a, b, c, d) -> b0 -> b0

Unbox (f (g a)) => Vector Vector (Compose f g a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Compose f g a) -> ST s (Vector (Compose f g a))

basicUnsafeThaw :: Vector (Compose f g a) -> ST s (Mutable Vector s (Compose f g a))

basicLength :: Vector (Compose f g a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Compose f g a) -> Vector (Compose f g a)

basicUnsafeIndexM :: Vector (Compose f g a) -> Int -> Box (Compose f g a)

basicUnsafeCopy :: Mutable Vector s (Compose f g a) -> Vector (Compose f g a) -> ST s ()

elemseq :: Vector (Compose f g a) -> Compose f g a -> b -> b

(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => Vector Vector (a, b, c, d, e) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (a, b, c, d, e) -> ST s (Vector (a, b, c, d, e))

basicUnsafeThaw :: Vector (a, b, c, d, e) -> ST s (Mutable Vector s (a, b, c, d, e))

basicLength :: Vector (a, b, c, d, e) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (a, b, c, d, e) -> Vector (a, b, c, d, e)

basicUnsafeIndexM :: Vector (a, b, c, d, e) -> Int -> Box (a, b, c, d, e)

basicUnsafeCopy :: Mutable Vector s (a, b, c, d, e) -> Vector (a, b, c, d, e) -> ST s ()

elemseq :: Vector (a, b, c, d, e) -> (a, b, c, d, e) -> b0 -> b0

(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => Vector Vector (a, b, c, d, e, f) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (a, b, c, d, e, f) -> ST s (Vector (a, b, c, d, e, f))

basicUnsafeThaw :: Vector (a, b, c, d, e, f) -> ST s (Mutable Vector s (a, b, c, d, e, f))

basicLength :: Vector (a, b, c, d, e, f) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (a, b, c, d, e, f) -> Vector (a, b, c, d, e, f)

basicUnsafeIndexM :: Vector (a, b, c, d, e, f) -> Int -> Box (a, b, c, d, e, f)

basicUnsafeCopy :: Mutable Vector s (a, b, c, d, e, f) -> Vector (a, b, c, d, e, f) -> ST s ()

elemseq :: Vector (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> b0 -> b0

(Data a, Unbox a) => Data (Vector a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Vector a -> c (Vector a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Vector a)

toConstr :: Vector a -> Constr

dataTypeOf :: Vector a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Vector a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Vector a))

gmapT :: (forall b. Data b => b -> b) -> Vector a -> Vector a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Vector a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Vector a -> r

gmapQ :: (forall d. Data d => d -> u) -> Vector a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Vector a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Vector a -> m (Vector a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Vector a -> m (Vector a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Vector a -> m (Vector a)

NFData (Vector a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

rnf :: Vector a -> ()

Unbox a => Ixed (Vector a) 
Instance details

Defined in Control.Lens.At

Methods

ix :: Index (Vector a) -> Traversal' (Vector a) (IxValue (Vector a))

Unbox a => Wrapped (Vector a) 
Instance details

Defined in Control.Lens.Wrapped

Associated Types

type Unwrapped (Vector a) 
Instance details

Defined in Control.Lens.Wrapped

type Unwrapped (Vector a) = [a]

Methods

_Wrapped' :: Iso' (Vector a) (Unwrapped (Vector a))

(Unbox a, t ~ Vector a') => Rewrapped (Vector a) t 
Instance details

Defined in Control.Lens.Wrapped

type Mutable Vector 
Instance details

Defined in Data.Vector.Unboxed.Base

type Mutable Vector = MVector
newtype Vector All 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector All = V_All (Vector Bool)
newtype Vector Any 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Any = V_Any (Vector Bool)
newtype Vector Int16 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Int16 = V_Int16 (Vector Int16)
newtype Vector Int32 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Int32 = V_Int32 (Vector Int32)
newtype Vector Int64 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Int64 = V_Int64 (Vector Int64)
newtype Vector Int8 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Int8 = V_Int8 (Vector Int8)
newtype Vector Word16 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Word16 = V_Word16 (Vector Word16)
newtype Vector Word32 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Word32 = V_Word32 (Vector Word32)
newtype Vector Word64 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Word64 = V_Word64 (Vector Word64)
newtype Vector Word8 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Word8 = V_Word8 (Vector Word8)
newtype Vector () 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector () = V_Unit Int
newtype Vector Bool 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Bool = V_Bool (Vector Word8)
newtype Vector Char 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Char = V_Char (Vector Char)
newtype Vector Double 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Double = V_Double (Vector Double)
newtype Vector Float 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Float = V_Float (Vector Float)
newtype Vector Int 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Int = V_Int (Vector Int)
newtype Vector Word 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector Word = V_Word (Vector Word)
type Item (Vector e) 
Instance details

Defined in Data.Vector.Unboxed

type Item (Vector e) = e
type Index (Vector a) 
Instance details

Defined in Control.Lens.At

type Index (Vector a) = Int
type IxValue (Vector a) 
Instance details

Defined in Control.Lens.At

type IxValue (Vector a) = a
type Unwrapped (Vector a) 
Instance details

Defined in Control.Lens.Wrapped

type Unwrapped (Vector a) = [a]
newtype Vector (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Complex a) = V_Complex (Vector (a, a))
newtype Vector (Identity a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Identity a) = V_Identity (Vector a)
newtype Vector (Down a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Down a) = V_Down (Vector a)
newtype Vector (First a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (First a) = V_First (Vector a)
newtype Vector (Last a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Last a) = V_Last (Vector a)
newtype Vector (Max a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Max a) = V_Max (Vector a)
newtype Vector (Min a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Min a) = V_Min (Vector a)
newtype Vector (WrappedMonoid a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (WrappedMonoid a) = V_WrappedMonoid (Vector a)
newtype Vector (Dual a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Dual a) = V_Dual (Vector a)
newtype Vector (Product a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Product a) = V_Product (Vector a)
newtype Vector (Sum a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Sum a) = V_Sum (Vector a)
data Vector (Plucker a) 
Instance details

Defined in Linear.Plucker

data Vector (Plucker a) = V_Plucker !Int (Vector a)
data Vector (Quaternion a) 
Instance details

Defined in Linear.Quaternion

data Vector (Quaternion a) = V_Quaternion !Int (Vector a)
newtype Vector (V0 a) 
Instance details

Defined in Linear.V0

newtype Vector (V0 a) = V_V0 Int
newtype Vector (V1 a) 
Instance details

Defined in Linear.V1

newtype Vector (V1 a) = V_V1 (Vector a)
data Vector (V2 a) 
Instance details

Defined in Linear.V2

data Vector (V2 a) = V_V2 !Int !(Vector a)
data Vector (V3 a) 
Instance details

Defined in Linear.V3

data Vector (V3 a) = V_V3 !Int !(Vector a)
data Vector (V4 a) 
Instance details

Defined in Linear.V4

data Vector (V4 a) = V_V4 !Int !(Vector a)
data Vector (V2 a) Source # 
Instance details

Defined in SDL.Internal.Vect

data Vector (V2 a) = V_V2 !Int !(Vector a)
data Vector (V3 a) Source # 
Instance details

Defined in SDL.Internal.Vect

data Vector (V3 a) = V_V3 !Int !(Vector a)
data Vector (V4 a) Source # 
Instance details

Defined in SDL.Internal.Vect

data Vector (V4 a) = V_V4 !Int !(Vector a)
newtype Vector (Rectangle a) Source # 
Instance details

Defined in SDL.Video.Renderer

newtype Vector (Rectangle a) = V_Rectangle (Vector (Point V2 a, V2 a))
newtype Vector (UnboxViaPrim a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (UnboxViaPrim a) = V_UnboxViaPrim (Vector a)
newtype Vector (Arg a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Arg a b) = V_Arg (Vector (a, b))
newtype Vector (Point f a) 
Instance details

Defined in Linear.Affine

newtype Vector (Point f a) = V_P (Vector (f a))
data Vector (Point f a) Source # 
Instance details

Defined in SDL.Internal.Vect

data Vector (Point f a) = V_P !(Vector (f a))
newtype Vector (As a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (As a b) = V_UnboxAs (Vector b)
data Vector (a, b) 
Instance details

Defined in Data.Vector.Unboxed.Base

data Vector (a, b) = V_2 !Int !(Vector a) !(Vector b)
newtype Vector (Const a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Const a b) = V_Const (Vector a)
newtype Vector (Alt f a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Alt f a) = V_Alt (Vector (f a))
data Vector (V n a) 
Instance details

Defined in Linear.V

data Vector (V n a) = V_VN !Int !(Vector a)
data Vector (a, b, c) 
Instance details

Defined in Data.Vector.Unboxed.Base

data Vector (a, b, c) = V_3 !Int !(Vector a) !(Vector b) !(Vector c)
data Vector (a, b, c, d) 
Instance details

Defined in Data.Vector.Unboxed.Base

data Vector (a, b, c, d) = V_4 !Int !(Vector a) !(Vector b) !(Vector c) !(Vector d)
newtype Vector (Compose f g a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Compose f g a) = V_Compose (Vector (f (g a)))
data Vector (a, b, c, d, e) 
Instance details

Defined in Data.Vector.Unboxed.Base

data Vector (a, b, c, d, e) = V_5 !Int !(Vector a) !(Vector b) !(Vector c) !(Vector d) !(Vector e)
data Vector (a, b, c, d, e, f) 
Instance details

Defined in Data.Vector.Unboxed.Base

data Vector (a, b, c, d, e, f) = V_6 !Int !(Vector a) !(Vector b) !(Vector c) !(Vector d) !(Vector e) !(Vector f)

newtype Point (f :: Type -> Type) a #

Constructors

P (f a) 

Instances

Instances details
Generic1 (Point f :: Type -> Type) 
Instance details

Defined in Linear.Affine

Associated Types

type Rep1 (Point f :: Type -> Type) 
Instance details

Defined in Linear.Affine

type Rep1 (Point f :: Type -> Type) = D1 ('MetaData "Point" "Linear.Affine" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "P" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 f)))

Methods

from1 :: Point f a -> Rep1 (Point f) a

to1 :: Rep1 (Point f) a -> Point f a

Unbox (f a) => Vector Vector (Point f a) 
Instance details

Defined in Linear.Affine

Methods

basicUnsafeFreeze :: Mutable Vector s (Point f a) -> ST s (Vector (Point f a))

basicUnsafeThaw :: Vector (Point f a) -> ST s (Mutable Vector s (Point f a))

basicLength :: Vector (Point f a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Point f a) -> Vector (Point f a)

basicUnsafeIndexM :: Vector (Point f a) -> Int -> Box (Point f a)

basicUnsafeCopy :: Mutable Vector s (Point f a) -> Vector (Point f a) -> ST s ()

elemseq :: Vector (Point f a) -> Point f a -> b -> b

Unbox (f a) => MVector MVector (Point f a) 
Instance details

Defined in Linear.Affine

Methods

basicLength :: MVector s (Point f a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Point f a) -> MVector s (Point f a)

basicOverlaps :: MVector s (Point f a) -> MVector s (Point f a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Point f a))

basicInitialize :: MVector s (Point f a) -> ST s ()

basicUnsafeReplicate :: Int -> Point f a -> ST s (MVector s (Point f a))

basicUnsafeRead :: MVector s (Point f a) -> Int -> ST s (Point f a)

basicUnsafeWrite :: MVector s (Point f a) -> Int -> Point f a -> ST s ()

basicClear :: MVector s (Point f a) -> ST s ()

basicSet :: MVector s (Point f a) -> Point f a -> ST s ()

basicUnsafeCopy :: MVector s (Point f a) -> MVector s (Point f a) -> ST s ()

basicUnsafeMove :: MVector s (Point f a) -> MVector s (Point f a) -> ST s ()

basicUnsafeGrow :: MVector s (Point f a) -> Int -> ST s (MVector s (Point f a))

Representable f => Representable (Point f) 
Instance details

Defined in Linear.Affine

Associated Types

type Rep (Point f) 
Instance details

Defined in Linear.Affine

type Rep (Point f) = Rep f

Methods

tabulate :: (Rep (Point f) -> a) -> Point f a

index :: Point f a -> Rep (Point f) -> a

Foldable f => Foldable (Point f) 
Instance details

Defined in Linear.Affine

Methods

fold :: Monoid m => Point f m -> m

foldMap :: Monoid m => (a -> m) -> Point f a -> m

foldMap' :: Monoid m => (a -> m) -> Point f a -> m

foldr :: (a -> b -> b) -> b -> Point f a -> b

foldr' :: (a -> b -> b) -> b -> Point f a -> b

foldl :: (b -> a -> b) -> b -> Point f a -> b

foldl' :: (b -> a -> b) -> b -> Point f a -> b

foldr1 :: (a -> a -> a) -> Point f a -> a

foldl1 :: (a -> a -> a) -> Point f a -> a

toList :: Point f a -> [a]

null :: Point f a -> Bool

length :: Point f a -> Int

elem :: Eq a => a -> Point f a -> Bool

maximum :: Ord a => Point f a -> a

minimum :: Ord a => Point f a -> a

sum :: Num a => Point f a -> a

product :: Num a => Point f a -> a

Eq1 f => Eq1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftEq :: (a -> b -> Bool) -> Point f a -> Point f b -> Bool

Ord1 f => Ord1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftCompare :: (a -> b -> Ordering) -> Point f a -> Point f b -> Ordering

Read1 f => Read1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Point f a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Point f a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Point f a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Point f a]

Show1 f => Show1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Point f a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Point f a] -> ShowS

Traversable f => Traversable (Point f) 
Instance details

Defined in Linear.Affine

Methods

traverse :: Applicative f0 => (a -> f0 b) -> Point f a -> f0 (Point f b)

sequenceA :: Applicative f0 => Point f (f0 a) -> f0 (Point f a)

mapM :: Monad m => (a -> m b) -> Point f a -> m (Point f b)

sequence :: Monad m => Point f (m a) -> m (Point f a)

Applicative f => Applicative (Point f) 
Instance details

Defined in Linear.Affine

Methods

pure :: a -> Point f a

(<*>) :: Point f (a -> b) -> Point f a -> Point f b

liftA2 :: (a -> b -> c) -> Point f a -> Point f b -> Point f c

(*>) :: Point f a -> Point f b -> Point f b

(<*) :: Point f a -> Point f b -> Point f a

Functor f => Functor (Point f) 
Instance details

Defined in Linear.Affine

Methods

fmap :: (a -> b) -> Point f a -> Point f b

(<$) :: a -> Point f b -> Point f a

Monad f => Monad (Point f) 
Instance details

Defined in Linear.Affine

Methods

(>>=) :: Point f a -> (a -> Point f b) -> Point f b

(>>) :: Point f a -> Point f b -> Point f b

return :: a -> Point f a

Serial1 f => Serial1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

serializeWith :: MonadPut m => (a -> m ()) -> Point f a -> m ()

deserializeWith :: MonadGet m => m a -> m (Point f a)

Distributive f => Distributive (Point f) 
Instance details

Defined in Linear.Affine

Methods

distribute :: Functor f0 => f0 (Point f a) -> Point f (f0 a)

collect :: Functor f0 => (a -> Point f b) -> f0 a -> Point f (f0 b)

distributeM :: Monad m => m (Point f a) -> Point f (m a)

collectM :: Monad m => (a -> Point f b) -> m a -> Point f (m b)

Hashable1 f => Hashable1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> Point f a -> Int

Additive f => Affine (Point f) 
Instance details

Defined in Linear.Affine

Associated Types

type Diff (Point f) 
Instance details

Defined in Linear.Affine

type Diff (Point f) = f

Methods

(.-.) :: Num a => Point f a -> Point f a -> Diff (Point f) a #

(.+^) :: Num a => Point f a -> Diff (Point f) a -> Point f a #

(.-^) :: Num a => Point f a -> Diff (Point f) a -> Point f a #

Metric f => Metric (Point f) 
Instance details

Defined in Linear.Affine

Methods

dot :: Num a => Point f a -> Point f a -> a #

quadrance :: Num a => Point f a -> a #

qd :: Num a => Point f a -> Point f a -> a #

distance :: Floating a => Point f a -> Point f a -> a #

norm :: Floating a => Point f a -> a #

signorm :: Floating a => Point f a -> Point f a #

Finite f => Finite (Point f) 
Instance details

Defined in Linear.Affine

Associated Types

type Size (Point f) 
Instance details

Defined in Linear.Affine

type Size (Point f) = Size f

Methods

toV :: Point f a -> V (Size (Point f)) a

fromV :: V (Size (Point f)) a -> Point f a

R1 f => R1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_x :: Lens' (Point f a) a #

R2 f => R2 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_y :: Lens' (Point f a) a #

_xy :: Lens' (Point f a) (V2 a) #

R3 f => R3 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_z :: Lens' (Point f a) a #

_xyz :: Lens' (Point f a) (V3 a) #

R4 f => R4 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_w :: Lens' (Point f a) a #

_xyzw :: Lens' (Point f a) (V4 a) #

Additive f => Additive (Point f) 
Instance details

Defined in Linear.Affine

Methods

zero :: Num a => Point f a #

(^+^) :: Num a => Point f a -> Point f a -> Point f a #

(^-^) :: Num a => Point f a -> Point f a -> Point f a #

lerp :: Num a => a -> Point f a -> Point f a -> Point f a #

liftU2 :: (a -> a -> a) -> Point f a -> Point f a -> Point f a #

liftI2 :: (a -> b -> c) -> Point f a -> Point f b -> Point f c #

Apply f => Apply (Point f) 
Instance details

Defined in Linear.Affine

Methods

(<.>) :: Point f (a -> b) -> Point f a -> Point f b

(.>) :: Point f a -> Point f b -> Point f b

(<.) :: Point f a -> Point f b -> Point f a

liftF2 :: (a -> b -> c) -> Point f a -> Point f b -> Point f c

Bind f => Bind (Point f) 
Instance details

Defined in Linear.Affine

Methods

(>>-) :: Point f a -> (a -> Point f b) -> Point f b

join :: Point f (Point f a) -> Point f a

(Typeable f, Typeable a, Data (f a)) => Data (Point f a) 
Instance details

Defined in Linear.Affine

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Point f a -> c (Point f a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Point f a)

toConstr :: Point f a -> Constr

dataTypeOf :: Point f a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Point f a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Point f a))

gmapT :: (forall b. Data b => b -> b) -> Point f a -> Point f a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Point f a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Point f a -> r

gmapQ :: (forall d. Data d => d -> u) -> Point f a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Point f a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Point f a -> m (Point f a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Point f a -> m (Point f a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Point f a -> m (Point f a)

Storable (f a) => Storable (Point f a) 
Instance details

Defined in Linear.Affine

Methods

sizeOf :: Point f a -> Int

alignment :: Point f a -> Int

peekElemOff :: Ptr (Point f a) -> Int -> IO (Point f a)

pokeElemOff :: Ptr (Point f a) -> Int -> Point f a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (Point f a)

pokeByteOff :: Ptr b -> Int -> Point f a -> IO ()

peek :: Ptr (Point f a) -> IO (Point f a)

poke :: Ptr (Point f a) -> Point f a -> IO ()

Monoid (f a) => Monoid (Point f a) 
Instance details

Defined in Linear.Affine

Methods

mempty :: Point f a

mappend :: Point f a -> Point f a -> Point f a

mconcat :: [Point f a] -> Point f a

Semigroup (f a) => Semigroup (Point f a) 
Instance details

Defined in Linear.Affine

Methods

(<>) :: Point f a -> Point f a -> Point f a

sconcat :: NonEmpty (Point f a) -> Point f a

stimes :: Integral b => b -> Point f a -> Point f a

Generic (Point f a) 
Instance details

Defined in Linear.Affine

Associated Types

type Rep (Point f a) 
Instance details

Defined in Linear.Affine

type Rep (Point f a) = D1 ('MetaData "Point" "Linear.Affine" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "P" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Point f a -> Rep (Point f a) x

to :: Rep (Point f a) x -> Point f a

Ix (f a) => Ix (Point f a) 
Instance details

Defined in Linear.Affine

Methods

range :: (Point f a, Point f a) -> [Point f a]

index :: (Point f a, Point f a) -> Point f a -> Int

unsafeIndex :: (Point f a, Point f a) -> Point f a -> Int

inRange :: (Point f a, Point f a) -> Point f a -> Bool

rangeSize :: (Point f a, Point f a) -> Int

unsafeRangeSize :: (Point f a, Point f a) -> Int

Num (f a) => Num (Point f a) 
Instance details

Defined in Linear.Affine

Methods

(+) :: Point f a -> Point f a -> Point f a

(-) :: Point f a -> Point f a -> Point f a

(*) :: Point f a -> Point f a -> Point f a

negate :: Point f a -> Point f a

abs :: Point f a -> Point f a

signum :: Point f a -> Point f a

fromInteger :: Integer -> Point f a

Read (f a) => Read (Point f a) 
Instance details

Defined in Linear.Affine

Methods

readsPrec :: Int -> ReadS (Point f a)

readList :: ReadS [Point f a]

readPrec :: ReadPrec (Point f a)

readListPrec :: ReadPrec [Point f a]

Fractional (f a) => Fractional (Point f a) 
Instance details

Defined in Linear.Affine

Methods

(/) :: Point f a -> Point f a -> Point f a

recip :: Point f a -> Point f a

fromRational :: Rational -> Point f a

Show (f a) => Show (Point f a) 
Instance details

Defined in Linear.Affine

Methods

showsPrec :: Int -> Point f a -> ShowS

show :: Point f a -> String

showList :: [Point f a] -> ShowS

Binary (f a) => Binary (Point f a) 
Instance details

Defined in Linear.Affine

Methods

put :: Point f a -> Put

get :: Get (Point f a)

putList :: [Point f a] -> Put

Serial (f a) => Serial (Point f a) 
Instance details

Defined in Linear.Affine

Methods

serialize :: MonadPut m => Point f a -> m ()

deserialize :: MonadGet m => m (Point f a)

Serialize (f a) => Serialize (Point f a) 
Instance details

Defined in Linear.Affine

Methods

put :: Putter (Point f a)

get :: Get (Point f a)

NFData (f a) => NFData (Point f a) 
Instance details

Defined in Linear.Affine

Methods

rnf :: Point f a -> ()

Eq (f a) => Eq (Point f a) 
Instance details

Defined in Linear.Affine

Methods

(==) :: Point f a -> Point f a -> Bool

(/=) :: Point f a -> Point f a -> Bool

Ord (f a) => Ord (Point f a) 
Instance details

Defined in Linear.Affine

Methods

compare :: Point f a -> Point f a -> Ordering

(<) :: Point f a -> Point f a -> Bool

(<=) :: Point f a -> Point f a -> Bool

(>) :: Point f a -> Point f a -> Bool

(>=) :: Point f a -> Point f a -> Bool

max :: Point f a -> Point f a -> Point f a

min :: Point f a -> Point f a -> Point f a

Hashable (f a) => Hashable (Point f a) 
Instance details

Defined in Linear.Affine

Methods

hashWithSalt :: Int -> Point f a -> Int

hash :: Point f a -> Int

Ixed (f a) => Ixed (Point f a) 
Instance details

Defined in Linear.Affine

Methods

ix :: Index (Point f a) -> Traversal' (Point f a) (IxValue (Point f a))

Wrapped (Point f a) 
Instance details

Defined in Linear.Affine

Associated Types

type Unwrapped (Point f a) 
Instance details

Defined in Linear.Affine

type Unwrapped (Point f a) = f a

Methods

_Wrapped' :: Iso' (Point f a) (Unwrapped (Point f a))

Epsilon (f a) => Epsilon (Point f a) 
Instance details

Defined in Linear.Affine

Methods

nearZero :: Point f a -> Bool #

Random (f a) => Random (Point f a) 
Instance details

Defined in Linear.Affine

Methods

randomR :: RandomGen g => (Point f a, Point f a) -> g -> (Point f a, g)

random :: RandomGen g => g -> (Point f a, g)

randomRs :: RandomGen g => (Point f a, Point f a) -> g -> [Point f a]

randoms :: RandomGen g => g -> [Point f a]

Unbox (f a) => Unbox (Point f a) 
Instance details

Defined in Linear.Affine

t ~ Point g b => Rewrapped (Point f a) t 
Instance details

Defined in Linear.Affine

Traversable f => Each (Point f a) (Point f b) a b 
Instance details

Defined in Linear.Affine

Methods

each :: Traversal (Point f a) (Point f b) a b

type Rep1 (Point f :: Type -> Type) 
Instance details

Defined in Linear.Affine

type Rep1 (Point f :: Type -> Type) = D1 ('MetaData "Point" "Linear.Affine" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "P" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 f)))
newtype MVector s (Point f a) 
Instance details

Defined in Linear.Affine

newtype MVector s (Point f a) = MV_P (MVector s (f a))
type Rep (Point f) 
Instance details

Defined in Linear.Affine

type Rep (Point f) = Rep f
type Diff (Point f) 
Instance details

Defined in Linear.Affine

type Diff (Point f) = f
type Size (Point f) 
Instance details

Defined in Linear.Affine

type Size (Point f) = Size f
type Rep (Point f a) 
Instance details

Defined in Linear.Affine

type Rep (Point f a) = D1 ('MetaData "Point" "Linear.Affine" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "P" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))
type Index (Point f a) 
Instance details

Defined in Linear.Affine

type Index (Point f a) = Index (f a)
type IxValue (Point f a) 
Instance details

Defined in Linear.Affine

type IxValue (Point f a) = IxValue (f a)
type Unwrapped (Point f a) 
Instance details

Defined in Linear.Affine

type Unwrapped (Point f a) = f a
newtype Vector (Point f a) 
Instance details

Defined in Linear.Affine

newtype Vector (Point f a) = V_P (Vector (f a))

data V2 a #

Constructors

V2 !a !a 

Instances

Instances details
Representable V2 
Instance details

Defined in Linear.V2

Associated Types

type Rep V2 
Instance details

Defined in Linear.V2

type Rep V2 = E V2

Methods

tabulate :: (Rep V2 -> a) -> V2 a

index :: V2 a -> Rep V2 -> a

MonadFix V2 
Instance details

Defined in Linear.V2

Methods

mfix :: (a -> V2 a) -> V2 a

MonadZip V2 
Instance details

Defined in Linear.V2

Methods

mzip :: V2 a -> V2 b -> V2 (a, b)

mzipWith :: (a -> b -> c) -> V2 a -> V2 b -> V2 c

munzip :: V2 (a, b) -> (V2 a, V2 b)

Foldable V2 
Instance details

Defined in Linear.V2

Methods

fold :: Monoid m => V2 m -> m

foldMap :: Monoid m => (a -> m) -> V2 a -> m

foldMap' :: Monoid m => (a -> m) -> V2 a -> m

foldr :: (a -> b -> b) -> b -> V2 a -> b

foldr' :: (a -> b -> b) -> b -> V2 a -> b

foldl :: (b -> a -> b) -> b -> V2 a -> b

foldl' :: (b -> a -> b) -> b -> V2 a -> b

foldr1 :: (a -> a -> a) -> V2 a -> a

foldl1 :: (a -> a -> a) -> V2 a -> a

toList :: V2 a -> [a]

null :: V2 a -> Bool

length :: V2 a -> Int

elem :: Eq a => a -> V2 a -> Bool

maximum :: Ord a => V2 a -> a

minimum :: Ord a => V2 a -> a

sum :: Num a => V2 a -> a

product :: Num a => V2 a -> a

Foldable1 V2 
Instance details

Defined in Linear.V2

Methods

fold1 :: Semigroup m => V2 m -> m

foldMap1 :: Semigroup m => (a -> m) -> V2 a -> m

foldMap1' :: Semigroup m => (a -> m) -> V2 a -> m

toNonEmpty :: V2 a -> NonEmpty a

maximum :: Ord a => V2 a -> a

minimum :: Ord a => V2 a -> a

head :: V2 a -> a

last :: V2 a -> a

foldrMap1 :: (a -> b) -> (a -> b -> b) -> V2 a -> b

foldlMap1' :: (a -> b) -> (b -> a -> b) -> V2 a -> b

foldlMap1 :: (a -> b) -> (b -> a -> b) -> V2 a -> b

foldrMap1' :: (a -> b) -> (a -> b -> b) -> V2 a -> b

Eq1 V2 
Instance details

Defined in Linear.V2

Methods

liftEq :: (a -> b -> Bool) -> V2 a -> V2 b -> Bool

Ord1 V2 
Instance details

Defined in Linear.V2

Methods

liftCompare :: (a -> b -> Ordering) -> V2 a -> V2 b -> Ordering

Read1 V2 
Instance details

Defined in Linear.V2

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (V2 a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [V2 a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (V2 a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [V2 a]

Show1 V2 
Instance details

Defined in Linear.V2

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> V2 a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [V2 a] -> ShowS

Traversable V2 
Instance details

Defined in Linear.V2

Methods

traverse :: Applicative f => (a -> f b) -> V2 a -> f (V2 b)

sequenceA :: Applicative f => V2 (f a) -> f (V2 a)

mapM :: Monad m => (a -> m b) -> V2 a -> m (V2 b)

sequence :: Monad m => V2 (m a) -> m (V2 a)

Applicative V2 
Instance details

Defined in Linear.V2

Methods

pure :: a -> V2 a

(<*>) :: V2 (a -> b) -> V2 a -> V2 b

liftA2 :: (a -> b -> c) -> V2 a -> V2 b -> V2 c

(*>) :: V2 a -> V2 b -> V2 b

(<*) :: V2 a -> V2 b -> V2 a

Functor V2 
Instance details

Defined in Linear.V2

Methods

fmap :: (a -> b) -> V2 a -> V2 b

(<$) :: a -> V2 b -> V2 a

Monad V2 
Instance details

Defined in Linear.V2

Methods

(>>=) :: V2 a -> (a -> V2 b) -> V2 b

(>>) :: V2 a -> V2 b -> V2 b

return :: a -> V2 a

Serial1 V2 
Instance details

Defined in Linear.V2

Methods

serializeWith :: MonadPut m => (a -> m ()) -> V2 a -> m ()

deserializeWith :: MonadGet m => m a -> m (V2 a)

Distributive V2 
Instance details

Defined in Linear.V2

Methods

distribute :: Functor f => f (V2 a) -> V2 (f a)

collect :: Functor f => (a -> V2 b) -> f a -> V2 (f b)

distributeM :: Monad m => m (V2 a) -> V2 (m a)

collectM :: Monad m => (a -> V2 b) -> m a -> V2 (m b)

Hashable1 V2 
Instance details

Defined in Linear.V2

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> V2 a -> Int

Affine V2 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V2 
Instance details

Defined in Linear.Affine

type Diff V2 = V2

Methods

(.-.) :: Num a => V2 a -> V2 a -> Diff V2 a #

(.+^) :: Num a => V2 a -> Diff V2 a -> V2 a #

(.-^) :: Num a => V2 a -> Diff V2 a -> V2 a #

Metric V2 
Instance details

Defined in Linear.V2

Methods

dot :: Num a => V2 a -> V2 a -> a #

quadrance :: Num a => V2 a -> a #

qd :: Num a => V2 a -> V2 a -> a #

distance :: Floating a => V2 a -> V2 a -> a #

norm :: Floating a => V2 a -> a #

signorm :: Floating a => V2 a -> V2 a #

Trace V2 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V2 (V2 a) -> a #

diagonal :: V2 (V2 a) -> V2 a #

Finite V2 
Instance details

Defined in Linear.V2

Associated Types

type Size V2 
Instance details

Defined in Linear.V2

type Size V2 = 2

Methods

toV :: V2 a -> V (Size V2) a

fromV :: V (Size V2) a -> V2 a

R1 V2 
Instance details

Defined in Linear.V2

Methods

_x :: Lens' (V2 a) a #

R2 V2 
Instance details

Defined in Linear.V2

Methods

_y :: Lens' (V2 a) a #

_xy :: Lens' (V2 a) (V2 a) #

Additive V2 
Instance details

Defined in Linear.V2

Methods

zero :: Num a => V2 a #

(^+^) :: Num a => V2 a -> V2 a -> V2 a #

(^-^) :: Num a => V2 a -> V2 a -> V2 a #

lerp :: Num a => a -> V2 a -> V2 a -> V2 a #

liftU2 :: (a -> a -> a) -> V2 a -> V2 a -> V2 a #

liftI2 :: (a -> b -> c) -> V2 a -> V2 b -> V2 c #

Apply V2 
Instance details

Defined in Linear.V2

Methods

(<.>) :: V2 (a -> b) -> V2 a -> V2 b

(.>) :: V2 a -> V2 b -> V2 b

(<.) :: V2 a -> V2 b -> V2 a

liftF2 :: (a -> b -> c) -> V2 a -> V2 b -> V2 c

Bind V2 
Instance details

Defined in Linear.V2

Methods

(>>-) :: V2 a -> (a -> V2 b) -> V2 b

join :: V2 (V2 a) -> V2 a

Traversable1 V2 
Instance details

Defined in Linear.V2

Methods

traverse1 :: Apply f => (a -> f b) -> V2 a -> f (V2 b)

sequence1 :: Apply f => V2 (f b) -> f (V2 b)

Generic1 V2 
Instance details

Defined in Linear.V2

Associated Types

type Rep1 V2 
Instance details

Defined in Linear.V2

type Rep1 V2 = D1 ('MetaData "V2" "Linear.V2" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1))

Methods

from1 :: V2 a -> Rep1 V2 a

to1 :: Rep1 V2 a -> V2 a

Num r => Coalgebra r (E V2) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V2 -> r) -> E V2 -> E V2 -> r #

counital :: (E V2 -> r) -> r #

Lift a => Lift (V2 a :: Type) 
Instance details

Defined in Linear.V2

Methods

lift :: Quote m => V2 a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => V2 a -> Code m (V2 a)

Unbox a => Vector Vector (V2 a) 
Instance details

Defined in Linear.V2

Methods

basicUnsafeFreeze :: Mutable Vector s (V2 a) -> ST s (Vector (V2 a))

basicUnsafeThaw :: Vector (V2 a) -> ST s (Mutable Vector s (V2 a))

basicLength :: Vector (V2 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V2 a) -> Vector (V2 a)

basicUnsafeIndexM :: Vector (V2 a) -> Int -> Box (V2 a)

basicUnsafeCopy :: Mutable Vector s (V2 a) -> Vector (V2 a) -> ST s ()

elemseq :: Vector (V2 a) -> V2 a -> b -> b

Unbox a => MVector MVector (V2 a) 
Instance details

Defined in Linear.V2

Methods

basicLength :: MVector s (V2 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V2 a) -> MVector s (V2 a)

basicOverlaps :: MVector s (V2 a) -> MVector s (V2 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V2 a))

basicInitialize :: MVector s (V2 a) -> ST s ()

basicUnsafeReplicate :: Int -> V2 a -> ST s (MVector s (V2 a))

basicUnsafeRead :: MVector s (V2 a) -> Int -> ST s (V2 a)

basicUnsafeWrite :: MVector s (V2 a) -> Int -> V2 a -> ST s ()

basicClear :: MVector s (V2 a) -> ST s ()

basicSet :: MVector s (V2 a) -> V2 a -> ST s ()

basicUnsafeCopy :: MVector s (V2 a) -> MVector s (V2 a) -> ST s ()

basicUnsafeMove :: MVector s (V2 a) -> MVector s (V2 a) -> ST s ()

basicUnsafeGrow :: MVector s (V2 a) -> Int -> ST s (MVector s (V2 a))

Data a => Data (V2 a) 
Instance details

Defined in Linear.V2

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> V2 a -> c (V2 a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (V2 a)

toConstr :: V2 a -> Constr

dataTypeOf :: V2 a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (V2 a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (V2 a))

gmapT :: (forall b. Data b => b -> b) -> V2 a -> V2 a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> V2 a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> V2 a -> r

gmapQ :: (forall d. Data d => d -> u) -> V2 a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> V2 a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> V2 a -> m (V2 a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> V2 a -> m (V2 a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> V2 a -> m (V2 a)

Storable a => Storable (V2 a) 
Instance details

Defined in Linear.V2

Methods

sizeOf :: V2 a -> Int

alignment :: V2 a -> Int

peekElemOff :: Ptr (V2 a) -> Int -> IO (V2 a)

pokeElemOff :: Ptr (V2 a) -> Int -> V2 a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (V2 a)

pokeByteOff :: Ptr b -> Int -> V2 a -> IO ()

peek :: Ptr (V2 a) -> IO (V2 a)

poke :: Ptr (V2 a) -> V2 a -> IO ()

Monoid a => Monoid (V2 a) 
Instance details

Defined in Linear.V2

Methods

mempty :: V2 a

mappend :: V2 a -> V2 a -> V2 a

mconcat :: [V2 a] -> V2 a

Semigroup a => Semigroup (V2 a) 
Instance details

Defined in Linear.V2

Methods

(<>) :: V2 a -> V2 a -> V2 a

sconcat :: NonEmpty (V2 a) -> V2 a

stimes :: Integral b => b -> V2 a -> V2 a

Bounded a => Bounded (V2 a) 
Instance details

Defined in Linear.V2

Methods

minBound :: V2 a

maxBound :: V2 a

Floating a => Floating (V2 a) 
Instance details

Defined in Linear.V2

Methods

pi :: V2 a

exp :: V2 a -> V2 a

log :: V2 a -> V2 a

sqrt :: V2 a -> V2 a

(**) :: V2 a -> V2 a -> V2 a

logBase :: V2 a -> V2 a -> V2 a

sin :: V2 a -> V2 a

cos :: V2 a -> V2 a

tan :: V2 a -> V2 a

asin :: V2 a -> V2 a

acos :: V2 a -> V2 a

atan :: V2 a -> V2 a

sinh :: V2 a -> V2 a

cosh :: V2 a -> V2 a

tanh :: V2 a -> V2 a

asinh :: V2 a -> V2 a

acosh :: V2 a -> V2 a

atanh :: V2 a -> V2 a

log1p :: V2 a -> V2 a

expm1 :: V2 a -> V2 a

log1pexp :: V2 a -> V2 a

log1mexp :: V2 a -> V2 a

Generic (V2 a) 
Instance details

Defined in Linear.V2

Associated Types

type Rep (V2 a) 
Instance details

Defined in Linear.V2

type Rep (V2 a) = D1 ('MetaData "V2" "Linear.V2" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))

Methods

from :: V2 a -> Rep (V2 a) x

to :: Rep (V2 a) x -> V2 a

Ix a => Ix (V2 a) 
Instance details

Defined in Linear.V2

Methods

range :: (V2 a, V2 a) -> [V2 a]

index :: (V2 a, V2 a) -> V2 a -> Int

unsafeIndex :: (V2 a, V2 a) -> V2 a -> Int

inRange :: (V2 a, V2 a) -> V2 a -> Bool

rangeSize :: (V2 a, V2 a) -> Int

unsafeRangeSize :: (V2 a, V2 a) -> Int

Num a => Num (V2 a) 
Instance details

Defined in Linear.V2

Methods

(+) :: V2 a -> V2 a -> V2 a

(-) :: V2 a -> V2 a -> V2 a

(*) :: V2 a -> V2 a -> V2 a

negate :: V2 a -> V2 a

abs :: V2 a -> V2 a

signum :: V2 a -> V2 a

fromInteger :: Integer -> V2 a

Read a => Read (V2 a) 
Instance details

Defined in Linear.V2

Methods

readsPrec :: Int -> ReadS (V2 a)

readList :: ReadS [V2 a]

readPrec :: ReadPrec (V2 a)

readListPrec :: ReadPrec [V2 a]

Fractional a => Fractional (V2 a) 
Instance details

Defined in Linear.V2

Methods

(/) :: V2 a -> V2 a -> V2 a

recip :: V2 a -> V2 a

fromRational :: Rational -> V2 a

Show a => Show (V2 a) 
Instance details

Defined in Linear.V2

Methods

showsPrec :: Int -> V2 a -> ShowS

show :: V2 a -> String

showList :: [V2 a] -> ShowS

Binary a => Binary (V2 a) 
Instance details

Defined in Linear.V2

Methods

put :: V2 a -> Put

get :: Get (V2 a)

putList :: [V2 a] -> Put

Serial a => Serial (V2 a) 
Instance details

Defined in Linear.V2

Methods

serialize :: MonadPut m => V2 a -> m ()

deserialize :: MonadGet m => m (V2 a)

Serialize a => Serialize (V2 a) 
Instance details

Defined in Linear.V2

Methods

put :: Putter (V2 a)

get :: Get (V2 a)

NFData a => NFData (V2 a) 
Instance details

Defined in Linear.V2

Methods

rnf :: V2 a -> ()

Eq a => Eq (V2 a) 
Instance details

Defined in Linear.V2

Methods

(==) :: V2 a -> V2 a -> Bool

(/=) :: V2 a -> V2 a -> Bool

Ord a => Ord (V2 a) 
Instance details

Defined in Linear.V2

Methods

compare :: V2 a -> V2 a -> Ordering

(<) :: V2 a -> V2 a -> Bool

(<=) :: V2 a -> V2 a -> Bool

(>) :: V2 a -> V2 a -> Bool

(>=) :: V2 a -> V2 a -> Bool

max :: V2 a -> V2 a -> V2 a

min :: V2 a -> V2 a -> V2 a

Hashable a => Hashable (V2 a) 
Instance details

Defined in Linear.V2

Methods

hashWithSalt :: Int -> V2 a -> Int

hash :: V2 a -> Int

Ixed (V2 a) 
Instance details

Defined in Linear.V2

Methods

ix :: Index (V2 a) -> Traversal' (V2 a) (IxValue (V2 a))

Epsilon a => Epsilon (V2 a) 
Instance details

Defined in Linear.V2

Methods

nearZero :: V2 a -> Bool #

Random a => Random (V2 a) 
Instance details

Defined in Linear.V2

Methods

randomR :: RandomGen g => (V2 a, V2 a) -> g -> (V2 a, g)

random :: RandomGen g => g -> (V2 a, g)

randomRs :: RandomGen g => (V2 a, V2 a) -> g -> [V2 a]

randoms :: RandomGen g => g -> [V2 a]

Uniform a => Uniform (V2 a) 
Instance details

Defined in Linear.V2

Methods

uniformM :: StatefulGen g m => g -> m (V2 a)

UniformRange a => UniformRange (V2 a) 
Instance details

Defined in Linear.V2

Methods

uniformRM :: StatefulGen g m => (V2 a, V2 a) -> g -> m (V2 a)

Unbox a => Unbox (V2 a) 
Instance details

Defined in Linear.V2

FoldableWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

ifoldMap :: Monoid m => (E V2 -> a -> m) -> V2 a -> m

ifoldMap' :: Monoid m => (E V2 -> a -> m) -> V2 a -> m

ifoldr :: (E V2 -> a -> b -> b) -> b -> V2 a -> b

ifoldl :: (E V2 -> b -> a -> b) -> b -> V2 a -> b

ifoldr' :: (E V2 -> a -> b -> b) -> b -> V2 a -> b

ifoldl' :: (E V2 -> b -> a -> b) -> b -> V2 a -> b

FunctorWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

imap :: (E V2 -> a -> b) -> V2 a -> V2 b

TraversableWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

itraverse :: Applicative f => (E V2 -> a -> f b) -> V2 a -> f (V2 b)

Each (V2 a) (V2 b) a b 
Instance details

Defined in Linear.V2

Methods

each :: Traversal (V2 a) (V2 b) a b

Field1 (V2 a) (V2 a) a a 
Instance details

Defined in Linear.V2

Methods

_1 :: Lens (V2 a) (V2 a) a a

Field2 (V2 a) (V2 a) a a 
Instance details

Defined in Linear.V2

Methods

_2 :: Lens (V2 a) (V2 a) a a

type Rep V2 
Instance details

Defined in Linear.V2

type Rep V2 = E V2
type Diff V2 
Instance details

Defined in Linear.Affine

type Diff V2 = V2
type Size V2 
Instance details

Defined in Linear.V2

type Size V2 = 2
type Rep1 V2 
Instance details

Defined in Linear.V2

type Rep1 V2 = D1 ('MetaData "V2" "Linear.V2" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1))
data MVector s (V2 a) 
Instance details

Defined in Linear.V2

data MVector s (V2 a) = MV_V2 !Int !(MVector s a)
type Rep (V2 a) 
Instance details

Defined in Linear.V2

type Rep (V2 a) = D1 ('MetaData "V2" "Linear.V2" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))
type Index (V2 a) 
Instance details

Defined in Linear.V2

type Index (V2 a) = E V2
type IxValue (V2 a) 
Instance details

Defined in Linear.V2

type IxValue (V2 a) = a
data Vector (V2 a) 
Instance details

Defined in Linear.V2

data Vector (V2 a) = V_V2 !Int !(Vector a)

data V3 a #

Constructors

V3 !a !a !a 

Instances

Instances details
Representable V3 
Instance details

Defined in Linear.V3

Associated Types

type Rep V3 
Instance details

Defined in Linear.V3

type Rep V3 = E V3

Methods

tabulate :: (Rep V3 -> a) -> V3 a

index :: V3 a -> Rep V3 -> a

MonadFix V3 
Instance details

Defined in Linear.V3

Methods

mfix :: (a -> V3 a) -> V3 a

MonadZip V3 
Instance details

Defined in Linear.V3

Methods

mzip :: V3 a -> V3 b -> V3 (a, b)

mzipWith :: (a -> b -> c) -> V3 a -> V3 b -> V3 c

munzip :: V3 (a, b) -> (V3 a, V3 b)

Foldable V3 
Instance details

Defined in Linear.V3

Methods

fold :: Monoid m => V3 m -> m

foldMap :: Monoid m => (a -> m) -> V3 a -> m

foldMap' :: Monoid m => (a -> m) -> V3 a -> m

foldr :: (a -> b -> b) -> b -> V3 a -> b

foldr' :: (a -> b -> b) -> b -> V3 a -> b

foldl :: (b -> a -> b) -> b -> V3 a -> b

foldl' :: (b -> a -> b) -> b -> V3 a -> b

foldr1 :: (a -> a -> a) -> V3 a -> a

foldl1 :: (a -> a -> a) -> V3 a -> a

toList :: V3 a -> [a]

null :: V3 a -> Bool

length :: V3 a -> Int

elem :: Eq a => a -> V3 a -> Bool

maximum :: Ord a => V3 a -> a

minimum :: Ord a => V3 a -> a

sum :: Num a => V3 a -> a

product :: Num a => V3 a -> a

Foldable1 V3 
Instance details

Defined in Linear.V3

Methods

fold1 :: Semigroup m => V3 m -> m

foldMap1 :: Semigroup m => (a -> m) -> V3 a -> m

foldMap1' :: Semigroup m => (a -> m) -> V3 a -> m

toNonEmpty :: V3 a -> NonEmpty a

maximum :: Ord a => V3 a -> a

minimum :: Ord a => V3 a -> a

head :: V3 a -> a

last :: V3 a -> a

foldrMap1 :: (a -> b) -> (a -> b -> b) -> V3 a -> b

foldlMap1' :: (a -> b) -> (b -> a -> b) -> V3 a -> b

foldlMap1 :: (a -> b) -> (b -> a -> b) -> V3 a -> b

foldrMap1' :: (a -> b) -> (a -> b -> b) -> V3 a -> b

Eq1 V3 
Instance details

Defined in Linear.V3

Methods

liftEq :: (a -> b -> Bool) -> V3 a -> V3 b -> Bool

Ord1 V3 
Instance details

Defined in Linear.V3

Methods

liftCompare :: (a -> b -> Ordering) -> V3 a -> V3 b -> Ordering

Read1 V3 
Instance details

Defined in Linear.V3

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (V3 a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [V3 a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (V3 a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [V3 a]

Show1 V3 
Instance details

Defined in Linear.V3

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> V3 a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [V3 a] -> ShowS

Traversable V3 
Instance details

Defined in Linear.V3

Methods

traverse :: Applicative f => (a -> f b) -> V3 a -> f (V3 b)

sequenceA :: Applicative f => V3 (f a) -> f (V3 a)

mapM :: Monad m => (a -> m b) -> V3 a -> m (V3 b)

sequence :: Monad m => V3 (m a) -> m (V3 a)

Applicative V3 
Instance details

Defined in Linear.V3

Methods

pure :: a -> V3 a

(<*>) :: V3 (a -> b) -> V3 a -> V3 b

liftA2 :: (a -> b -> c) -> V3 a -> V3 b -> V3 c

(*>) :: V3 a -> V3 b -> V3 b

(<*) :: V3 a -> V3 b -> V3 a

Functor V3 
Instance details

Defined in Linear.V3

Methods

fmap :: (a -> b) -> V3 a -> V3 b

(<$) :: a -> V3 b -> V3 a

Monad V3 
Instance details

Defined in Linear.V3

Methods

(>>=) :: V3 a -> (a -> V3 b) -> V3 b

(>>) :: V3 a -> V3 b -> V3 b

return :: a -> V3 a

Serial1 V3 
Instance details

Defined in Linear.V3

Methods

serializeWith :: MonadPut m => (a -> m ()) -> V3 a -> m ()

deserializeWith :: MonadGet m => m a -> m (V3 a)

Distributive V3 
Instance details

Defined in Linear.V3

Methods

distribute :: Functor f => f (V3 a) -> V3 (f a)

collect :: Functor f => (a -> V3 b) -> f a -> V3 (f b)

distributeM :: Monad m => m (V3 a) -> V3 (m a)

collectM :: Monad m => (a -> V3 b) -> m a -> V3 (m b)

Hashable1 V3 
Instance details

Defined in Linear.V3

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> V3 a -> Int

Affine V3 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V3 
Instance details

Defined in Linear.Affine

type Diff V3 = V3

Methods

(.-.) :: Num a => V3 a -> V3 a -> Diff V3 a #

(.+^) :: Num a => V3 a -> Diff V3 a -> V3 a #

(.-^) :: Num a => V3 a -> Diff V3 a -> V3 a #

Metric V3 
Instance details

Defined in Linear.V3

Methods

dot :: Num a => V3 a -> V3 a -> a #

quadrance :: Num a => V3 a -> a #

qd :: Num a => V3 a -> V3 a -> a #

distance :: Floating a => V3 a -> V3 a -> a #

norm :: Floating a => V3 a -> a #

signorm :: Floating a => V3 a -> V3 a #

Trace V3 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V3 (V3 a) -> a #

diagonal :: V3 (V3 a) -> V3 a #

Finite V3 
Instance details

Defined in Linear.V3

Associated Types

type Size V3 
Instance details

Defined in Linear.V3

type Size V3 = 3

Methods

toV :: V3 a -> V (Size V3) a

fromV :: V (Size V3) a -> V3 a

R1 V3 
Instance details

Defined in Linear.V3

Methods

_x :: Lens' (V3 a) a #

R2 V3 
Instance details

Defined in Linear.V3

Methods

_y :: Lens' (V3 a) a #

_xy :: Lens' (V3 a) (V2 a) #

R3 V3 
Instance details

Defined in Linear.V3

Methods

_z :: Lens' (V3 a) a #

_xyz :: Lens' (V3 a) (V3 a) #

Additive V3 
Instance details

Defined in Linear.V3

Methods

zero :: Num a => V3 a #

(^+^) :: Num a => V3 a -> V3 a -> V3 a #

(^-^) :: Num a => V3 a -> V3 a -> V3 a #

lerp :: Num a => a -> V3 a -> V3 a -> V3 a #

liftU2 :: (a -> a -> a) -> V3 a -> V3 a -> V3 a #

liftI2 :: (a -> b -> c) -> V3 a -> V3 b -> V3 c #

Apply V3 
Instance details

Defined in Linear.V3

Methods

(<.>) :: V3 (a -> b) -> V3 a -> V3 b

(.>) :: V3 a -> V3 b -> V3 b

(<.) :: V3 a -> V3 b -> V3 a

liftF2 :: (a -> b -> c) -> V3 a -> V3 b -> V3 c

Bind V3 
Instance details

Defined in Linear.V3

Methods

(>>-) :: V3 a -> (a -> V3 b) -> V3 b

join :: V3 (V3 a) -> V3 a

Traversable1 V3 
Instance details

Defined in Linear.V3

Methods

traverse1 :: Apply f => (a -> f b) -> V3 a -> f (V3 b)

sequence1 :: Apply f => V3 (f b) -> f (V3 b)

Generic1 V3 
Instance details

Defined in Linear.V3

Associated Types

type Rep1 V3 
Instance details

Defined in Linear.V3

type Rep1 V3 = D1 ('MetaData "V3" "Linear.V3" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V3" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)))

Methods

from1 :: V3 a -> Rep1 V3 a

to1 :: Rep1 V3 a -> V3 a

Num r => Coalgebra r (E V3) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V3 -> r) -> E V3 -> E V3 -> r #

counital :: (E V3 -> r) -> r #

Lift a => Lift (V3 a :: Type) 
Instance details

Defined in Linear.V3

Methods

lift :: Quote m => V3 a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => V3 a -> Code m (V3 a)

Unbox a => Vector Vector (V3 a) 
Instance details

Defined in Linear.V3

Methods

basicUnsafeFreeze :: Mutable Vector s (V3 a) -> ST s (Vector (V3 a))

basicUnsafeThaw :: Vector (V3 a) -> ST s (Mutable Vector s (V3 a))

basicLength :: Vector (V3 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V3 a) -> Vector (V3 a)

basicUnsafeIndexM :: Vector (V3 a) -> Int -> Box (V3 a)

basicUnsafeCopy :: Mutable Vector s (V3 a) -> Vector (V3 a) -> ST s ()

elemseq :: Vector (V3 a) -> V3 a -> b -> b

Unbox a => MVector MVector (V3 a) 
Instance details

Defined in Linear.V3

Methods

basicLength :: MVector s (V3 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V3 a) -> MVector s (V3 a)

basicOverlaps :: MVector s (V3 a) -> MVector s (V3 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V3 a))

basicInitialize :: MVector s (V3 a) -> ST s ()

basicUnsafeReplicate :: Int -> V3 a -> ST s (MVector s (V3 a))

basicUnsafeRead :: MVector s (V3 a) -> Int -> ST s (V3 a)

basicUnsafeWrite :: MVector s (V3 a) -> Int -> V3 a -> ST s ()

basicClear :: MVector s (V3 a) -> ST s ()

basicSet :: MVector s (V3 a) -> V3 a -> ST s ()

basicUnsafeCopy :: MVector s (V3 a) -> MVector s (V3 a) -> ST s ()

basicUnsafeMove :: MVector s (V3 a) -> MVector s (V3 a) -> ST s ()

basicUnsafeGrow :: MVector s (V3 a) -> Int -> ST s (MVector s (V3 a))

Data a => Data (V3 a) 
Instance details

Defined in Linear.V3

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> V3 a -> c (V3 a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (V3 a)

toConstr :: V3 a -> Constr

dataTypeOf :: V3 a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (V3 a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (V3 a))

gmapT :: (forall b. Data b => b -> b) -> V3 a -> V3 a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> V3 a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> V3 a -> r

gmapQ :: (forall d. Data d => d -> u) -> V3 a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> V3 a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> V3 a -> m (V3 a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> V3 a -> m (V3 a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> V3 a -> m (V3 a)

Storable a => Storable (V3 a) 
Instance details

Defined in Linear.V3

Methods

sizeOf :: V3 a -> Int

alignment :: V3 a -> Int

peekElemOff :: Ptr (V3 a) -> Int -> IO (V3 a)

pokeElemOff :: Ptr (V3 a) -> Int -> V3 a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (V3 a)

pokeByteOff :: Ptr b -> Int -> V3 a -> IO ()

peek :: Ptr (V3 a) -> IO (V3 a)

poke :: Ptr (V3 a) -> V3 a -> IO ()

Monoid a => Monoid (V3 a) 
Instance details

Defined in Linear.V3

Methods

mempty :: V3 a

mappend :: V3 a -> V3 a -> V3 a

mconcat :: [V3 a] -> V3 a

Semigroup a => Semigroup (V3 a) 
Instance details

Defined in Linear.V3

Methods

(<>) :: V3 a -> V3 a -> V3 a

sconcat :: NonEmpty (V3 a) -> V3 a

stimes :: Integral b => b -> V3 a -> V3 a

Bounded a => Bounded (V3 a) 
Instance details

Defined in Linear.V3

Methods

minBound :: V3 a

maxBound :: V3 a

Floating a => Floating (V3 a) 
Instance details

Defined in Linear.V3

Methods

pi :: V3 a

exp :: V3 a -> V3 a

log :: V3 a -> V3 a

sqrt :: V3 a -> V3 a

(**) :: V3 a -> V3 a -> V3 a

logBase :: V3 a -> V3 a -> V3 a

sin :: V3 a -> V3 a

cos :: V3 a -> V3 a

tan :: V3 a -> V3 a

asin :: V3 a -> V3 a

acos :: V3 a -> V3 a

atan :: V3 a -> V3 a

sinh :: V3 a -> V3 a

cosh :: V3 a -> V3 a

tanh :: V3 a -> V3 a

asinh :: V3 a -> V3 a

acosh :: V3 a -> V3 a

atanh :: V3 a -> V3 a

log1p :: V3 a -> V3 a

expm1 :: V3 a -> V3 a

log1pexp :: V3 a -> V3 a

log1mexp :: V3 a -> V3 a

Generic (V3 a) 
Instance details

Defined in Linear.V3

Associated Types

type Rep (V3 a) 
Instance details

Defined in Linear.V3

type Rep (V3 a) = D1 ('MetaData "V3" "Linear.V3" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V3" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))

Methods

from :: V3 a -> Rep (V3 a) x

to :: Rep (V3 a) x -> V3 a

Ix a => Ix (V3 a) 
Instance details

Defined in Linear.V3

Methods

range :: (V3 a, V3 a) -> [V3 a]

index :: (V3 a, V3 a) -> V3 a -> Int

unsafeIndex :: (V3 a, V3 a) -> V3 a -> Int

inRange :: (V3 a, V3 a) -> V3 a -> Bool

rangeSize :: (V3 a, V3 a) -> Int

unsafeRangeSize :: (V3 a, V3 a) -> Int

Num a => Num (V3 a) 
Instance details

Defined in Linear.V3

Methods

(+) :: V3 a -> V3 a -> V3 a

(-) :: V3 a -> V3 a -> V3 a

(*) :: V3 a -> V3 a -> V3 a

negate :: V3 a -> V3 a

abs :: V3 a -> V3 a

signum :: V3 a -> V3 a

fromInteger :: Integer -> V3 a

Read a => Read (V3 a) 
Instance details

Defined in Linear.V3

Methods

readsPrec :: Int -> ReadS (V3 a)

readList :: ReadS [V3 a]

readPrec :: ReadPrec (V3 a)

readListPrec :: ReadPrec [V3 a]

Fractional a => Fractional (V3 a) 
Instance details

Defined in Linear.V3

Methods

(/) :: V3 a -> V3 a -> V3 a

recip :: V3 a -> V3 a

fromRational :: Rational -> V3 a

Show a => Show (V3 a) 
Instance details

Defined in Linear.V3

Methods

showsPrec :: Int -> V3 a -> ShowS

show :: V3 a -> String

showList :: [V3 a] -> ShowS

Binary a => Binary (V3 a) 
Instance details

Defined in Linear.V3

Methods

put :: V3 a -> Put

get :: Get (V3 a)

putList :: [V3 a] -> Put

Serial a => Serial (V3 a) 
Instance details

Defined in Linear.V3

Methods

serialize :: MonadPut m => V3 a -> m ()

deserialize :: MonadGet m => m (V3 a)

Serialize a => Serialize (V3 a) 
Instance details

Defined in Linear.V3

Methods

put :: Putter (V3 a)

get :: Get (V3 a)

NFData a => NFData (V3 a) 
Instance details

Defined in Linear.V3

Methods

rnf :: V3 a -> ()

Eq a => Eq (V3 a) 
Instance details

Defined in Linear.V3

Methods

(==) :: V3 a -> V3 a -> Bool

(/=) :: V3 a -> V3 a -> Bool

Ord a => Ord (V3 a) 
Instance details

Defined in Linear.V3

Methods

compare :: V3 a -> V3 a -> Ordering

(<) :: V3 a -> V3 a -> Bool

(<=) :: V3 a -> V3 a -> Bool

(>) :: V3 a -> V3 a -> Bool

(>=) :: V3 a -> V3 a -> Bool

max :: V3 a -> V3 a -> V3 a

min :: V3 a -> V3 a -> V3 a

Hashable a => Hashable (V3 a) 
Instance details

Defined in Linear.V3

Methods

hashWithSalt :: Int -> V3 a -> Int

hash :: V3 a -> Int

Ixed (V3 a) 
Instance details

Defined in Linear.V3

Methods

ix :: Index (V3 a) -> Traversal' (V3 a) (IxValue (V3 a))

Epsilon a => Epsilon (V3 a) 
Instance details

Defined in Linear.V3

Methods

nearZero :: V3 a -> Bool #

Random a => Random (V3 a) 
Instance details

Defined in Linear.V3

Methods

randomR :: RandomGen g => (V3 a, V3 a) -> g -> (V3 a, g)

random :: RandomGen g => g -> (V3 a, g)

randomRs :: RandomGen g => (V3 a, V3 a) -> g -> [V3 a]

randoms :: RandomGen g => g -> [V3 a]

Uniform a => Uniform (V3 a) 
Instance details

Defined in Linear.V3

Methods

uniformM :: StatefulGen g m => g -> m (V3 a)

UniformRange a => UniformRange (V3 a) 
Instance details

Defined in Linear.V3

Methods

uniformRM :: StatefulGen g m => (V3 a, V3 a) -> g -> m (V3 a)

Unbox a => Unbox (V3 a) 
Instance details

Defined in Linear.V3

FoldableWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

ifoldMap :: Monoid m => (E V3 -> a -> m) -> V3 a -> m

ifoldMap' :: Monoid m => (E V3 -> a -> m) -> V3 a -> m

ifoldr :: (E V3 -> a -> b -> b) -> b -> V3 a -> b

ifoldl :: (E V3 -> b -> a -> b) -> b -> V3 a -> b

ifoldr' :: (E V3 -> a -> b -> b) -> b -> V3 a -> b

ifoldl' :: (E V3 -> b -> a -> b) -> b -> V3 a -> b

FunctorWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

imap :: (E V3 -> a -> b) -> V3 a -> V3 b

TraversableWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

itraverse :: Applicative f => (E V3 -> a -> f b) -> V3 a -> f (V3 b)

Each (V3 a) (V3 b) a b 
Instance details

Defined in Linear.V3

Methods

each :: Traversal (V3 a) (V3 b) a b

Field1 (V3 a) (V3 a) a a 
Instance details

Defined in Linear.V3

Methods

_1 :: Lens (V3 a) (V3 a) a a

Field2 (V3 a) (V3 a) a a 
Instance details

Defined in Linear.V3

Methods

_2 :: Lens (V3 a) (V3 a) a a

Field3 (V3 a) (V3 a) a a 
Instance details

Defined in Linear.V3

Methods

_3 :: Lens (V3 a) (V3 a) a a

type Rep V3 
Instance details

Defined in Linear.V3

type Rep V3 = E V3
type Diff V3 
Instance details

Defined in Linear.Affine

type Diff V3 = V3
type Size V3 
Instance details

Defined in Linear.V3

type Size V3 = 3
type Rep1 V3 
Instance details

Defined in Linear.V3

type Rep1 V3 = D1 ('MetaData "V3" "Linear.V3" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V3" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)))
data MVector s (V3 a) 
Instance details

Defined in Linear.V3

data MVector s (V3 a) = MV_V3 !Int !(MVector s a)
type Rep (V3 a) 
Instance details

Defined in Linear.V3

type Rep (V3 a) = D1 ('MetaData "V3" "Linear.V3" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V3" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))
type Index (V3 a) 
Instance details

Defined in Linear.V3

type Index (V3 a) = E V3
type IxValue (V3 a) 
Instance details

Defined in Linear.V3

type IxValue (V3 a) = a
data Vector (V3 a) 
Instance details

Defined in Linear.V3

data Vector (V3 a) = V_V3 !Int !(Vector a)

data V4 a #

Constructors

V4 !a !a !a !a 

Instances

Instances details
Representable V4 
Instance details

Defined in Linear.V4

Associated Types

type Rep V4 
Instance details

Defined in Linear.V4

type Rep V4 = E V4

Methods

tabulate :: (Rep V4 -> a) -> V4 a

index :: V4 a -> Rep V4 -> a

MonadFix V4 
Instance details

Defined in Linear.V4

Methods

mfix :: (a -> V4 a) -> V4 a

MonadZip V4 
Instance details

Defined in Linear.V4

Methods

mzip :: V4 a -> V4 b -> V4 (a, b)

mzipWith :: (a -> b -> c) -> V4 a -> V4 b -> V4 c

munzip :: V4 (a, b) -> (V4 a, V4 b)

Foldable V4 
Instance details

Defined in Linear.V4

Methods

fold :: Monoid m => V4 m -> m

foldMap :: Monoid m => (a -> m) -> V4 a -> m

foldMap' :: Monoid m => (a -> m) -> V4 a -> m

foldr :: (a -> b -> b) -> b -> V4 a -> b

foldr' :: (a -> b -> b) -> b -> V4 a -> b

foldl :: (b -> a -> b) -> b -> V4 a -> b

foldl' :: (b -> a -> b) -> b -> V4 a -> b

foldr1 :: (a -> a -> a) -> V4 a -> a

foldl1 :: (a -> a -> a) -> V4 a -> a

toList :: V4 a -> [a]

null :: V4 a -> Bool

length :: V4 a -> Int

elem :: Eq a => a -> V4 a -> Bool

maximum :: Ord a => V4 a -> a

minimum :: Ord a => V4 a -> a

sum :: Num a => V4 a -> a

product :: Num a => V4 a -> a

Foldable1 V4 
Instance details

Defined in Linear.V4

Methods

fold1 :: Semigroup m => V4 m -> m

foldMap1 :: Semigroup m => (a -> m) -> V4 a -> m

foldMap1' :: Semigroup m => (a -> m) -> V4 a -> m

toNonEmpty :: V4 a -> NonEmpty a

maximum :: Ord a => V4 a -> a

minimum :: Ord a => V4 a -> a

head :: V4 a -> a

last :: V4 a -> a

foldrMap1 :: (a -> b) -> (a -> b -> b) -> V4 a -> b

foldlMap1' :: (a -> b) -> (b -> a -> b) -> V4 a -> b

foldlMap1 :: (a -> b) -> (b -> a -> b) -> V4 a -> b

foldrMap1' :: (a -> b) -> (a -> b -> b) -> V4 a -> b

Eq1 V4 
Instance details

Defined in Linear.V4

Methods

liftEq :: (a -> b -> Bool) -> V4 a -> V4 b -> Bool

Ord1 V4 
Instance details

Defined in Linear.V4

Methods

liftCompare :: (a -> b -> Ordering) -> V4 a -> V4 b -> Ordering

Read1 V4 
Instance details

Defined in Linear.V4

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (V4 a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [V4 a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (V4 a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [V4 a]

Show1 V4 
Instance details

Defined in Linear.V4

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> V4 a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [V4 a] -> ShowS

Traversable V4 
Instance details

Defined in Linear.V4

Methods

traverse :: Applicative f => (a -> f b) -> V4 a -> f (V4 b)

sequenceA :: Applicative f => V4 (f a) -> f (V4 a)

mapM :: Monad m => (a -> m b) -> V4 a -> m (V4 b)

sequence :: Monad m => V4 (m a) -> m (V4 a)

Applicative V4 
Instance details

Defined in Linear.V4

Methods

pure :: a -> V4 a

(<*>) :: V4 (a -> b) -> V4 a -> V4 b

liftA2 :: (a -> b -> c) -> V4 a -> V4 b -> V4 c

(*>) :: V4 a -> V4 b -> V4 b

(<*) :: V4 a -> V4 b -> V4 a

Functor V4 
Instance details

Defined in Linear.V4

Methods

fmap :: (a -> b) -> V4 a -> V4 b

(<$) :: a -> V4 b -> V4 a

Monad V4 
Instance details

Defined in Linear.V4

Methods

(>>=) :: V4 a -> (a -> V4 b) -> V4 b

(>>) :: V4 a -> V4 b -> V4 b

return :: a -> V4 a

Serial1 V4 
Instance details

Defined in Linear.V4

Methods

serializeWith :: MonadPut m => (a -> m ()) -> V4 a -> m ()

deserializeWith :: MonadGet m => m a -> m (V4 a)

Distributive V4 
Instance details

Defined in Linear.V4

Methods

distribute :: Functor f => f (V4 a) -> V4 (f a)

collect :: Functor f => (a -> V4 b) -> f a -> V4 (f b)

distributeM :: Monad m => m (V4 a) -> V4 (m a)

collectM :: Monad m => (a -> V4 b) -> m a -> V4 (m b)

Hashable1 V4 
Instance details

Defined in Linear.V4

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> V4 a -> Int

Affine V4 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V4 
Instance details

Defined in Linear.Affine

type Diff V4 = V4

Methods

(.-.) :: Num a => V4 a -> V4 a -> Diff V4 a #

(.+^) :: Num a => V4 a -> Diff V4 a -> V4 a #

(.-^) :: Num a => V4 a -> Diff V4 a -> V4 a #

Metric V4 
Instance details

Defined in Linear.V4

Methods

dot :: Num a => V4 a -> V4 a -> a #

quadrance :: Num a => V4 a -> a #

qd :: Num a => V4 a -> V4 a -> a #

distance :: Floating a => V4 a -> V4 a -> a #

norm :: Floating a => V4 a -> a #

signorm :: Floating a => V4 a -> V4 a #

Trace V4 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V4 (V4 a) -> a #

diagonal :: V4 (V4 a) -> V4 a #

Finite V4 
Instance details

Defined in Linear.V4

Associated Types

type Size V4 
Instance details

Defined in Linear.V4

type Size V4 = 4

Methods

toV :: V4 a -> V (Size V4) a

fromV :: V (Size V4) a -> V4 a

R1 V4 
Instance details

Defined in Linear.V4

Methods

_x :: Lens' (V4 a) a #

R2 V4 
Instance details

Defined in Linear.V4

Methods

_y :: Lens' (V4 a) a #

_xy :: Lens' (V4 a) (V2 a) #

R3 V4 
Instance details

Defined in Linear.V4

Methods

_z :: Lens' (V4 a) a #

_xyz :: Lens' (V4 a) (V3 a) #

R4 V4 
Instance details

Defined in Linear.V4

Methods

_w :: Lens' (V4 a) a #

_xyzw :: Lens' (V4 a) (V4 a) #

Additive V4 
Instance details

Defined in Linear.V4

Methods

zero :: Num a => V4 a #

(^+^) :: Num a => V4 a -> V4 a -> V4 a #

(^-^) :: Num a => V4 a -> V4 a -> V4 a #

lerp :: Num a => a -> V4 a -> V4 a -> V4 a #

liftU2 :: (a -> a -> a) -> V4 a -> V4 a -> V4 a #

liftI2 :: (a -> b -> c) -> V4 a -> V4 b -> V4 c #

Apply V4 
Instance details

Defined in Linear.V4

Methods

(<.>) :: V4 (a -> b) -> V4 a -> V4 b

(.>) :: V4 a -> V4 b -> V4 b

(<.) :: V4 a -> V4 b -> V4 a

liftF2 :: (a -> b -> c) -> V4 a -> V4 b -> V4 c

Bind V4 
Instance details

Defined in Linear.V4

Methods

(>>-) :: V4 a -> (a -> V4 b) -> V4 b

join :: V4 (V4 a) -> V4 a

Traversable1 V4 
Instance details

Defined in Linear.V4

Methods

traverse1 :: Apply f => (a -> f b) -> V4 a -> f (V4 b)

sequence1 :: Apply f => V4 (f b) -> f (V4 b)

Generic1 V4 
Instance details

Defined in Linear.V4

Associated Types

type Rep1 V4 
Instance details

Defined in Linear.V4

type Rep1 V4 = D1 ('MetaData "V4" "Linear.V4" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V4" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)))

Methods

from1 :: V4 a -> Rep1 V4 a

to1 :: Rep1 V4 a -> V4 a

Num r => Coalgebra r (E V4) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V4 -> r) -> E V4 -> E V4 -> r #

counital :: (E V4 -> r) -> r #

Lift a => Lift (V4 a :: Type) 
Instance details

Defined in Linear.V4

Methods

lift :: Quote m => V4 a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => V4 a -> Code m (V4 a)

Unbox a => Vector Vector (V4 a) 
Instance details

Defined in Linear.V4

Methods

basicUnsafeFreeze :: Mutable Vector s (V4 a) -> ST s (Vector (V4 a))

basicUnsafeThaw :: Vector (V4 a) -> ST s (Mutable Vector s (V4 a))

basicLength :: Vector (V4 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V4 a) -> Vector (V4 a)

basicUnsafeIndexM :: Vector (V4 a) -> Int -> Box (V4 a)

basicUnsafeCopy :: Mutable Vector s (V4 a) -> Vector (V4 a) -> ST s ()

elemseq :: Vector (V4 a) -> V4 a -> b -> b

Unbox a => MVector MVector (V4 a) 
Instance details

Defined in Linear.V4

Methods

basicLength :: MVector s (V4 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V4 a) -> MVector s (V4 a)

basicOverlaps :: MVector s (V4 a) -> MVector s (V4 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V4 a))

basicInitialize :: MVector s (V4 a) -> ST s ()

basicUnsafeReplicate :: Int -> V4 a -> ST s (MVector s (V4 a))

basicUnsafeRead :: MVector s (V4 a) -> Int -> ST s (V4 a)

basicUnsafeWrite :: MVector s (V4 a) -> Int -> V4 a -> ST s ()

basicClear :: MVector s (V4 a) -> ST s ()

basicSet :: MVector s (V4 a) -> V4 a -> ST s ()

basicUnsafeCopy :: MVector s (V4 a) -> MVector s (V4 a) -> ST s ()

basicUnsafeMove :: MVector s (V4 a) -> MVector s (V4 a) -> ST s ()

basicUnsafeGrow :: MVector s (V4 a) -> Int -> ST s (MVector s (V4 a))

Data a => Data (V4 a) 
Instance details

Defined in Linear.V4

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> V4 a -> c (V4 a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (V4 a)

toConstr :: V4 a -> Constr

dataTypeOf :: V4 a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (V4 a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (V4 a))

gmapT :: (forall b. Data b => b -> b) -> V4 a -> V4 a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> V4 a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> V4 a -> r

gmapQ :: (forall d. Data d => d -> u) -> V4 a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> V4 a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> V4 a -> m (V4 a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> V4 a -> m (V4 a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> V4 a -> m (V4 a)

Storable a => Storable (V4 a) 
Instance details

Defined in Linear.V4

Methods

sizeOf :: V4 a -> Int

alignment :: V4 a -> Int

peekElemOff :: Ptr (V4 a) -> Int -> IO (V4 a)

pokeElemOff :: Ptr (V4 a) -> Int -> V4 a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (V4 a)

pokeByteOff :: Ptr b -> Int -> V4 a -> IO ()

peek :: Ptr (V4 a) -> IO (V4 a)

poke :: Ptr (V4 a) -> V4 a -> IO ()

Monoid a => Monoid (V4 a) 
Instance details

Defined in Linear.V4

Methods

mempty :: V4 a

mappend :: V4 a -> V4 a -> V4 a

mconcat :: [V4 a] -> V4 a

Semigroup a => Semigroup (V4 a) 
Instance details

Defined in Linear.V4

Methods

(<>) :: V4 a -> V4 a -> V4 a

sconcat :: NonEmpty (V4 a) -> V4 a

stimes :: Integral b => b -> V4 a -> V4 a

Bounded a => Bounded (V4 a) 
Instance details

Defined in Linear.V4

Methods

minBound :: V4 a

maxBound :: V4 a

Floating a => Floating (V4 a) 
Instance details

Defined in Linear.V4

Methods

pi :: V4 a

exp :: V4 a -> V4 a

log :: V4 a -> V4 a

sqrt :: V4 a -> V4 a

(**) :: V4 a -> V4 a -> V4 a

logBase :: V4 a -> V4 a -> V4 a

sin :: V4 a -> V4 a

cos :: V4 a -> V4 a

tan :: V4 a -> V4 a

asin :: V4 a -> V4 a

acos :: V4 a -> V4 a

atan :: V4 a -> V4 a

sinh :: V4 a -> V4 a

cosh :: V4 a -> V4 a

tanh :: V4 a -> V4 a

asinh :: V4 a -> V4 a

acosh :: V4 a -> V4 a

atanh :: V4 a -> V4 a

log1p :: V4 a -> V4 a

expm1 :: V4 a -> V4 a

log1pexp :: V4 a -> V4 a

log1mexp :: V4 a -> V4 a

Generic (V4 a) 
Instance details

Defined in Linear.V4

Associated Types

type Rep (V4 a) 
Instance details

Defined in Linear.V4

type Rep (V4 a) = D1 ('MetaData "V4" "Linear.V4" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V4" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))

Methods

from :: V4 a -> Rep (V4 a) x

to :: Rep (V4 a) x -> V4 a

Ix a => Ix (V4 a) 
Instance details

Defined in Linear.V4

Methods

range :: (V4 a, V4 a) -> [V4 a]

index :: (V4 a, V4 a) -> V4 a -> Int

unsafeIndex :: (V4 a, V4 a) -> V4 a -> Int

inRange :: (V4 a, V4 a) -> V4 a -> Bool

rangeSize :: (V4 a, V4 a) -> Int

unsafeRangeSize :: (V4 a, V4 a) -> Int

Num a => Num (V4 a) 
Instance details

Defined in Linear.V4

Methods

(+) :: V4 a -> V4 a -> V4 a

(-) :: V4 a -> V4 a -> V4 a

(*) :: V4 a -> V4 a -> V4 a

negate :: V4 a -> V4 a

abs :: V4 a -> V4 a

signum :: V4 a -> V4 a

fromInteger :: Integer -> V4 a

Read a => Read (V4 a) 
Instance details

Defined in Linear.V4

Methods

readsPrec :: Int -> ReadS (V4 a)

readList :: ReadS [V4 a]

readPrec :: ReadPrec (V4 a)

readListPrec :: ReadPrec [V4 a]

Fractional a => Fractional (V4 a) 
Instance details

Defined in Linear.V4

Methods

(/) :: V4 a -> V4 a -> V4 a

recip :: V4 a -> V4 a

fromRational :: Rational -> V4 a

Show a => Show (V4 a) 
Instance details

Defined in Linear.V4

Methods

showsPrec :: Int -> V4 a -> ShowS

show :: V4 a -> String

showList :: [V4 a] -> ShowS

Binary a => Binary (V4 a) 
Instance details

Defined in Linear.V4

Methods

put :: V4 a -> Put

get :: Get (V4 a)

putList :: [V4 a] -> Put

Serial a => Serial (V4 a) 
Instance details

Defined in Linear.V4

Methods

serialize :: MonadPut m => V4 a -> m ()

deserialize :: MonadGet m => m (V4 a)

Serialize a => Serialize (V4 a) 
Instance details

Defined in Linear.V4

Methods

put :: Putter (V4 a)

get :: Get (V4 a)

NFData a => NFData (V4 a) 
Instance details

Defined in Linear.V4

Methods

rnf :: V4 a -> ()

Eq a => Eq (V4 a) 
Instance details

Defined in Linear.V4

Methods

(==) :: V4 a -> V4 a -> Bool

(/=) :: V4 a -> V4 a -> Bool

Ord a => Ord (V4 a) 
Instance details

Defined in Linear.V4

Methods

compare :: V4 a -> V4 a -> Ordering

(<) :: V4 a -> V4 a -> Bool

(<=) :: V4 a -> V4 a -> Bool

(>) :: V4 a -> V4 a -> Bool

(>=) :: V4 a -> V4 a -> Bool

max :: V4 a -> V4 a -> V4 a

min :: V4 a -> V4 a -> V4 a

Hashable a => Hashable (V4 a) 
Instance details

Defined in Linear.V4

Methods

hashWithSalt :: Int -> V4 a -> Int

hash :: V4 a -> Int

Ixed (V4 a) 
Instance details

Defined in Linear.V4

Methods

ix :: Index (V4 a) -> Traversal' (V4 a) (IxValue (V4 a))

Epsilon a => Epsilon (V4 a) 
Instance details

Defined in Linear.V4

Methods

nearZero :: V4 a -> Bool #

Random a => Random (V4 a) 
Instance details

Defined in Linear.V4

Methods

randomR :: RandomGen g => (V4 a, V4 a) -> g -> (V4 a, g)

random :: RandomGen g => g -> (V4 a, g)

randomRs :: RandomGen g => (V4 a, V4 a) -> g -> [V4 a]

randoms :: RandomGen g => g -> [V4 a]

Uniform a => Uniform (V4 a) 
Instance details

Defined in Linear.V4

Methods

uniformM :: StatefulGen g m => g -> m (V4 a)

UniformRange a => UniformRange (V4 a) 
Instance details

Defined in Linear.V4

Methods

uniformRM :: StatefulGen g m => (V4 a, V4 a) -> g -> m (V4 a)

Unbox a => Unbox (V4 a) 
Instance details

Defined in Linear.V4

FoldableWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

ifoldMap :: Monoid m => (E V4 -> a -> m) -> V4 a -> m

ifoldMap' :: Monoid m => (E V4 -> a -> m) -> V4 a -> m

ifoldr :: (E V4 -> a -> b -> b) -> b -> V4 a -> b

ifoldl :: (E V4 -> b -> a -> b) -> b -> V4 a -> b

ifoldr' :: (E V4 -> a -> b -> b) -> b -> V4 a -> b

ifoldl' :: (E V4 -> b -> a -> b) -> b -> V4 a -> b

FunctorWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

imap :: (E V4 -> a -> b) -> V4 a -> V4 b

TraversableWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

itraverse :: Applicative f => (E V4 -> a -> f b) -> V4 a -> f (V4 b)

Each (V4 a) (V4 b) a b 
Instance details

Defined in Linear.V4

Methods

each :: Traversal (V4 a) (V4 b) a b

Field1 (V4 a) (V4 a) a a 
Instance details

Defined in Linear.V4

Methods

_1 :: Lens (V4 a) (V4 a) a a

Field2 (V4 a) (V4 a) a a 
Instance details

Defined in Linear.V4

Methods

_2 :: Lens (V4 a) (V4 a) a a

Field3 (V4 a) (V4 a) a a 
Instance details

Defined in Linear.V4

Methods

_3 :: Lens (V4 a) (V4 a) a a

Field4 (V4 a) (V4 a) a a 
Instance details

Defined in Linear.V4

Methods

_4 :: Lens (V4 a) (V4 a) a a

type Rep V4 
Instance details

Defined in Linear.V4

type Rep V4 = E V4
type Diff V4 
Instance details

Defined in Linear.Affine

type Diff V4 = V4
type Size V4 
Instance details

Defined in Linear.V4

type Size V4 = 4
type Rep1 V4 
Instance details

Defined in Linear.V4

type Rep1 V4 = D1 ('MetaData "V4" "Linear.V4" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V4" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)))
data MVector s (V4 a) 
Instance details

Defined in Linear.V4

data MVector s (V4 a) = MV_V4 !Int !(MVector s a)
type Rep (V4 a) 
Instance details

Defined in Linear.V4

type Rep (V4 a) = D1 ('MetaData "V4" "Linear.V4" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V4" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))
type Index (V4 a) 
Instance details

Defined in Linear.V4

type Index (V4 a) = E V4
type IxValue (V4 a) 
Instance details

Defined in Linear.V4

type IxValue (V4 a) = a
data Vector (V4 a) 
Instance details

Defined in Linear.V4

data Vector (V4 a) = V_V4 !Int !(Vector a)

class Additive (Diff p) => Affine (p :: Type -> Type) where #

Minimal complete definition

(.-.), (.+^)

Associated Types

type Diff (p :: Type -> Type) :: Type -> Type #

Methods

(.-.) :: Num a => p a -> p a -> Diff p a #

(.+^) :: Num a => p a -> Diff p a -> p a #

(.-^) :: Num a => p a -> Diff p a -> p a #

Instances

Instances details
Affine ZipList 
Instance details

Defined in Linear.Affine

Associated Types

type Diff ZipList 
Instance details

Defined in Linear.Affine

type Diff ZipList = ZipList

Methods

(.-.) :: Num a => ZipList a -> ZipList a -> Diff ZipList a #

(.+^) :: Num a => ZipList a -> Diff ZipList a -> ZipList a #

(.-^) :: Num a => ZipList a -> Diff ZipList a -> ZipList a #

Affine Complex 
Instance details

Defined in Linear.Affine

Associated Types

type Diff Complex 
Instance details

Defined in Linear.Affine

type Diff Complex = Complex

Methods

(.-.) :: Num a => Complex a -> Complex a -> Diff Complex a #

(.+^) :: Num a => Complex a -> Diff Complex a -> Complex a #

(.-^) :: Num a => Complex a -> Diff Complex a -> Complex a #

Affine Identity 
Instance details

Defined in Linear.Affine

Associated Types

type Diff Identity 
Instance details

Defined in Linear.Affine

type Diff Identity = Identity

Methods

(.-.) :: Num a => Identity a -> Identity a -> Diff Identity a #

(.+^) :: Num a => Identity a -> Diff Identity a -> Identity a #

(.-^) :: Num a => Identity a -> Diff Identity a -> Identity a #

Affine IntMap 
Instance details

Defined in Linear.Affine

Associated Types

type Diff IntMap 
Instance details

Defined in Linear.Affine

type Diff IntMap = IntMap

Methods

(.-.) :: Num a => IntMap a -> IntMap a -> Diff IntMap a #

(.+^) :: Num a => IntMap a -> Diff IntMap a -> IntMap a #

(.-^) :: Num a => IntMap a -> Diff IntMap a -> IntMap a #

Affine Plucker 
Instance details

Defined in Linear.Affine

Associated Types

type Diff Plucker 
Instance details

Defined in Linear.Affine

type Diff Plucker = Plucker

Methods

(.-.) :: Num a => Plucker a -> Plucker a -> Diff Plucker a #

(.+^) :: Num a => Plucker a -> Diff Plucker a -> Plucker a #

(.-^) :: Num a => Plucker a -> Diff Plucker a -> Plucker a #

Affine Quaternion 
Instance details

Defined in Linear.Affine

Associated Types

type Diff Quaternion 
Instance details

Defined in Linear.Affine

Methods

(.-.) :: Num a => Quaternion a -> Quaternion a -> Diff Quaternion a #

(.+^) :: Num a => Quaternion a -> Diff Quaternion a -> Quaternion a #

(.-^) :: Num a => Quaternion a -> Diff Quaternion a -> Quaternion a #

Affine V0 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V0 
Instance details

Defined in Linear.Affine

type Diff V0 = V0

Methods

(.-.) :: Num a => V0 a -> V0 a -> Diff V0 a #

(.+^) :: Num a => V0 a -> Diff V0 a -> V0 a #

(.-^) :: Num a => V0 a -> Diff V0 a -> V0 a #

Affine V1 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V1 
Instance details

Defined in Linear.Affine

type Diff V1 = V1

Methods

(.-.) :: Num a => V1 a -> V1 a -> Diff V1 a #

(.+^) :: Num a => V1 a -> Diff V1 a -> V1 a #

(.-^) :: Num a => V1 a -> Diff V1 a -> V1 a #

Affine V2 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V2 
Instance details

Defined in Linear.Affine

type Diff V2 = V2

Methods

(.-.) :: Num a => V2 a -> V2 a -> Diff V2 a #

(.+^) :: Num a => V2 a -> Diff V2 a -> V2 a #

(.-^) :: Num a => V2 a -> Diff V2 a -> V2 a #

Affine V3 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V3 
Instance details

Defined in Linear.Affine

type Diff V3 = V3

Methods

(.-.) :: Num a => V3 a -> V3 a -> Diff V3 a #

(.+^) :: Num a => V3 a -> Diff V3 a -> V3 a #

(.-^) :: Num a => V3 a -> Diff V3 a -> V3 a #

Affine V4 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V4 
Instance details

Defined in Linear.Affine

type Diff V4 = V4

Methods

(.-.) :: Num a => V4 a -> V4 a -> Diff V4 a #

(.+^) :: Num a => V4 a -> Diff V4 a -> V4 a #

(.-^) :: Num a => V4 a -> Diff V4 a -> V4 a #

Affine Vector 
Instance details

Defined in Linear.Affine

Associated Types

type Diff Vector 
Instance details

Defined in Linear.Affine

type Diff Vector = Vector

Methods

(.-.) :: Num a => Vector a -> Vector a -> Diff Vector a #

(.+^) :: Num a => Vector a -> Diff Vector a -> Vector a #

(.-^) :: Num a => Vector a -> Diff Vector a -> Vector a #

Affine Maybe 
Instance details

Defined in Linear.Affine

Associated Types

type Diff Maybe 
Instance details

Defined in Linear.Affine

type Diff Maybe = Maybe

Methods

(.-.) :: Num a => Maybe a -> Maybe a -> Diff Maybe a #

(.+^) :: Num a => Maybe a -> Diff Maybe a -> Maybe a #

(.-^) :: Num a => Maybe a -> Diff Maybe a -> Maybe a #

Affine [] 
Instance details

Defined in Linear.Affine

Associated Types

type Diff [] 
Instance details

Defined in Linear.Affine

type Diff [] = []

Methods

(.-.) :: Num a => [a] -> [a] -> Diff [] a #

(.+^) :: Num a => [a] -> Diff [] a -> [a] #

(.-^) :: Num a => [a] -> Diff [] a -> [a] #

Ord k => Affine (Map k) 
Instance details

Defined in Linear.Affine

Associated Types

type Diff (Map k) 
Instance details

Defined in Linear.Affine

type Diff (Map k) = Map k

Methods

(.-.) :: Num a => Map k a -> Map k a -> Diff (Map k) a #

(.+^) :: Num a => Map k a -> Diff (Map k) a -> Map k a #

(.-^) :: Num a => Map k a -> Diff (Map k) a -> Map k a #

Additive f => Affine (Point f) 
Instance details

Defined in Linear.Affine

Associated Types

type Diff (Point f) 
Instance details

Defined in Linear.Affine

type Diff (Point f) = f

Methods

(.-.) :: Num a => Point f a -> Point f a -> Diff (Point f) a #

(.+^) :: Num a => Point f a -> Diff (Point f) a -> Point f a #

(.-^) :: Num a => Point f a -> Diff (Point f) a -> Point f a #

(Eq k, Hashable k) => Affine (HashMap k) 
Instance details

Defined in Linear.Affine

Associated Types

type Diff (HashMap k) 
Instance details

Defined in Linear.Affine

type Diff (HashMap k) = HashMap k

Methods

(.-.) :: Num a => HashMap k a -> HashMap k a -> Diff (HashMap k) a #

(.+^) :: Num a => HashMap k a -> Diff (HashMap k) a -> HashMap k a #

(.-^) :: Num a => HashMap k a -> Diff (HashMap k) a -> HashMap k a #

Dim n => Affine (V n) 
Instance details

Defined in Linear.Affine

Associated Types

type Diff (V n) 
Instance details

Defined in Linear.Affine

type Diff (V n) = V n

Methods

(.-.) :: Num a => V n a -> V n a -> Diff (V n) a #

(.+^) :: Num a => V n a -> Diff (V n) a -> V n a #

(.-^) :: Num a => V n a -> Diff (V n) a -> V n a #

(Affine f, Affine g) => Affine (Product f g) 
Instance details

Defined in Linear.Affine

Associated Types

type Diff (Product f g) 
Instance details

Defined in Linear.Affine

type Diff (Product f g) = Product (Diff f) (Diff g)

Methods

(.-.) :: Num a => Product f g a -> Product f g a -> Diff (Product f g) a #

(.+^) :: Num a => Product f g a -> Diff (Product f g) a -> Product f g a #

(.-^) :: Num a => Product f g a -> Diff (Product f g) a -> Product f g a #

Affine ((->) b) 
Instance details

Defined in Linear.Affine

Associated Types

type Diff ((->) b) 
Instance details

Defined in Linear.Affine

type Diff ((->) b) = (->) b

Methods

(.-.) :: Num a => (b -> a) -> (b -> a) -> Diff ((->) b) a #

(.+^) :: Num a => (b -> a) -> Diff ((->) b) a -> b -> a #

(.-^) :: Num a => (b -> a) -> Diff ((->) b) a -> b -> a #

rotate :: (Conjugate a, RealFloat a) => Quaternion a -> V3 a -> V3 a #

(#.) :: Coercible c b => (b -> c) -> (a -> b) -> a -> c #

class R1 (t :: Type -> Type) where #

Methods

_x :: Lens' (t a) a #

Instances

Instances details
R1 Identity 
Instance details

Defined in Linear.V1

Methods

_x :: Lens' (Identity a) a #

R1 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_x :: Lens' (Quaternion a) a #

R1 V1 
Instance details

Defined in Linear.V1

Methods

_x :: Lens' (V1 a) a #

R1 V2 
Instance details

Defined in Linear.V2

Methods

_x :: Lens' (V2 a) a #

R1 V3 
Instance details

Defined in Linear.V3

Methods

_x :: Lens' (V3 a) a #

R1 V4 
Instance details

Defined in Linear.V4

Methods

_x :: Lens' (V4 a) a #

R1 f => R1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_x :: Lens' (Point f a) a #

newtype V1 a #

Constructors

V1 a 

Instances

Instances details
Representable V1 
Instance details

Defined in Linear.V1

Associated Types

type Rep V1 
Instance details

Defined in Linear.V1

type Rep V1 = E V1

Methods

tabulate :: (Rep V1 -> a) -> V1 a

index :: V1 a -> Rep V1 -> a

MonadFix V1 
Instance details

Defined in Linear.V1

Methods

mfix :: (a -> V1 a) -> V1 a

MonadZip V1 
Instance details

Defined in Linear.V1

Methods

mzip :: V1 a -> V1 b -> V1 (a, b)

mzipWith :: (a -> b -> c) -> V1 a -> V1 b -> V1 c

munzip :: V1 (a, b) -> (V1 a, V1 b)

Foldable V1 
Instance details

Defined in Linear.V1

Methods

fold :: Monoid m => V1 m -> m

foldMap :: Monoid m => (a -> m) -> V1 a -> m

foldMap' :: Monoid m => (a -> m) -> V1 a -> m

foldr :: (a -> b -> b) -> b -> V1 a -> b

foldr' :: (a -> b -> b) -> b -> V1 a -> b

foldl :: (b -> a -> b) -> b -> V1 a -> b

foldl' :: (b -> a -> b) -> b -> V1 a -> b

foldr1 :: (a -> a -> a) -> V1 a -> a

foldl1 :: (a -> a -> a) -> V1 a -> a

toList :: V1 a -> [a]

null :: V1 a -> Bool

length :: V1 a -> Int

elem :: Eq a => a -> V1 a -> Bool

maximum :: Ord a => V1 a -> a

minimum :: Ord a => V1 a -> a

sum :: Num a => V1 a -> a

product :: Num a => V1 a -> a

Foldable1 V1 
Instance details

Defined in Linear.V1

Methods

fold1 :: Semigroup m => V1 m -> m

foldMap1 :: Semigroup m => (a -> m) -> V1 a -> m

foldMap1' :: Semigroup m => (a -> m) -> V1 a -> m

toNonEmpty :: V1 a -> NonEmpty a

maximum :: Ord a => V1 a -> a

minimum :: Ord a => V1 a -> a

head :: V1 a -> a

last :: V1 a -> a

foldrMap1 :: (a -> b) -> (a -> b -> b) -> V1 a -> b

foldlMap1' :: (a -> b) -> (b -> a -> b) -> V1 a -> b

foldlMap1 :: (a -> b) -> (b -> a -> b) -> V1 a -> b

foldrMap1' :: (a -> b) -> (a -> b -> b) -> V1 a -> b

Eq1 V1 
Instance details

Defined in Linear.V1

Methods

liftEq :: (a -> b -> Bool) -> V1 a -> V1 b -> Bool

Ord1 V1 
Instance details

Defined in Linear.V1

Methods

liftCompare :: (a -> b -> Ordering) -> V1 a -> V1 b -> Ordering

Read1 V1 
Instance details

Defined in Linear.V1

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (V1 a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [V1 a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (V1 a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [V1 a]

Show1 V1 
Instance details

Defined in Linear.V1

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> V1 a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [V1 a] -> ShowS

Traversable V1 
Instance details

Defined in Linear.V1

Methods

traverse :: Applicative f => (a -> f b) -> V1 a -> f (V1 b)

sequenceA :: Applicative f => V1 (f a) -> f (V1 a)

mapM :: Monad m => (a -> m b) -> V1 a -> m (V1 b)

sequence :: Monad m => V1 (m a) -> m (V1 a)

Applicative V1 
Instance details

Defined in Linear.V1

Methods

pure :: a -> V1 a

(<*>) :: V1 (a -> b) -> V1 a -> V1 b

liftA2 :: (a -> b -> c) -> V1 a -> V1 b -> V1 c

(*>) :: V1 a -> V1 b -> V1 b

(<*) :: V1 a -> V1 b -> V1 a

Functor V1 
Instance details

Defined in Linear.V1

Methods

fmap :: (a -> b) -> V1 a -> V1 b

(<$) :: a -> V1 b -> V1 a

Monad V1 
Instance details

Defined in Linear.V1

Methods

(>>=) :: V1 a -> (a -> V1 b) -> V1 b

(>>) :: V1 a -> V1 b -> V1 b

return :: a -> V1 a

Serial1 V1 
Instance details

Defined in Linear.V1

Methods

serializeWith :: MonadPut m => (a -> m ()) -> V1 a -> m ()

deserializeWith :: MonadGet m => m a -> m (V1 a)

Distributive V1 
Instance details

Defined in Linear.V1

Methods

distribute :: Functor f => f (V1 a) -> V1 (f a)

collect :: Functor f => (a -> V1 b) -> f a -> V1 (f b)

distributeM :: Monad m => m (V1 a) -> V1 (m a)

collectM :: Monad m => (a -> V1 b) -> m a -> V1 (m b)

Hashable1 V1 
Instance details

Defined in Linear.V1

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> V1 a -> Int

Affine V1 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V1 
Instance details

Defined in Linear.Affine

type Diff V1 = V1

Methods

(.-.) :: Num a => V1 a -> V1 a -> Diff V1 a #

(.+^) :: Num a => V1 a -> Diff V1 a -> V1 a #

(.-^) :: Num a => V1 a -> Diff V1 a -> V1 a #

Metric V1 
Instance details

Defined in Linear.V1

Methods

dot :: Num a => V1 a -> V1 a -> a #

quadrance :: Num a => V1 a -> a #

qd :: Num a => V1 a -> V1 a -> a #

distance :: Floating a => V1 a -> V1 a -> a #

norm :: Floating a => V1 a -> a #

signorm :: Floating a => V1 a -> V1 a #

Trace V1 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V1 (V1 a) -> a #

diagonal :: V1 (V1 a) -> V1 a #

Finite V1 
Instance details

Defined in Linear.V1

Associated Types

type Size V1 
Instance details

Defined in Linear.V1

type Size V1 = 1

Methods

toV :: V1 a -> V (Size V1) a

fromV :: V (Size V1) a -> V1 a

R1 V1 
Instance details

Defined in Linear.V1

Methods

_x :: Lens' (V1 a) a #

Additive V1 
Instance details

Defined in Linear.V1

Methods

zero :: Num a => V1 a #

(^+^) :: Num a => V1 a -> V1 a -> V1 a #

(^-^) :: Num a => V1 a -> V1 a -> V1 a #

lerp :: Num a => a -> V1 a -> V1 a -> V1 a #

liftU2 :: (a -> a -> a) -> V1 a -> V1 a -> V1 a #

liftI2 :: (a -> b -> c) -> V1 a -> V1 b -> V1 c #

Apply V1 
Instance details

Defined in Linear.V1

Methods

(<.>) :: V1 (a -> b) -> V1 a -> V1 b

(.>) :: V1 a -> V1 b -> V1 b

(<.) :: V1 a -> V1 b -> V1 a

liftF2 :: (a -> b -> c) -> V1 a -> V1 b -> V1 c

Bind V1 
Instance details

Defined in Linear.V1

Methods

(>>-) :: V1 a -> (a -> V1 b) -> V1 b

join :: V1 (V1 a) -> V1 a

Traversable1 V1 
Instance details

Defined in Linear.V1

Methods

traverse1 :: Apply f => (a -> f b) -> V1 a -> f (V1 b)

sequence1 :: Apply f => V1 (f b) -> f (V1 b)

Generic1 V1 
Instance details

Defined in Linear.V1

Associated Types

type Rep1 V1 
Instance details

Defined in Linear.V1

type Rep1 V1 = D1 ('MetaData "V1" "Linear.V1" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "V1" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))

Methods

from1 :: V1 a -> Rep1 V1 a

to1 :: Rep1 V1 a -> V1 a

Num r => Algebra r (E V1) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E V1 -> E V1 -> r) -> E V1 -> r #

unital :: r -> E V1 -> r #

Num r => Coalgebra r (E V1) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V1 -> r) -> E V1 -> E V1 -> r #

counital :: (E V1 -> r) -> r #

Lift a => Lift (V1 a :: Type) 
Instance details

Defined in Linear.V1

Methods

lift :: Quote m => V1 a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => V1 a -> Code m (V1 a)

Unbox a => Vector Vector (V1 a) 
Instance details

Defined in Linear.V1

Methods

basicUnsafeFreeze :: Mutable Vector s (V1 a) -> ST s (Vector (V1 a))

basicUnsafeThaw :: Vector (V1 a) -> ST s (Mutable Vector s (V1 a))

basicLength :: Vector (V1 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V1 a) -> Vector (V1 a)

basicUnsafeIndexM :: Vector (V1 a) -> Int -> Box (V1 a)

basicUnsafeCopy :: Mutable Vector s (V1 a) -> Vector (V1 a) -> ST s ()

elemseq :: Vector (V1 a) -> V1 a -> b -> b

Unbox a => MVector MVector (V1 a) 
Instance details

Defined in Linear.V1

Methods

basicLength :: MVector s (V1 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V1 a) -> MVector s (V1 a)

basicOverlaps :: MVector s (V1 a) -> MVector s (V1 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V1 a))

basicInitialize :: MVector s (V1 a) -> ST s ()

basicUnsafeReplicate :: Int -> V1 a -> ST s (MVector s (V1 a))

basicUnsafeRead :: MVector s (V1 a) -> Int -> ST s (V1 a)

basicUnsafeWrite :: MVector s (V1 a) -> Int -> V1 a -> ST s ()

basicClear :: MVector s (V1 a) -> ST s ()

basicSet :: MVector s (V1 a) -> V1 a -> ST s ()

basicUnsafeCopy :: MVector s (V1 a) -> MVector s (V1 a) -> ST s ()

basicUnsafeMove :: MVector s (V1 a) -> MVector s (V1 a) -> ST s ()

basicUnsafeGrow :: MVector s (V1 a) -> Int -> ST s (MVector s (V1 a))

Data a => Data (V1 a) 
Instance details

Defined in Linear.V1

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> V1 a -> c (V1 a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (V1 a)

toConstr :: V1 a -> Constr

dataTypeOf :: V1 a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (V1 a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (V1 a))

gmapT :: (forall b. Data b => b -> b) -> V1 a -> V1 a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> V1 a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> V1 a -> r

gmapQ :: (forall d. Data d => d -> u) -> V1 a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> V1 a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> V1 a -> m (V1 a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> V1 a -> m (V1 a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> V1 a -> m (V1 a)

Storable a => Storable (V1 a) 
Instance details

Defined in Linear.V1

Methods

sizeOf :: V1 a -> Int

alignment :: V1 a -> Int

peekElemOff :: Ptr (V1 a) -> Int -> IO (V1 a)

pokeElemOff :: Ptr (V1 a) -> Int -> V1 a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (V1 a)

pokeByteOff :: Ptr b -> Int -> V1 a -> IO ()

peek :: Ptr (V1 a) -> IO (V1 a)

poke :: Ptr (V1 a) -> V1 a -> IO ()

Monoid a => Monoid (V1 a) 
Instance details

Defined in Linear.V1

Methods

mempty :: V1 a

mappend :: V1 a -> V1 a -> V1 a

mconcat :: [V1 a] -> V1 a

Semigroup a => Semigroup (V1 a) 
Instance details

Defined in Linear.V1

Methods

(<>) :: V1 a -> V1 a -> V1 a

sconcat :: NonEmpty (V1 a) -> V1 a

stimes :: Integral b => b -> V1 a -> V1 a

Bounded a => Bounded (V1 a) 
Instance details

Defined in Linear.V1

Methods

minBound :: V1 a

maxBound :: V1 a

Floating a => Floating (V1 a) 
Instance details

Defined in Linear.V1

Methods

pi :: V1 a

exp :: V1 a -> V1 a

log :: V1 a -> V1 a

sqrt :: V1 a -> V1 a

(**) :: V1 a -> V1 a -> V1 a

logBase :: V1 a -> V1 a -> V1 a

sin :: V1 a -> V1 a

cos :: V1 a -> V1 a

tan :: V1 a -> V1 a

asin :: V1 a -> V1 a

acos :: V1 a -> V1 a

atan :: V1 a -> V1 a

sinh :: V1 a -> V1 a

cosh :: V1 a -> V1 a

tanh :: V1 a -> V1 a

asinh :: V1 a -> V1 a

acosh :: V1 a -> V1 a

atanh :: V1 a -> V1 a

log1p :: V1 a -> V1 a

expm1 :: V1 a -> V1 a

log1pexp :: V1 a -> V1 a

log1mexp :: V1 a -> V1 a

Generic (V1 a) 
Instance details

Defined in Linear.V1

Associated Types

type Rep (V1 a) 
Instance details

Defined in Linear.V1

type Rep (V1 a) = D1 ('MetaData "V1" "Linear.V1" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "V1" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: V1 a -> Rep (V1 a) x

to :: Rep (V1 a) x -> V1 a

Ix a => Ix (V1 a) 
Instance details

Defined in Linear.V1

Methods

range :: (V1 a, V1 a) -> [V1 a]

index :: (V1 a, V1 a) -> V1 a -> Int

unsafeIndex :: (V1 a, V1 a) -> V1 a -> Int

inRange :: (V1 a, V1 a) -> V1 a -> Bool

rangeSize :: (V1 a, V1 a) -> Int

unsafeRangeSize :: (V1 a, V1 a) -> Int

Num a => Num (V1 a) 
Instance details

Defined in Linear.V1

Methods

(+) :: V1 a -> V1 a -> V1 a

(-) :: V1 a -> V1 a -> V1 a

(*) :: V1 a -> V1 a -> V1 a

negate :: V1 a -> V1 a

abs :: V1 a -> V1 a

signum :: V1 a -> V1 a

fromInteger :: Integer -> V1 a

Read a => Read (V1 a) 
Instance details

Defined in Linear.V1

Methods

readsPrec :: Int -> ReadS (V1 a)

readList :: ReadS [V1 a]

readPrec :: ReadPrec (V1 a)

readListPrec :: ReadPrec [V1 a]

Fractional a => Fractional (V1 a) 
Instance details

Defined in Linear.V1

Methods

(/) :: V1 a -> V1 a -> V1 a

recip :: V1 a -> V1 a

fromRational :: Rational -> V1 a

Show a => Show (V1 a) 
Instance details

Defined in Linear.V1

Methods

showsPrec :: Int -> V1 a -> ShowS

show :: V1 a -> String

showList :: [V1 a] -> ShowS

Binary a => Binary (V1 a) 
Instance details

Defined in Linear.V1

Methods

put :: V1 a -> Put

get :: Get (V1 a)

putList :: [V1 a] -> Put

Serial a => Serial (V1 a) 
Instance details

Defined in Linear.V1

Methods

serialize :: MonadPut m => V1 a -> m ()

deserialize :: MonadGet m => m (V1 a)

Serialize a => Serialize (V1 a) 
Instance details

Defined in Linear.V1

Methods

put :: Putter (V1 a)

get :: Get (V1 a)

NFData a => NFData (V1 a) 
Instance details

Defined in Linear.V1

Methods

rnf :: V1 a -> ()

Eq a => Eq (V1 a) 
Instance details

Defined in Linear.V1

Methods

(==) :: V1 a -> V1 a -> Bool

(/=) :: V1 a -> V1 a -> Bool

Ord a => Ord (V1 a) 
Instance details

Defined in Linear.V1

Methods

compare :: V1 a -> V1 a -> Ordering

(<) :: V1 a -> V1 a -> Bool

(<=) :: V1 a -> V1 a -> Bool

(>) :: V1 a -> V1 a -> Bool

(>=) :: V1 a -> V1 a -> Bool

max :: V1 a -> V1 a -> V1 a

min :: V1 a -> V1 a -> V1 a

Hashable a => Hashable (V1 a) 
Instance details

Defined in Linear.V1

Methods

hashWithSalt :: Int -> V1 a -> Int

hash :: V1 a -> Int

Ixed (V1 a) 
Instance details

Defined in Linear.V1

Methods

ix :: Index (V1 a) -> Traversal' (V1 a) (IxValue (V1 a))

Epsilon a => Epsilon (V1 a) 
Instance details

Defined in Linear.V1

Methods

nearZero :: V1 a -> Bool #

Random a => Random (V1 a) 
Instance details

Defined in Linear.V1

Methods

randomR :: RandomGen g => (V1 a, V1 a) -> g -> (V1 a, g)

random :: RandomGen g => g -> (V1 a, g)

randomRs :: RandomGen g => (V1 a, V1 a) -> g -> [V1 a]

randoms :: RandomGen g => g -> [V1 a]

Uniform a => Uniform (V1 a) 
Instance details

Defined in Linear.V1

Methods

uniformM :: StatefulGen g m => g -> m (V1 a)

UniformRange a => UniformRange (V1 a) 
Instance details

Defined in Linear.V1

Methods

uniformRM :: StatefulGen g m => (V1 a, V1 a) -> g -> m (V1 a)

Unbox a => Unbox (V1 a) 
Instance details

Defined in Linear.V1

FoldableWithIndex (E V1) V1 
Instance details

Defined in Linear.V1

Methods

ifoldMap :: Monoid m => (E V1 -> a -> m) -> V1 a -> m

ifoldMap' :: Monoid m => (E V1 -> a -> m) -> V1 a -> m

ifoldr :: (E V1 -> a -> b -> b) -> b -> V1 a -> b

ifoldl :: (E V1 -> b -> a -> b) -> b -> V1 a -> b

ifoldr' :: (E V1 -> a -> b -> b) -> b -> V1 a -> b

ifoldl' :: (E V1 -> b -> a -> b) -> b -> V1 a -> b

FunctorWithIndex (E V1) V1 
Instance details

Defined in Linear.V1

Methods

imap :: (E V1 -> a -> b) -> V1 a -> V1 b

TraversableWithIndex (E V1) V1 
Instance details

Defined in Linear.V1

Methods

itraverse :: Applicative f => (E V1 -> a -> f b) -> V1 a -> f (V1 b)

Each (V1 a) (V1 b) a b 
Instance details

Defined in Linear.V1

Methods

each :: Traversal (V1 a) (V1 b) a b

Field1 (V1 a) (V1 b) a b 
Instance details

Defined in Linear.V1

Methods

_1 :: Lens (V1 a) (V1 b) a b

type Rep V1 
Instance details

Defined in Linear.V1

type Rep V1 = E V1
type Diff V1 
Instance details

Defined in Linear.Affine

type Diff V1 = V1
type Size V1 
Instance details

Defined in Linear.V1

type Size V1 = 1
type Rep1 V1 
Instance details

Defined in Linear.V1

type Rep1 V1 = D1 ('MetaData "V1" "Linear.V1" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "V1" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))
newtype MVector s (V1 a) 
Instance details

Defined in Linear.V1

newtype MVector s (V1 a) = MV_V1 (MVector s a)
type Rep (V1 a) 
Instance details

Defined in Linear.V1

type Rep (V1 a) = D1 ('MetaData "V1" "Linear.V1" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "V1" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))
type Index (V1 a) 
Instance details

Defined in Linear.V1

type Index (V1 a) = E V1
type IxValue (V1 a) 
Instance details

Defined in Linear.V1

type IxValue (V1 a) = a
newtype Vector (V1 a) 
Instance details

Defined in Linear.V1

newtype Vector (V1 a) = V_V1 (Vector a)

outer :: (Functor f, Functor g, Num a) => f a -> g a -> f (g a) #

transpose :: (Distributive g, Functor f) => f (g a) -> g (f a) #

class Num a => Conjugate a where #

Minimal complete definition

Nothing

Methods

conjugate :: a -> a #

Instances

Instances details
Conjugate CDouble 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: CDouble -> CDouble #

Conjugate CFloat 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: CFloat -> CFloat #

Conjugate Int16 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Int16 -> Int16 #

Conjugate Int32 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Int32 -> Int32 #

Conjugate Int64 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Int64 -> Int64 #

Conjugate Int8 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Int8 -> Int8 #

Conjugate Word16 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Word16 -> Word16 #

Conjugate Word32 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Word32 -> Word32 #

Conjugate Word64 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Word64 -> Word64 #

Conjugate Word8 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Word8 -> Word8 #

Conjugate Integer 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Integer -> Integer #

Conjugate Double 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Double -> Double #

Conjugate Float 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Float -> Float #

Conjugate Int 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Int -> Int #

Conjugate Word 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Word -> Word #

(Conjugate a, RealFloat a) => Conjugate (Complex a) 
Instance details

Defined in Linear.Conjugate

Methods

conjugate :: Complex a -> Complex a #

(Conjugate a, RealFloat a) => Conjugate (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

conjugate :: Quaternion a -> Quaternion a #

class Functor f => Additive (f :: Type -> Type) where #

Minimal complete definition

Nothing

Methods

zero :: Num a => f a #

(^+^) :: Num a => f a -> f a -> f a #

(^-^) :: Num a => f a -> f a -> f a #

lerp :: Num a => a -> f a -> f a -> f a #

liftU2 :: (a -> a -> a) -> f a -> f a -> f a #

liftI2 :: (a -> b -> c) -> f a -> f b -> f c #

Instances

Instances details
Additive ZipList 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => ZipList a #

(^+^) :: Num a => ZipList a -> ZipList a -> ZipList a #

(^-^) :: Num a => ZipList a -> ZipList a -> ZipList a #

lerp :: Num a => a -> ZipList a -> ZipList a -> ZipList a #

liftU2 :: (a -> a -> a) -> ZipList a -> ZipList a -> ZipList a #

liftI2 :: (a -> b -> c) -> ZipList a -> ZipList b -> ZipList c #

Additive Complex 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => Complex a #

(^+^) :: Num a => Complex a -> Complex a -> Complex a #

(^-^) :: Num a => Complex a -> Complex a -> Complex a #

lerp :: Num a => a -> Complex a -> Complex a -> Complex a #

liftU2 :: (a -> a -> a) -> Complex a -> Complex a -> Complex a #

liftI2 :: (a -> b -> c) -> Complex a -> Complex b -> Complex c #

Additive Identity 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => Identity a #

(^+^) :: Num a => Identity a -> Identity a -> Identity a #

(^-^) :: Num a => Identity a -> Identity a -> Identity a #

lerp :: Num a => a -> Identity a -> Identity a -> Identity a #

liftU2 :: (a -> a -> a) -> Identity a -> Identity a -> Identity a #

liftI2 :: (a -> b -> c) -> Identity a -> Identity b -> Identity c #

Additive IntMap 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => IntMap a #

(^+^) :: Num a => IntMap a -> IntMap a -> IntMap a #

(^-^) :: Num a => IntMap a -> IntMap a -> IntMap a #

lerp :: Num a => a -> IntMap a -> IntMap a -> IntMap a #

liftU2 :: (a -> a -> a) -> IntMap a -> IntMap a -> IntMap a #

liftI2 :: (a -> b -> c) -> IntMap a -> IntMap b -> IntMap c #

Additive Plucker 
Instance details

Defined in Linear.Plucker

Methods

zero :: Num a => Plucker a #

(^+^) :: Num a => Plucker a -> Plucker a -> Plucker a #

(^-^) :: Num a => Plucker a -> Plucker a -> Plucker a #

lerp :: Num a => a -> Plucker a -> Plucker a -> Plucker a #

liftU2 :: (a -> a -> a) -> Plucker a -> Plucker a -> Plucker a #

liftI2 :: (a -> b -> c) -> Plucker a -> Plucker b -> Plucker c #

Additive Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

zero :: Num a => Quaternion a #

(^+^) :: Num a => Quaternion a -> Quaternion a -> Quaternion a #

(^-^) :: Num a => Quaternion a -> Quaternion a -> Quaternion a #

lerp :: Num a => a -> Quaternion a -> Quaternion a -> Quaternion a #

liftU2 :: (a -> a -> a) -> Quaternion a -> Quaternion a -> Quaternion a #

liftI2 :: (a -> b -> c) -> Quaternion a -> Quaternion b -> Quaternion c #

Additive V0 
Instance details

Defined in Linear.V0

Methods

zero :: Num a => V0 a #

(^+^) :: Num a => V0 a -> V0 a -> V0 a #

(^-^) :: Num a => V0 a -> V0 a -> V0 a #

lerp :: Num a => a -> V0 a -> V0 a -> V0 a #

liftU2 :: (a -> a -> a) -> V0 a -> V0 a -> V0 a #

liftI2 :: (a -> b -> c) -> V0 a -> V0 b -> V0 c #

Additive V1 
Instance details

Defined in Linear.V1

Methods

zero :: Num a => V1 a #

(^+^) :: Num a => V1 a -> V1 a -> V1 a #

(^-^) :: Num a => V1 a -> V1 a -> V1 a #

lerp :: Num a => a -> V1 a -> V1 a -> V1 a #

liftU2 :: (a -> a -> a) -> V1 a -> V1 a -> V1 a #

liftI2 :: (a -> b -> c) -> V1 a -> V1 b -> V1 c #

Additive V2 
Instance details

Defined in Linear.V2

Methods

zero :: Num a => V2 a #

(^+^) :: Num a => V2 a -> V2 a -> V2 a #

(^-^) :: Num a => V2 a -> V2 a -> V2 a #

lerp :: Num a => a -> V2 a -> V2 a -> V2 a #

liftU2 :: (a -> a -> a) -> V2 a -> V2 a -> V2 a #

liftI2 :: (a -> b -> c) -> V2 a -> V2 b -> V2 c #

Additive V3 
Instance details

Defined in Linear.V3

Methods

zero :: Num a => V3 a #

(^+^) :: Num a => V3 a -> V3 a -> V3 a #

(^-^) :: Num a => V3 a -> V3 a -> V3 a #

lerp :: Num a => a -> V3 a -> V3 a -> V3 a #

liftU2 :: (a -> a -> a) -> V3 a -> V3 a -> V3 a #

liftI2 :: (a -> b -> c) -> V3 a -> V3 b -> V3 c #

Additive V4 
Instance details

Defined in Linear.V4

Methods

zero :: Num a => V4 a #

(^+^) :: Num a => V4 a -> V4 a -> V4 a #

(^-^) :: Num a => V4 a -> V4 a -> V4 a #

lerp :: Num a => a -> V4 a -> V4 a -> V4 a #

liftU2 :: (a -> a -> a) -> V4 a -> V4 a -> V4 a #

liftI2 :: (a -> b -> c) -> V4 a -> V4 b -> V4 c #

Additive Vector 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => Vector a #

(^+^) :: Num a => Vector a -> Vector a -> Vector a #

(^-^) :: Num a => Vector a -> Vector a -> Vector a #

lerp :: Num a => a -> Vector a -> Vector a -> Vector a #

liftU2 :: (a -> a -> a) -> Vector a -> Vector a -> Vector a #

liftI2 :: (a -> b -> c) -> Vector a -> Vector b -> Vector c #

Additive Maybe 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => Maybe a #

(^+^) :: Num a => Maybe a -> Maybe a -> Maybe a #

(^-^) :: Num a => Maybe a -> Maybe a -> Maybe a #

lerp :: Num a => a -> Maybe a -> Maybe a -> Maybe a #

liftU2 :: (a -> a -> a) -> Maybe a -> Maybe a -> Maybe a #

liftI2 :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c #

Additive [] 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => [a] #

(^+^) :: Num a => [a] -> [a] -> [a] #

(^-^) :: Num a => [a] -> [a] -> [a] #

lerp :: Num a => a -> [a] -> [a] -> [a] #

liftU2 :: (a -> a -> a) -> [a] -> [a] -> [a] #

liftI2 :: (a -> b -> c) -> [a] -> [b] -> [c] #

Ord k => Additive (Map k) 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => Map k a #

(^+^) :: Num a => Map k a -> Map k a -> Map k a #

(^-^) :: Num a => Map k a -> Map k a -> Map k a #

lerp :: Num a => a -> Map k a -> Map k a -> Map k a #

liftU2 :: (a -> a -> a) -> Map k a -> Map k a -> Map k a #

liftI2 :: (a -> b -> c) -> Map k a -> Map k b -> Map k c #

Additive f => Additive (Point f) 
Instance details

Defined in Linear.Affine

Methods

zero :: Num a => Point f a #

(^+^) :: Num a => Point f a -> Point f a -> Point f a #

(^-^) :: Num a => Point f a -> Point f a -> Point f a #

lerp :: Num a => a -> Point f a -> Point f a -> Point f a #

liftU2 :: (a -> a -> a) -> Point f a -> Point f a -> Point f a #

liftI2 :: (a -> b -> c) -> Point f a -> Point f b -> Point f c #

(Eq k, Hashable k) => Additive (HashMap k) 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => HashMap k a #

(^+^) :: Num a => HashMap k a -> HashMap k a -> HashMap k a #

(^-^) :: Num a => HashMap k a -> HashMap k a -> HashMap k a #

lerp :: Num a => a -> HashMap k a -> HashMap k a -> HashMap k a #

liftU2 :: (a -> a -> a) -> HashMap k a -> HashMap k a -> HashMap k a #

liftI2 :: (a -> b -> c) -> HashMap k a -> HashMap k b -> HashMap k c #

Dim n => Additive (V n) 
Instance details

Defined in Linear.V

Methods

zero :: Num a => V n a #

(^+^) :: Num a => V n a -> V n a -> V n a #

(^-^) :: Num a => V n a -> V n a -> V n a #

lerp :: Num a => a -> V n a -> V n a -> V n a #

liftU2 :: (a -> a -> a) -> V n a -> V n a -> V n a #

liftI2 :: (a -> b -> c) -> V n a -> V n b -> V n c #

(Additive f, Additive g) => Additive (Product f g) 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => Product f g a #

(^+^) :: Num a => Product f g a -> Product f g a -> Product f g a #

(^-^) :: Num a => Product f g a -> Product f g a -> Product f g a #

lerp :: Num a => a -> Product f g a -> Product f g a -> Product f g a #

liftU2 :: (a -> a -> a) -> Product f g a -> Product f g a -> Product f g a #

liftI2 :: (a -> b -> c) -> Product f g a -> Product f g b -> Product f g c #

Additive ((->) b) 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => b -> a #

(^+^) :: Num a => (b -> a) -> (b -> a) -> b -> a #

(^-^) :: Num a => (b -> a) -> (b -> a) -> b -> a #

lerp :: Num a => a -> (b -> a) -> (b -> a) -> b -> a #

liftU2 :: (a -> a -> a) -> (b -> a) -> (b -> a) -> b -> a #

liftI2 :: (a -> b0 -> c) -> (b -> a) -> (b -> b0) -> b -> c #

(Additive f, Additive g) => Additive (Compose f g) 
Instance details

Defined in Linear.Vector

Methods

zero :: Num a => Compose f g a #

(^+^) :: Num a => Compose f g a -> Compose f g a -> Compose f g a #

(^-^) :: Num a => Compose f g a -> Compose f g a -> Compose f g a #

lerp :: Num a => a -> Compose f g a -> Compose f g a -> Compose f g a #

liftU2 :: (a -> a -> a) -> Compose f g a -> Compose f g a -> Compose f g a #

liftI2 :: (a -> b -> c) -> Compose f g a -> Compose f g b -> Compose f g c #

(.#) :: Coercible b a => (b -> c) -> (a -> b) -> a -> c #

triple :: Num a => V3 a -> V3 a -> V3 a -> a #

class Complicated (t :: Type -> Type) where #

Methods

_e :: Lens' (t a) a #

_i :: Lens' (t a) a #

Instances

Instances details
Complicated Complex 
Instance details

Defined in Linear.Quaternion

Methods

_e :: Lens' (Complex a) a #

_i :: Lens' (Complex a) a #

Complicated Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_e :: Lens' (Quaternion a) a #

_i :: Lens' (Quaternion a) a #

ex :: forall (t :: Type -> Type). R1 t => E t #

data family MVector s a #

Instances

Instances details
MVector MVector All 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s All -> Int

basicUnsafeSlice :: Int -> Int -> MVector s All -> MVector s All

basicOverlaps :: MVector s All -> MVector s All -> Bool

basicUnsafeNew :: Int -> ST s (MVector s All)

basicInitialize :: MVector s All -> ST s ()

basicUnsafeReplicate :: Int -> All -> ST s (MVector s All)

basicUnsafeRead :: MVector s All -> Int -> ST s All

basicUnsafeWrite :: MVector s All -> Int -> All -> ST s ()

basicClear :: MVector s All -> ST s ()

basicSet :: MVector s All -> All -> ST s ()

basicUnsafeCopy :: MVector s All -> MVector s All -> ST s ()

basicUnsafeMove :: MVector s All -> MVector s All -> ST s ()

basicUnsafeGrow :: MVector s All -> Int -> ST s (MVector s All)

MVector MVector Any 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Any -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Any -> MVector s Any

basicOverlaps :: MVector s Any -> MVector s Any -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Any)

basicInitialize :: MVector s Any -> ST s ()

basicUnsafeReplicate :: Int -> Any -> ST s (MVector s Any)

basicUnsafeRead :: MVector s Any -> Int -> ST s Any

basicUnsafeWrite :: MVector s Any -> Int -> Any -> ST s ()

basicClear :: MVector s Any -> ST s ()

basicSet :: MVector s Any -> Any -> ST s ()

basicUnsafeCopy :: MVector s Any -> MVector s Any -> ST s ()

basicUnsafeMove :: MVector s Any -> MVector s Any -> ST s ()

basicUnsafeGrow :: MVector s Any -> Int -> ST s (MVector s Any)

MVector MVector Int16 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Int16 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Int16 -> MVector s Int16

basicOverlaps :: MVector s Int16 -> MVector s Int16 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Int16)

basicInitialize :: MVector s Int16 -> ST s ()

basicUnsafeReplicate :: Int -> Int16 -> ST s (MVector s Int16)

basicUnsafeRead :: MVector s Int16 -> Int -> ST s Int16

basicUnsafeWrite :: MVector s Int16 -> Int -> Int16 -> ST s ()

basicClear :: MVector s Int16 -> ST s ()

basicSet :: MVector s Int16 -> Int16 -> ST s ()

basicUnsafeCopy :: MVector s Int16 -> MVector s Int16 -> ST s ()

basicUnsafeMove :: MVector s Int16 -> MVector s Int16 -> ST s ()

basicUnsafeGrow :: MVector s Int16 -> Int -> ST s (MVector s Int16)

MVector MVector Int32 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Int32 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Int32 -> MVector s Int32

basicOverlaps :: MVector s Int32 -> MVector s Int32 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Int32)

basicInitialize :: MVector s Int32 -> ST s ()

basicUnsafeReplicate :: Int -> Int32 -> ST s (MVector s Int32)

basicUnsafeRead :: MVector s Int32 -> Int -> ST s Int32

basicUnsafeWrite :: MVector s Int32 -> Int -> Int32 -> ST s ()

basicClear :: MVector s Int32 -> ST s ()

basicSet :: MVector s Int32 -> Int32 -> ST s ()

basicUnsafeCopy :: MVector s Int32 -> MVector s Int32 -> ST s ()

basicUnsafeMove :: MVector s Int32 -> MVector s Int32 -> ST s ()

basicUnsafeGrow :: MVector s Int32 -> Int -> ST s (MVector s Int32)

MVector MVector Int64 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Int64 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Int64 -> MVector s Int64

basicOverlaps :: MVector s Int64 -> MVector s Int64 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Int64)

basicInitialize :: MVector s Int64 -> ST s ()

basicUnsafeReplicate :: Int -> Int64 -> ST s (MVector s Int64)

basicUnsafeRead :: MVector s Int64 -> Int -> ST s Int64

basicUnsafeWrite :: MVector s Int64 -> Int -> Int64 -> ST s ()

basicClear :: MVector s Int64 -> ST s ()

basicSet :: MVector s Int64 -> Int64 -> ST s ()

basicUnsafeCopy :: MVector s Int64 -> MVector s Int64 -> ST s ()

basicUnsafeMove :: MVector s Int64 -> MVector s Int64 -> ST s ()

basicUnsafeGrow :: MVector s Int64 -> Int -> ST s (MVector s Int64)

MVector MVector Int8 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Int8 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Int8 -> MVector s Int8

basicOverlaps :: MVector s Int8 -> MVector s Int8 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Int8)

basicInitialize :: MVector s Int8 -> ST s ()

basicUnsafeReplicate :: Int -> Int8 -> ST s (MVector s Int8)

basicUnsafeRead :: MVector s Int8 -> Int -> ST s Int8

basicUnsafeWrite :: MVector s Int8 -> Int -> Int8 -> ST s ()

basicClear :: MVector s Int8 -> ST s ()

basicSet :: MVector s Int8 -> Int8 -> ST s ()

basicUnsafeCopy :: MVector s Int8 -> MVector s Int8 -> ST s ()

basicUnsafeMove :: MVector s Int8 -> MVector s Int8 -> ST s ()

basicUnsafeGrow :: MVector s Int8 -> Int -> ST s (MVector s Int8)

MVector MVector Word16 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word16 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word16 -> MVector s Word16

basicOverlaps :: MVector s Word16 -> MVector s Word16 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word16)

basicInitialize :: MVector s Word16 -> ST s ()

basicUnsafeReplicate :: Int -> Word16 -> ST s (MVector s Word16)

basicUnsafeRead :: MVector s Word16 -> Int -> ST s Word16

basicUnsafeWrite :: MVector s Word16 -> Int -> Word16 -> ST s ()

basicClear :: MVector s Word16 -> ST s ()

basicSet :: MVector s Word16 -> Word16 -> ST s ()

basicUnsafeCopy :: MVector s Word16 -> MVector s Word16 -> ST s ()

basicUnsafeMove :: MVector s Word16 -> MVector s Word16 -> ST s ()

basicUnsafeGrow :: MVector s Word16 -> Int -> ST s (MVector s Word16)

MVector MVector Word32 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word32 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word32 -> MVector s Word32

basicOverlaps :: MVector s Word32 -> MVector s Word32 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word32)

basicInitialize :: MVector s Word32 -> ST s ()

basicUnsafeReplicate :: Int -> Word32 -> ST s (MVector s Word32)

basicUnsafeRead :: MVector s Word32 -> Int -> ST s Word32

basicUnsafeWrite :: MVector s Word32 -> Int -> Word32 -> ST s ()

basicClear :: MVector s Word32 -> ST s ()

basicSet :: MVector s Word32 -> Word32 -> ST s ()

basicUnsafeCopy :: MVector s Word32 -> MVector s Word32 -> ST s ()

basicUnsafeMove :: MVector s Word32 -> MVector s Word32 -> ST s ()

basicUnsafeGrow :: MVector s Word32 -> Int -> ST s (MVector s Word32)

MVector MVector Word64 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word64 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word64 -> MVector s Word64

basicOverlaps :: MVector s Word64 -> MVector s Word64 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word64)

basicInitialize :: MVector s Word64 -> ST s ()

basicUnsafeReplicate :: Int -> Word64 -> ST s (MVector s Word64)

basicUnsafeRead :: MVector s Word64 -> Int -> ST s Word64

basicUnsafeWrite :: MVector s Word64 -> Int -> Word64 -> ST s ()

basicClear :: MVector s Word64 -> ST s ()

basicSet :: MVector s Word64 -> Word64 -> ST s ()

basicUnsafeCopy :: MVector s Word64 -> MVector s Word64 -> ST s ()

basicUnsafeMove :: MVector s Word64 -> MVector s Word64 -> ST s ()

basicUnsafeGrow :: MVector s Word64 -> Int -> ST s (MVector s Word64)

MVector MVector Word8 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word8 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word8 -> MVector s Word8

basicOverlaps :: MVector s Word8 -> MVector s Word8 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word8)

basicInitialize :: MVector s Word8 -> ST s ()

basicUnsafeReplicate :: Int -> Word8 -> ST s (MVector s Word8)

basicUnsafeRead :: MVector s Word8 -> Int -> ST s Word8

basicUnsafeWrite :: MVector s Word8 -> Int -> Word8 -> ST s ()

basicClear :: MVector s Word8 -> ST s ()

basicSet :: MVector s Word8 -> Word8 -> ST s ()

basicUnsafeCopy :: MVector s Word8 -> MVector s Word8 -> ST s ()

basicUnsafeMove :: MVector s Word8 -> MVector s Word8 -> ST s ()

basicUnsafeGrow :: MVector s Word8 -> Int -> ST s (MVector s Word8)

MVector MVector () 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s () -> Int

basicUnsafeSlice :: Int -> Int -> MVector s () -> MVector s ()

basicOverlaps :: MVector s () -> MVector s () -> Bool

basicUnsafeNew :: Int -> ST s (MVector s ())

basicInitialize :: MVector s () -> ST s ()

basicUnsafeReplicate :: Int -> () -> ST s (MVector s ())

basicUnsafeRead :: MVector s () -> Int -> ST s ()

basicUnsafeWrite :: MVector s () -> Int -> () -> ST s ()

basicClear :: MVector s () -> ST s ()

basicSet :: MVector s () -> () -> ST s ()

basicUnsafeCopy :: MVector s () -> MVector s () -> ST s ()

basicUnsafeMove :: MVector s () -> MVector s () -> ST s ()

basicUnsafeGrow :: MVector s () -> Int -> ST s (MVector s ())

MVector MVector Bool 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Bool -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Bool -> MVector s Bool

basicOverlaps :: MVector s Bool -> MVector s Bool -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Bool)

basicInitialize :: MVector s Bool -> ST s ()

basicUnsafeReplicate :: Int -> Bool -> ST s (MVector s Bool)

basicUnsafeRead :: MVector s Bool -> Int -> ST s Bool

basicUnsafeWrite :: MVector s Bool -> Int -> Bool -> ST s ()

basicClear :: MVector s Bool -> ST s ()

basicSet :: MVector s Bool -> Bool -> ST s ()

basicUnsafeCopy :: MVector s Bool -> MVector s Bool -> ST s ()

basicUnsafeMove :: MVector s Bool -> MVector s Bool -> ST s ()

basicUnsafeGrow :: MVector s Bool -> Int -> ST s (MVector s Bool)

MVector MVector Char 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Char -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Char -> MVector s Char

basicOverlaps :: MVector s Char -> MVector s Char -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Char)

basicInitialize :: MVector s Char -> ST s ()

basicUnsafeReplicate :: Int -> Char -> ST s (MVector s Char)

basicUnsafeRead :: MVector s Char -> Int -> ST s Char

basicUnsafeWrite :: MVector s Char -> Int -> Char -> ST s ()

basicClear :: MVector s Char -> ST s ()

basicSet :: MVector s Char -> Char -> ST s ()

basicUnsafeCopy :: MVector s Char -> MVector s Char -> ST s ()

basicUnsafeMove :: MVector s Char -> MVector s Char -> ST s ()

basicUnsafeGrow :: MVector s Char -> Int -> ST s (MVector s Char)

MVector MVector Double 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Double -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Double -> MVector s Double

basicOverlaps :: MVector s Double -> MVector s Double -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Double)

basicInitialize :: MVector s Double -> ST s ()

basicUnsafeReplicate :: Int -> Double -> ST s (MVector s Double)

basicUnsafeRead :: MVector s Double -> Int -> ST s Double

basicUnsafeWrite :: MVector s Double -> Int -> Double -> ST s ()

basicClear :: MVector s Double -> ST s ()

basicSet :: MVector s Double -> Double -> ST s ()

basicUnsafeCopy :: MVector s Double -> MVector s Double -> ST s ()

basicUnsafeMove :: MVector s Double -> MVector s Double -> ST s ()

basicUnsafeGrow :: MVector s Double -> Int -> ST s (MVector s Double)

MVector MVector Float 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Float -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Float -> MVector s Float

basicOverlaps :: MVector s Float -> MVector s Float -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Float)

basicInitialize :: MVector s Float -> ST s ()

basicUnsafeReplicate :: Int -> Float -> ST s (MVector s Float)

basicUnsafeRead :: MVector s Float -> Int -> ST s Float

basicUnsafeWrite :: MVector s Float -> Int -> Float -> ST s ()

basicClear :: MVector s Float -> ST s ()

basicSet :: MVector s Float -> Float -> ST s ()

basicUnsafeCopy :: MVector s Float -> MVector s Float -> ST s ()

basicUnsafeMove :: MVector s Float -> MVector s Float -> ST s ()

basicUnsafeGrow :: MVector s Float -> Int -> ST s (MVector s Float)

MVector MVector Int 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Int -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Int -> MVector s Int

basicOverlaps :: MVector s Int -> MVector s Int -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Int)

basicInitialize :: MVector s Int -> ST s ()

basicUnsafeReplicate :: Int -> Int -> ST s (MVector s Int)

basicUnsafeRead :: MVector s Int -> Int -> ST s Int

basicUnsafeWrite :: MVector s Int -> Int -> Int -> ST s ()

basicClear :: MVector s Int -> ST s ()

basicSet :: MVector s Int -> Int -> ST s ()

basicUnsafeCopy :: MVector s Int -> MVector s Int -> ST s ()

basicUnsafeMove :: MVector s Int -> MVector s Int -> ST s ()

basicUnsafeGrow :: MVector s Int -> Int -> ST s (MVector s Int)

MVector MVector Word 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word -> MVector s Word

basicOverlaps :: MVector s Word -> MVector s Word -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word)

basicInitialize :: MVector s Word -> ST s ()

basicUnsafeReplicate :: Int -> Word -> ST s (MVector s Word)

basicUnsafeRead :: MVector s Word -> Int -> ST s Word

basicUnsafeWrite :: MVector s Word -> Int -> Word -> ST s ()

basicClear :: MVector s Word -> ST s ()

basicSet :: MVector s Word -> Word -> ST s ()

basicUnsafeCopy :: MVector s Word -> MVector s Word -> ST s ()

basicUnsafeMove :: MVector s Word -> MVector s Word -> ST s ()

basicUnsafeGrow :: MVector s Word -> Int -> ST s (MVector s Word)

Unbox a => MVector MVector (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Complex a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Complex a) -> MVector s (Complex a)

basicOverlaps :: MVector s (Complex a) -> MVector s (Complex a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Complex a))

basicInitialize :: MVector s (Complex a) -> ST s ()

basicUnsafeReplicate :: Int -> Complex a -> ST s (MVector s (Complex a))

basicUnsafeRead :: MVector s (Complex a) -> Int -> ST s (Complex a)

basicUnsafeWrite :: MVector s (Complex a) -> Int -> Complex a -> ST s ()

basicClear :: MVector s (Complex a) -> ST s ()

basicSet :: MVector s (Complex a) -> Complex a -> ST s ()

basicUnsafeCopy :: MVector s (Complex a) -> MVector s (Complex a) -> ST s ()

basicUnsafeMove :: MVector s (Complex a) -> MVector s (Complex a) -> ST s ()

basicUnsafeGrow :: MVector s (Complex a) -> Int -> ST s (MVector s (Complex a))

Unbox a => MVector MVector (Identity a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Identity a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Identity a) -> MVector s (Identity a)

basicOverlaps :: MVector s (Identity a) -> MVector s (Identity a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Identity a))

basicInitialize :: MVector s (Identity a) -> ST s ()

basicUnsafeReplicate :: Int -> Identity a -> ST s (MVector s (Identity a))

basicUnsafeRead :: MVector s (Identity a) -> Int -> ST s (Identity a)

basicUnsafeWrite :: MVector s (Identity a) -> Int -> Identity a -> ST s ()

basicClear :: MVector s (Identity a) -> ST s ()

basicSet :: MVector s (Identity a) -> Identity a -> ST s ()

basicUnsafeCopy :: MVector s (Identity a) -> MVector s (Identity a) -> ST s ()

basicUnsafeMove :: MVector s (Identity a) -> MVector s (Identity a) -> ST s ()

basicUnsafeGrow :: MVector s (Identity a) -> Int -> ST s (MVector s (Identity a))

Unbox a => MVector MVector (Down a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Down a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Down a) -> MVector s (Down a)

basicOverlaps :: MVector s (Down a) -> MVector s (Down a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Down a))

basicInitialize :: MVector s (Down a) -> ST s ()

basicUnsafeReplicate :: Int -> Down a -> ST s (MVector s (Down a))

basicUnsafeRead :: MVector s (Down a) -> Int -> ST s (Down a)

basicUnsafeWrite :: MVector s (Down a) -> Int -> Down a -> ST s ()

basicClear :: MVector s (Down a) -> ST s ()

basicSet :: MVector s (Down a) -> Down a -> ST s ()

basicUnsafeCopy :: MVector s (Down a) -> MVector s (Down a) -> ST s ()

basicUnsafeMove :: MVector s (Down a) -> MVector s (Down a) -> ST s ()

basicUnsafeGrow :: MVector s (Down a) -> Int -> ST s (MVector s (Down a))

Unbox a => MVector MVector (First a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (First a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (First a) -> MVector s (First a)

basicOverlaps :: MVector s (First a) -> MVector s (First a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (First a))

basicInitialize :: MVector s (First a) -> ST s ()

basicUnsafeReplicate :: Int -> First a -> ST s (MVector s (First a))

basicUnsafeRead :: MVector s (First a) -> Int -> ST s (First a)

basicUnsafeWrite :: MVector s (First a) -> Int -> First a -> ST s ()

basicClear :: MVector s (First a) -> ST s ()

basicSet :: MVector s (First a) -> First a -> ST s ()

basicUnsafeCopy :: MVector s (First a) -> MVector s (First a) -> ST s ()

basicUnsafeMove :: MVector s (First a) -> MVector s (First a) -> ST s ()

basicUnsafeGrow :: MVector s (First a) -> Int -> ST s (MVector s (First a))

Unbox a => MVector MVector (Last a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Last a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Last a) -> MVector s (Last a)

basicOverlaps :: MVector s (Last a) -> MVector s (Last a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Last a))

basicInitialize :: MVector s (Last a) -> ST s ()

basicUnsafeReplicate :: Int -> Last a -> ST s (MVector s (Last a))

basicUnsafeRead :: MVector s (Last a) -> Int -> ST s (Last a)

basicUnsafeWrite :: MVector s (Last a) -> Int -> Last a -> ST s ()

basicClear :: MVector s (Last a) -> ST s ()

basicSet :: MVector s (Last a) -> Last a -> ST s ()

basicUnsafeCopy :: MVector s (Last a) -> MVector s (Last a) -> ST s ()

basicUnsafeMove :: MVector s (Last a) -> MVector s (Last a) -> ST s ()

basicUnsafeGrow :: MVector s (Last a) -> Int -> ST s (MVector s (Last a))

Unbox a => MVector MVector (Max a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Max a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Max a) -> MVector s (Max a)

basicOverlaps :: MVector s (Max a) -> MVector s (Max a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Max a))

basicInitialize :: MVector s (Max a) -> ST s ()

basicUnsafeReplicate :: Int -> Max a -> ST s (MVector s (Max a))

basicUnsafeRead :: MVector s (Max a) -> Int -> ST s (Max a)

basicUnsafeWrite :: MVector s (Max a) -> Int -> Max a -> ST s ()

basicClear :: MVector s (Max a) -> ST s ()

basicSet :: MVector s (Max a) -> Max a -> ST s ()

basicUnsafeCopy :: MVector s (Max a) -> MVector s (Max a) -> ST s ()

basicUnsafeMove :: MVector s (Max a) -> MVector s (Max a) -> ST s ()

basicUnsafeGrow :: MVector s (Max a) -> Int -> ST s (MVector s (Max a))

Unbox a => MVector MVector (Min a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Min a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Min a) -> MVector s (Min a)

basicOverlaps :: MVector s (Min a) -> MVector s (Min a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Min a))

basicInitialize :: MVector s (Min a) -> ST s ()

basicUnsafeReplicate :: Int -> Min a -> ST s (MVector s (Min a))

basicUnsafeRead :: MVector s (Min a) -> Int -> ST s (Min a)

basicUnsafeWrite :: MVector s (Min a) -> Int -> Min a -> ST s ()

basicClear :: MVector s (Min a) -> ST s ()

basicSet :: MVector s (Min a) -> Min a -> ST s ()

basicUnsafeCopy :: MVector s (Min a) -> MVector s (Min a) -> ST s ()

basicUnsafeMove :: MVector s (Min a) -> MVector s (Min a) -> ST s ()

basicUnsafeGrow :: MVector s (Min a) -> Int -> ST s (MVector s (Min a))

Unbox a => MVector MVector (WrappedMonoid a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (WrappedMonoid a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a)

basicOverlaps :: MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (WrappedMonoid a))

basicInitialize :: MVector s (WrappedMonoid a) -> ST s ()

basicUnsafeReplicate :: Int -> WrappedMonoid a -> ST s (MVector s (WrappedMonoid a))

basicUnsafeRead :: MVector s (WrappedMonoid a) -> Int -> ST s (WrappedMonoid a)

basicUnsafeWrite :: MVector s (WrappedMonoid a) -> Int -> WrappedMonoid a -> ST s ()

basicClear :: MVector s (WrappedMonoid a) -> ST s ()

basicSet :: MVector s (WrappedMonoid a) -> WrappedMonoid a -> ST s ()

basicUnsafeCopy :: MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a) -> ST s ()

basicUnsafeMove :: MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a) -> ST s ()

basicUnsafeGrow :: MVector s (WrappedMonoid a) -> Int -> ST s (MVector s (WrappedMonoid a))

Unbox a => MVector MVector (Dual a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Dual a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Dual a) -> MVector s (Dual a)

basicOverlaps :: MVector s (Dual a) -> MVector s (Dual a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Dual a))

basicInitialize :: MVector s (Dual a) -> ST s ()

basicUnsafeReplicate :: Int -> Dual a -> ST s (MVector s (Dual a))

basicUnsafeRead :: MVector s (Dual a) -> Int -> ST s (Dual a)

basicUnsafeWrite :: MVector s (Dual a) -> Int -> Dual a -> ST s ()

basicClear :: MVector s (Dual a) -> ST s ()

basicSet :: MVector s (Dual a) -> Dual a -> ST s ()

basicUnsafeCopy :: MVector s (Dual a) -> MVector s (Dual a) -> ST s ()

basicUnsafeMove :: MVector s (Dual a) -> MVector s (Dual a) -> ST s ()

basicUnsafeGrow :: MVector s (Dual a) -> Int -> ST s (MVector s (Dual a))

Unbox a => MVector MVector (Product a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Product a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Product a) -> MVector s (Product a)

basicOverlaps :: MVector s (Product a) -> MVector s (Product a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Product a))

basicInitialize :: MVector s (Product a) -> ST s ()

basicUnsafeReplicate :: Int -> Product a -> ST s (MVector s (Product a))

basicUnsafeRead :: MVector s (Product a) -> Int -> ST s (Product a)

basicUnsafeWrite :: MVector s (Product a) -> Int -> Product a -> ST s ()

basicClear :: MVector s (Product a) -> ST s ()

basicSet :: MVector s (Product a) -> Product a -> ST s ()

basicUnsafeCopy :: MVector s (Product a) -> MVector s (Product a) -> ST s ()

basicUnsafeMove :: MVector s (Product a) -> MVector s (Product a) -> ST s ()

basicUnsafeGrow :: MVector s (Product a) -> Int -> ST s (MVector s (Product a))

Unbox a => MVector MVector (Sum a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Sum a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Sum a) -> MVector s (Sum a)

basicOverlaps :: MVector s (Sum a) -> MVector s (Sum a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Sum a))

basicInitialize :: MVector s (Sum a) -> ST s ()

basicUnsafeReplicate :: Int -> Sum a -> ST s (MVector s (Sum a))

basicUnsafeRead :: MVector s (Sum a) -> Int -> ST s (Sum a)

basicUnsafeWrite :: MVector s (Sum a) -> Int -> Sum a -> ST s ()

basicClear :: MVector s (Sum a) -> ST s ()

basicSet :: MVector s (Sum a) -> Sum a -> ST s ()

basicUnsafeCopy :: MVector s (Sum a) -> MVector s (Sum a) -> ST s ()

basicUnsafeMove :: MVector s (Sum a) -> MVector s (Sum a) -> ST s ()

basicUnsafeGrow :: MVector s (Sum a) -> Int -> ST s (MVector s (Sum a))

Unbox a => MVector MVector (Plucker a) 
Instance details

Defined in Linear.Plucker

Methods

basicLength :: MVector s (Plucker a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Plucker a) -> MVector s (Plucker a)

basicOverlaps :: MVector s (Plucker a) -> MVector s (Plucker a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Plucker a))

basicInitialize :: MVector s (Plucker a) -> ST s ()

basicUnsafeReplicate :: Int -> Plucker a -> ST s (MVector s (Plucker a))

basicUnsafeRead :: MVector s (Plucker a) -> Int -> ST s (Plucker a)

basicUnsafeWrite :: MVector s (Plucker a) -> Int -> Plucker a -> ST s ()

basicClear :: MVector s (Plucker a) -> ST s ()

basicSet :: MVector s (Plucker a) -> Plucker a -> ST s ()

basicUnsafeCopy :: MVector s (Plucker a) -> MVector s (Plucker a) -> ST s ()

basicUnsafeMove :: MVector s (Plucker a) -> MVector s (Plucker a) -> ST s ()

basicUnsafeGrow :: MVector s (Plucker a) -> Int -> ST s (MVector s (Plucker a))

Unbox a => MVector MVector (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

basicLength :: MVector s (Quaternion a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Quaternion a) -> MVector s (Quaternion a)

basicOverlaps :: MVector s (Quaternion a) -> MVector s (Quaternion a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Quaternion a))

basicInitialize :: MVector s (Quaternion a) -> ST s ()

basicUnsafeReplicate :: Int -> Quaternion a -> ST s (MVector s (Quaternion a))

basicUnsafeRead :: MVector s (Quaternion a) -> Int -> ST s (Quaternion a)

basicUnsafeWrite :: MVector s (Quaternion a) -> Int -> Quaternion a -> ST s ()

basicClear :: MVector s (Quaternion a) -> ST s ()

basicSet :: MVector s (Quaternion a) -> Quaternion a -> ST s ()

basicUnsafeCopy :: MVector s (Quaternion a) -> MVector s (Quaternion a) -> ST s ()

basicUnsafeMove :: MVector s (Quaternion a) -> MVector s (Quaternion a) -> ST s ()

basicUnsafeGrow :: MVector s (Quaternion a) -> Int -> ST s (MVector s (Quaternion a))

MVector MVector (V0 a) 
Instance details

Defined in Linear.V0

Methods

basicLength :: MVector s (V0 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V0 a) -> MVector s (V0 a)

basicOverlaps :: MVector s (V0 a) -> MVector s (V0 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V0 a))

basicInitialize :: MVector s (V0 a) -> ST s ()

basicUnsafeReplicate :: Int -> V0 a -> ST s (MVector s (V0 a))

basicUnsafeRead :: MVector s (V0 a) -> Int -> ST s (V0 a)

basicUnsafeWrite :: MVector s (V0 a) -> Int -> V0 a -> ST s ()

basicClear :: MVector s (V0 a) -> ST s ()

basicSet :: MVector s (V0 a) -> V0 a -> ST s ()

basicUnsafeCopy :: MVector s (V0 a) -> MVector s (V0 a) -> ST s ()

basicUnsafeMove :: MVector s (V0 a) -> MVector s (V0 a) -> ST s ()

basicUnsafeGrow :: MVector s (V0 a) -> Int -> ST s (MVector s (V0 a))

Unbox a => MVector MVector (V1 a) 
Instance details

Defined in Linear.V1

Methods

basicLength :: MVector s (V1 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V1 a) -> MVector s (V1 a)

basicOverlaps :: MVector s (V1 a) -> MVector s (V1 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V1 a))

basicInitialize :: MVector s (V1 a) -> ST s ()

basicUnsafeReplicate :: Int -> V1 a -> ST s (MVector s (V1 a))

basicUnsafeRead :: MVector s (V1 a) -> Int -> ST s (V1 a)

basicUnsafeWrite :: MVector s (V1 a) -> Int -> V1 a -> ST s ()

basicClear :: MVector s (V1 a) -> ST s ()

basicSet :: MVector s (V1 a) -> V1 a -> ST s ()

basicUnsafeCopy :: MVector s (V1 a) -> MVector s (V1 a) -> ST s ()

basicUnsafeMove :: MVector s (V1 a) -> MVector s (V1 a) -> ST s ()

basicUnsafeGrow :: MVector s (V1 a) -> Int -> ST s (MVector s (V1 a))

Unbox a => MVector MVector (V2 a) 
Instance details

Defined in Linear.V2

Methods

basicLength :: MVector s (V2 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V2 a) -> MVector s (V2 a)

basicOverlaps :: MVector s (V2 a) -> MVector s (V2 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V2 a))

basicInitialize :: MVector s (V2 a) -> ST s ()

basicUnsafeReplicate :: Int -> V2 a -> ST s (MVector s (V2 a))

basicUnsafeRead :: MVector s (V2 a) -> Int -> ST s (V2 a)

basicUnsafeWrite :: MVector s (V2 a) -> Int -> V2 a -> ST s ()

basicClear :: MVector s (V2 a) -> ST s ()

basicSet :: MVector s (V2 a) -> V2 a -> ST s ()

basicUnsafeCopy :: MVector s (V2 a) -> MVector s (V2 a) -> ST s ()

basicUnsafeMove :: MVector s (V2 a) -> MVector s (V2 a) -> ST s ()

basicUnsafeGrow :: MVector s (V2 a) -> Int -> ST s (MVector s (V2 a))

Unbox a => MVector MVector (V3 a) 
Instance details

Defined in Linear.V3

Methods

basicLength :: MVector s (V3 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V3 a) -> MVector s (V3 a)

basicOverlaps :: MVector s (V3 a) -> MVector s (V3 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V3 a))

basicInitialize :: MVector s (V3 a) -> ST s ()

basicUnsafeReplicate :: Int -> V3 a -> ST s (MVector s (V3 a))

basicUnsafeRead :: MVector s (V3 a) -> Int -> ST s (V3 a)

basicUnsafeWrite :: MVector s (V3 a) -> Int -> V3 a -> ST s ()

basicClear :: MVector s (V3 a) -> ST s ()

basicSet :: MVector s (V3 a) -> V3 a -> ST s ()

basicUnsafeCopy :: MVector s (V3 a) -> MVector s (V3 a) -> ST s ()

basicUnsafeMove :: MVector s (V3 a) -> MVector s (V3 a) -> ST s ()

basicUnsafeGrow :: MVector s (V3 a) -> Int -> ST s (MVector s (V3 a))

Unbox a => MVector MVector (V4 a) 
Instance details

Defined in Linear.V4

Methods

basicLength :: MVector s (V4 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V4 a) -> MVector s (V4 a)

basicOverlaps :: MVector s (V4 a) -> MVector s (V4 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V4 a))

basicInitialize :: MVector s (V4 a) -> ST s ()

basicUnsafeReplicate :: Int -> V4 a -> ST s (MVector s (V4 a))

basicUnsafeRead :: MVector s (V4 a) -> Int -> ST s (V4 a)

basicUnsafeWrite :: MVector s (V4 a) -> Int -> V4 a -> ST s ()

basicClear :: MVector s (V4 a) -> ST s ()

basicSet :: MVector s (V4 a) -> V4 a -> ST s ()

basicUnsafeCopy :: MVector s (V4 a) -> MVector s (V4 a) -> ST s ()

basicUnsafeMove :: MVector s (V4 a) -> MVector s (V4 a) -> ST s ()

basicUnsafeGrow :: MVector s (V4 a) -> Int -> ST s (MVector s (V4 a))

Unbox a => MVector MVector (V2 a) 
Instance details

Defined in SDL.Internal.Vect

Methods

basicLength :: MVector s (V2 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V2 a) -> MVector s (V2 a)

basicOverlaps :: MVector s (V2 a) -> MVector s (V2 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V2 a))

basicInitialize :: MVector s (V2 a) -> ST s ()

basicUnsafeReplicate :: Int -> V2 a -> ST s (MVector s (V2 a))

basicUnsafeRead :: MVector s (V2 a) -> Int -> ST s (V2 a)

basicUnsafeWrite :: MVector s (V2 a) -> Int -> V2 a -> ST s ()

basicClear :: MVector s (V2 a) -> ST s ()

basicSet :: MVector s (V2 a) -> V2 a -> ST s ()

basicUnsafeCopy :: MVector s (V2 a) -> MVector s (V2 a) -> ST s ()

basicUnsafeMove :: MVector s (V2 a) -> MVector s (V2 a) -> ST s ()

basicUnsafeGrow :: MVector s (V2 a) -> Int -> ST s (MVector s (V2 a))

Unbox a => MVector MVector (V3 a) 
Instance details

Defined in SDL.Internal.Vect

Methods

basicLength :: MVector s (V3 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V3 a) -> MVector s (V3 a)

basicOverlaps :: MVector s (V3 a) -> MVector s (V3 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V3 a))

basicInitialize :: MVector s (V3 a) -> ST s ()

basicUnsafeReplicate :: Int -> V3 a -> ST s (MVector s (V3 a))

basicUnsafeRead :: MVector s (V3 a) -> Int -> ST s (V3 a)

basicUnsafeWrite :: MVector s (V3 a) -> Int -> V3 a -> ST s ()

basicClear :: MVector s (V3 a) -> ST s ()

basicSet :: MVector s (V3 a) -> V3 a -> ST s ()

basicUnsafeCopy :: MVector s (V3 a) -> MVector s (V3 a) -> ST s ()

basicUnsafeMove :: MVector s (V3 a) -> MVector s (V3 a) -> ST s ()

basicUnsafeGrow :: MVector s (V3 a) -> Int -> ST s (MVector s (V3 a))

Unbox a => MVector MVector (V4 a) 
Instance details

Defined in SDL.Internal.Vect

Methods

basicLength :: MVector s (V4 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V4 a) -> MVector s (V4 a)

basicOverlaps :: MVector s (V4 a) -> MVector s (V4 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V4 a))

basicInitialize :: MVector s (V4 a) -> ST s ()

basicUnsafeReplicate :: Int -> V4 a -> ST s (MVector s (V4 a))

basicUnsafeRead :: MVector s (V4 a) -> Int -> ST s (V4 a)

basicUnsafeWrite :: MVector s (V4 a) -> Int -> V4 a -> ST s ()

basicClear :: MVector s (V4 a) -> ST s ()

basicSet :: MVector s (V4 a) -> V4 a -> ST s ()

basicUnsafeCopy :: MVector s (V4 a) -> MVector s (V4 a) -> ST s ()

basicUnsafeMove :: MVector s (V4 a) -> MVector s (V4 a) -> ST s ()

basicUnsafeGrow :: MVector s (V4 a) -> Int -> ST s (MVector s (V4 a))

Unbox a => MVector MVector (Rectangle a) 
Instance details

Defined in SDL.Video.Renderer

Methods

basicLength :: MVector s (Rectangle a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Rectangle a) -> MVector s (Rectangle a)

basicOverlaps :: MVector s (Rectangle a) -> MVector s (Rectangle a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Rectangle a))

basicInitialize :: MVector s (Rectangle a) -> ST s ()

basicUnsafeReplicate :: Int -> Rectangle a -> ST s (MVector s (Rectangle a))

basicUnsafeRead :: MVector s (Rectangle a) -> Int -> ST s (Rectangle a)

basicUnsafeWrite :: MVector s (Rectangle a) -> Int -> Rectangle a -> ST s ()

basicClear :: MVector s (Rectangle a) -> ST s ()

basicSet :: MVector s (Rectangle a) -> Rectangle a -> ST s ()

basicUnsafeCopy :: MVector s (Rectangle a) -> MVector s (Rectangle a) -> ST s ()

basicUnsafeMove :: MVector s (Rectangle a) -> MVector s (Rectangle a) -> ST s ()

basicUnsafeGrow :: MVector s (Rectangle a) -> Int -> ST s (MVector s (Rectangle a))

Prim a => MVector MVector (UnboxViaPrim a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (UnboxViaPrim a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (UnboxViaPrim a) -> MVector s (UnboxViaPrim a)

basicOverlaps :: MVector s (UnboxViaPrim a) -> MVector s (UnboxViaPrim a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (UnboxViaPrim a))

basicInitialize :: MVector s (UnboxViaPrim a) -> ST s ()

basicUnsafeReplicate :: Int -> UnboxViaPrim a -> ST s (MVector s (UnboxViaPrim a))

basicUnsafeRead :: MVector s (UnboxViaPrim a) -> Int -> ST s (UnboxViaPrim a)

basicUnsafeWrite :: MVector s (UnboxViaPrim a) -> Int -> UnboxViaPrim a -> ST s ()

basicClear :: MVector s (UnboxViaPrim a) -> ST s ()

basicSet :: MVector s (UnboxViaPrim a) -> UnboxViaPrim a -> ST s ()

basicUnsafeCopy :: MVector s (UnboxViaPrim a) -> MVector s (UnboxViaPrim a) -> ST s ()

basicUnsafeMove :: MVector s (UnboxViaPrim a) -> MVector s (UnboxViaPrim a) -> ST s ()

basicUnsafeGrow :: MVector s (UnboxViaPrim a) -> Int -> ST s (MVector s (UnboxViaPrim a))

(Unbox a, Unbox b) => MVector MVector (Arg a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Arg a b) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Arg a b) -> MVector s (Arg a b)

basicOverlaps :: MVector s (Arg a b) -> MVector s (Arg a b) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Arg a b))

basicInitialize :: MVector s (Arg a b) -> ST s ()

basicUnsafeReplicate :: Int -> Arg a b -> ST s (MVector s (Arg a b))

basicUnsafeRead :: MVector s (Arg a b) -> Int -> ST s (Arg a b)

basicUnsafeWrite :: MVector s (Arg a b) -> Int -> Arg a b -> ST s ()

basicClear :: MVector s (Arg a b) -> ST s ()

basicSet :: MVector s (Arg a b) -> Arg a b -> ST s ()

basicUnsafeCopy :: MVector s (Arg a b) -> MVector s (Arg a b) -> ST s ()

basicUnsafeMove :: MVector s (Arg a b) -> MVector s (Arg a b) -> ST s ()

basicUnsafeGrow :: MVector s (Arg a b) -> Int -> ST s (MVector s (Arg a b))

Unbox (f a) => MVector MVector (Point f a) 
Instance details

Defined in Linear.Affine

Methods

basicLength :: MVector s (Point f a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Point f a) -> MVector s (Point f a)

basicOverlaps :: MVector s (Point f a) -> MVector s (Point f a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Point f a))

basicInitialize :: MVector s (Point f a) -> ST s ()

basicUnsafeReplicate :: Int -> Point f a -> ST s (MVector s (Point f a))

basicUnsafeRead :: MVector s (Point f a) -> Int -> ST s (Point f a)

basicUnsafeWrite :: MVector s (Point f a) -> Int -> Point f a -> ST s ()

basicClear :: MVector s (Point f a) -> ST s ()

basicSet :: MVector s (Point f a) -> Point f a -> ST s ()

basicUnsafeCopy :: MVector s (Point f a) -> MVector s (Point f a) -> ST s ()

basicUnsafeMove :: MVector s (Point f a) -> MVector s (Point f a) -> ST s ()

basicUnsafeGrow :: MVector s (Point f a) -> Int -> ST s (MVector s (Point f a))

Unbox (f a) => MVector MVector (Point f a) 
Instance details

Defined in SDL.Internal.Vect

Methods

basicLength :: MVector s (Point f a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Point f a) -> MVector s (Point f a)

basicOverlaps :: MVector s (Point f a) -> MVector s (Point f a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Point f a))

basicInitialize :: MVector s (Point f a) -> ST s ()

basicUnsafeReplicate :: Int -> Point f a -> ST s (MVector s (Point f a))

basicUnsafeRead :: MVector s (Point f a) -> Int -> ST s (Point f a)

basicUnsafeWrite :: MVector s (Point f a) -> Int -> Point f a -> ST s ()

basicClear :: MVector s (Point f a) -> ST s ()

basicSet :: MVector s (Point f a) -> Point f a -> ST s ()

basicUnsafeCopy :: MVector s (Point f a) -> MVector s (Point f a) -> ST s ()

basicUnsafeMove :: MVector s (Point f a) -> MVector s (Point f a) -> ST s ()

basicUnsafeGrow :: MVector s (Point f a) -> Int -> ST s (MVector s (Point f a))

(IsoUnbox a b, Unbox b) => MVector MVector (As a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (As a b) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (As a b) -> MVector s (As a b)

basicOverlaps :: MVector s (As a b) -> MVector s (As a b) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (As a b))

basicInitialize :: MVector s (As a b) -> ST s ()

basicUnsafeReplicate :: Int -> As a b -> ST s (MVector s (As a b))

basicUnsafeRead :: MVector s (As a b) -> Int -> ST s (As a b)

basicUnsafeWrite :: MVector s (As a b) -> Int -> As a b -> ST s ()

basicClear :: MVector s (As a b) -> ST s ()

basicSet :: MVector s (As a b) -> As a b -> ST s ()

basicUnsafeCopy :: MVector s (As a b) -> MVector s (As a b) -> ST s ()

basicUnsafeMove :: MVector s (As a b) -> MVector s (As a b) -> ST s ()

basicUnsafeGrow :: MVector s (As a b) -> Int -> ST s (MVector s (As a b))

(Unbox a, Unbox b) => MVector MVector (a, b) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (a, b) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (a, b) -> MVector s (a, b)

basicOverlaps :: MVector s (a, b) -> MVector s (a, b) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (a, b))

basicInitialize :: MVector s (a, b) -> ST s ()

basicUnsafeReplicate :: Int -> (a, b) -> ST s (MVector s (a, b))

basicUnsafeRead :: MVector s (a, b) -> Int -> ST s (a, b)

basicUnsafeWrite :: MVector s (a, b) -> Int -> (a, b) -> ST s ()

basicClear :: MVector s (a, b) -> ST s ()

basicSet :: MVector s (a, b) -> (a, b) -> ST s ()

basicUnsafeCopy :: MVector s (a, b) -> MVector s (a, b) -> ST s ()

basicUnsafeMove :: MVector s (a, b) -> MVector s (a, b) -> ST s ()

basicUnsafeGrow :: MVector s (a, b) -> Int -> ST s (MVector s (a, b))

Unbox a => MVector MVector (Const a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Const a b) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Const a b) -> MVector s (Const a b)

basicOverlaps :: MVector s (Const a b) -> MVector s (Const a b) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Const a b))

basicInitialize :: MVector s (Const a b) -> ST s ()

basicUnsafeReplicate :: Int -> Const a b -> ST s (MVector s (Const a b))

basicUnsafeRead :: MVector s (Const a b) -> Int -> ST s (Const a b)

basicUnsafeWrite :: MVector s (Const a b) -> Int -> Const a b -> ST s ()

basicClear :: MVector s (Const a b) -> ST s ()

basicSet :: MVector s (Const a b) -> Const a b -> ST s ()

basicUnsafeCopy :: MVector s (Const a b) -> MVector s (Const a b) -> ST s ()

basicUnsafeMove :: MVector s (Const a b) -> MVector s (Const a b) -> ST s ()

basicUnsafeGrow :: MVector s (Const a b) -> Int -> ST s (MVector s (Const a b))

Unbox (f a) => MVector MVector (Alt f a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Alt f a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Alt f a) -> MVector s (Alt f a)

basicOverlaps :: MVector s (Alt f a) -> MVector s (Alt f a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Alt f a))

basicInitialize :: MVector s (Alt f a) -> ST s ()

basicUnsafeReplicate :: Int -> Alt f a -> ST s (MVector s (Alt f a))

basicUnsafeRead :: MVector s (Alt f a) -> Int -> ST s (Alt f a)

basicUnsafeWrite :: MVector s (Alt f a) -> Int -> Alt f a -> ST s ()

basicClear :: MVector s (Alt f a) -> ST s ()

basicSet :: MVector s (Alt f a) -> Alt f a -> ST s ()

basicUnsafeCopy :: MVector s (Alt f a) -> MVector s (Alt f a) -> ST s ()

basicUnsafeMove :: MVector s (Alt f a) -> MVector s (Alt f a) -> ST s ()

basicUnsafeGrow :: MVector s (Alt f a) -> Int -> ST s (MVector s (Alt f a))

(Dim n, Unbox a) => MVector MVector (V n a) 
Instance details

Defined in Linear.V

Methods

basicLength :: MVector s (V n a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V n a) -> MVector s (V n a)

basicOverlaps :: MVector s (V n a) -> MVector s (V n a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V n a))

basicInitialize :: MVector s (V n a) -> ST s ()

basicUnsafeReplicate :: Int -> V n a -> ST s (MVector s (V n a))

basicUnsafeRead :: MVector s (V n a) -> Int -> ST s (V n a)

basicUnsafeWrite :: MVector s (V n a) -> Int -> V n a -> ST s ()

basicClear :: MVector s (V n a) -> ST s ()

basicSet :: MVector s (V n a) -> V n a -> ST s ()

basicUnsafeCopy :: MVector s (V n a) -> MVector s (V n a) -> ST s ()

basicUnsafeMove :: MVector s (V n a) -> MVector s (V n a) -> ST s ()

basicUnsafeGrow :: MVector s (V n a) -> Int -> ST s (MVector s (V n a))

(Unbox a, Unbox b, Unbox c) => MVector MVector (a, b, c) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (a, b, c) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (a, b, c) -> MVector s (a, b, c)

basicOverlaps :: MVector s (a, b, c) -> MVector s (a, b, c) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (a, b, c))

basicInitialize :: MVector s (a, b, c) -> ST s ()

basicUnsafeReplicate :: Int -> (a, b, c) -> ST s (MVector s (a, b, c))

basicUnsafeRead :: MVector s (a, b, c) -> Int -> ST s (a, b, c)

basicUnsafeWrite :: MVector s (a, b, c) -> Int -> (a, b, c) -> ST s ()

basicClear :: MVector s (a, b, c) -> ST s ()

basicSet :: MVector s (a, b, c) -> (a, b, c) -> ST s ()

basicUnsafeCopy :: MVector s (a, b, c) -> MVector s (a, b, c) -> ST s ()

basicUnsafeMove :: MVector s (a, b, c) -> MVector s (a, b, c) -> ST s ()

basicUnsafeGrow :: MVector s (a, b, c) -> Int -> ST s (MVector s (a, b, c))

(Unbox a, Unbox b, Unbox c, Unbox d) => MVector MVector (a, b, c, d) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (a, b, c, d) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (a, b, c, d) -> MVector s (a, b, c, d)

basicOverlaps :: MVector s (a, b, c, d) -> MVector s (a, b, c, d) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (a, b, c, d))

basicInitialize :: MVector s (a, b, c, d) -> ST s ()

basicUnsafeReplicate :: Int -> (a, b, c, d) -> ST s (MVector s (a, b, c, d))

basicUnsafeRead :: MVector s (a, b, c, d) -> Int -> ST s (a, b, c, d)

basicUnsafeWrite :: MVector s (a, b, c, d) -> Int -> (a, b, c, d) -> ST s ()

basicClear :: MVector s (a, b, c, d) -> ST s ()

basicSet :: MVector s (a, b, c, d) -> (a, b, c, d) -> ST s ()

basicUnsafeCopy :: MVector s (a, b, c, d) -> MVector s (a, b, c, d) -> ST s ()

basicUnsafeMove :: MVector s (a, b, c, d) -> MVector s (a, b, c, d) -> ST s ()

basicUnsafeGrow :: MVector s (a, b, c, d) -> Int -> ST s (MVector s (a, b, c, d))

Unbox (f (g a)) => MVector MVector (Compose f g a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Compose f g a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Compose f g a) -> MVector s (Compose f g a)

basicOverlaps :: MVector s (Compose f g a) -> MVector s (Compose f g a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Compose f g a))

basicInitialize :: MVector s (Compose f g a) -> ST s ()

basicUnsafeReplicate :: Int -> Compose f g a -> ST s (MVector s (Compose f g a))

basicUnsafeRead :: MVector s (Compose f g a) -> Int -> ST s (Compose f g a)

basicUnsafeWrite :: MVector s (Compose f g a) -> Int -> Compose f g a -> ST s ()

basicClear :: MVector s (Compose f g a) -> ST s ()

basicSet :: MVector s (Compose f g a) -> Compose f g a -> ST s ()

basicUnsafeCopy :: MVector s (Compose f g a) -> MVector s (Compose f g a) -> ST s ()

basicUnsafeMove :: MVector s (Compose f g a) -> MVector s (Compose f g a) -> ST s ()

basicUnsafeGrow :: MVector s (Compose f g a) -> Int -> ST s (MVector s (Compose f g a))

(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => MVector MVector (a, b, c, d, e) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (a, b, c, d, e) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (a, b, c, d, e) -> MVector s (a, b, c, d, e)

basicOverlaps :: MVector s (a, b, c, d, e) -> MVector s (a, b, c, d, e) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (a, b, c, d, e))

basicInitialize :: MVector s (a, b, c, d, e) -> ST s ()

basicUnsafeReplicate :: Int -> (a, b, c, d, e) -> ST s (MVector s (a, b, c, d, e))

basicUnsafeRead :: MVector s (a, b, c, d, e) -> Int -> ST s (a, b, c, d, e)

basicUnsafeWrite :: MVector s (a, b, c, d, e) -> Int -> (a, b, c, d, e) -> ST s ()

basicClear :: MVector s (a, b, c, d, e) -> ST s ()

basicSet :: MVector s (a, b, c, d, e) -> (a, b, c, d, e) -> ST s ()

basicUnsafeCopy :: MVector s (a, b, c, d, e) -> MVector s (a, b, c, d, e) -> ST s ()

basicUnsafeMove :: MVector s (a, b, c, d, e) -> MVector s (a, b, c, d, e) -> ST s ()

basicUnsafeGrow :: MVector s (a, b, c, d, e) -> Int -> ST s (MVector s (a, b, c, d, e))

(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => MVector MVector (a, b, c, d, e, f) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (a, b, c, d, e, f) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (a, b, c, d, e, f) -> MVector s (a, b, c, d, e, f)

basicOverlaps :: MVector s (a, b, c, d, e, f) -> MVector s (a, b, c, d, e, f) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (a, b, c, d, e, f))

basicInitialize :: MVector s (a, b, c, d, e, f) -> ST s ()

basicUnsafeReplicate :: Int -> (a, b, c, d, e, f) -> ST s (MVector s (a, b, c, d, e, f))

basicUnsafeRead :: MVector s (a, b, c, d, e, f) -> Int -> ST s (a, b, c, d, e, f)

basicUnsafeWrite :: MVector s (a, b, c, d, e, f) -> Int -> (a, b, c, d, e, f) -> ST s ()

basicClear :: MVector s (a, b, c, d, e, f) -> ST s ()

basicSet :: MVector s (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> ST s ()

basicUnsafeCopy :: MVector s (a, b, c, d, e, f) -> MVector s (a, b, c, d, e, f) -> ST s ()

basicUnsafeMove :: MVector s (a, b, c, d, e, f) -> MVector s (a, b, c, d, e, f) -> ST s ()

basicUnsafeGrow :: MVector s (a, b, c, d, e, f) -> Int -> ST s (MVector s (a, b, c, d, e, f))

NFData1 (MVector s) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

liftRnf :: (a -> ()) -> MVector s a -> ()

NFData (MVector s a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

rnf :: MVector s a -> ()

newtype MVector s All 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s All = MV_All (MVector s Bool)
newtype MVector s Any 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Any = MV_Any (MVector s Bool)
newtype MVector s Int16 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Int16 = MV_Int16 (MVector s Int16)
newtype MVector s Int32 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Int32 = MV_Int32 (MVector s Int32)
newtype MVector s Int64 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Int64 = MV_Int64 (MVector s Int64)
newtype MVector s Int8 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Int8 = MV_Int8 (MVector s Int8)
newtype MVector s Word16 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Word16 = MV_Word16 (MVector s Word16)
newtype MVector s Word32 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Word32 = MV_Word32 (MVector s Word32)
newtype MVector s Word64 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Word64 = MV_Word64 (MVector s Word64)
newtype MVector s Word8 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Word8 = MV_Word8 (MVector s Word8)
newtype MVector s () 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s () = MV_Unit Int
newtype MVector s Bool 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Bool = MV_Bool (MVector s Word8)
newtype MVector s Char 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Char = MV_Char (MVector s Char)
newtype MVector s Double 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Double = MV_Double (MVector s Double)
newtype MVector s Float 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Float = MV_Float (MVector s Float)
newtype MVector s Int 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Int = MV_Int (MVector s Int)
newtype MVector s Word 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s Word = MV_Word (MVector s Word)
newtype MVector s (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Complex a) = MV_Complex (MVector s (a, a))
newtype MVector s (Identity a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Identity a) = MV_Identity (MVector s a)
newtype MVector s (Down a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Down a) = MV_Down (MVector s a)
newtype MVector s (First a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (First a) = MV_First (MVector s a)
newtype MVector s (Last a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Last a) = MV_Last (MVector s a)
newtype MVector s (Max a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Max a) = MV_Max (MVector s a)
newtype MVector s (Min a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Min a) = MV_Min (MVector s a)
newtype MVector s (WrappedMonoid a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (WrappedMonoid a) = MV_WrappedMonoid (MVector s a)
newtype MVector s (Dual a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Dual a) = MV_Dual (MVector s a)
newtype MVector s (Product a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Product a) = MV_Product (MVector s a)
newtype MVector s (Sum a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Sum a) = MV_Sum (MVector s a)
data MVector s (Plucker a) 
Instance details

Defined in Linear.Plucker

data MVector s (Plucker a) = MV_Plucker !Int (MVector s a)
data MVector s (Quaternion a) 
Instance details

Defined in Linear.Quaternion

data MVector s (Quaternion a) = MV_Quaternion !Int (MVector s a)
newtype MVector s (V0 a) 
Instance details

Defined in Linear.V0

newtype MVector s (V0 a) = MV_V0 Int
newtype MVector s (V1 a) 
Instance details

Defined in Linear.V1

newtype MVector s (V1 a) = MV_V1 (MVector s a)
data MVector s (V2 a) 
Instance details

Defined in Linear.V2

data MVector s (V2 a) = MV_V2 !Int !(MVector s a)
data MVector s (V3 a) 
Instance details

Defined in Linear.V3

data MVector s (V3 a) = MV_V3 !Int !(MVector s a)
data MVector s (V4 a) 
Instance details

Defined in Linear.V4

data MVector s (V4 a) = MV_V4 !Int !(MVector s a)
data MVector s (V2 a) Source # 
Instance details

Defined in SDL.Internal.Vect

data MVector s (V2 a) = MV_V2 !Int !(MVector s a)
data MVector s (V3 a) Source # 
Instance details

Defined in SDL.Internal.Vect

data MVector s (V3 a) = MV_V3 !Int !(MVector s a)
data MVector s (V4 a) Source # 
Instance details

Defined in SDL.Internal.Vect

data MVector s (V4 a) = MV_V4 !Int !(MVector s a)
newtype MVector s (Rectangle a) Source # 
Instance details

Defined in SDL.Video.Renderer

newtype MVector s (Rectangle a) = MV_Rectangle (MVector s (Point V2 a, V2 a))
newtype MVector s (UnboxViaPrim a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (UnboxViaPrim a) = MV_UnboxViaPrim (MVector s a)
newtype MVector s (Arg a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Arg a b) = MV_Arg (MVector s (a, b))
newtype MVector s (Point f a) 
Instance details

Defined in Linear.Affine

newtype MVector s (Point f a) = MV_P (MVector s (f a))
data MVector s (Point f a) Source # 
Instance details

Defined in SDL.Internal.Vect

data MVector s (Point f a) = MV_P !(MVector s (f a))
newtype MVector s (As a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (As a b) = MV_UnboxAs (MVector s b)
data MVector s (a, b) 
Instance details

Defined in Data.Vector.Unboxed.Base

data MVector s (a, b) = MV_2 !Int !(MVector s a) !(MVector s b)
newtype MVector s (Const a b) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Const a b) = MV_Const (MVector s a)
newtype MVector s (Alt f a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Alt f a) = MV_Alt (MVector s (f a))
data MVector s (V n a) 
Instance details

Defined in Linear.V

data MVector s (V n a) = MV_VN !Int !(MVector s a)
data MVector s (a, b, c) 
Instance details

Defined in Data.Vector.Unboxed.Base

data MVector s (a, b, c) = MV_3 !Int !(MVector s a) !(MVector s b) !(MVector s c)
data MVector s (a, b, c, d) 
Instance details

Defined in Data.Vector.Unboxed.Base

data MVector s (a, b, c, d) = MV_4 !Int !(MVector s a) !(MVector s b) !(MVector s c) !(MVector s d)
newtype MVector s (Compose f g a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Compose f g a) = MV_Compose (MVector s (f (g a)))
data MVector s (a, b, c, d, e) 
Instance details

Defined in Data.Vector.Unboxed.Base

data MVector s (a, b, c, d, e) = MV_5 !Int !(MVector s a) !(MVector s b) !(MVector s c) !(MVector s d) !(MVector s e)
data MVector s (a, b, c, d, e, f) 
Instance details

Defined in Data.Vector.Unboxed.Base

data MVector s (a, b, c, d, e, f) = MV_6 !Int !(MVector s a) !(MVector s b) !(MVector s c) !(MVector s d) !(MVector s e) !(MVector s f)

class Complicated t => Hamiltonian (t :: Type -> Type) where #

Methods

_j :: Lens' (t a) a #

_k :: Lens' (t a) a #

_ijk :: Lens' (t a) (V3 a) #

Instances

Instances details
Hamiltonian Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_j :: Lens' (Quaternion a) a #

_k :: Lens' (Quaternion a) a #

_ijk :: Lens' (Quaternion a) (V3 a) #

class R2 t => R3 (t :: Type -> Type) where #

Methods

_z :: Lens' (t a) a #

_xyz :: Lens' (t a) (V3 a) #

Instances

Instances details
R3 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_z :: Lens' (Quaternion a) a #

_xyz :: Lens' (Quaternion a) (V3 a) #

R3 V3 
Instance details

Defined in Linear.V3

Methods

_z :: Lens' (V3 a) a #

_xyz :: Lens' (V3 a) (V3 a) #

R3 V4 
Instance details

Defined in Linear.V4

Methods

_z :: Lens' (V4 a) a #

_xyz :: Lens' (V4 a) (V3 a) #

R3 f => R3 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_z :: Lens' (Point f a) a #

_xyz :: Lens' (Point f a) (V3 a) #

class Functor m => Trace (m :: Type -> Type) where #

Minimal complete definition

Nothing

Methods

trace :: Num a => m (m a) -> a #

diagonal :: m (m a) -> m a #

Instances

Instances details
Trace Complex 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => Complex (Complex a) -> a #

diagonal :: Complex (Complex a) -> Complex a #

Trace IntMap 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => IntMap (IntMap a) -> a #

diagonal :: IntMap (IntMap a) -> IntMap a #

Trace Plucker 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => Plucker (Plucker a) -> a #

diagonal :: Plucker (Plucker a) -> Plucker a #

Trace Quaternion 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => Quaternion (Quaternion a) -> a #

diagonal :: Quaternion (Quaternion a) -> Quaternion a #

Trace V0 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V0 (V0 a) -> a #

diagonal :: V0 (V0 a) -> V0 a #

Trace V1 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V1 (V1 a) -> a #

diagonal :: V1 (V1 a) -> V1 a #

Trace V2 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V2 (V2 a) -> a #

diagonal :: V2 (V2 a) -> V2 a #

Trace V3 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V3 (V3 a) -> a #

diagonal :: V3 (V3 a) -> V3 a #

Trace V4 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V4 (V4 a) -> a #

diagonal :: V4 (V4 a) -> V4 a #

Ord k => Trace (Map k) 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => Map k (Map k a) -> a #

diagonal :: Map k (Map k a) -> Map k a #

(Eq k, Hashable k) => Trace (HashMap k) 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => HashMap k (HashMap k a) -> a #

diagonal :: HashMap k (HashMap k a) -> HashMap k a #

Dim n => Trace (V n) 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V n (V n a) -> a #

diagonal :: V n (V n a) -> V n a #

(Trace f, Trace g) => Trace (Product f g) 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => Product f g (Product f g a) -> a #

diagonal :: Product f g (Product f g a) -> Product f g a #

(Distributive g, Trace g, Trace f) => Trace (Compose g f) 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => Compose g f (Compose g f a) -> a #

diagonal :: Compose g f (Compose g f a) -> Compose g f a #

class R1 t => R2 (t :: Type -> Type) where #

Minimal complete definition

_xy

Methods

_y :: Lens' (t a) a #

_xy :: Lens' (t a) (V2 a) #

Instances

Instances details
R2 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_y :: Lens' (Quaternion a) a #

_xy :: Lens' (Quaternion a) (V2 a) #

R2 V2 
Instance details

Defined in Linear.V2

Methods

_y :: Lens' (V2 a) a #

_xy :: Lens' (V2 a) (V2 a) #

R2 V3 
Instance details

Defined in Linear.V3

Methods

_y :: Lens' (V3 a) a #

_xy :: Lens' (V3 a) (V2 a) #

R2 V4 
Instance details

Defined in Linear.V4

Methods

_y :: Lens' (V4 a) a #

_xy :: Lens' (V4 a) (V2 a) #

R2 f => R2 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_y :: Lens' (Point f a) a #

_xy :: Lens' (Point f a) (V2 a) #

class Num r => Algebra r m where #

Methods

mult :: (m -> m -> r) -> m -> r #

unital :: r -> m -> r #

Instances

Instances details
Num r => Algebra r Void 
Instance details

Defined in Linear.Algebra

Methods

mult :: (Void -> Void -> r) -> Void -> r #

unital :: r -> Void -> r #

Num r => Algebra r () 
Instance details

Defined in Linear.Algebra

Methods

mult :: (() -> () -> r) -> () -> r #

unital :: r -> () -> r #

Num r => Algebra r (E Complex) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E Complex -> E Complex -> r) -> E Complex -> r #

unital :: r -> E Complex -> r #

(Num r, TrivialConjugate r) => Algebra r (E Quaternion) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E Quaternion -> E Quaternion -> r) -> E Quaternion -> r #

unital :: r -> E Quaternion -> r #

Num r => Algebra r (E V0) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E V0 -> E V0 -> r) -> E V0 -> r #

unital :: r -> E V0 -> r #

Num r => Algebra r (E V1) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E V1 -> E V1 -> r) -> E V1 -> r #

unital :: r -> E V1 -> r #

(Algebra r a, Algebra r b) => Algebra r (a, b) 
Instance details

Defined in Linear.Algebra

Methods

mult :: ((a, b) -> (a, b) -> r) -> (a, b) -> r #

unital :: r -> (a, b) -> r #

class Num r => Coalgebra r m where #

Methods

comult :: (m -> r) -> m -> m -> r #

counital :: (m -> r) -> r #

Instances

Instances details
Num r => Coalgebra r Void 
Instance details

Defined in Linear.Algebra

Methods

comult :: (Void -> r) -> Void -> Void -> r #

counital :: (Void -> r) -> r #

Num r => Coalgebra r () 
Instance details

Defined in Linear.Algebra

Methods

comult :: (() -> r) -> () -> () -> r #

counital :: (() -> r) -> r #

Num r => Coalgebra r (E Complex) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E Complex -> r) -> E Complex -> E Complex -> r #

counital :: (E Complex -> r) -> r #

(Num r, TrivialConjugate r) => Coalgebra r (E Quaternion) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E Quaternion -> r) -> E Quaternion -> E Quaternion -> r #

counital :: (E Quaternion -> r) -> r #

Num r => Coalgebra r (E V0) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V0 -> r) -> E V0 -> E V0 -> r #

counital :: (E V0 -> r) -> r #

Num r => Coalgebra r (E V1) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V1 -> r) -> E V1 -> E V1 -> r #

counital :: (E V1 -> r) -> r #

Num r => Coalgebra r (E V2) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V2 -> r) -> E V2 -> E V2 -> r #

counital :: (E V2 -> r) -> r #

Num r => Coalgebra r (E V3) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V3 -> r) -> E V3 -> E V3 -> r #

counital :: (E V3 -> r) -> r #

Num r => Coalgebra r (E V4) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V4 -> r) -> E V4 -> E V4 -> r #

counital :: (E V4 -> r) -> r #

(Coalgebra r m, Coalgebra r n) => Coalgebra r (m, n) 
Instance details

Defined in Linear.Algebra

Methods

comult :: ((m, n) -> r) -> (m, n) -> (m, n) -> r #

counital :: ((m, n) -> r) -> r #

comultRep :: (Representable f, Coalgebra r (Rep f)) => f r -> f (f r) #

counitalRep :: (Representable f, Coalgebra r (Rep f)) => f r -> r #

multRep :: (Representable f, Algebra r (Rep f)) => f (f r) -> f r #

unitalRep :: (Representable f, Algebra r (Rep f)) => r -> f r #

getLinear :: (Binary a, Applicative t, Traversable t) => Get (t a) #

putLinear :: (Binary a, Foldable t) => t a -> Put #

class Conjugate a => TrivialConjugate a #

Instances

Instances details
TrivialConjugate CDouble 
Instance details

Defined in Linear.Conjugate

TrivialConjugate CFloat 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Int16 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Int32 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Int64 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Int8 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Word16 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Word32 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Word64 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Word8 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Integer 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Double 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Float 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Int 
Instance details

Defined in Linear.Conjugate

TrivialConjugate Word 
Instance details

Defined in Linear.Conjugate

($*) :: Representable f => Covector r (Rep f) -> f r -> r #

newtype Covector r a #

Constructors

Covector 

Fields

Instances

Instances details
Num r => Alternative (Covector r) 
Instance details

Defined in Linear.Covector

Methods

empty :: Covector r a

(<|>) :: Covector r a -> Covector r a -> Covector r a

some :: Covector r a -> Covector r [a]

many :: Covector r a -> Covector r [a]

Applicative (Covector r) 
Instance details

Defined in Linear.Covector

Methods

pure :: a -> Covector r a

(<*>) :: Covector r (a -> b) -> Covector r a -> Covector r b

liftA2 :: (a -> b -> c) -> Covector r a -> Covector r b -> Covector r c

(*>) :: Covector r a -> Covector r b -> Covector r b

(<*) :: Covector r a -> Covector r b -> Covector r a

Functor (Covector r) 
Instance details

Defined in Linear.Covector

Methods

fmap :: (a -> b) -> Covector r a -> Covector r b

(<$) :: a -> Covector r b -> Covector r a

Monad (Covector r) 
Instance details

Defined in Linear.Covector

Methods

(>>=) :: Covector r a -> (a -> Covector r b) -> Covector r b

(>>) :: Covector r a -> Covector r b -> Covector r b

return :: a -> Covector r a

Num r => MonadPlus (Covector r) 
Instance details

Defined in Linear.Covector

Methods

mzero :: Covector r a

mplus :: Covector r a -> Covector r a -> Covector r a

Num r => Alt (Covector r) 
Instance details

Defined in Linear.Covector

Methods

(<!>) :: Covector r a -> Covector r a -> Covector r a

some :: Applicative (Covector r) => Covector r a -> Covector r [a]

many :: Applicative (Covector r) => Covector r a -> Covector r [a]

Apply (Covector r) 
Instance details

Defined in Linear.Covector

Methods

(<.>) :: Covector r (a -> b) -> Covector r a -> Covector r b

(.>) :: Covector r a -> Covector r b -> Covector r b

(<.) :: Covector r a -> Covector r b -> Covector r a

liftF2 :: (a -> b -> c) -> Covector r a -> Covector r b -> Covector r c

Bind (Covector r) 
Instance details

Defined in Linear.Covector

Methods

(>>-) :: Covector r a -> (a -> Covector r b) -> Covector r b

join :: Covector r (Covector r a) -> Covector r a

Num r => Plus (Covector r) 
Instance details

Defined in Linear.Covector

Methods

zero :: Covector r a

Coalgebra r m => Num (Covector r m) 
Instance details

Defined in Linear.Covector

Methods

(+) :: Covector r m -> Covector r m -> Covector r m

(-) :: Covector r m -> Covector r m -> Covector r m

(*) :: Covector r m -> Covector r m -> Covector r m

negate :: Covector r m -> Covector r m

abs :: Covector r m -> Covector r m

signum :: Covector r m -> Covector r m

fromInteger :: Integer -> Covector r m

class Num a => Epsilon a where #

Methods

nearZero :: a -> Bool #

Instances

Instances details
Epsilon CDouble 
Instance details

Defined in Linear.Epsilon

Methods

nearZero :: CDouble -> Bool #

Epsilon CFloat 
Instance details

Defined in Linear.Epsilon

Methods

nearZero :: CFloat -> Bool #

Epsilon Double 
Instance details

Defined in Linear.Epsilon

Methods

nearZero :: Double -> Bool #

Epsilon Float 
Instance details

Defined in Linear.Epsilon

Methods

nearZero :: Float -> Bool #

(Epsilon a, RealFloat a) => Epsilon (Complex a) 
Instance details

Defined in Linear.Epsilon

Methods

nearZero :: Complex a -> Bool #

Epsilon a => Epsilon (Plucker a) 
Instance details

Defined in Linear.Plucker

Methods

nearZero :: Plucker a -> Bool #

(RealFloat a, Epsilon a) => Epsilon (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

nearZero :: Quaternion a -> Bool #

Epsilon (V0 a) 
Instance details

Defined in Linear.V0

Methods

nearZero :: V0 a -> Bool #

Epsilon a => Epsilon (V1 a) 
Instance details

Defined in Linear.V1

Methods

nearZero :: V1 a -> Bool #

Epsilon a => Epsilon (V2 a) 
Instance details

Defined in Linear.V2

Methods

nearZero :: V2 a -> Bool #

Epsilon a => Epsilon (V3 a) 
Instance details

Defined in Linear.V3

Methods

nearZero :: V3 a -> Bool #

Epsilon a => Epsilon (V4 a) 
Instance details

Defined in Linear.V4

Methods

nearZero :: V4 a -> Bool #

Epsilon (f a) => Epsilon (Point f a) 
Instance details

Defined in Linear.Affine

Methods

nearZero :: Point f a -> Bool #

(Dim n, Epsilon a) => Epsilon (V n a) 
Instance details

Defined in Linear.V

Methods

nearZero :: V n a -> Bool #

(!!*) :: (Functor m, Functor r, Num a) => m (r a) -> a -> m (r a) #

(!!/) :: (Functor m, Functor r, Fractional a) => m (r a) -> a -> m (r a) #

(!*) :: (Functor m, Foldable r, Additive r, Num a) => m (r a) -> r a -> m a #

(!*!) :: (Functor m, Foldable t, Additive t, Additive n, Num a) => m (t a) -> t (n a) -> m (n a) #

(!+!) :: (Additive m, Additive n, Num a) => m (n a) -> m (n a) -> m (n a) #

(!-!) :: (Additive m, Additive n, Num a) => m (n a) -> m (n a) -> m (n a) #

(*!) :: (Num a, Foldable t, Additive f, Additive t) => t a -> t (f a) -> f a #

(*!!) :: (Functor m, Functor r, Num a) => a -> m (r a) -> m (r a) #

type M22 a = V2 (V2 a) #

type M23 a = V2 (V3 a) #

type M24 a = V2 (V4 a) #

type M32 a = V3 (V2 a) #

type M33 a = V3 (V3 a) #

type M34 a = V3 (V4 a) #

type M42 a = V4 (V2 a) #

type M43 a = V4 (V3 a) #

type M44 a = V4 (V4 a) #

_m22 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R2 t, R2 v) => Lens' (t (v a)) (M22 a) #

_m23 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R2 t, R3 v) => Lens' (t (v a)) (M23 a) #

_m24 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R2 t, R4 v) => Lens' (t (v a)) (M24 a) #

_m32 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R3 t, R2 v) => Lens' (t (v a)) (M32 a) #

_m33 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R3 t, R3 v) => Lens' (t (v a)) (M33 a) #

_m34 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R3 t, R4 v) => Lens' (t (v a)) (M34 a) #

_m42 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R4 t, R2 v) => Lens' (t (v a)) (M42 a) #

_m43 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R4 t, R3 v) => Lens' (t (v a)) (M43 a) #

_m44 :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R4 t, R4 v) => Lens' (t (v a)) (M44 a) #

adjoint :: (Functor m, Distributive n, Conjugate a) => m (n a) -> n (m a) #

backwardSub :: (Num a, Fractional a, Foldable m, Additive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Ord i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a))) => m (m a) -> m a -> m a #

backwardSubFinite :: forall a m (n :: Nat). (Num a, Fractional a, Foldable m, n ~ Size m, KnownNat n, Additive m, Finite m) => m (m a) -> m a -> m a #

column :: forall (f :: Type -> Type) a b s t. Representable f => LensLike (Context a b) s t a b -> Lens (f s) (f t) (f a) (f b) #

det22 :: Num a => M22 a -> a #

det33 :: Num a => M33 a -> a #

det44 :: Num a => M44 a -> a #

forwardSub :: (Num a, Fractional a, Foldable m, Additive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Ord i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a))) => m (m a) -> m a -> m a #

forwardSubFinite :: forall a m (n :: Nat). (Num a, Fractional a, Foldable m, n ~ Size m, KnownNat n, Additive m, Finite m) => m (m a) -> m a -> m a #

fromQuaternion :: Num a => Quaternion a -> M33 a #

identity :: (Num a, Traversable t, Applicative t) => t (t a) #

inv22 :: Fractional a => M22 a -> M22 a #

inv33 :: Fractional a => M33 a -> M33 a #

inv44 :: Fractional a => M44 a -> M44 a #

lu :: (Num a, Fractional a, Foldable m, Traversable m, Applicative m, Additive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a)), Num (m a)) => m (m a) -> (m (m a), m (m a)) #

luDet :: (Num a, Fractional a, Foldable m, Traversable m, Applicative m, Additive m, Trace m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a)), Num (m a)) => m (m a) -> a #

luDetFinite :: forall a m (n :: Nat). (Num a, Fractional a, Functor m, Finite m, n ~ Size m, KnownNat n, Num (m a)) => m (m a) -> a #

luFinite :: forall a m (n :: Nat). (Num a, Fractional a, Functor m, Finite m, n ~ Size m, KnownNat n, Num (m a)) => m (m a) -> (m (m a), m (m a)) #

luInv :: (Num a, Fractional a, Foldable m, Traversable m, Applicative m, Additive m, Distributive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a)), Num (m a)) => m (m a) -> m (m a) #

luInvFinite :: forall a m (n :: Nat). (Num a, Fractional a, Functor m, Finite m, n ~ Size m, KnownNat n, Num (m a)) => m (m a) -> m (m a) #

luSolve :: (Num a, Fractional a, Foldable m, Traversable m, Applicative m, Additive m, Ixed (m a), Ixed (m (m a)), i ~ Index (m a), i ~ Index (m (m a)), Eq i, Integral i, a ~ IxValue (m a), m a ~ IxValue (m (m a)), Num (m a)) => m (m a) -> m a -> m a #

luSolveFinite :: forall a m (n :: Nat). (Num a, Fractional a, Functor m, Finite m, n ~ Size m, KnownNat n, Num (m a)) => m (m a) -> m a -> m a #

m33_to_m44 :: Num a => M33 a -> M44 a #

m43_to_m44 :: Num a => M43 a -> M44 a #

mkTransformation :: Num a => Quaternion a -> V3 a -> M44 a #

mkTransformationMat :: Num a => M33 a -> V3 a -> M44 a #

translation :: forall (t :: Type -> Type) (v :: Type -> Type) a. (Representable t, R3 t, R4 v) => Lens' (t (v a)) (V3 a) #

class Additive f => Metric (f :: Type -> Type) where #

Minimal complete definition

Nothing

Methods

dot :: Num a => f a -> f a -> a #

quadrance :: Num a => f a -> a #

qd :: Num a => f a -> f a -> a #

distance :: Floating a => f a -> f a -> a #

norm :: Floating a => f a -> a #

signorm :: Floating a => f a -> f a #

Instances

Instances details
Metric ZipList 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => ZipList a -> ZipList a -> a #

quadrance :: Num a => ZipList a -> a #

qd :: Num a => ZipList a -> ZipList a -> a #

distance :: Floating a => ZipList a -> ZipList a -> a #

norm :: Floating a => ZipList a -> a #

signorm :: Floating a => ZipList a -> ZipList a #

Metric Identity 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => Identity a -> Identity a -> a #

quadrance :: Num a => Identity a -> a #

qd :: Num a => Identity a -> Identity a -> a #

distance :: Floating a => Identity a -> Identity a -> a #

norm :: Floating a => Identity a -> a #

signorm :: Floating a => Identity a -> Identity a #

Metric IntMap 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => IntMap a -> IntMap a -> a #

quadrance :: Num a => IntMap a -> a #

qd :: Num a => IntMap a -> IntMap a -> a #

distance :: Floating a => IntMap a -> IntMap a -> a #

norm :: Floating a => IntMap a -> a #

signorm :: Floating a => IntMap a -> IntMap a #

Metric Plucker 
Instance details

Defined in Linear.Plucker

Methods

dot :: Num a => Plucker a -> Plucker a -> a #

quadrance :: Num a => Plucker a -> a #

qd :: Num a => Plucker a -> Plucker a -> a #

distance :: Floating a => Plucker a -> Plucker a -> a #

norm :: Floating a => Plucker a -> a #

signorm :: Floating a => Plucker a -> Plucker a #

Metric Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

dot :: Num a => Quaternion a -> Quaternion a -> a #

quadrance :: Num a => Quaternion a -> a #

qd :: Num a => Quaternion a -> Quaternion a -> a #

distance :: Floating a => Quaternion a -> Quaternion a -> a #

norm :: Floating a => Quaternion a -> a #

signorm :: Floating a => Quaternion a -> Quaternion a #

Metric V0 
Instance details

Defined in Linear.V0

Methods

dot :: Num a => V0 a -> V0 a -> a #

quadrance :: Num a => V0 a -> a #

qd :: Num a => V0 a -> V0 a -> a #

distance :: Floating a => V0 a -> V0 a -> a #

norm :: Floating a => V0 a -> a #

signorm :: Floating a => V0 a -> V0 a #

Metric V1 
Instance details

Defined in Linear.V1

Methods

dot :: Num a => V1 a -> V1 a -> a #

quadrance :: Num a => V1 a -> a #

qd :: Num a => V1 a -> V1 a -> a #

distance :: Floating a => V1 a -> V1 a -> a #

norm :: Floating a => V1 a -> a #

signorm :: Floating a => V1 a -> V1 a #

Metric V2 
Instance details

Defined in Linear.V2

Methods

dot :: Num a => V2 a -> V2 a -> a #

quadrance :: Num a => V2 a -> a #

qd :: Num a => V2 a -> V2 a -> a #

distance :: Floating a => V2 a -> V2 a -> a #

norm :: Floating a => V2 a -> a #

signorm :: Floating a => V2 a -> V2 a #

Metric V3 
Instance details

Defined in Linear.V3

Methods

dot :: Num a => V3 a -> V3 a -> a #

quadrance :: Num a => V3 a -> a #

qd :: Num a => V3 a -> V3 a -> a #

distance :: Floating a => V3 a -> V3 a -> a #

norm :: Floating a => V3 a -> a #

signorm :: Floating a => V3 a -> V3 a #

Metric V4 
Instance details

Defined in Linear.V4

Methods

dot :: Num a => V4 a -> V4 a -> a #

quadrance :: Num a => V4 a -> a #

qd :: Num a => V4 a -> V4 a -> a #

distance :: Floating a => V4 a -> V4 a -> a #

norm :: Floating a => V4 a -> a #

signorm :: Floating a => V4 a -> V4 a #

Metric Vector 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => Vector a -> Vector a -> a #

quadrance :: Num a => Vector a -> a #

qd :: Num a => Vector a -> Vector a -> a #

distance :: Floating a => Vector a -> Vector a -> a #

norm :: Floating a => Vector a -> a #

signorm :: Floating a => Vector a -> Vector a #

Metric Maybe 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => Maybe a -> Maybe a -> a #

quadrance :: Num a => Maybe a -> a #

qd :: Num a => Maybe a -> Maybe a -> a #

distance :: Floating a => Maybe a -> Maybe a -> a #

norm :: Floating a => Maybe a -> a #

signorm :: Floating a => Maybe a -> Maybe a #

Metric [] 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => [a] -> [a] -> a #

quadrance :: Num a => [a] -> a #

qd :: Num a => [a] -> [a] -> a #

distance :: Floating a => [a] -> [a] -> a #

norm :: Floating a => [a] -> a #

signorm :: Floating a => [a] -> [a] #

Ord k => Metric (Map k) 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => Map k a -> Map k a -> a #

quadrance :: Num a => Map k a -> a #

qd :: Num a => Map k a -> Map k a -> a #

distance :: Floating a => Map k a -> Map k a -> a #

norm :: Floating a => Map k a -> a #

signorm :: Floating a => Map k a -> Map k a #

Metric f => Metric (Point f) 
Instance details

Defined in Linear.Affine

Methods

dot :: Num a => Point f a -> Point f a -> a #

quadrance :: Num a => Point f a -> a #

qd :: Num a => Point f a -> Point f a -> a #

distance :: Floating a => Point f a -> Point f a -> a #

norm :: Floating a => Point f a -> a #

signorm :: Floating a => Point f a -> Point f a #

(Hashable k, Eq k) => Metric (HashMap k) 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => HashMap k a -> HashMap k a -> a #

quadrance :: Num a => HashMap k a -> a #

qd :: Num a => HashMap k a -> HashMap k a -> a #

distance :: Floating a => HashMap k a -> HashMap k a -> a #

norm :: Floating a => HashMap k a -> a #

signorm :: Floating a => HashMap k a -> HashMap k a #

Dim n => Metric (V n) 
Instance details

Defined in Linear.V

Methods

dot :: Num a => V n a -> V n a -> a #

quadrance :: Num a => V n a -> a #

qd :: Num a => V n a -> V n a -> a #

distance :: Floating a => V n a -> V n a -> a #

norm :: Floating a => V n a -> a #

signorm :: Floating a => V n a -> V n a #

(Metric f, Metric g) => Metric (Product f g) 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => Product f g a -> Product f g a -> a #

quadrance :: Num a => Product f g a -> a #

qd :: Num a => Product f g a -> Product f g a -> a #

distance :: Floating a => Product f g a -> Product f g a -> a #

norm :: Floating a => Product f g a -> a #

signorm :: Floating a => Product f g a -> Product f g a #

(Metric f, Metric g) => Metric (Compose f g) 
Instance details

Defined in Linear.Metric

Methods

dot :: Num a => Compose f g a -> Compose f g a -> a #

quadrance :: Num a => Compose f g a -> a #

qd :: Num a => Compose f g a -> Compose f g a -> a #

distance :: Floating a => Compose f g a -> Compose f g a -> a #

norm :: Floating a => Compose f g a -> a #

signorm :: Floating a => Compose f g a -> Compose f g a #

normalize :: (Floating a, Metric f, Epsilon a) => f a -> f a #

project :: (Metric v, Fractional a) => v a -> v a -> v a #

frustum :: Floating a => a -> a -> a -> a -> a -> a -> M44 a #

infinitePerspective :: Floating a => a -> a -> a -> M44 a #

inverseFrustum :: Floating a => a -> a -> a -> a -> a -> a -> M44 a #

inverseInfinitePerspective :: Floating a => a -> a -> a -> M44 a #

inverseOrtho :: Fractional a => a -> a -> a -> a -> a -> a -> M44 a #

inversePerspective :: Floating a => a -> a -> a -> a -> M44 a #

lookAt :: (Epsilon a, Floating a) => V3 a -> V3 a -> V3 a -> M44 a #

ortho :: Fractional a => a -> a -> a -> a -> a -> a -> M44 a #

perspective :: Floating a => a -> a -> a -> a -> M44 a #

data Quaternion a #

Constructors

Quaternion !a !(V3 a) 

Instances

Instances details
Representable Quaternion 
Instance details

Defined in Linear.Quaternion

Associated Types

type Rep Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

tabulate :: (Rep Quaternion -> a) -> Quaternion a

index :: Quaternion a -> Rep Quaternion -> a

MonadFix Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

mfix :: (a -> Quaternion a) -> Quaternion a

MonadZip Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

mzip :: Quaternion a -> Quaternion b -> Quaternion (a, b)

mzipWith :: (a -> b -> c) -> Quaternion a -> Quaternion b -> Quaternion c

munzip :: Quaternion (a, b) -> (Quaternion a, Quaternion b)

Foldable Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

fold :: Monoid m => Quaternion m -> m

foldMap :: Monoid m => (a -> m) -> Quaternion a -> m

foldMap' :: Monoid m => (a -> m) -> Quaternion a -> m

foldr :: (a -> b -> b) -> b -> Quaternion a -> b

foldr' :: (a -> b -> b) -> b -> Quaternion a -> b

foldl :: (b -> a -> b) -> b -> Quaternion a -> b

foldl' :: (b -> a -> b) -> b -> Quaternion a -> b

foldr1 :: (a -> a -> a) -> Quaternion a -> a

foldl1 :: (a -> a -> a) -> Quaternion a -> a

toList :: Quaternion a -> [a]

null :: Quaternion a -> Bool

length :: Quaternion a -> Int

elem :: Eq a => a -> Quaternion a -> Bool

maximum :: Ord a => Quaternion a -> a

minimum :: Ord a => Quaternion a -> a

sum :: Num a => Quaternion a -> a

product :: Num a => Quaternion a -> a

Eq1 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

liftEq :: (a -> b -> Bool) -> Quaternion a -> Quaternion b -> Bool

Ord1 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

liftCompare :: (a -> b -> Ordering) -> Quaternion a -> Quaternion b -> Ordering

Read1 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Quaternion a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Quaternion a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Quaternion a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Quaternion a]

Show1 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Quaternion a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Quaternion a] -> ShowS

Traversable Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

traverse :: Applicative f => (a -> f b) -> Quaternion a -> f (Quaternion b)

sequenceA :: Applicative f => Quaternion (f a) -> f (Quaternion a)

mapM :: Monad m => (a -> m b) -> Quaternion a -> m (Quaternion b)

sequence :: Monad m => Quaternion (m a) -> m (Quaternion a)

Applicative Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

pure :: a -> Quaternion a

(<*>) :: Quaternion (a -> b) -> Quaternion a -> Quaternion b

liftA2 :: (a -> b -> c) -> Quaternion a -> Quaternion b -> Quaternion c

(*>) :: Quaternion a -> Quaternion b -> Quaternion b

(<*) :: Quaternion a -> Quaternion b -> Quaternion a

Functor Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

fmap :: (a -> b) -> Quaternion a -> Quaternion b

(<$) :: a -> Quaternion b -> Quaternion a

Monad Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

(>>=) :: Quaternion a -> (a -> Quaternion b) -> Quaternion b

(>>) :: Quaternion a -> Quaternion b -> Quaternion b

return :: a -> Quaternion a

Serial1 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

serializeWith :: MonadPut m => (a -> m ()) -> Quaternion a -> m ()

deserializeWith :: MonadGet m => m a -> m (Quaternion a)

Distributive Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

distribute :: Functor f => f (Quaternion a) -> Quaternion (f a)

collect :: Functor f => (a -> Quaternion b) -> f a -> Quaternion (f b)

distributeM :: Monad m => m (Quaternion a) -> Quaternion (m a)

collectM :: Monad m => (a -> Quaternion b) -> m a -> Quaternion (m b)

Hashable1 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> Quaternion a -> Int

Affine Quaternion 
Instance details

Defined in Linear.Affine

Associated Types

type Diff Quaternion 
Instance details

Defined in Linear.Affine

Methods

(.-.) :: Num a => Quaternion a -> Quaternion a -> Diff Quaternion a #

(.+^) :: Num a => Quaternion a -> Diff Quaternion a -> Quaternion a #

(.-^) :: Num a => Quaternion a -> Diff Quaternion a -> Quaternion a #

Metric Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

dot :: Num a => Quaternion a -> Quaternion a -> a #

quadrance :: Num a => Quaternion a -> a #

qd :: Num a => Quaternion a -> Quaternion a -> a #

distance :: Floating a => Quaternion a -> Quaternion a -> a #

norm :: Floating a => Quaternion a -> a #

signorm :: Floating a => Quaternion a -> Quaternion a #

Complicated Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_e :: Lens' (Quaternion a) a #

_i :: Lens' (Quaternion a) a #

Hamiltonian Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_j :: Lens' (Quaternion a) a #

_k :: Lens' (Quaternion a) a #

_ijk :: Lens' (Quaternion a) (V3 a) #

Trace Quaternion 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => Quaternion (Quaternion a) -> a #

diagonal :: Quaternion (Quaternion a) -> Quaternion a #

Finite Quaternion 
Instance details

Defined in Linear.Quaternion

Associated Types

type Size Quaternion 
Instance details

Defined in Linear.Quaternion

type Size Quaternion = 4

Methods

toV :: Quaternion a -> V (Size Quaternion) a

fromV :: V (Size Quaternion) a -> Quaternion a

R1 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_x :: Lens' (Quaternion a) a #

R2 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_y :: Lens' (Quaternion a) a #

_xy :: Lens' (Quaternion a) (V2 a) #

R3 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_z :: Lens' (Quaternion a) a #

_xyz :: Lens' (Quaternion a) (V3 a) #

R4 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_w :: Lens' (Quaternion a) a #

_xyzw :: Lens' (Quaternion a) (V4 a) #

Additive Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

zero :: Num a => Quaternion a #

(^+^) :: Num a => Quaternion a -> Quaternion a -> Quaternion a #

(^-^) :: Num a => Quaternion a -> Quaternion a -> Quaternion a #

lerp :: Num a => a -> Quaternion a -> Quaternion a -> Quaternion a #

liftU2 :: (a -> a -> a) -> Quaternion a -> Quaternion a -> Quaternion a #

liftI2 :: (a -> b -> c) -> Quaternion a -> Quaternion b -> Quaternion c #

Apply Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

(<.>) :: Quaternion (a -> b) -> Quaternion a -> Quaternion b

(.>) :: Quaternion a -> Quaternion b -> Quaternion b

(<.) :: Quaternion a -> Quaternion b -> Quaternion a

liftF2 :: (a -> b -> c) -> Quaternion a -> Quaternion b -> Quaternion c

Bind Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

(>>-) :: Quaternion a -> (a -> Quaternion b) -> Quaternion b

join :: Quaternion (Quaternion a) -> Quaternion a

Generic1 Quaternion 
Instance details

Defined in Linear.Quaternion

Associated Types

type Rep1 Quaternion 
Instance details

Defined in Linear.Quaternion

type Rep1 Quaternion = D1 ('MetaData "Quaternion" "Linear.Quaternion" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "Quaternion" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec1 V3)))

Methods

from1 :: Quaternion a -> Rep1 Quaternion a

to1 :: Rep1 Quaternion a -> Quaternion a

(Num r, TrivialConjugate r) => Algebra r (E Quaternion) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E Quaternion -> E Quaternion -> r) -> E Quaternion -> r #

unital :: r -> E Quaternion -> r #

(Num r, TrivialConjugate r) => Coalgebra r (E Quaternion) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E Quaternion -> r) -> E Quaternion -> E Quaternion -> r #

counital :: (E Quaternion -> r) -> r #

Lift a => Lift (Quaternion a :: Type) 
Instance details

Defined in Linear.Quaternion

Methods

lift :: Quote m => Quaternion a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => Quaternion a -> Code m (Quaternion a)

Unbox a => Vector Vector (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

basicUnsafeFreeze :: Mutable Vector s (Quaternion a) -> ST s (Vector (Quaternion a))

basicUnsafeThaw :: Vector (Quaternion a) -> ST s (Mutable Vector s (Quaternion a))

basicLength :: Vector (Quaternion a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Quaternion a) -> Vector (Quaternion a)

basicUnsafeIndexM :: Vector (Quaternion a) -> Int -> Box (Quaternion a)

basicUnsafeCopy :: Mutable Vector s (Quaternion a) -> Vector (Quaternion a) -> ST s ()

elemseq :: Vector (Quaternion a) -> Quaternion a -> b -> b

Unbox a => MVector MVector (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

basicLength :: MVector s (Quaternion a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Quaternion a) -> MVector s (Quaternion a)

basicOverlaps :: MVector s (Quaternion a) -> MVector s (Quaternion a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Quaternion a))

basicInitialize :: MVector s (Quaternion a) -> ST s ()

basicUnsafeReplicate :: Int -> Quaternion a -> ST s (MVector s (Quaternion a))

basicUnsafeRead :: MVector s (Quaternion a) -> Int -> ST s (Quaternion a)

basicUnsafeWrite :: MVector s (Quaternion a) -> Int -> Quaternion a -> ST s ()

basicClear :: MVector s (Quaternion a) -> ST s ()

basicSet :: MVector s (Quaternion a) -> Quaternion a -> ST s ()

basicUnsafeCopy :: MVector s (Quaternion a) -> MVector s (Quaternion a) -> ST s ()

basicUnsafeMove :: MVector s (Quaternion a) -> MVector s (Quaternion a) -> ST s ()

basicUnsafeGrow :: MVector s (Quaternion a) -> Int -> ST s (MVector s (Quaternion a))

Data a => Data (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Quaternion a -> c (Quaternion a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Quaternion a)

toConstr :: Quaternion a -> Constr

dataTypeOf :: Quaternion a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Quaternion a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Quaternion a))

gmapT :: (forall b. Data b => b -> b) -> Quaternion a -> Quaternion a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Quaternion a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Quaternion a -> r

gmapQ :: (forall d. Data d => d -> u) -> Quaternion a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Quaternion a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Quaternion a -> m (Quaternion a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Quaternion a -> m (Quaternion a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Quaternion a -> m (Quaternion a)

Storable a => Storable (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

sizeOf :: Quaternion a -> Int

alignment :: Quaternion a -> Int

peekElemOff :: Ptr (Quaternion a) -> Int -> IO (Quaternion a)

pokeElemOff :: Ptr (Quaternion a) -> Int -> Quaternion a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (Quaternion a)

pokeByteOff :: Ptr b -> Int -> Quaternion a -> IO ()

peek :: Ptr (Quaternion a) -> IO (Quaternion a)

poke :: Ptr (Quaternion a) -> Quaternion a -> IO ()

Monoid a => Monoid (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Semigroup a => Semigroup (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

(<>) :: Quaternion a -> Quaternion a -> Quaternion a

sconcat :: NonEmpty (Quaternion a) -> Quaternion a

stimes :: Integral b => b -> Quaternion a -> Quaternion a

RealFloat a => Floating (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Generic (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Associated Types

type Rep (Quaternion a) 
Instance details

Defined in Linear.Quaternion

type Rep (Quaternion a) = D1 ('MetaData "Quaternion" "Linear.Quaternion" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "Quaternion" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 (V3 a))))

Methods

from :: Quaternion a -> Rep (Quaternion a) x

to :: Rep (Quaternion a) x -> Quaternion a

Ix a => Ix (Quaternion a) 
Instance details

Defined in Linear.Quaternion

RealFloat a => Num (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Read a => Read (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

readsPrec :: Int -> ReadS (Quaternion a)

readList :: ReadS [Quaternion a]

readPrec :: ReadPrec (Quaternion a)

readListPrec :: ReadPrec [Quaternion a]

RealFloat a => Fractional (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

(/) :: Quaternion a -> Quaternion a -> Quaternion a

recip :: Quaternion a -> Quaternion a

fromRational :: Rational -> Quaternion a

Show a => Show (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

showsPrec :: Int -> Quaternion a -> ShowS

show :: Quaternion a -> String

showList :: [Quaternion a] -> ShowS

Binary a => Binary (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

put :: Quaternion a -> Put

get :: Get (Quaternion a)

putList :: [Quaternion a] -> Put

Serial a => Serial (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

serialize :: MonadPut m => Quaternion a -> m ()

deserialize :: MonadGet m => m (Quaternion a)

Serialize a => Serialize (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

put :: Putter (Quaternion a)

get :: Get (Quaternion a)

NFData a => NFData (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

rnf :: Quaternion a -> ()

Eq a => Eq (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

(==) :: Quaternion a -> Quaternion a -> Bool

(/=) :: Quaternion a -> Quaternion a -> Bool

Ord a => Ord (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

compare :: Quaternion a -> Quaternion a -> Ordering

(<) :: Quaternion a -> Quaternion a -> Bool

(<=) :: Quaternion a -> Quaternion a -> Bool

(>) :: Quaternion a -> Quaternion a -> Bool

(>=) :: Quaternion a -> Quaternion a -> Bool

max :: Quaternion a -> Quaternion a -> Quaternion a

min :: Quaternion a -> Quaternion a -> Quaternion a

Hashable a => Hashable (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

hashWithSalt :: Int -> Quaternion a -> Int

hash :: Quaternion a -> Int

Ixed (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

ix :: Index (Quaternion a) -> Traversal' (Quaternion a) (IxValue (Quaternion a))

(Conjugate a, RealFloat a) => Conjugate (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

conjugate :: Quaternion a -> Quaternion a #

(RealFloat a, Epsilon a) => Epsilon (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

nearZero :: Quaternion a -> Bool #

Random a => Random (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

randomR :: RandomGen g => (Quaternion a, Quaternion a) -> g -> (Quaternion a, g)

random :: RandomGen g => g -> (Quaternion a, g)

randomRs :: RandomGen g => (Quaternion a, Quaternion a) -> g -> [Quaternion a]

randoms :: RandomGen g => g -> [Quaternion a]

Uniform a => Uniform (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

uniformM :: StatefulGen g m => g -> m (Quaternion a)

UniformRange a => UniformRange (Quaternion a) 
Instance details

Defined in Linear.Quaternion

Methods

uniformRM :: StatefulGen g m => (Quaternion a, Quaternion a) -> g -> m (Quaternion a)

Unbox a => Unbox (Quaternion a) 
Instance details

Defined in Linear.Quaternion

FoldableWithIndex (E Quaternion) Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

ifoldMap :: Monoid m => (E Quaternion -> a -> m) -> Quaternion a -> m

ifoldMap' :: Monoid m => (E Quaternion -> a -> m) -> Quaternion a -> m

ifoldr :: (E Quaternion -> a -> b -> b) -> b -> Quaternion a -> b

ifoldl :: (E Quaternion -> b -> a -> b) -> b -> Quaternion a -> b

ifoldr' :: (E Quaternion -> a -> b -> b) -> b -> Quaternion a -> b

ifoldl' :: (E Quaternion -> b -> a -> b) -> b -> Quaternion a -> b

FunctorWithIndex (E Quaternion) Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

imap :: (E Quaternion -> a -> b) -> Quaternion a -> Quaternion b

TraversableWithIndex (E Quaternion) Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

itraverse :: Applicative f => (E Quaternion -> a -> f b) -> Quaternion a -> f (Quaternion b)

Each (Quaternion a) (Quaternion b) a b 
Instance details

Defined in Linear.Quaternion

Methods

each :: Traversal (Quaternion a) (Quaternion b) a b

Field1 (Quaternion a) (Quaternion a) a a 
Instance details

Defined in Linear.Quaternion

Methods

_1 :: Lens (Quaternion a) (Quaternion a) a a

Field2 (Quaternion a) (Quaternion a) a a 
Instance details

Defined in Linear.Quaternion

Methods

_2 :: Lens (Quaternion a) (Quaternion a) a a

Field3 (Quaternion a) (Quaternion a) a a 
Instance details

Defined in Linear.Quaternion

Methods

_3 :: Lens (Quaternion a) (Quaternion a) a a

Field4 (Quaternion a) (Quaternion a) a a 
Instance details

Defined in Linear.Quaternion

Methods

_4 :: Lens (Quaternion a) (Quaternion a) a a

type Rep Quaternion 
Instance details

Defined in Linear.Quaternion

type Diff Quaternion 
Instance details

Defined in Linear.Affine

type Size Quaternion 
Instance details

Defined in Linear.Quaternion

type Size Quaternion = 4
type Rep1 Quaternion 
Instance details

Defined in Linear.Quaternion

type Rep1 Quaternion = D1 ('MetaData "Quaternion" "Linear.Quaternion" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "Quaternion" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec1 V3)))
data MVector s (Quaternion a) 
Instance details

Defined in Linear.Quaternion

data MVector s (Quaternion a) = MV_Quaternion !Int (MVector s a)
type Rep (Quaternion a) 
Instance details

Defined in Linear.Quaternion

type Rep (Quaternion a) = D1 ('MetaData "Quaternion" "Linear.Quaternion" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "Quaternion" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 (V3 a))))
type Index (Quaternion a) 
Instance details

Defined in Linear.Quaternion

type Index (Quaternion a) = E Quaternion
type IxValue (Quaternion a) 
Instance details

Defined in Linear.Quaternion

type IxValue (Quaternion a) = a
data Vector (Quaternion a) 
Instance details

Defined in Linear.Quaternion

data Vector (Quaternion a) = V_Quaternion !Int (Vector a)

absi :: Floating a => Quaternion a -> a #

acoshq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a #

acosq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a #

asinhq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a #

asinq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a #

atanhq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a #

atanq :: RealFloat a => Quaternion a -> Quaternion a -> Quaternion a #

axisAngle :: (Epsilon a, Floating a) => V3 a -> a -> Quaternion a #

ee :: forall (t :: Type -> Type). Complicated t => E t #

ei :: forall (t :: Type -> Type). Complicated t => E t #

ej :: forall (t :: Type -> Type). Hamiltonian t => E t #

ek :: forall (t :: Type -> Type). Hamiltonian t => E t #

pow :: RealFloat a => Quaternion a -> a -> Quaternion a #

slerp :: RealFloat a => Quaternion a -> Quaternion a -> a -> Quaternion a #

frobenius :: (Num a, Foldable f, Additive f, Additive g, Distributive g, Trace g) => f (g a) -> a #

data V0 a #

Constructors

V0 

Instances

Instances details
Representable V0 
Instance details

Defined in Linear.V0

Associated Types

type Rep V0 
Instance details

Defined in Linear.V0

type Rep V0 = E V0

Methods

tabulate :: (Rep V0 -> a) -> V0 a

index :: V0 a -> Rep V0 -> a

MonadFix V0 
Instance details

Defined in Linear.V0

Methods

mfix :: (a -> V0 a) -> V0 a

MonadZip V0 
Instance details

Defined in Linear.V0

Methods

mzip :: V0 a -> V0 b -> V0 (a, b)

mzipWith :: (a -> b -> c) -> V0 a -> V0 b -> V0 c

munzip :: V0 (a, b) -> (V0 a, V0 b)

Foldable V0 
Instance details

Defined in Linear.V0

Methods

fold :: Monoid m => V0 m -> m

foldMap :: Monoid m => (a -> m) -> V0 a -> m

foldMap' :: Monoid m => (a -> m) -> V0 a -> m

foldr :: (a -> b -> b) -> b -> V0 a -> b

foldr' :: (a -> b -> b) -> b -> V0 a -> b

foldl :: (b -> a -> b) -> b -> V0 a -> b

foldl' :: (b -> a -> b) -> b -> V0 a -> b

foldr1 :: (a -> a -> a) -> V0 a -> a

foldl1 :: (a -> a -> a) -> V0 a -> a

toList :: V0 a -> [a]

null :: V0 a -> Bool

length :: V0 a -> Int

elem :: Eq a => a -> V0 a -> Bool

maximum :: Ord a => V0 a -> a

minimum :: Ord a => V0 a -> a

sum :: Num a => V0 a -> a

product :: Num a => V0 a -> a

Eq1 V0 
Instance details

Defined in Linear.V0

Methods

liftEq :: (a -> b -> Bool) -> V0 a -> V0 b -> Bool

Ord1 V0 
Instance details

Defined in Linear.V0

Methods

liftCompare :: (a -> b -> Ordering) -> V0 a -> V0 b -> Ordering

Read1 V0 
Instance details

Defined in Linear.V0

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (V0 a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [V0 a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (V0 a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [V0 a]

Show1 V0 
Instance details

Defined in Linear.V0

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> V0 a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [V0 a] -> ShowS

Traversable V0 
Instance details

Defined in Linear.V0

Methods

traverse :: Applicative f => (a -> f b) -> V0 a -> f (V0 b)

sequenceA :: Applicative f => V0 (f a) -> f (V0 a)

mapM :: Monad m => (a -> m b) -> V0 a -> m (V0 b)

sequence :: Monad m => V0 (m a) -> m (V0 a)

Applicative V0 
Instance details

Defined in Linear.V0

Methods

pure :: a -> V0 a

(<*>) :: V0 (a -> b) -> V0 a -> V0 b

liftA2 :: (a -> b -> c) -> V0 a -> V0 b -> V0 c

(*>) :: V0 a -> V0 b -> V0 b

(<*) :: V0 a -> V0 b -> V0 a

Functor V0 
Instance details

Defined in Linear.V0

Methods

fmap :: (a -> b) -> V0 a -> V0 b

(<$) :: a -> V0 b -> V0 a

Monad V0 
Instance details

Defined in Linear.V0

Methods

(>>=) :: V0 a -> (a -> V0 b) -> V0 b

(>>) :: V0 a -> V0 b -> V0 b

return :: a -> V0 a

Serial1 V0 
Instance details

Defined in Linear.V0

Methods

serializeWith :: MonadPut m => (a -> m ()) -> V0 a -> m ()

deserializeWith :: MonadGet m => m a -> m (V0 a)

Distributive V0 
Instance details

Defined in Linear.V0

Methods

distribute :: Functor f => f (V0 a) -> V0 (f a)

collect :: Functor f => (a -> V0 b) -> f a -> V0 (f b)

distributeM :: Monad m => m (V0 a) -> V0 (m a)

collectM :: Monad m => (a -> V0 b) -> m a -> V0 (m b)

Hashable1 V0 
Instance details

Defined in Linear.V0

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> V0 a -> Int

Affine V0 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V0 
Instance details

Defined in Linear.Affine

type Diff V0 = V0

Methods

(.-.) :: Num a => V0 a -> V0 a -> Diff V0 a #

(.+^) :: Num a => V0 a -> Diff V0 a -> V0 a #

(.-^) :: Num a => V0 a -> Diff V0 a -> V0 a #

Metric V0 
Instance details

Defined in Linear.V0

Methods

dot :: Num a => V0 a -> V0 a -> a #

quadrance :: Num a => V0 a -> a #

qd :: Num a => V0 a -> V0 a -> a #

distance :: Floating a => V0 a -> V0 a -> a #

norm :: Floating a => V0 a -> a #

signorm :: Floating a => V0 a -> V0 a #

Trace V0 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V0 (V0 a) -> a #

diagonal :: V0 (V0 a) -> V0 a #

Finite V0 
Instance details

Defined in Linear.V0

Associated Types

type Size V0 
Instance details

Defined in Linear.V0

type Size V0 = 0

Methods

toV :: V0 a -> V (Size V0) a

fromV :: V (Size V0) a -> V0 a

Additive V0 
Instance details

Defined in Linear.V0

Methods

zero :: Num a => V0 a #

(^+^) :: Num a => V0 a -> V0 a -> V0 a #

(^-^) :: Num a => V0 a -> V0 a -> V0 a #

lerp :: Num a => a -> V0 a -> V0 a -> V0 a #

liftU2 :: (a -> a -> a) -> V0 a -> V0 a -> V0 a #

liftI2 :: (a -> b -> c) -> V0 a -> V0 b -> V0 c #

Apply V0 
Instance details

Defined in Linear.V0

Methods

(<.>) :: V0 (a -> b) -> V0 a -> V0 b

(.>) :: V0 a -> V0 b -> V0 b

(<.) :: V0 a -> V0 b -> V0 a

liftF2 :: (a -> b -> c) -> V0 a -> V0 b -> V0 c

Bind V0 
Instance details

Defined in Linear.V0

Methods

(>>-) :: V0 a -> (a -> V0 b) -> V0 b

join :: V0 (V0 a) -> V0 a

Generic1 V0 
Instance details

Defined in Linear.V0

Associated Types

type Rep1 V0 
Instance details

Defined in Linear.V0

type Rep1 V0 = D1 ('MetaData "V0" "Linear.V0" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V0" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from1 :: V0 a -> Rep1 V0 a

to1 :: Rep1 V0 a -> V0 a

Num r => Algebra r (E V0) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E V0 -> E V0 -> r) -> E V0 -> r #

unital :: r -> E V0 -> r #

Num r => Coalgebra r (E V0) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V0 -> r) -> E V0 -> E V0 -> r #

counital :: (E V0 -> r) -> r #

Lift (V0 a :: Type) 
Instance details

Defined in Linear.V0

Methods

lift :: Quote m => V0 a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => V0 a -> Code m (V0 a)

Vector Vector (V0 a) 
Instance details

Defined in Linear.V0

Methods

basicUnsafeFreeze :: Mutable Vector s (V0 a) -> ST s (Vector (V0 a))

basicUnsafeThaw :: Vector (V0 a) -> ST s (Mutable Vector s (V0 a))

basicLength :: Vector (V0 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V0 a) -> Vector (V0 a)

basicUnsafeIndexM :: Vector (V0 a) -> Int -> Box (V0 a)

basicUnsafeCopy :: Mutable Vector s (V0 a) -> Vector (V0 a) -> ST s ()

elemseq :: Vector (V0 a) -> V0 a -> b -> b

MVector MVector (V0 a) 
Instance details

Defined in Linear.V0

Methods

basicLength :: MVector s (V0 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V0 a) -> MVector s (V0 a)

basicOverlaps :: MVector s (V0 a) -> MVector s (V0 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V0 a))

basicInitialize :: MVector s (V0 a) -> ST s ()

basicUnsafeReplicate :: Int -> V0 a -> ST s (MVector s (V0 a))

basicUnsafeRead :: MVector s (V0 a) -> Int -> ST s (V0 a)

basicUnsafeWrite :: MVector s (V0 a) -> Int -> V0 a -> ST s ()

basicClear :: MVector s (V0 a) -> ST s ()

basicSet :: MVector s (V0 a) -> V0 a -> ST s ()

basicUnsafeCopy :: MVector s (V0 a) -> MVector s (V0 a) -> ST s ()

basicUnsafeMove :: MVector s (V0 a) -> MVector s (V0 a) -> ST s ()

basicUnsafeGrow :: MVector s (V0 a) -> Int -> ST s (MVector s (V0 a))

Data a => Data (V0 a) 
Instance details

Defined in Linear.V0

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> V0 a -> c (V0 a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (V0 a)

toConstr :: V0 a -> Constr

dataTypeOf :: V0 a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (V0 a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (V0 a))

gmapT :: (forall b. Data b => b -> b) -> V0 a -> V0 a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> V0 a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> V0 a -> r

gmapQ :: (forall d. Data d => d -> u) -> V0 a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> V0 a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> V0 a -> m (V0 a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> V0 a -> m (V0 a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> V0 a -> m (V0 a)

Storable (V0 a) 
Instance details

Defined in Linear.V0

Methods

sizeOf :: V0 a -> Int

alignment :: V0 a -> Int

peekElemOff :: Ptr (V0 a) -> Int -> IO (V0 a)

pokeElemOff :: Ptr (V0 a) -> Int -> V0 a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (V0 a)

pokeByteOff :: Ptr b -> Int -> V0 a -> IO ()

peek :: Ptr (V0 a) -> IO (V0 a)

poke :: Ptr (V0 a) -> V0 a -> IO ()

Monoid (V0 a) 
Instance details

Defined in Linear.V0

Methods

mempty :: V0 a

mappend :: V0 a -> V0 a -> V0 a

mconcat :: [V0 a] -> V0 a

Semigroup (V0 a) 
Instance details

Defined in Linear.V0

Methods

(<>) :: V0 a -> V0 a -> V0 a

sconcat :: NonEmpty (V0 a) -> V0 a

stimes :: Integral b => b -> V0 a -> V0 a

Bounded (V0 a) 
Instance details

Defined in Linear.V0

Methods

minBound :: V0 a

maxBound :: V0 a

Enum (V0 a) 
Instance details

Defined in Linear.V0

Methods

succ :: V0 a -> V0 a

pred :: V0 a -> V0 a

toEnum :: Int -> V0 a

fromEnum :: V0 a -> Int

enumFrom :: V0 a -> [V0 a]

enumFromThen :: V0 a -> V0 a -> [V0 a]

enumFromTo :: V0 a -> V0 a -> [V0 a]

enumFromThenTo :: V0 a -> V0 a -> V0 a -> [V0 a]

Floating (V0 a) 
Instance details

Defined in Linear.V0

Methods

pi :: V0 a

exp :: V0 a -> V0 a

log :: V0 a -> V0 a

sqrt :: V0 a -> V0 a

(**) :: V0 a -> V0 a -> V0 a

logBase :: V0 a -> V0 a -> V0 a

sin :: V0 a -> V0 a

cos :: V0 a -> V0 a

tan :: V0 a -> V0 a

asin :: V0 a -> V0 a

acos :: V0 a -> V0 a

atan :: V0 a -> V0 a

sinh :: V0 a -> V0 a

cosh :: V0 a -> V0 a

tanh :: V0 a -> V0 a

asinh :: V0 a -> V0 a

acosh :: V0 a -> V0 a

atanh :: V0 a -> V0 a

log1p :: V0 a -> V0 a

expm1 :: V0 a -> V0 a

log1pexp :: V0 a -> V0 a

log1mexp :: V0 a -> V0 a

Generic (V0 a) 
Instance details

Defined in Linear.V0

Associated Types

type Rep (V0 a) 
Instance details

Defined in Linear.V0

type Rep (V0 a) = D1 ('MetaData "V0" "Linear.V0" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V0" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: V0 a -> Rep (V0 a) x

to :: Rep (V0 a) x -> V0 a

Ix (V0 a) 
Instance details

Defined in Linear.V0

Methods

range :: (V0 a, V0 a) -> [V0 a]

index :: (V0 a, V0 a) -> V0 a -> Int

unsafeIndex :: (V0 a, V0 a) -> V0 a -> Int

inRange :: (V0 a, V0 a) -> V0 a -> Bool

rangeSize :: (V0 a, V0 a) -> Int

unsafeRangeSize :: (V0 a, V0 a) -> Int

Num (V0 a) 
Instance details

Defined in Linear.V0

Methods

(+) :: V0 a -> V0 a -> V0 a

(-) :: V0 a -> V0 a -> V0 a

(*) :: V0 a -> V0 a -> V0 a

negate :: V0 a -> V0 a

abs :: V0 a -> V0 a

signum :: V0 a -> V0 a

fromInteger :: Integer -> V0 a

Read (V0 a) 
Instance details

Defined in Linear.V0

Methods

readsPrec :: Int -> ReadS (V0 a)

readList :: ReadS [V0 a]

readPrec :: ReadPrec (V0 a)

readListPrec :: ReadPrec [V0 a]

Fractional (V0 a) 
Instance details

Defined in Linear.V0

Methods

(/) :: V0 a -> V0 a -> V0 a

recip :: V0 a -> V0 a

fromRational :: Rational -> V0 a

Show (V0 a) 
Instance details

Defined in Linear.V0

Methods

showsPrec :: Int -> V0 a -> ShowS

show :: V0 a -> String

showList :: [V0 a] -> ShowS

Binary (V0 a) 
Instance details

Defined in Linear.V0

Methods

put :: V0 a -> Put

get :: Get (V0 a)

putList :: [V0 a] -> Put

Serial (V0 a) 
Instance details

Defined in Linear.V0

Methods

serialize :: MonadPut m => V0 a -> m ()

deserialize :: MonadGet m => m (V0 a)

Serialize (V0 a) 
Instance details

Defined in Linear.V0

Methods

put :: Putter (V0 a)

get :: Get (V0 a)

NFData (V0 a) 
Instance details

Defined in Linear.V0

Methods

rnf :: V0 a -> ()

Eq (V0 a) 
Instance details

Defined in Linear.V0

Methods

(==) :: V0 a -> V0 a -> Bool

(/=) :: V0 a -> V0 a -> Bool

Ord (V0 a) 
Instance details

Defined in Linear.V0

Methods

compare :: V0 a -> V0 a -> Ordering

(<) :: V0 a -> V0 a -> Bool

(<=) :: V0 a -> V0 a -> Bool

(>) :: V0 a -> V0 a -> Bool

(>=) :: V0 a -> V0 a -> Bool

max :: V0 a -> V0 a -> V0 a

min :: V0 a -> V0 a -> V0 a

Hashable (V0 a) 
Instance details

Defined in Linear.V0

Methods

hashWithSalt :: Int -> V0 a -> Int

hash :: V0 a -> Int

Ixed (V0 a) 
Instance details

Defined in Linear.V0

Methods

ix :: Index (V0 a) -> Traversal' (V0 a) (IxValue (V0 a))

Epsilon (V0 a) 
Instance details

Defined in Linear.V0

Methods

nearZero :: V0 a -> Bool #

Random (V0 a) 
Instance details

Defined in Linear.V0

Methods

randomR :: RandomGen g => (V0 a, V0 a) -> g -> (V0 a, g)

random :: RandomGen g => g -> (V0 a, g)

randomRs :: RandomGen g => (V0 a, V0 a) -> g -> [V0 a]

randoms :: RandomGen g => g -> [V0 a]

Uniform (V0 a) 
Instance details

Defined in Linear.V0

Methods

uniformM :: StatefulGen g m => g -> m (V0 a)

UniformRange (V0 a) 
Instance details

Defined in Linear.V0

Methods

uniformRM :: StatefulGen g m => (V0 a, V0 a) -> g -> m (V0 a)

Unbox (V0 a) 
Instance details

Defined in Linear.V0

FoldableWithIndex (E V0) V0 
Instance details

Defined in Linear.V0

Methods

ifoldMap :: Monoid m => (E V0 -> a -> m) -> V0 a -> m

ifoldMap' :: Monoid m => (E V0 -> a -> m) -> V0 a -> m

ifoldr :: (E V0 -> a -> b -> b) -> b -> V0 a -> b

ifoldl :: (E V0 -> b -> a -> b) -> b -> V0 a -> b

ifoldr' :: (E V0 -> a -> b -> b) -> b -> V0 a -> b

ifoldl' :: (E V0 -> b -> a -> b) -> b -> V0 a -> b

FunctorWithIndex (E V0) V0 
Instance details

Defined in Linear.V0

Methods

imap :: (E V0 -> a -> b) -> V0 a -> V0 b

TraversableWithIndex (E V0) V0 
Instance details

Defined in Linear.V0

Methods

itraverse :: Applicative f => (E V0 -> a -> f b) -> V0 a -> f (V0 b)

Each (V0 a) (V0 b) a b 
Instance details

Defined in Linear.V0

Methods

each :: Traversal (V0 a) (V0 b) a b

type Rep V0 
Instance details

Defined in Linear.V0

type Rep V0 = E V0
type Diff V0 
Instance details

Defined in Linear.Affine

type Diff V0 = V0
type Size V0 
Instance details

Defined in Linear.V0

type Size V0 = 0
type Rep1 V0 
Instance details

Defined in Linear.V0

type Rep1 V0 = D1 ('MetaData "V0" "Linear.V0" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V0" 'PrefixI 'False) (U1 :: Type -> Type))
newtype MVector s (V0 a) 
Instance details

Defined in Linear.V0

newtype MVector s (V0 a) = MV_V0 Int
type Rep (V0 a) 
Instance details

Defined in Linear.V0

type Rep (V0 a) = D1 ('MetaData "V0" "Linear.V0" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V0" 'PrefixI 'False) (U1 :: Type -> Type))
type Index (V0 a) 
Instance details

Defined in Linear.V0

type Index (V0 a) = E V0
type IxValue (V0 a) 
Instance details

Defined in Linear.V0

type IxValue (V0 a) = a
newtype Vector (V0 a) 
Instance details

Defined in Linear.V0

newtype Vector (V0 a) = V_V0 Int

_yx :: forall (t :: Type -> Type) a. R2 t => Lens' (t a) (V2 a) #

angle :: Floating a => a -> V2 a #

crossZ :: Num a => V2 a -> V2 a -> a #

ey :: forall (t :: Type -> Type). R2 t => E t #

perp :: Num a => V2 a -> V2 a #

unangle :: (Floating a, Ord a) => V2 a -> a #

_xz :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V2 a) #

_xzy :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a) #

_yxz :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a) #

_yz :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V2 a) #

_yzx :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a) #

_zx :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V2 a) #

_zxy :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a) #

_zy :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V2 a) #

_zyx :: forall (t :: Type -> Type) a. R3 t => Lens' (t a) (V3 a) #

cross :: Num a => V3 a -> V3 a -> V3 a #

ez :: forall (t :: Type -> Type). R3 t => E t #

class R3 t => R4 (t :: Type -> Type) where #

Methods

_w :: Lens' (t a) a #

_xyzw :: Lens' (t a) (V4 a) #

Instances

Instances details
R4 Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

_w :: Lens' (Quaternion a) a #

_xyzw :: Lens' (Quaternion a) (V4 a) #

R4 V4 
Instance details

Defined in Linear.V4

Methods

_w :: Lens' (V4 a) a #

_xyzw :: Lens' (V4 a) (V4 a) #

R4 f => R4 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_w :: Lens' (Point f a) a #

_xyzw :: Lens' (Point f a) (V4 a) #

_wx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a) #

_wxy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_wxyz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_wxz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_wxzy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_wy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a) #

_wyx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_wyxz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_wyz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_wyzx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_wz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a) #

_wzx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_wzxy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_wzy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_wzyx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_xw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a) #

_xwy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_xwyz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_xwz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_xwzy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_xyw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_xywz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_xzw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_xzwy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_xzyw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_yw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a) #

_ywx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_ywxz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_ywz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_ywzx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_yxw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_yxwz :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_yxzw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_yzw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_yzwx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_yzxw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_zw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V2 a) #

_zwx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_zwxy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_zwy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_zwyx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_zxw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_zxwy :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_zxyw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_zyw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V3 a) #

_zywx :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

_zyxw :: forall (t :: Type -> Type) a. R4 t => Lens' (t a) (V4 a) #

ew :: forall (t :: Type -> Type). R4 t => E t #

normalizePoint :: Fractional a => V4 a -> V3 a #

point :: Num a => V3 a -> V4 a #

(*^) :: (Functor f, Num a) => a -> f a -> f a #

newtype E (t :: Type -> Type) #

Constructors

E 

Fields

  • el :: forall x. Lens' (t x) x
     

Instances

Instances details
Num r => Algebra r (E Complex) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E Complex -> E Complex -> r) -> E Complex -> r #

unital :: r -> E Complex -> r #

(Num r, TrivialConjugate r) => Algebra r (E Quaternion) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E Quaternion -> E Quaternion -> r) -> E Quaternion -> r #

unital :: r -> E Quaternion -> r #

Num r => Algebra r (E V0) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E V0 -> E V0 -> r) -> E V0 -> r #

unital :: r -> E V0 -> r #

Num r => Algebra r (E V1) 
Instance details

Defined in Linear.Algebra

Methods

mult :: (E V1 -> E V1 -> r) -> E V1 -> r #

unital :: r -> E V1 -> r #

Num r => Coalgebra r (E Complex) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E Complex -> r) -> E Complex -> E Complex -> r #

counital :: (E Complex -> r) -> r #

(Num r, TrivialConjugate r) => Coalgebra r (E Quaternion) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E Quaternion -> r) -> E Quaternion -> E Quaternion -> r #

counital :: (E Quaternion -> r) -> r #

Num r => Coalgebra r (E V0) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V0 -> r) -> E V0 -> E V0 -> r #

counital :: (E V0 -> r) -> r #

Num r => Coalgebra r (E V1) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V1 -> r) -> E V1 -> E V1 -> r #

counital :: (E V1 -> r) -> r #

Num r => Coalgebra r (E V2) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V2 -> r) -> E V2 -> E V2 -> r #

counital :: (E V2 -> r) -> r #

Num r => Coalgebra r (E V3) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V3 -> r) -> E V3 -> E V3 -> r #

counital :: (E V3 -> r) -> r #

Num r => Coalgebra r (E V4) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V4 -> r) -> E V4 -> E V4 -> r #

counital :: (E V4 -> r) -> r #

FoldableWithIndex (E Plucker) Plucker 
Instance details

Defined in Linear.Plucker

Methods

ifoldMap :: Monoid m => (E Plucker -> a -> m) -> Plucker a -> m

ifoldMap' :: Monoid m => (E Plucker -> a -> m) -> Plucker a -> m

ifoldr :: (E Plucker -> a -> b -> b) -> b -> Plucker a -> b

ifoldl :: (E Plucker -> b -> a -> b) -> b -> Plucker a -> b

ifoldr' :: (E Plucker -> a -> b -> b) -> b -> Plucker a -> b

ifoldl' :: (E Plucker -> b -> a -> b) -> b -> Plucker a -> b

FoldableWithIndex (E Quaternion) Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

ifoldMap :: Monoid m => (E Quaternion -> a -> m) -> Quaternion a -> m

ifoldMap' :: Monoid m => (E Quaternion -> a -> m) -> Quaternion a -> m

ifoldr :: (E Quaternion -> a -> b -> b) -> b -> Quaternion a -> b

ifoldl :: (E Quaternion -> b -> a -> b) -> b -> Quaternion a -> b

ifoldr' :: (E Quaternion -> a -> b -> b) -> b -> Quaternion a -> b

ifoldl' :: (E Quaternion -> b -> a -> b) -> b -> Quaternion a -> b

FoldableWithIndex (E V0) V0 
Instance details

Defined in Linear.V0

Methods

ifoldMap :: Monoid m => (E V0 -> a -> m) -> V0 a -> m

ifoldMap' :: Monoid m => (E V0 -> a -> m) -> V0 a -> m

ifoldr :: (E V0 -> a -> b -> b) -> b -> V0 a -> b

ifoldl :: (E V0 -> b -> a -> b) -> b -> V0 a -> b

ifoldr' :: (E V0 -> a -> b -> b) -> b -> V0 a -> b

ifoldl' :: (E V0 -> b -> a -> b) -> b -> V0 a -> b

FoldableWithIndex (E V1) V1 
Instance details

Defined in Linear.V1

Methods

ifoldMap :: Monoid m => (E V1 -> a -> m) -> V1 a -> m

ifoldMap' :: Monoid m => (E V1 -> a -> m) -> V1 a -> m

ifoldr :: (E V1 -> a -> b -> b) -> b -> V1 a -> b

ifoldl :: (E V1 -> b -> a -> b) -> b -> V1 a -> b

ifoldr' :: (E V1 -> a -> b -> b) -> b -> V1 a -> b

ifoldl' :: (E V1 -> b -> a -> b) -> b -> V1 a -> b

FoldableWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

ifoldMap :: Monoid m => (E V2 -> a -> m) -> V2 a -> m

ifoldMap' :: Monoid m => (E V2 -> a -> m) -> V2 a -> m

ifoldr :: (E V2 -> a -> b -> b) -> b -> V2 a -> b

ifoldl :: (E V2 -> b -> a -> b) -> b -> V2 a -> b

ifoldr' :: (E V2 -> a -> b -> b) -> b -> V2 a -> b

ifoldl' :: (E V2 -> b -> a -> b) -> b -> V2 a -> b

FoldableWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

ifoldMap :: Monoid m => (E V3 -> a -> m) -> V3 a -> m

ifoldMap' :: Monoid m => (E V3 -> a -> m) -> V3 a -> m

ifoldr :: (E V3 -> a -> b -> b) -> b -> V3 a -> b

ifoldl :: (E V3 -> b -> a -> b) -> b -> V3 a -> b

ifoldr' :: (E V3 -> a -> b -> b) -> b -> V3 a -> b

ifoldl' :: (E V3 -> b -> a -> b) -> b -> V3 a -> b

FoldableWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

ifoldMap :: Monoid m => (E V4 -> a -> m) -> V4 a -> m

ifoldMap' :: Monoid m => (E V4 -> a -> m) -> V4 a -> m

ifoldr :: (E V4 -> a -> b -> b) -> b -> V4 a -> b

ifoldl :: (E V4 -> b -> a -> b) -> b -> V4 a -> b

ifoldr' :: (E V4 -> a -> b -> b) -> b -> V4 a -> b

ifoldl' :: (E V4 -> b -> a -> b) -> b -> V4 a -> b

FunctorWithIndex (E Plucker) Plucker 
Instance details

Defined in Linear.Plucker

Methods

imap :: (E Plucker -> a -> b) -> Plucker a -> Plucker b

FunctorWithIndex (E Quaternion) Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

imap :: (E Quaternion -> a -> b) -> Quaternion a -> Quaternion b

FunctorWithIndex (E V0) V0 
Instance details

Defined in Linear.V0

Methods

imap :: (E V0 -> a -> b) -> V0 a -> V0 b

FunctorWithIndex (E V1) V1 
Instance details

Defined in Linear.V1

Methods

imap :: (E V1 -> a -> b) -> V1 a -> V1 b

FunctorWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

imap :: (E V2 -> a -> b) -> V2 a -> V2 b

FunctorWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

imap :: (E V3 -> a -> b) -> V3 a -> V3 b

FunctorWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

imap :: (E V4 -> a -> b) -> V4 a -> V4 b

TraversableWithIndex (E Plucker) Plucker 
Instance details

Defined in Linear.Plucker

Methods

itraverse :: Applicative f => (E Plucker -> a -> f b) -> Plucker a -> f (Plucker b)

TraversableWithIndex (E Quaternion) Quaternion 
Instance details

Defined in Linear.Quaternion

Methods

itraverse :: Applicative f => (E Quaternion -> a -> f b) -> Quaternion a -> f (Quaternion b)

TraversableWithIndex (E V0) V0 
Instance details

Defined in Linear.V0

Methods

itraverse :: Applicative f => (E V0 -> a -> f b) -> V0 a -> f (V0 b)

TraversableWithIndex (E V1) V1 
Instance details

Defined in Linear.V1

Methods

itraverse :: Applicative f => (E V1 -> a -> f b) -> V1 a -> f (V1 b)

TraversableWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

itraverse :: Applicative f => (E V2 -> a -> f b) -> V2 a -> f (V2 b)

TraversableWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

itraverse :: Applicative f => (E V3 -> a -> f b) -> V3 a -> f (V3 b)

TraversableWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

itraverse :: Applicative f => (E V4 -> a -> f b) -> V4 a -> f (V4 b)

(^*) :: (Functor f, Num a) => f a -> a -> f a #

(^/) :: (Functor f, Fractional a) => f a -> a -> f a #

basis :: (Additive t, Traversable t, Num a) => [t a] #

basisFor :: (Traversable t, Num a) => t b -> [t a] #

negated :: (Functor f, Num a) => f a -> f a #

scaled :: (Traversable t, Num a) => t a -> t (t a) #

sumV :: (Foldable f, Additive v, Num a) => f (v a) -> v a #

type family Diff (p :: Type -> Type) :: Type -> Type #

Instances

Instances details
type Diff ZipList 
Instance details

Defined in Linear.Affine

type Diff ZipList = ZipList
type Diff Complex 
Instance details

Defined in Linear.Affine

type Diff Complex = Complex
type Diff Identity 
Instance details

Defined in Linear.Affine

type Diff Identity = Identity
type Diff IntMap 
Instance details

Defined in Linear.Affine

type Diff IntMap = IntMap
type Diff Plucker 
Instance details

Defined in Linear.Affine

type Diff Plucker = Plucker
type Diff Quaternion 
Instance details

Defined in Linear.Affine

type Diff V0 
Instance details

Defined in Linear.Affine

type Diff V0 = V0
type Diff V1 
Instance details

Defined in Linear.Affine

type Diff V1 = V1
type Diff V2 
Instance details

Defined in Linear.Affine

type Diff V2 = V2
type Diff V3 
Instance details

Defined in Linear.Affine

type Diff V3 = V3
type Diff V4 
Instance details

Defined in Linear.Affine

type Diff V4 = V4
type Diff Vector 
Instance details

Defined in Linear.Affine

type Diff Vector = Vector
type Diff Maybe 
Instance details

Defined in Linear.Affine

type Diff Maybe = Maybe
type Diff [] 
Instance details

Defined in Linear.Affine

type Diff [] = []
type Diff (Map k) 
Instance details

Defined in Linear.Affine

type Diff (Map k) = Map k
type Diff (Point f) 
Instance details

Defined in Linear.Affine

type Diff (Point f) = f
type Diff (HashMap k) 
Instance details

Defined in Linear.Affine

type Diff (HashMap k) = HashMap k
type Diff (V n) 
Instance details

Defined in Linear.Affine

type Diff (V n) = V n
type Diff (Product f g) 
Instance details

Defined in Linear.Affine

type Diff (Product f g) = Product (Diff f) (Diff g)
type Diff ((->) b) 
Instance details

Defined in Linear.Affine

type Diff ((->) b) = (->) b

_Point :: forall f1 a g b p f2. (Profunctor p, Functor f2) => p (f1 a) (f2 (g b)) -> p (Point f1 a) (f2 (Point g b)) #

distanceA :: (Floating a, Foldable (Diff p), Affine p) => p a -> p a -> a #

lensP :: forall f1 a g b f2. Functor f2 => (f1 a -> f2 (g b)) -> Point f1 a -> f2 (Point g b) #

origin :: forall (f :: Type -> Type) a. (Additive f, Num a) => Point f a #

qdA :: (Affine p, Foldable (Diff p), Num a) => p a -> p a -> a #

relative :: forall (f :: Type -> Type) a. (Additive f, Num a) => Point f a -> Iso' (Point f a) (f a) #

unP :: Point f a -> f a #

Point

newtype Point (f :: Type -> Type) a #

Constructors

P (f a) 

Instances

Instances details
Generic1 (Point f :: Type -> Type) 
Instance details

Defined in Linear.Affine

Associated Types

type Rep1 (Point f :: Type -> Type) 
Instance details

Defined in Linear.Affine

type Rep1 (Point f :: Type -> Type) = D1 ('MetaData "Point" "Linear.Affine" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "P" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 f)))

Methods

from1 :: Point f a -> Rep1 (Point f) a

to1 :: Rep1 (Point f) a -> Point f a

Unbox (f a) => Vector Vector (Point f a) 
Instance details

Defined in Linear.Affine

Methods

basicUnsafeFreeze :: Mutable Vector s (Point f a) -> ST s (Vector (Point f a))

basicUnsafeThaw :: Vector (Point f a) -> ST s (Mutable Vector s (Point f a))

basicLength :: Vector (Point f a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Point f a) -> Vector (Point f a)

basicUnsafeIndexM :: Vector (Point f a) -> Int -> Box (Point f a)

basicUnsafeCopy :: Mutable Vector s (Point f a) -> Vector (Point f a) -> ST s ()

elemseq :: Vector (Point f a) -> Point f a -> b -> b

Unbox (f a) => MVector MVector (Point f a) 
Instance details

Defined in Linear.Affine

Methods

basicLength :: MVector s (Point f a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Point f a) -> MVector s (Point f a)

basicOverlaps :: MVector s (Point f a) -> MVector s (Point f a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Point f a))

basicInitialize :: MVector s (Point f a) -> ST s ()

basicUnsafeReplicate :: Int -> Point f a -> ST s (MVector s (Point f a))

basicUnsafeRead :: MVector s (Point f a) -> Int -> ST s (Point f a)

basicUnsafeWrite :: MVector s (Point f a) -> Int -> Point f a -> ST s ()

basicClear :: MVector s (Point f a) -> ST s ()

basicSet :: MVector s (Point f a) -> Point f a -> ST s ()

basicUnsafeCopy :: MVector s (Point f a) -> MVector s (Point f a) -> ST s ()

basicUnsafeMove :: MVector s (Point f a) -> MVector s (Point f a) -> ST s ()

basicUnsafeGrow :: MVector s (Point f a) -> Int -> ST s (MVector s (Point f a))

Representable f => Representable (Point f) 
Instance details

Defined in Linear.Affine

Associated Types

type Rep (Point f) 
Instance details

Defined in Linear.Affine

type Rep (Point f) = Rep f

Methods

tabulate :: (Rep (Point f) -> a) -> Point f a

index :: Point f a -> Rep (Point f) -> a

Foldable f => Foldable (Point f) 
Instance details

Defined in Linear.Affine

Methods

fold :: Monoid m => Point f m -> m

foldMap :: Monoid m => (a -> m) -> Point f a -> m

foldMap' :: Monoid m => (a -> m) -> Point f a -> m

foldr :: (a -> b -> b) -> b -> Point f a -> b

foldr' :: (a -> b -> b) -> b -> Point f a -> b

foldl :: (b -> a -> b) -> b -> Point f a -> b

foldl' :: (b -> a -> b) -> b -> Point f a -> b

foldr1 :: (a -> a -> a) -> Point f a -> a

foldl1 :: (a -> a -> a) -> Point f a -> a

toList :: Point f a -> [a]

null :: Point f a -> Bool

length :: Point f a -> Int

elem :: Eq a => a -> Point f a -> Bool

maximum :: Ord a => Point f a -> a

minimum :: Ord a => Point f a -> a

sum :: Num a => Point f a -> a

product :: Num a => Point f a -> a

Eq1 f => Eq1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftEq :: (a -> b -> Bool) -> Point f a -> Point f b -> Bool

Ord1 f => Ord1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftCompare :: (a -> b -> Ordering) -> Point f a -> Point f b -> Ordering

Read1 f => Read1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Point f a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Point f a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Point f a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Point f a]

Show1 f => Show1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Point f a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Point f a] -> ShowS

Traversable f => Traversable (Point f) 
Instance details

Defined in Linear.Affine

Methods

traverse :: Applicative f0 => (a -> f0 b) -> Point f a -> f0 (Point f b)

sequenceA :: Applicative f0 => Point f (f0 a) -> f0 (Point f a)

mapM :: Monad m => (a -> m b) -> Point f a -> m (Point f b)

sequence :: Monad m => Point f (m a) -> m (Point f a)

Applicative f => Applicative (Point f) 
Instance details

Defined in Linear.Affine

Methods

pure :: a -> Point f a

(<*>) :: Point f (a -> b) -> Point f a -> Point f b

liftA2 :: (a -> b -> c) -> Point f a -> Point f b -> Point f c

(*>) :: Point f a -> Point f b -> Point f b

(<*) :: Point f a -> Point f b -> Point f a

Functor f => Functor (Point f) 
Instance details

Defined in Linear.Affine

Methods

fmap :: (a -> b) -> Point f a -> Point f b

(<$) :: a -> Point f b -> Point f a

Monad f => Monad (Point f) 
Instance details

Defined in Linear.Affine

Methods

(>>=) :: Point f a -> (a -> Point f b) -> Point f b

(>>) :: Point f a -> Point f b -> Point f b

return :: a -> Point f a

Serial1 f => Serial1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

serializeWith :: MonadPut m => (a -> m ()) -> Point f a -> m ()

deserializeWith :: MonadGet m => m a -> m (Point f a)

Distributive f => Distributive (Point f) 
Instance details

Defined in Linear.Affine

Methods

distribute :: Functor f0 => f0 (Point f a) -> Point f (f0 a)

collect :: Functor f0 => (a -> Point f b) -> f0 a -> Point f (f0 b)

distributeM :: Monad m => m (Point f a) -> Point f (m a)

collectM :: Monad m => (a -> Point f b) -> m a -> Point f (m b)

Hashable1 f => Hashable1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> Point f a -> Int

Additive f => Affine (Point f) 
Instance details

Defined in Linear.Affine

Associated Types

type Diff (Point f) 
Instance details

Defined in Linear.Affine

type Diff (Point f) = f

Methods

(.-.) :: Num a => Point f a -> Point f a -> Diff (Point f) a #

(.+^) :: Num a => Point f a -> Diff (Point f) a -> Point f a #

(.-^) :: Num a => Point f a -> Diff (Point f) a -> Point f a #

Metric f => Metric (Point f) 
Instance details

Defined in Linear.Affine

Methods

dot :: Num a => Point f a -> Point f a -> a #

quadrance :: Num a => Point f a -> a #

qd :: Num a => Point f a -> Point f a -> a #

distance :: Floating a => Point f a -> Point f a -> a #

norm :: Floating a => Point f a -> a #

signorm :: Floating a => Point f a -> Point f a #

Finite f => Finite (Point f) 
Instance details

Defined in Linear.Affine

Associated Types

type Size (Point f) 
Instance details

Defined in Linear.Affine

type Size (Point f) = Size f

Methods

toV :: Point f a -> V (Size (Point f)) a

fromV :: V (Size (Point f)) a -> Point f a

R1 f => R1 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_x :: Lens' (Point f a) a #

R2 f => R2 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_y :: Lens' (Point f a) a #

_xy :: Lens' (Point f a) (V2 a) #

R3 f => R3 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_z :: Lens' (Point f a) a #

_xyz :: Lens' (Point f a) (V3 a) #

R4 f => R4 (Point f) 
Instance details

Defined in Linear.Affine

Methods

_w :: Lens' (Point f a) a #

_xyzw :: Lens' (Point f a) (V4 a) #

Additive f => Additive (Point f) 
Instance details

Defined in Linear.Affine

Methods

zero :: Num a => Point f a #

(^+^) :: Num a => Point f a -> Point f a -> Point f a #

(^-^) :: Num a => Point f a -> Point f a -> Point f a #

lerp :: Num a => a -> Point f a -> Point f a -> Point f a #

liftU2 :: (a -> a -> a) -> Point f a -> Point f a -> Point f a #

liftI2 :: (a -> b -> c) -> Point f a -> Point f b -> Point f c #

Apply f => Apply (Point f) 
Instance details

Defined in Linear.Affine

Methods

(<.>) :: Point f (a -> b) -> Point f a -> Point f b

(.>) :: Point f a -> Point f b -> Point f b

(<.) :: Point f a -> Point f b -> Point f a

liftF2 :: (a -> b -> c) -> Point f a -> Point f b -> Point f c

Bind f => Bind (Point f) 
Instance details

Defined in Linear.Affine

Methods

(>>-) :: Point f a -> (a -> Point f b) -> Point f b

join :: Point f (Point f a) -> Point f a

(Typeable f, Typeable a, Data (f a)) => Data (Point f a) 
Instance details

Defined in Linear.Affine

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Point f a -> c (Point f a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Point f a)

toConstr :: Point f a -> Constr

dataTypeOf :: Point f a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Point f a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Point f a))

gmapT :: (forall b. Data b => b -> b) -> Point f a -> Point f a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Point f a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Point f a -> r

gmapQ :: (forall d. Data d => d -> u) -> Point f a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Point f a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Point f a -> m (Point f a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Point f a -> m (Point f a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Point f a -> m (Point f a)

Storable (f a) => Storable (Point f a) 
Instance details

Defined in Linear.Affine

Methods

sizeOf :: Point f a -> Int

alignment :: Point f a -> Int

peekElemOff :: Ptr (Point f a) -> Int -> IO (Point f a)

pokeElemOff :: Ptr (Point f a) -> Int -> Point f a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (Point f a)

pokeByteOff :: Ptr b -> Int -> Point f a -> IO ()

peek :: Ptr (Point f a) -> IO (Point f a)

poke :: Ptr (Point f a) -> Point f a -> IO ()

Monoid (f a) => Monoid (Point f a) 
Instance details

Defined in Linear.Affine

Methods

mempty :: Point f a

mappend :: Point f a -> Point f a -> Point f a

mconcat :: [Point f a] -> Point f a

Semigroup (f a) => Semigroup (Point f a) 
Instance details

Defined in Linear.Affine

Methods

(<>) :: Point f a -> Point f a -> Point f a

sconcat :: NonEmpty (Point f a) -> Point f a

stimes :: Integral b => b -> Point f a -> Point f a

Generic (Point f a) 
Instance details

Defined in Linear.Affine

Associated Types

type Rep (Point f a) 
Instance details

Defined in Linear.Affine

type Rep (Point f a) = D1 ('MetaData "Point" "Linear.Affine" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "P" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Point f a -> Rep (Point f a) x

to :: Rep (Point f a) x -> Point f a

Ix (f a) => Ix (Point f a) 
Instance details

Defined in Linear.Affine

Methods

range :: (Point f a, Point f a) -> [Point f a]

index :: (Point f a, Point f a) -> Point f a -> Int

unsafeIndex :: (Point f a, Point f a) -> Point f a -> Int

inRange :: (Point f a, Point f a) -> Point f a -> Bool

rangeSize :: (Point f a, Point f a) -> Int

unsafeRangeSize :: (Point f a, Point f a) -> Int

Num (f a) => Num (Point f a) 
Instance details

Defined in Linear.Affine

Methods

(+) :: Point f a -> Point f a -> Point f a

(-) :: Point f a -> Point f a -> Point f a

(*) :: Point f a -> Point f a -> Point f a

negate :: Point f a -> Point f a

abs :: Point f a -> Point f a

signum :: Point f a -> Point f a

fromInteger :: Integer -> Point f a

Read (f a) => Read (Point f a) 
Instance details

Defined in Linear.Affine

Methods

readsPrec :: Int -> ReadS (Point f a)

readList :: ReadS [Point f a]

readPrec :: ReadPrec (Point f a)

readListPrec :: ReadPrec [Point f a]

Fractional (f a) => Fractional (Point f a) 
Instance details

Defined in Linear.Affine

Methods

(/) :: Point f a -> Point f a -> Point f a

recip :: Point f a -> Point f a

fromRational :: Rational -> Point f a

Show (f a) => Show (Point f a) 
Instance details

Defined in Linear.Affine

Methods

showsPrec :: Int -> Point f a -> ShowS

show :: Point f a -> String

showList :: [Point f a] -> ShowS

Binary (f a) => Binary (Point f a) 
Instance details

Defined in Linear.Affine

Methods

put :: Point f a -> Put

get :: Get (Point f a)

putList :: [Point f a] -> Put

Serial (f a) => Serial (Point f a) 
Instance details

Defined in Linear.Affine

Methods

serialize :: MonadPut m => Point f a -> m ()

deserialize :: MonadGet m => m (Point f a)

Serialize (f a) => Serialize (Point f a) 
Instance details

Defined in Linear.Affine

Methods

put :: Putter (Point f a)

get :: Get (Point f a)

NFData (f a) => NFData (Point f a) 
Instance details

Defined in Linear.Affine

Methods

rnf :: Point f a -> ()

Eq (f a) => Eq (Point f a) 
Instance details

Defined in Linear.Affine

Methods

(==) :: Point f a -> Point f a -> Bool

(/=) :: Point f a -> Point f a -> Bool

Ord (f a) => Ord (Point f a) 
Instance details

Defined in Linear.Affine

Methods

compare :: Point f a -> Point f a -> Ordering

(<) :: Point f a -> Point f a -> Bool

(<=) :: Point f a -> Point f a -> Bool

(>) :: Point f a -> Point f a -> Bool

(>=) :: Point f a -> Point f a -> Bool

max :: Point f a -> Point f a -> Point f a

min :: Point f a -> Point f a -> Point f a

Hashable (f a) => Hashable (Point f a) 
Instance details

Defined in Linear.Affine

Methods

hashWithSalt :: Int -> Point f a -> Int

hash :: Point f a -> Int

Ixed (f a) => Ixed (Point f a) 
Instance details

Defined in Linear.Affine

Methods

ix :: Index (Point f a) -> Traversal' (Point f a) (IxValue (Point f a))

Wrapped (Point f a) 
Instance details

Defined in Linear.Affine

Associated Types

type Unwrapped (Point f a) 
Instance details

Defined in Linear.Affine

type Unwrapped (Point f a) = f a

Methods

_Wrapped' :: Iso' (Point f a) (Unwrapped (Point f a))

Epsilon (f a) => Epsilon (Point f a) 
Instance details

Defined in Linear.Affine

Methods

nearZero :: Point f a -> Bool #

Random (f a) => Random (Point f a) 
Instance details

Defined in Linear.Affine

Methods

randomR :: RandomGen g => (Point f a, Point f a) -> g -> (Point f a, g)

random :: RandomGen g => g -> (Point f a, g)

randomRs :: RandomGen g => (Point f a, Point f a) -> g -> [Point f a]

randoms :: RandomGen g => g -> [Point f a]

Unbox (f a) => Unbox (Point f a) 
Instance details

Defined in Linear.Affine

t ~ Point g b => Rewrapped (Point f a) t 
Instance details

Defined in Linear.Affine

Traversable f => Each (Point f a) (Point f b) a b 
Instance details

Defined in Linear.Affine

Methods

each :: Traversal (Point f a) (Point f b) a b

type Rep1 (Point f :: Type -> Type) 
Instance details

Defined in Linear.Affine

type Rep1 (Point f :: Type -> Type) = D1 ('MetaData "Point" "Linear.Affine" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "P" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 f)))
newtype MVector s (Point f a) 
Instance details

Defined in Linear.Affine

newtype MVector s (Point f a) = MV_P (MVector s (f a))
type Rep (Point f) 
Instance details

Defined in Linear.Affine

type Rep (Point f) = Rep f
type Diff (Point f) 
Instance details

Defined in Linear.Affine

type Diff (Point f) = f
type Size (Point f) 
Instance details

Defined in Linear.Affine

type Size (Point f) = Size f
type Rep (Point f a) 
Instance details

Defined in Linear.Affine

type Rep (Point f a) = D1 ('MetaData "Point" "Linear.Affine" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'True) (C1 ('MetaCons "P" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))
type Index (Point f a) 
Instance details

Defined in Linear.Affine

type Index (Point f a) = Index (f a)
type IxValue (Point f a) 
Instance details

Defined in Linear.Affine

type IxValue (Point f a) = IxValue (f a)
type Unwrapped (Point f a) 
Instance details

Defined in Linear.Affine

type Unwrapped (Point f a) = f a
newtype Vector (Point f a) 
Instance details

Defined in Linear.Affine

newtype Vector (Point f a) = V_P (Vector (f a))

Vectors

data V2 a #

Constructors

V2 !a !a 

Instances

Instances details
Representable V2 
Instance details

Defined in Linear.V2

Associated Types

type Rep V2 
Instance details

Defined in Linear.V2

type Rep V2 = E V2

Methods

tabulate :: (Rep V2 -> a) -> V2 a

index :: V2 a -> Rep V2 -> a

MonadFix V2 
Instance details

Defined in Linear.V2

Methods

mfix :: (a -> V2 a) -> V2 a

MonadZip V2 
Instance details

Defined in Linear.V2

Methods

mzip :: V2 a -> V2 b -> V2 (a, b)

mzipWith :: (a -> b -> c) -> V2 a -> V2 b -> V2 c

munzip :: V2 (a, b) -> (V2 a, V2 b)

Foldable V2 
Instance details

Defined in Linear.V2

Methods

fold :: Monoid m => V2 m -> m

foldMap :: Monoid m => (a -> m) -> V2 a -> m

foldMap' :: Monoid m => (a -> m) -> V2 a -> m

foldr :: (a -> b -> b) -> b -> V2 a -> b

foldr' :: (a -> b -> b) -> b -> V2 a -> b

foldl :: (b -> a -> b) -> b -> V2 a -> b

foldl' :: (b -> a -> b) -> b -> V2 a -> b

foldr1 :: (a -> a -> a) -> V2 a -> a

foldl1 :: (a -> a -> a) -> V2 a -> a

toList :: V2 a -> [a]

null :: V2 a -> Bool

length :: V2 a -> Int

elem :: Eq a => a -> V2 a -> Bool

maximum :: Ord a => V2 a -> a

minimum :: Ord a => V2 a -> a

sum :: Num a => V2 a -> a

product :: Num a => V2 a -> a

Foldable1 V2 
Instance details

Defined in Linear.V2

Methods

fold1 :: Semigroup m => V2 m -> m

foldMap1 :: Semigroup m => (a -> m) -> V2 a -> m

foldMap1' :: Semigroup m => (a -> m) -> V2 a -> m

toNonEmpty :: V2 a -> NonEmpty a

maximum :: Ord a => V2 a -> a

minimum :: Ord a => V2 a -> a

head :: V2 a -> a

last :: V2 a -> a

foldrMap1 :: (a -> b) -> (a -> b -> b) -> V2 a -> b

foldlMap1' :: (a -> b) -> (b -> a -> b) -> V2 a -> b

foldlMap1 :: (a -> b) -> (b -> a -> b) -> V2 a -> b

foldrMap1' :: (a -> b) -> (a -> b -> b) -> V2 a -> b

Eq1 V2 
Instance details

Defined in Linear.V2

Methods

liftEq :: (a -> b -> Bool) -> V2 a -> V2 b -> Bool

Ord1 V2 
Instance details

Defined in Linear.V2

Methods

liftCompare :: (a -> b -> Ordering) -> V2 a -> V2 b -> Ordering

Read1 V2 
Instance details

Defined in Linear.V2

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (V2 a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [V2 a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (V2 a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [V2 a]

Show1 V2 
Instance details

Defined in Linear.V2

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> V2 a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [V2 a] -> ShowS

Traversable V2 
Instance details

Defined in Linear.V2

Methods

traverse :: Applicative f => (a -> f b) -> V2 a -> f (V2 b)

sequenceA :: Applicative f => V2 (f a) -> f (V2 a)

mapM :: Monad m => (a -> m b) -> V2 a -> m (V2 b)

sequence :: Monad m => V2 (m a) -> m (V2 a)

Applicative V2 
Instance details

Defined in Linear.V2

Methods

pure :: a -> V2 a

(<*>) :: V2 (a -> b) -> V2 a -> V2 b

liftA2 :: (a -> b -> c) -> V2 a -> V2 b -> V2 c

(*>) :: V2 a -> V2 b -> V2 b

(<*) :: V2 a -> V2 b -> V2 a

Functor V2 
Instance details

Defined in Linear.V2

Methods

fmap :: (a -> b) -> V2 a -> V2 b

(<$) :: a -> V2 b -> V2 a

Monad V2 
Instance details

Defined in Linear.V2

Methods

(>>=) :: V2 a -> (a -> V2 b) -> V2 b

(>>) :: V2 a -> V2 b -> V2 b

return :: a -> V2 a

Serial1 V2 
Instance details

Defined in Linear.V2

Methods

serializeWith :: MonadPut m => (a -> m ()) -> V2 a -> m ()

deserializeWith :: MonadGet m => m a -> m (V2 a)

Distributive V2 
Instance details

Defined in Linear.V2

Methods

distribute :: Functor f => f (V2 a) -> V2 (f a)

collect :: Functor f => (a -> V2 b) -> f a -> V2 (f b)

distributeM :: Monad m => m (V2 a) -> V2 (m a)

collectM :: Monad m => (a -> V2 b) -> m a -> V2 (m b)

Hashable1 V2 
Instance details

Defined in Linear.V2

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> V2 a -> Int

Affine V2 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V2 
Instance details

Defined in Linear.Affine

type Diff V2 = V2

Methods

(.-.) :: Num a => V2 a -> V2 a -> Diff V2 a #

(.+^) :: Num a => V2 a -> Diff V2 a -> V2 a #

(.-^) :: Num a => V2 a -> Diff V2 a -> V2 a #

Metric V2 
Instance details

Defined in Linear.V2

Methods

dot :: Num a => V2 a -> V2 a -> a #

quadrance :: Num a => V2 a -> a #

qd :: Num a => V2 a -> V2 a -> a #

distance :: Floating a => V2 a -> V2 a -> a #

norm :: Floating a => V2 a -> a #

signorm :: Floating a => V2 a -> V2 a #

Trace V2 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V2 (V2 a) -> a #

diagonal :: V2 (V2 a) -> V2 a #

Finite V2 
Instance details

Defined in Linear.V2

Associated Types

type Size V2 
Instance details

Defined in Linear.V2

type Size V2 = 2

Methods

toV :: V2 a -> V (Size V2) a

fromV :: V (Size V2) a -> V2 a

R1 V2 
Instance details

Defined in Linear.V2

Methods

_x :: Lens' (V2 a) a #

R2 V2 
Instance details

Defined in Linear.V2

Methods

_y :: Lens' (V2 a) a #

_xy :: Lens' (V2 a) (V2 a) #

Additive V2 
Instance details

Defined in Linear.V2

Methods

zero :: Num a => V2 a #

(^+^) :: Num a => V2 a -> V2 a -> V2 a #

(^-^) :: Num a => V2 a -> V2 a -> V2 a #

lerp :: Num a => a -> V2 a -> V2 a -> V2 a #

liftU2 :: (a -> a -> a) -> V2 a -> V2 a -> V2 a #

liftI2 :: (a -> b -> c) -> V2 a -> V2 b -> V2 c #

Apply V2 
Instance details

Defined in Linear.V2

Methods

(<.>) :: V2 (a -> b) -> V2 a -> V2 b

(.>) :: V2 a -> V2 b -> V2 b

(<.) :: V2 a -> V2 b -> V2 a

liftF2 :: (a -> b -> c) -> V2 a -> V2 b -> V2 c

Bind V2 
Instance details

Defined in Linear.V2

Methods

(>>-) :: V2 a -> (a -> V2 b) -> V2 b

join :: V2 (V2 a) -> V2 a

Traversable1 V2 
Instance details

Defined in Linear.V2

Methods

traverse1 :: Apply f => (a -> f b) -> V2 a -> f (V2 b)

sequence1 :: Apply f => V2 (f b) -> f (V2 b)

Generic1 V2 
Instance details

Defined in Linear.V2

Associated Types

type Rep1 V2 
Instance details

Defined in Linear.V2

type Rep1 V2 = D1 ('MetaData "V2" "Linear.V2" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1))

Methods

from1 :: V2 a -> Rep1 V2 a

to1 :: Rep1 V2 a -> V2 a

Num r => Coalgebra r (E V2) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V2 -> r) -> E V2 -> E V2 -> r #

counital :: (E V2 -> r) -> r #

Lift a => Lift (V2 a :: Type) 
Instance details

Defined in Linear.V2

Methods

lift :: Quote m => V2 a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => V2 a -> Code m (V2 a)

Unbox a => Vector Vector (V2 a) 
Instance details

Defined in Linear.V2

Methods

basicUnsafeFreeze :: Mutable Vector s (V2 a) -> ST s (Vector (V2 a))

basicUnsafeThaw :: Vector (V2 a) -> ST s (Mutable Vector s (V2 a))

basicLength :: Vector (V2 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V2 a) -> Vector (V2 a)

basicUnsafeIndexM :: Vector (V2 a) -> Int -> Box (V2 a)

basicUnsafeCopy :: Mutable Vector s (V2 a) -> Vector (V2 a) -> ST s ()

elemseq :: Vector (V2 a) -> V2 a -> b -> b

Unbox a => MVector MVector (V2 a) 
Instance details

Defined in Linear.V2

Methods

basicLength :: MVector s (V2 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V2 a) -> MVector s (V2 a)

basicOverlaps :: MVector s (V2 a) -> MVector s (V2 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V2 a))

basicInitialize :: MVector s (V2 a) -> ST s ()

basicUnsafeReplicate :: Int -> V2 a -> ST s (MVector s (V2 a))

basicUnsafeRead :: MVector s (V2 a) -> Int -> ST s (V2 a)

basicUnsafeWrite :: MVector s (V2 a) -> Int -> V2 a -> ST s ()

basicClear :: MVector s (V2 a) -> ST s ()

basicSet :: MVector s (V2 a) -> V2 a -> ST s ()

basicUnsafeCopy :: MVector s (V2 a) -> MVector s (V2 a) -> ST s ()

basicUnsafeMove :: MVector s (V2 a) -> MVector s (V2 a) -> ST s ()

basicUnsafeGrow :: MVector s (V2 a) -> Int -> ST s (MVector s (V2 a))

Data a => Data (V2 a) 
Instance details

Defined in Linear.V2

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> V2 a -> c (V2 a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (V2 a)

toConstr :: V2 a -> Constr

dataTypeOf :: V2 a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (V2 a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (V2 a))

gmapT :: (forall b. Data b => b -> b) -> V2 a -> V2 a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> V2 a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> V2 a -> r

gmapQ :: (forall d. Data d => d -> u) -> V2 a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> V2 a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> V2 a -> m (V2 a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> V2 a -> m (V2 a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> V2 a -> m (V2 a)

Storable a => Storable (V2 a) 
Instance details

Defined in Linear.V2

Methods

sizeOf :: V2 a -> Int

alignment :: V2 a -> Int

peekElemOff :: Ptr (V2 a) -> Int -> IO (V2 a)

pokeElemOff :: Ptr (V2 a) -> Int -> V2 a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (V2 a)

pokeByteOff :: Ptr b -> Int -> V2 a -> IO ()

peek :: Ptr (V2 a) -> IO (V2 a)

poke :: Ptr (V2 a) -> V2 a -> IO ()

Monoid a => Monoid (V2 a) 
Instance details

Defined in Linear.V2

Methods

mempty :: V2 a

mappend :: V2 a -> V2 a -> V2 a

mconcat :: [V2 a] -> V2 a

Semigroup a => Semigroup (V2 a) 
Instance details

Defined in Linear.V2

Methods

(<>) :: V2 a -> V2 a -> V2 a

sconcat :: NonEmpty (V2 a) -> V2 a

stimes :: Integral b => b -> V2 a -> V2 a

Bounded a => Bounded (V2 a) 
Instance details

Defined in Linear.V2

Methods

minBound :: V2 a

maxBound :: V2 a

Floating a => Floating (V2 a) 
Instance details

Defined in Linear.V2

Methods

pi :: V2 a

exp :: V2 a -> V2 a

log :: V2 a -> V2 a

sqrt :: V2 a -> V2 a

(**) :: V2 a -> V2 a -> V2 a

logBase :: V2 a -> V2 a -> V2 a

sin :: V2 a -> V2 a

cos :: V2 a -> V2 a

tan :: V2 a -> V2 a

asin :: V2 a -> V2 a

acos :: V2 a -> V2 a

atan :: V2 a -> V2 a

sinh :: V2 a -> V2 a

cosh :: V2 a -> V2 a

tanh :: V2 a -> V2 a

asinh :: V2 a -> V2 a

acosh :: V2 a -> V2 a

atanh :: V2 a -> V2 a

log1p :: V2 a -> V2 a

expm1 :: V2 a -> V2 a

log1pexp :: V2 a -> V2 a

log1mexp :: V2 a -> V2 a

Generic (V2 a) 
Instance details

Defined in Linear.V2

Associated Types

type Rep (V2 a) 
Instance details

Defined in Linear.V2

type Rep (V2 a) = D1 ('MetaData "V2" "Linear.V2" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))

Methods

from :: V2 a -> Rep (V2 a) x

to :: Rep (V2 a) x -> V2 a

Ix a => Ix (V2 a) 
Instance details

Defined in Linear.V2

Methods

range :: (V2 a, V2 a) -> [V2 a]

index :: (V2 a, V2 a) -> V2 a -> Int

unsafeIndex :: (V2 a, V2 a) -> V2 a -> Int

inRange :: (V2 a, V2 a) -> V2 a -> Bool

rangeSize :: (V2 a, V2 a) -> Int

unsafeRangeSize :: (V2 a, V2 a) -> Int

Num a => Num (V2 a) 
Instance details

Defined in Linear.V2

Methods

(+) :: V2 a -> V2 a -> V2 a

(-) :: V2 a -> V2 a -> V2 a

(*) :: V2 a -> V2 a -> V2 a

negate :: V2 a -> V2 a

abs :: V2 a -> V2 a

signum :: V2 a -> V2 a

fromInteger :: Integer -> V2 a

Read a => Read (V2 a) 
Instance details

Defined in Linear.V2

Methods

readsPrec :: Int -> ReadS (V2 a)

readList :: ReadS [V2 a]

readPrec :: ReadPrec (V2 a)

readListPrec :: ReadPrec [V2 a]

Fractional a => Fractional (V2 a) 
Instance details

Defined in Linear.V2

Methods

(/) :: V2 a -> V2 a -> V2 a

recip :: V2 a -> V2 a

fromRational :: Rational -> V2 a

Show a => Show (V2 a) 
Instance details

Defined in Linear.V2

Methods

showsPrec :: Int -> V2 a -> ShowS

show :: V2 a -> String

showList :: [V2 a] -> ShowS

Binary a => Binary (V2 a) 
Instance details

Defined in Linear.V2

Methods

put :: V2 a -> Put

get :: Get (V2 a)

putList :: [V2 a] -> Put

Serial a => Serial (V2 a) 
Instance details

Defined in Linear.V2

Methods

serialize :: MonadPut m => V2 a -> m ()

deserialize :: MonadGet m => m (V2 a)

Serialize a => Serialize (V2 a) 
Instance details

Defined in Linear.V2

Methods

put :: Putter (V2 a)

get :: Get (V2 a)

NFData a => NFData (V2 a) 
Instance details

Defined in Linear.V2

Methods

rnf :: V2 a -> ()

Eq a => Eq (V2 a) 
Instance details

Defined in Linear.V2

Methods

(==) :: V2 a -> V2 a -> Bool

(/=) :: V2 a -> V2 a -> Bool

Ord a => Ord (V2 a) 
Instance details

Defined in Linear.V2

Methods

compare :: V2 a -> V2 a -> Ordering

(<) :: V2 a -> V2 a -> Bool

(<=) :: V2 a -> V2 a -> Bool

(>) :: V2 a -> V2 a -> Bool

(>=) :: V2 a -> V2 a -> Bool

max :: V2 a -> V2 a -> V2 a

min :: V2 a -> V2 a -> V2 a

Hashable a => Hashable (V2 a) 
Instance details

Defined in Linear.V2

Methods

hashWithSalt :: Int -> V2 a -> Int

hash :: V2 a -> Int

Ixed (V2 a) 
Instance details

Defined in Linear.V2

Methods

ix :: Index (V2 a) -> Traversal' (V2 a) (IxValue (V2 a))

Epsilon a => Epsilon (V2 a) 
Instance details

Defined in Linear.V2

Methods

nearZero :: V2 a -> Bool #

Random a => Random (V2 a) 
Instance details

Defined in Linear.V2

Methods

randomR :: RandomGen g => (V2 a, V2 a) -> g -> (V2 a, g)

random :: RandomGen g => g -> (V2 a, g)

randomRs :: RandomGen g => (V2 a, V2 a) -> g -> [V2 a]

randoms :: RandomGen g => g -> [V2 a]

Uniform a => Uniform (V2 a) 
Instance details

Defined in Linear.V2

Methods

uniformM :: StatefulGen g m => g -> m (V2 a)

UniformRange a => UniformRange (V2 a) 
Instance details

Defined in Linear.V2

Methods

uniformRM :: StatefulGen g m => (V2 a, V2 a) -> g -> m (V2 a)

Unbox a => Unbox (V2 a) 
Instance details

Defined in Linear.V2

FoldableWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

ifoldMap :: Monoid m => (E V2 -> a -> m) -> V2 a -> m

ifoldMap' :: Monoid m => (E V2 -> a -> m) -> V2 a -> m

ifoldr :: (E V2 -> a -> b -> b) -> b -> V2 a -> b

ifoldl :: (E V2 -> b -> a -> b) -> b -> V2 a -> b

ifoldr' :: (E V2 -> a -> b -> b) -> b -> V2 a -> b

ifoldl' :: (E V2 -> b -> a -> b) -> b -> V2 a -> b

FunctorWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

imap :: (E V2 -> a -> b) -> V2 a -> V2 b

TraversableWithIndex (E V2) V2 
Instance details

Defined in Linear.V2

Methods

itraverse :: Applicative f => (E V2 -> a -> f b) -> V2 a -> f (V2 b)

Each (V2 a) (V2 b) a b 
Instance details

Defined in Linear.V2

Methods

each :: Traversal (V2 a) (V2 b) a b

Field1 (V2 a) (V2 a) a a 
Instance details

Defined in Linear.V2

Methods

_1 :: Lens (V2 a) (V2 a) a a

Field2 (V2 a) (V2 a) a a 
Instance details

Defined in Linear.V2

Methods

_2 :: Lens (V2 a) (V2 a) a a

type Rep V2 
Instance details

Defined in Linear.V2

type Rep V2 = E V2
type Diff V2 
Instance details

Defined in Linear.Affine

type Diff V2 = V2
type Size V2 
Instance details

Defined in Linear.V2

type Size V2 = 2
type Rep1 V2 
Instance details

Defined in Linear.V2

type Rep1 V2 = D1 ('MetaData "V2" "Linear.V2" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1))
data MVector s (V2 a) 
Instance details

Defined in Linear.V2

data MVector s (V2 a) = MV_V2 !Int !(MVector s a)
type Rep (V2 a) 
Instance details

Defined in Linear.V2

type Rep (V2 a) = D1 ('MetaData "V2" "Linear.V2" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))
type Index (V2 a) 
Instance details

Defined in Linear.V2

type Index (V2 a) = E V2
type IxValue (V2 a) 
Instance details

Defined in Linear.V2

type IxValue (V2 a) = a
data Vector (V2 a) 
Instance details

Defined in Linear.V2

data Vector (V2 a) = V_V2 !Int !(Vector a)

data V3 a #

Constructors

V3 !a !a !a 

Instances

Instances details
Representable V3 
Instance details

Defined in Linear.V3

Associated Types

type Rep V3 
Instance details

Defined in Linear.V3

type Rep V3 = E V3

Methods

tabulate :: (Rep V3 -> a) -> V3 a

index :: V3 a -> Rep V3 -> a

MonadFix V3 
Instance details

Defined in Linear.V3

Methods

mfix :: (a -> V3 a) -> V3 a

MonadZip V3 
Instance details

Defined in Linear.V3

Methods

mzip :: V3 a -> V3 b -> V3 (a, b)

mzipWith :: (a -> b -> c) -> V3 a -> V3 b -> V3 c

munzip :: V3 (a, b) -> (V3 a, V3 b)

Foldable V3 
Instance details

Defined in Linear.V3

Methods

fold :: Monoid m => V3 m -> m

foldMap :: Monoid m => (a -> m) -> V3 a -> m

foldMap' :: Monoid m => (a -> m) -> V3 a -> m

foldr :: (a -> b -> b) -> b -> V3 a -> b

foldr' :: (a -> b -> b) -> b -> V3 a -> b

foldl :: (b -> a -> b) -> b -> V3 a -> b

foldl' :: (b -> a -> b) -> b -> V3 a -> b

foldr1 :: (a -> a -> a) -> V3 a -> a

foldl1 :: (a -> a -> a) -> V3 a -> a

toList :: V3 a -> [a]

null :: V3 a -> Bool

length :: V3 a -> Int

elem :: Eq a => a -> V3 a -> Bool

maximum :: Ord a => V3 a -> a

minimum :: Ord a => V3 a -> a

sum :: Num a => V3 a -> a

product :: Num a => V3 a -> a

Foldable1 V3 
Instance details

Defined in Linear.V3

Methods

fold1 :: Semigroup m => V3 m -> m

foldMap1 :: Semigroup m => (a -> m) -> V3 a -> m

foldMap1' :: Semigroup m => (a -> m) -> V3 a -> m

toNonEmpty :: V3 a -> NonEmpty a

maximum :: Ord a => V3 a -> a

minimum :: Ord a => V3 a -> a

head :: V3 a -> a

last :: V3 a -> a

foldrMap1 :: (a -> b) -> (a -> b -> b) -> V3 a -> b

foldlMap1' :: (a -> b) -> (b -> a -> b) -> V3 a -> b

foldlMap1 :: (a -> b) -> (b -> a -> b) -> V3 a -> b

foldrMap1' :: (a -> b) -> (a -> b -> b) -> V3 a -> b

Eq1 V3 
Instance details

Defined in Linear.V3

Methods

liftEq :: (a -> b -> Bool) -> V3 a -> V3 b -> Bool

Ord1 V3 
Instance details

Defined in Linear.V3

Methods

liftCompare :: (a -> b -> Ordering) -> V3 a -> V3 b -> Ordering

Read1 V3 
Instance details

Defined in Linear.V3

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (V3 a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [V3 a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (V3 a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [V3 a]

Show1 V3 
Instance details

Defined in Linear.V3

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> V3 a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [V3 a] -> ShowS

Traversable V3 
Instance details

Defined in Linear.V3

Methods

traverse :: Applicative f => (a -> f b) -> V3 a -> f (V3 b)

sequenceA :: Applicative f => V3 (f a) -> f (V3 a)

mapM :: Monad m => (a -> m b) -> V3 a -> m (V3 b)

sequence :: Monad m => V3 (m a) -> m (V3 a)

Applicative V3 
Instance details

Defined in Linear.V3

Methods

pure :: a -> V3 a

(<*>) :: V3 (a -> b) -> V3 a -> V3 b

liftA2 :: (a -> b -> c) -> V3 a -> V3 b -> V3 c

(*>) :: V3 a -> V3 b -> V3 b

(<*) :: V3 a -> V3 b -> V3 a

Functor V3 
Instance details

Defined in Linear.V3

Methods

fmap :: (a -> b) -> V3 a -> V3 b

(<$) :: a -> V3 b -> V3 a

Monad V3 
Instance details

Defined in Linear.V3

Methods

(>>=) :: V3 a -> (a -> V3 b) -> V3 b

(>>) :: V3 a -> V3 b -> V3 b

return :: a -> V3 a

Serial1 V3 
Instance details

Defined in Linear.V3

Methods

serializeWith :: MonadPut m => (a -> m ()) -> V3 a -> m ()

deserializeWith :: MonadGet m => m a -> m (V3 a)

Distributive V3 
Instance details

Defined in Linear.V3

Methods

distribute :: Functor f => f (V3 a) -> V3 (f a)

collect :: Functor f => (a -> V3 b) -> f a -> V3 (f b)

distributeM :: Monad m => m (V3 a) -> V3 (m a)

collectM :: Monad m => (a -> V3 b) -> m a -> V3 (m b)

Hashable1 V3 
Instance details

Defined in Linear.V3

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> V3 a -> Int

Affine V3 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V3 
Instance details

Defined in Linear.Affine

type Diff V3 = V3

Methods

(.-.) :: Num a => V3 a -> V3 a -> Diff V3 a #

(.+^) :: Num a => V3 a -> Diff V3 a -> V3 a #

(.-^) :: Num a => V3 a -> Diff V3 a -> V3 a #

Metric V3 
Instance details

Defined in Linear.V3

Methods

dot :: Num a => V3 a -> V3 a -> a #

quadrance :: Num a => V3 a -> a #

qd :: Num a => V3 a -> V3 a -> a #

distance :: Floating a => V3 a -> V3 a -> a #

norm :: Floating a => V3 a -> a #

signorm :: Floating a => V3 a -> V3 a #

Trace V3 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V3 (V3 a) -> a #

diagonal :: V3 (V3 a) -> V3 a #

Finite V3 
Instance details

Defined in Linear.V3

Associated Types

type Size V3 
Instance details

Defined in Linear.V3

type Size V3 = 3

Methods

toV :: V3 a -> V (Size V3) a

fromV :: V (Size V3) a -> V3 a

R1 V3 
Instance details

Defined in Linear.V3

Methods

_x :: Lens' (V3 a) a #

R2 V3 
Instance details

Defined in Linear.V3

Methods

_y :: Lens' (V3 a) a #

_xy :: Lens' (V3 a) (V2 a) #

R3 V3 
Instance details

Defined in Linear.V3

Methods

_z :: Lens' (V3 a) a #

_xyz :: Lens' (V3 a) (V3 a) #

Additive V3 
Instance details

Defined in Linear.V3

Methods

zero :: Num a => V3 a #

(^+^) :: Num a => V3 a -> V3 a -> V3 a #

(^-^) :: Num a => V3 a -> V3 a -> V3 a #

lerp :: Num a => a -> V3 a -> V3 a -> V3 a #

liftU2 :: (a -> a -> a) -> V3 a -> V3 a -> V3 a #

liftI2 :: (a -> b -> c) -> V3 a -> V3 b -> V3 c #

Apply V3 
Instance details

Defined in Linear.V3

Methods

(<.>) :: V3 (a -> b) -> V3 a -> V3 b

(.>) :: V3 a -> V3 b -> V3 b

(<.) :: V3 a -> V3 b -> V3 a

liftF2 :: (a -> b -> c) -> V3 a -> V3 b -> V3 c

Bind V3 
Instance details

Defined in Linear.V3

Methods

(>>-) :: V3 a -> (a -> V3 b) -> V3 b

join :: V3 (V3 a) -> V3 a

Traversable1 V3 
Instance details

Defined in Linear.V3

Methods

traverse1 :: Apply f => (a -> f b) -> V3 a -> f (V3 b)

sequence1 :: Apply f => V3 (f b) -> f (V3 b)

Generic1 V3 
Instance details

Defined in Linear.V3

Associated Types

type Rep1 V3 
Instance details

Defined in Linear.V3

type Rep1 V3 = D1 ('MetaData "V3" "Linear.V3" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V3" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)))

Methods

from1 :: V3 a -> Rep1 V3 a

to1 :: Rep1 V3 a -> V3 a

Num r => Coalgebra r (E V3) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V3 -> r) -> E V3 -> E V3 -> r #

counital :: (E V3 -> r) -> r #

Lift a => Lift (V3 a :: Type) 
Instance details

Defined in Linear.V3

Methods

lift :: Quote m => V3 a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => V3 a -> Code m (V3 a)

Unbox a => Vector Vector (V3 a) 
Instance details

Defined in Linear.V3

Methods

basicUnsafeFreeze :: Mutable Vector s (V3 a) -> ST s (Vector (V3 a))

basicUnsafeThaw :: Vector (V3 a) -> ST s (Mutable Vector s (V3 a))

basicLength :: Vector (V3 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V3 a) -> Vector (V3 a)

basicUnsafeIndexM :: Vector (V3 a) -> Int -> Box (V3 a)

basicUnsafeCopy :: Mutable Vector s (V3 a) -> Vector (V3 a) -> ST s ()

elemseq :: Vector (V3 a) -> V3 a -> b -> b

Unbox a => MVector MVector (V3 a) 
Instance details

Defined in Linear.V3

Methods

basicLength :: MVector s (V3 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V3 a) -> MVector s (V3 a)

basicOverlaps :: MVector s (V3 a) -> MVector s (V3 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V3 a))

basicInitialize :: MVector s (V3 a) -> ST s ()

basicUnsafeReplicate :: Int -> V3 a -> ST s (MVector s (V3 a))

basicUnsafeRead :: MVector s (V3 a) -> Int -> ST s (V3 a)

basicUnsafeWrite :: MVector s (V3 a) -> Int -> V3 a -> ST s ()

basicClear :: MVector s (V3 a) -> ST s ()

basicSet :: MVector s (V3 a) -> V3 a -> ST s ()

basicUnsafeCopy :: MVector s (V3 a) -> MVector s (V3 a) -> ST s ()

basicUnsafeMove :: MVector s (V3 a) -> MVector s (V3 a) -> ST s ()

basicUnsafeGrow :: MVector s (V3 a) -> Int -> ST s (MVector s (V3 a))

Data a => Data (V3 a) 
Instance details

Defined in Linear.V3

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> V3 a -> c (V3 a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (V3 a)

toConstr :: V3 a -> Constr

dataTypeOf :: V3 a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (V3 a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (V3 a))

gmapT :: (forall b. Data b => b -> b) -> V3 a -> V3 a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> V3 a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> V3 a -> r

gmapQ :: (forall d. Data d => d -> u) -> V3 a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> V3 a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> V3 a -> m (V3 a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> V3 a -> m (V3 a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> V3 a -> m (V3 a)

Storable a => Storable (V3 a) 
Instance details

Defined in Linear.V3

Methods

sizeOf :: V3 a -> Int

alignment :: V3 a -> Int

peekElemOff :: Ptr (V3 a) -> Int -> IO (V3 a)

pokeElemOff :: Ptr (V3 a) -> Int -> V3 a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (V3 a)

pokeByteOff :: Ptr b -> Int -> V3 a -> IO ()

peek :: Ptr (V3 a) -> IO (V3 a)

poke :: Ptr (V3 a) -> V3 a -> IO ()

Monoid a => Monoid (V3 a) 
Instance details

Defined in Linear.V3

Methods

mempty :: V3 a

mappend :: V3 a -> V3 a -> V3 a

mconcat :: [V3 a] -> V3 a

Semigroup a => Semigroup (V3 a) 
Instance details

Defined in Linear.V3

Methods

(<>) :: V3 a -> V3 a -> V3 a

sconcat :: NonEmpty (V3 a) -> V3 a

stimes :: Integral b => b -> V3 a -> V3 a

Bounded a => Bounded (V3 a) 
Instance details

Defined in Linear.V3

Methods

minBound :: V3 a

maxBound :: V3 a

Floating a => Floating (V3 a) 
Instance details

Defined in Linear.V3

Methods

pi :: V3 a

exp :: V3 a -> V3 a

log :: V3 a -> V3 a

sqrt :: V3 a -> V3 a

(**) :: V3 a -> V3 a -> V3 a

logBase :: V3 a -> V3 a -> V3 a

sin :: V3 a -> V3 a

cos :: V3 a -> V3 a

tan :: V3 a -> V3 a

asin :: V3 a -> V3 a

acos :: V3 a -> V3 a

atan :: V3 a -> V3 a

sinh :: V3 a -> V3 a

cosh :: V3 a -> V3 a

tanh :: V3 a -> V3 a

asinh :: V3 a -> V3 a

acosh :: V3 a -> V3 a

atanh :: V3 a -> V3 a

log1p :: V3 a -> V3 a

expm1 :: V3 a -> V3 a

log1pexp :: V3 a -> V3 a

log1mexp :: V3 a -> V3 a

Generic (V3 a) 
Instance details

Defined in Linear.V3

Associated Types

type Rep (V3 a) 
Instance details

Defined in Linear.V3

type Rep (V3 a) = D1 ('MetaData "V3" "Linear.V3" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V3" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))

Methods

from :: V3 a -> Rep (V3 a) x

to :: Rep (V3 a) x -> V3 a

Ix a => Ix (V3 a) 
Instance details

Defined in Linear.V3

Methods

range :: (V3 a, V3 a) -> [V3 a]

index :: (V3 a, V3 a) -> V3 a -> Int

unsafeIndex :: (V3 a, V3 a) -> V3 a -> Int

inRange :: (V3 a, V3 a) -> V3 a -> Bool

rangeSize :: (V3 a, V3 a) -> Int

unsafeRangeSize :: (V3 a, V3 a) -> Int

Num a => Num (V3 a) 
Instance details

Defined in Linear.V3

Methods

(+) :: V3 a -> V3 a -> V3 a

(-) :: V3 a -> V3 a -> V3 a

(*) :: V3 a -> V3 a -> V3 a

negate :: V3 a -> V3 a

abs :: V3 a -> V3 a

signum :: V3 a -> V3 a

fromInteger :: Integer -> V3 a

Read a => Read (V3 a) 
Instance details

Defined in Linear.V3

Methods

readsPrec :: Int -> ReadS (V3 a)

readList :: ReadS [V3 a]

readPrec :: ReadPrec (V3 a)

readListPrec :: ReadPrec [V3 a]

Fractional a => Fractional (V3 a) 
Instance details

Defined in Linear.V3

Methods

(/) :: V3 a -> V3 a -> V3 a

recip :: V3 a -> V3 a

fromRational :: Rational -> V3 a

Show a => Show (V3 a) 
Instance details

Defined in Linear.V3

Methods

showsPrec :: Int -> V3 a -> ShowS

show :: V3 a -> String

showList :: [V3 a] -> ShowS

Binary a => Binary (V3 a) 
Instance details

Defined in Linear.V3

Methods

put :: V3 a -> Put

get :: Get (V3 a)

putList :: [V3 a] -> Put

Serial a => Serial (V3 a) 
Instance details

Defined in Linear.V3

Methods

serialize :: MonadPut m => V3 a -> m ()

deserialize :: MonadGet m => m (V3 a)

Serialize a => Serialize (V3 a) 
Instance details

Defined in Linear.V3

Methods

put :: Putter (V3 a)

get :: Get (V3 a)

NFData a => NFData (V3 a) 
Instance details

Defined in Linear.V3

Methods

rnf :: V3 a -> ()

Eq a => Eq (V3 a) 
Instance details

Defined in Linear.V3

Methods

(==) :: V3 a -> V3 a -> Bool

(/=) :: V3 a -> V3 a -> Bool

Ord a => Ord (V3 a) 
Instance details

Defined in Linear.V3

Methods

compare :: V3 a -> V3 a -> Ordering

(<) :: V3 a -> V3 a -> Bool

(<=) :: V3 a -> V3 a -> Bool

(>) :: V3 a -> V3 a -> Bool

(>=) :: V3 a -> V3 a -> Bool

max :: V3 a -> V3 a -> V3 a

min :: V3 a -> V3 a -> V3 a

Hashable a => Hashable (V3 a) 
Instance details

Defined in Linear.V3

Methods

hashWithSalt :: Int -> V3 a -> Int

hash :: V3 a -> Int

Ixed (V3 a) 
Instance details

Defined in Linear.V3

Methods

ix :: Index (V3 a) -> Traversal' (V3 a) (IxValue (V3 a))

Epsilon a => Epsilon (V3 a) 
Instance details

Defined in Linear.V3

Methods

nearZero :: V3 a -> Bool #

Random a => Random (V3 a) 
Instance details

Defined in Linear.V3

Methods

randomR :: RandomGen g => (V3 a, V3 a) -> g -> (V3 a, g)

random :: RandomGen g => g -> (V3 a, g)

randomRs :: RandomGen g => (V3 a, V3 a) -> g -> [V3 a]

randoms :: RandomGen g => g -> [V3 a]

Uniform a => Uniform (V3 a) 
Instance details

Defined in Linear.V3

Methods

uniformM :: StatefulGen g m => g -> m (V3 a)

UniformRange a => UniformRange (V3 a) 
Instance details

Defined in Linear.V3

Methods

uniformRM :: StatefulGen g m => (V3 a, V3 a) -> g -> m (V3 a)

Unbox a => Unbox (V3 a) 
Instance details

Defined in Linear.V3

FoldableWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

ifoldMap :: Monoid m => (E V3 -> a -> m) -> V3 a -> m

ifoldMap' :: Monoid m => (E V3 -> a -> m) -> V3 a -> m

ifoldr :: (E V3 -> a -> b -> b) -> b -> V3 a -> b

ifoldl :: (E V3 -> b -> a -> b) -> b -> V3 a -> b

ifoldr' :: (E V3 -> a -> b -> b) -> b -> V3 a -> b

ifoldl' :: (E V3 -> b -> a -> b) -> b -> V3 a -> b

FunctorWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

imap :: (E V3 -> a -> b) -> V3 a -> V3 b

TraversableWithIndex (E V3) V3 
Instance details

Defined in Linear.V3

Methods

itraverse :: Applicative f => (E V3 -> a -> f b) -> V3 a -> f (V3 b)

Each (V3 a) (V3 b) a b 
Instance details

Defined in Linear.V3

Methods

each :: Traversal (V3 a) (V3 b) a b

Field1 (V3 a) (V3 a) a a 
Instance details

Defined in Linear.V3

Methods

_1 :: Lens (V3 a) (V3 a) a a

Field2 (V3 a) (V3 a) a a 
Instance details

Defined in Linear.V3

Methods

_2 :: Lens (V3 a) (V3 a) a a

Field3 (V3 a) (V3 a) a a 
Instance details

Defined in Linear.V3

Methods

_3 :: Lens (V3 a) (V3 a) a a

type Rep V3 
Instance details

Defined in Linear.V3

type Rep V3 = E V3
type Diff V3 
Instance details

Defined in Linear.Affine

type Diff V3 = V3
type Size V3 
Instance details

Defined in Linear.V3

type Size V3 = 3
type Rep1 V3 
Instance details

Defined in Linear.V3

type Rep1 V3 = D1 ('MetaData "V3" "Linear.V3" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V3" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)))
data MVector s (V3 a) 
Instance details

Defined in Linear.V3

data MVector s (V3 a) = MV_V3 !Int !(MVector s a)
type Rep (V3 a) 
Instance details

Defined in Linear.V3

type Rep (V3 a) = D1 ('MetaData "V3" "Linear.V3" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V3" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))
type Index (V3 a) 
Instance details

Defined in Linear.V3

type Index (V3 a) = E V3
type IxValue (V3 a) 
Instance details

Defined in Linear.V3

type IxValue (V3 a) = a
data Vector (V3 a) 
Instance details

Defined in Linear.V3

data Vector (V3 a) = V_V3 !Int !(Vector a)

data V4 a #

Constructors

V4 !a !a !a !a 

Instances

Instances details
Representable V4 
Instance details

Defined in Linear.V4

Associated Types

type Rep V4 
Instance details

Defined in Linear.V4

type Rep V4 = E V4

Methods

tabulate :: (Rep V4 -> a) -> V4 a

index :: V4 a -> Rep V4 -> a

MonadFix V4 
Instance details

Defined in Linear.V4

Methods

mfix :: (a -> V4 a) -> V4 a

MonadZip V4 
Instance details

Defined in Linear.V4

Methods

mzip :: V4 a -> V4 b -> V4 (a, b)

mzipWith :: (a -> b -> c) -> V4 a -> V4 b -> V4 c

munzip :: V4 (a, b) -> (V4 a, V4 b)

Foldable V4 
Instance details

Defined in Linear.V4

Methods

fold :: Monoid m => V4 m -> m

foldMap :: Monoid m => (a -> m) -> V4 a -> m

foldMap' :: Monoid m => (a -> m) -> V4 a -> m

foldr :: (a -> b -> b) -> b -> V4 a -> b

foldr' :: (a -> b -> b) -> b -> V4 a -> b

foldl :: (b -> a -> b) -> b -> V4 a -> b

foldl' :: (b -> a -> b) -> b -> V4 a -> b

foldr1 :: (a -> a -> a) -> V4 a -> a

foldl1 :: (a -> a -> a) -> V4 a -> a

toList :: V4 a -> [a]

null :: V4 a -> Bool

length :: V4 a -> Int

elem :: Eq a => a -> V4 a -> Bool

maximum :: Ord a => V4 a -> a

minimum :: Ord a => V4 a -> a

sum :: Num a => V4 a -> a

product :: Num a => V4 a -> a

Foldable1 V4 
Instance details

Defined in Linear.V4

Methods

fold1 :: Semigroup m => V4 m -> m

foldMap1 :: Semigroup m => (a -> m) -> V4 a -> m

foldMap1' :: Semigroup m => (a -> m) -> V4 a -> m

toNonEmpty :: V4 a -> NonEmpty a

maximum :: Ord a => V4 a -> a

minimum :: Ord a => V4 a -> a

head :: V4 a -> a

last :: V4 a -> a

foldrMap1 :: (a -> b) -> (a -> b -> b) -> V4 a -> b

foldlMap1' :: (a -> b) -> (b -> a -> b) -> V4 a -> b

foldlMap1 :: (a -> b) -> (b -> a -> b) -> V4 a -> b

foldrMap1' :: (a -> b) -> (a -> b -> b) -> V4 a -> b

Eq1 V4 
Instance details

Defined in Linear.V4

Methods

liftEq :: (a -> b -> Bool) -> V4 a -> V4 b -> Bool

Ord1 V4 
Instance details

Defined in Linear.V4

Methods

liftCompare :: (a -> b -> Ordering) -> V4 a -> V4 b -> Ordering

Read1 V4 
Instance details

Defined in Linear.V4

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (V4 a)

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [V4 a]

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (V4 a)

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [V4 a]

Show1 V4 
Instance details

Defined in Linear.V4

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> V4 a -> ShowS

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [V4 a] -> ShowS

Traversable V4 
Instance details

Defined in Linear.V4

Methods

traverse :: Applicative f => (a -> f b) -> V4 a -> f (V4 b)

sequenceA :: Applicative f => V4 (f a) -> f (V4 a)

mapM :: Monad m => (a -> m b) -> V4 a -> m (V4 b)

sequence :: Monad m => V4 (m a) -> m (V4 a)

Applicative V4 
Instance details

Defined in Linear.V4

Methods

pure :: a -> V4 a

(<*>) :: V4 (a -> b) -> V4 a -> V4 b

liftA2 :: (a -> b -> c) -> V4 a -> V4 b -> V4 c

(*>) :: V4 a -> V4 b -> V4 b

(<*) :: V4 a -> V4 b -> V4 a

Functor V4 
Instance details

Defined in Linear.V4

Methods

fmap :: (a -> b) -> V4 a -> V4 b

(<$) :: a -> V4 b -> V4 a

Monad V4 
Instance details

Defined in Linear.V4

Methods

(>>=) :: V4 a -> (a -> V4 b) -> V4 b

(>>) :: V4 a -> V4 b -> V4 b

return :: a -> V4 a

Serial1 V4 
Instance details

Defined in Linear.V4

Methods

serializeWith :: MonadPut m => (a -> m ()) -> V4 a -> m ()

deserializeWith :: MonadGet m => m a -> m (V4 a)

Distributive V4 
Instance details

Defined in Linear.V4

Methods

distribute :: Functor f => f (V4 a) -> V4 (f a)

collect :: Functor f => (a -> V4 b) -> f a -> V4 (f b)

distributeM :: Monad m => m (V4 a) -> V4 (m a)

collectM :: Monad m => (a -> V4 b) -> m a -> V4 (m b)

Hashable1 V4 
Instance details

Defined in Linear.V4

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> V4 a -> Int

Affine V4 
Instance details

Defined in Linear.Affine

Associated Types

type Diff V4 
Instance details

Defined in Linear.Affine

type Diff V4 = V4

Methods

(.-.) :: Num a => V4 a -> V4 a -> Diff V4 a #

(.+^) :: Num a => V4 a -> Diff V4 a -> V4 a #

(.-^) :: Num a => V4 a -> Diff V4 a -> V4 a #

Metric V4 
Instance details

Defined in Linear.V4

Methods

dot :: Num a => V4 a -> V4 a -> a #

quadrance :: Num a => V4 a -> a #

qd :: Num a => V4 a -> V4 a -> a #

distance :: Floating a => V4 a -> V4 a -> a #

norm :: Floating a => V4 a -> a #

signorm :: Floating a => V4 a -> V4 a #

Trace V4 
Instance details

Defined in Linear.Trace

Methods

trace :: Num a => V4 (V4 a) -> a #

diagonal :: V4 (V4 a) -> V4 a #

Finite V4 
Instance details

Defined in Linear.V4

Associated Types

type Size V4 
Instance details

Defined in Linear.V4

type Size V4 = 4

Methods

toV :: V4 a -> V (Size V4) a

fromV :: V (Size V4) a -> V4 a

R1 V4 
Instance details

Defined in Linear.V4

Methods

_x :: Lens' (V4 a) a #

R2 V4 
Instance details

Defined in Linear.V4

Methods

_y :: Lens' (V4 a) a #

_xy :: Lens' (V4 a) (V2 a) #

R3 V4 
Instance details

Defined in Linear.V4

Methods

_z :: Lens' (V4 a) a #

_xyz :: Lens' (V4 a) (V3 a) #

R4 V4 
Instance details

Defined in Linear.V4

Methods

_w :: Lens' (V4 a) a #

_xyzw :: Lens' (V4 a) (V4 a) #

Additive V4 
Instance details

Defined in Linear.V4

Methods

zero :: Num a => V4 a #

(^+^) :: Num a => V4 a -> V4 a -> V4 a #

(^-^) :: Num a => V4 a -> V4 a -> V4 a #

lerp :: Num a => a -> V4 a -> V4 a -> V4 a #

liftU2 :: (a -> a -> a) -> V4 a -> V4 a -> V4 a #

liftI2 :: (a -> b -> c) -> V4 a -> V4 b -> V4 c #

Apply V4 
Instance details

Defined in Linear.V4

Methods

(<.>) :: V4 (a -> b) -> V4 a -> V4 b

(.>) :: V4 a -> V4 b -> V4 b

(<.) :: V4 a -> V4 b -> V4 a

liftF2 :: (a -> b -> c) -> V4 a -> V4 b -> V4 c

Bind V4 
Instance details

Defined in Linear.V4

Methods

(>>-) :: V4 a -> (a -> V4 b) -> V4 b

join :: V4 (V4 a) -> V4 a

Traversable1 V4 
Instance details

Defined in Linear.V4

Methods

traverse1 :: Apply f => (a -> f b) -> V4 a -> f (V4 b)

sequence1 :: Apply f => V4 (f b) -> f (V4 b)

Generic1 V4 
Instance details

Defined in Linear.V4

Associated Types

type Rep1 V4 
Instance details

Defined in Linear.V4

type Rep1 V4 = D1 ('MetaData "V4" "Linear.V4" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V4" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)))

Methods

from1 :: V4 a -> Rep1 V4 a

to1 :: Rep1 V4 a -> V4 a

Num r => Coalgebra r (E V4) 
Instance details

Defined in Linear.Algebra

Methods

comult :: (E V4 -> r) -> E V4 -> E V4 -> r #

counital :: (E V4 -> r) -> r #

Lift a => Lift (V4 a :: Type) 
Instance details

Defined in Linear.V4

Methods

lift :: Quote m => V4 a -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => V4 a -> Code m (V4 a)

Unbox a => Vector Vector (V4 a) 
Instance details

Defined in Linear.V4

Methods

basicUnsafeFreeze :: Mutable Vector s (V4 a) -> ST s (Vector (V4 a))

basicUnsafeThaw :: Vector (V4 a) -> ST s (Mutable Vector s (V4 a))

basicLength :: Vector (V4 a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (V4 a) -> Vector (V4 a)

basicUnsafeIndexM :: Vector (V4 a) -> Int -> Box (V4 a)

basicUnsafeCopy :: Mutable Vector s (V4 a) -> Vector (V4 a) -> ST s ()

elemseq :: Vector (V4 a) -> V4 a -> b -> b

Unbox a => MVector MVector (V4 a) 
Instance details

Defined in Linear.V4

Methods

basicLength :: MVector s (V4 a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (V4 a) -> MVector s (V4 a)

basicOverlaps :: MVector s (V4 a) -> MVector s (V4 a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (V4 a))

basicInitialize :: MVector s (V4 a) -> ST s ()

basicUnsafeReplicate :: Int -> V4 a -> ST s (MVector s (V4 a))

basicUnsafeRead :: MVector s (V4 a) -> Int -> ST s (V4 a)

basicUnsafeWrite :: MVector s (V4 a) -> Int -> V4 a -> ST s ()

basicClear :: MVector s (V4 a) -> ST s ()

basicSet :: MVector s (V4 a) -> V4 a -> ST s ()

basicUnsafeCopy :: MVector s (V4 a) -> MVector s (V4 a) -> ST s ()

basicUnsafeMove :: MVector s (V4 a) -> MVector s (V4 a) -> ST s ()

basicUnsafeGrow :: MVector s (V4 a) -> Int -> ST s (MVector s (V4 a))

Data a => Data (V4 a) 
Instance details

Defined in Linear.V4

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> V4 a -> c (V4 a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (V4 a)

toConstr :: V4 a -> Constr

dataTypeOf :: V4 a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (V4 a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (V4 a))

gmapT :: (forall b. Data b => b -> b) -> V4 a -> V4 a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> V4 a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> V4 a -> r

gmapQ :: (forall d. Data d => d -> u) -> V4 a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> V4 a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> V4 a -> m (V4 a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> V4 a -> m (V4 a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> V4 a -> m (V4 a)

Storable a => Storable (V4 a) 
Instance details

Defined in Linear.V4

Methods

sizeOf :: V4 a -> Int

alignment :: V4 a -> Int

peekElemOff :: Ptr (V4 a) -> Int -> IO (V4 a)

pokeElemOff :: Ptr (V4 a) -> Int -> V4 a -> IO ()

peekByteOff :: Ptr b -> Int -> IO (V4 a)

pokeByteOff :: Ptr b -> Int -> V4 a -> IO ()

peek :: Ptr (V4 a) -> IO (V4 a)

poke :: Ptr (V4 a) -> V4 a -> IO ()

Monoid a => Monoid (V4 a) 
Instance details

Defined in Linear.V4

Methods

mempty :: V4 a

mappend :: V4 a -> V4 a -> V4 a

mconcat :: [V4 a] -> V4 a

Semigroup a => Semigroup (V4 a) 
Instance details

Defined in Linear.V4

Methods

(<>) :: V4 a -> V4 a -> V4 a

sconcat :: NonEmpty (V4 a) -> V4 a

stimes :: Integral b => b -> V4 a -> V4 a

Bounded a => Bounded (V4 a) 
Instance details

Defined in Linear.V4

Methods

minBound :: V4 a

maxBound :: V4 a

Floating a => Floating (V4 a) 
Instance details

Defined in Linear.V4

Methods

pi :: V4 a

exp :: V4 a -> V4 a

log :: V4 a -> V4 a

sqrt :: V4 a -> V4 a

(**) :: V4 a -> V4 a -> V4 a

logBase :: V4 a -> V4 a -> V4 a

sin :: V4 a -> V4 a

cos :: V4 a -> V4 a

tan :: V4 a -> V4 a

asin :: V4 a -> V4 a

acos :: V4 a -> V4 a

atan :: V4 a -> V4 a

sinh :: V4 a -> V4 a

cosh :: V4 a -> V4 a

tanh :: V4 a -> V4 a

asinh :: V4 a -> V4 a

acosh :: V4 a -> V4 a

atanh :: V4 a -> V4 a

log1p :: V4 a -> V4 a

expm1 :: V4 a -> V4 a

log1pexp :: V4 a -> V4 a

log1mexp :: V4 a -> V4 a

Generic (V4 a) 
Instance details

Defined in Linear.V4

Associated Types

type Rep (V4 a) 
Instance details

Defined in Linear.V4

type Rep (V4 a) = D1 ('MetaData "V4" "Linear.V4" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V4" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))

Methods

from :: V4 a -> Rep (V4 a) x

to :: Rep (V4 a) x -> V4 a

Ix a => Ix (V4 a) 
Instance details

Defined in Linear.V4

Methods

range :: (V4 a, V4 a) -> [V4 a]

index :: (V4 a, V4 a) -> V4 a -> Int

unsafeIndex :: (V4 a, V4 a) -> V4 a -> Int

inRange :: (V4 a, V4 a) -> V4 a -> Bool

rangeSize :: (V4 a, V4 a) -> Int

unsafeRangeSize :: (V4 a, V4 a) -> Int

Num a => Num (V4 a) 
Instance details

Defined in Linear.V4

Methods

(+) :: V4 a -> V4 a -> V4 a

(-) :: V4 a -> V4 a -> V4 a

(*) :: V4 a -> V4 a -> V4 a

negate :: V4 a -> V4 a

abs :: V4 a -> V4 a

signum :: V4 a -> V4 a

fromInteger :: Integer -> V4 a

Read a => Read (V4 a) 
Instance details

Defined in Linear.V4

Methods

readsPrec :: Int -> ReadS (V4 a)

readList :: ReadS [V4 a]

readPrec :: ReadPrec (V4 a)

readListPrec :: ReadPrec [V4 a]

Fractional a => Fractional (V4 a) 
Instance details

Defined in Linear.V4

Methods

(/) :: V4 a -> V4 a -> V4 a

recip :: V4 a -> V4 a

fromRational :: Rational -> V4 a

Show a => Show (V4 a) 
Instance details

Defined in Linear.V4

Methods

showsPrec :: Int -> V4 a -> ShowS

show :: V4 a -> String

showList :: [V4 a] -> ShowS

Binary a => Binary (V4 a) 
Instance details

Defined in Linear.V4

Methods

put :: V4 a -> Put

get :: Get (V4 a)

putList :: [V4 a] -> Put

Serial a => Serial (V4 a) 
Instance details

Defined in Linear.V4

Methods

serialize :: MonadPut m => V4 a -> m ()

deserialize :: MonadGet m => m (V4 a)

Serialize a => Serialize (V4 a) 
Instance details

Defined in Linear.V4

Methods

put :: Putter (V4 a)

get :: Get (V4 a)

NFData a => NFData (V4 a) 
Instance details

Defined in Linear.V4

Methods

rnf :: V4 a -> ()

Eq a => Eq (V4 a) 
Instance details

Defined in Linear.V4

Methods

(==) :: V4 a -> V4 a -> Bool

(/=) :: V4 a -> V4 a -> Bool

Ord a => Ord (V4 a) 
Instance details

Defined in Linear.V4

Methods

compare :: V4 a -> V4 a -> Ordering

(<) :: V4 a -> V4 a -> Bool

(<=) :: V4 a -> V4 a -> Bool

(>) :: V4 a -> V4 a -> Bool

(>=) :: V4 a -> V4 a -> Bool

max :: V4 a -> V4 a -> V4 a

min :: V4 a -> V4 a -> V4 a

Hashable a => Hashable (V4 a) 
Instance details

Defined in Linear.V4

Methods

hashWithSalt :: Int -> V4 a -> Int

hash :: V4 a -> Int

Ixed (V4 a) 
Instance details

Defined in Linear.V4

Methods

ix :: Index (V4 a) -> Traversal' (V4 a) (IxValue (V4 a))

Epsilon a => Epsilon (V4 a) 
Instance details

Defined in Linear.V4

Methods

nearZero :: V4 a -> Bool #

Random a => Random (V4 a) 
Instance details

Defined in Linear.V4

Methods

randomR :: RandomGen g => (V4 a, V4 a) -> g -> (V4 a, g)

random :: RandomGen g => g -> (V4 a, g)

randomRs :: RandomGen g => (V4 a, V4 a) -> g -> [V4 a]

randoms :: RandomGen g => g -> [V4 a]

Uniform a => Uniform (V4 a) 
Instance details

Defined in Linear.V4

Methods

uniformM :: StatefulGen g m => g -> m (V4 a)

UniformRange a => UniformRange (V4 a) 
Instance details

Defined in Linear.V4

Methods

uniformRM :: StatefulGen g m => (V4 a, V4 a) -> g -> m (V4 a)

Unbox a => Unbox (V4 a) 
Instance details

Defined in Linear.V4

FoldableWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

ifoldMap :: Monoid m => (E V4 -> a -> m) -> V4 a -> m

ifoldMap' :: Monoid m => (E V4 -> a -> m) -> V4 a -> m

ifoldr :: (E V4 -> a -> b -> b) -> b -> V4 a -> b

ifoldl :: (E V4 -> b -> a -> b) -> b -> V4 a -> b

ifoldr' :: (E V4 -> a -> b -> b) -> b -> V4 a -> b

ifoldl' :: (E V4 -> b -> a -> b) -> b -> V4 a -> b

FunctorWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

imap :: (E V4 -> a -> b) -> V4 a -> V4 b

TraversableWithIndex (E V4) V4 
Instance details

Defined in Linear.V4

Methods

itraverse :: Applicative f => (E V4 -> a -> f b) -> V4 a -> f (V4 b)

Each (V4 a) (V4 b) a b 
Instance details

Defined in Linear.V4

Methods

each :: Traversal (V4 a) (V4 b) a b

Field1 (V4 a) (V4 a) a a 
Instance details

Defined in Linear.V4

Methods

_1 :: Lens (V4 a) (V4 a) a a

Field2 (V4 a) (V4 a) a a 
Instance details

Defined in Linear.V4

Methods

_2 :: Lens (V4 a) (V4 a) a a

Field3 (V4 a) (V4 a) a a 
Instance details

Defined in Linear.V4

Methods

_3 :: Lens (V4 a) (V4 a) a a

Field4 (V4 a) (V4 a) a a 
Instance details

Defined in Linear.V4

Methods

_4 :: Lens (V4 a) (V4 a) a a

type Rep V4 
Instance details

Defined in Linear.V4

type Rep V4 = E V4
type Diff V4 
Instance details

Defined in Linear.Affine

type Diff V4 = V4
type Size V4 
Instance details

Defined in Linear.V4

type Size V4 = 4
type Rep1 V4 
Instance details

Defined in Linear.V4

type Rep1 V4 = D1 ('MetaData "V4" "Linear.V4" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V4" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)))
data MVector s (V4 a) 
Instance details

Defined in Linear.V4

data MVector s (V4 a) = MV_V4 !Int !(MVector s a)
type Rep (V4 a) 
Instance details

Defined in Linear.V4

type Rep (V4 a) = D1 ('MetaData "V4" "Linear.V4" "linear-1.23.3-ADGR3XL3jXeLQNN7Kf8DKT" 'False) (C1 ('MetaCons "V4" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))))
type Index (V4 a) 
Instance details

Defined in Linear.V4

type Index (V4 a) = E V4
type IxValue (V4 a) 
Instance details

Defined in Linear.V4

type IxValue (V4 a) = a
data Vector (V4 a) 
Instance details

Defined in Linear.V4

data Vector (V4 a) = V_V4 !Int !(Vector a)