iota-0.1.0.0
Safe HaskellNone
LanguageGHC2021

Data.Mat3x3

Documentation

data Mat3x3 (a :: k) Source #

Constructors

Mat3x3 !Int !ByteArray 

Instances

Instances details
Prim a => Vector Vector (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

Methods

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

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

basicLength :: Vector (Mat3x3 a) -> Int

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

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

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

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

Prim a => MVector MVector (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Prim a => IsList (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

Associated Types

type Item (Mat3x3 a) 
Instance details

Defined in Data.Mat3x3

type Item (Mat3x3 a) = a

Methods

fromList :: [Item (Mat3x3 a)] -> Mat3x3 a #

fromListN :: Int -> [Item (Mat3x3 a)] -> Mat3x3 a #

toList :: Mat3x3 a -> [Item (Mat3x3 a)] #

(Prim a, Num a) => Num (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

Methods

(+) :: Mat3x3 a -> Mat3x3 a -> Mat3x3 a #

(-) :: Mat3x3 a -> Mat3x3 a -> Mat3x3 a #

(*) :: Mat3x3 a -> Mat3x3 a -> Mat3x3 a #

negate :: Mat3x3 a -> Mat3x3 a #

abs :: Mat3x3 a -> Mat3x3 a #

signum :: Mat3x3 a -> Mat3x3 a #

fromInteger :: Integer -> Mat3x3 a #

(Prim a, Show a) => Show (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

Methods

showsPrec :: Int -> Mat3x3 a -> ShowS #

show :: Mat3x3 a -> String #

showList :: [Mat3x3 a] -> ShowS #

(Prim a, Eq a) => Eq (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

Methods

(==) :: Mat3x3 a -> Mat3x3 a -> Bool #

(/=) :: Mat3x3 a -> Mat3x3 a -> Bool #

Prim a => Unbox (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

data MVector s (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

data MVector s (Mat3x3 a) = MV_Mat3x3 !Int !Int !(MutableByteArray s)
type Item (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

type Item (Mat3x3 a) = a
data Vector (Mat3x3 a) Source # 
Instance details

Defined in Data.Mat3x3

data Vector (Mat3x3 a) = V_Mat3x3 !Int !Int !ByteArray

appMat3x3 :: (Prim a, Num a) => Mat3x3 a -> a -> a -> a -> (a, a, a) Source #

rep3 :: (Int -> ST s ()) -> ST s () Source #

rep9 :: (Int -> ST s ()) -> ST s () Source #

createMat3x3 :: Prim a => (forall s. MutableByteArray s -> ST s ()) -> Mat3x3 a Source #

genMat3x3 :: Prim a => (Int -> Int -> a) -> Mat3x3 a Source #