geomancy-0.2.6.0: Geometry and matrix manipulation
Safe HaskellSafe-Inferred
LanguageHaskell2010

Geomancy.IVec3

Description

Specialized and inlined V2 Int32.

Documentation

data IVec3 Source #

Instances

Instances details
Storable IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Methods

sizeOf :: IVec3 -> Int #

alignment :: IVec3 -> Int #

peekElemOff :: Ptr IVec3 -> Int -> IO IVec3 #

pokeElemOff :: Ptr IVec3 -> Int -> IVec3 -> IO () #

peekByteOff :: Ptr b -> Int -> IO IVec3 #

pokeByteOff :: Ptr b -> Int -> IVec3 -> IO () #

peek :: Ptr IVec3 -> IO IVec3 #

poke :: Ptr IVec3 -> IVec3 -> IO () #

Ix IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Num IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Show IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Methods

showsPrec :: Int -> IVec3 -> ShowS #

show :: IVec3 -> String #

showList :: [IVec3] -> ShowS #

NFData IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Methods

rnf :: IVec3 -> () #

Elementwise IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Eq IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Methods

(==) :: IVec3 -> IVec3 -> Bool #

(/=) :: IVec3 -> IVec3 -> Bool #

Ord IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Methods

compare :: IVec3 -> IVec3 -> Ordering #

(<) :: IVec3 -> IVec3 -> Bool #

(<=) :: IVec3 -> IVec3 -> Bool #

(>) :: IVec3 -> IVec3 -> Bool #

(>=) :: IVec3 -> IVec3 -> Bool #

max :: IVec3 -> IVec3 -> IVec3 #

min :: IVec3 -> IVec3 -> IVec3 #

Block IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Associated Types

type PackedSize IVec3 :: Nat #

Methods

alignment140 :: proxy IVec3 -> Int #

sizeOf140 :: proxy IVec3 -> Int #

isStruct :: proxy IVec3 -> Bool #

read140 :: MonadIO m => Ptr a -> Diff a IVec3 -> m IVec3 #

write140 :: MonadIO m => Ptr a -> Diff a IVec3 -> IVec3 -> m () #

alignment430 :: proxy IVec3 -> Int #

sizeOf430 :: proxy IVec3 -> Int #

read430 :: MonadIO m => Ptr a -> Diff a IVec3 -> m IVec3 #

write430 :: MonadIO m => Ptr a -> Diff a IVec3 -> IVec3 -> m () #

sizeOfPacked :: proxy IVec3 -> Int #

readPacked :: MonadIO m => Ptr a -> Diff a IVec3 -> m IVec3 #

writePacked :: MonadIO m => Ptr a -> Diff a IVec3 -> IVec3 -> m () #

MonoFunctor IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Methods

omap :: (Element IVec3 -> Element IVec3) -> IVec3 -> IVec3 #

MonoPointed IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

Methods

opoint :: Element IVec3 -> IVec3 #

type PackedSize IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

type PackedSize IVec3 = 12
type Element IVec3 Source # 
Instance details

Defined in Geomancy.IVec3

withIVec3 :: IVec3 -> (Int32 -> Int32 -> Int32 -> r) -> r Source #

pattern WithIVec3 :: Int32 -> Int32 -> Int32 -> IVec3 Source #

convert :: Coercible v IVec3 => (Int32 -> a) -> (a -> a -> a -> r) -> v -> r Source #

newtype Packed Source #

Constructors

Packed 

Fields

Instances

Instances details
Storable Packed Source # 
Instance details

Defined in Geomancy.IVec3

Num Packed Source # 
Instance details

Defined in Geomancy.IVec3

Show Packed Source # 
Instance details

Defined in Geomancy.IVec3

NFData Packed Source # 
Instance details

Defined in Geomancy.IVec3

Methods

rnf :: Packed -> () #

Eq Packed Source # 
Instance details

Defined in Geomancy.IVec3

Methods

(==) :: Packed -> Packed -> Bool #

(/=) :: Packed -> Packed -> Bool #

Ord Packed Source # 
Instance details

Defined in Geomancy.IVec3

Block Packed Source # 
Instance details

Defined in Geomancy.IVec3

Associated Types

type PackedSize Packed :: Nat #

Methods

alignment140 :: proxy Packed -> Int #

sizeOf140 :: proxy Packed -> Int #

isStruct :: proxy Packed -> Bool #

read140 :: MonadIO m => Ptr a -> Diff a Packed -> m Packed #

write140 :: MonadIO m => Ptr a -> Diff a Packed -> Packed -> m () #

alignment430 :: proxy Packed -> Int #

sizeOf430 :: proxy Packed -> Int #

read430 :: MonadIO m => Ptr a -> Diff a Packed -> m Packed #

write430 :: MonadIO m => Ptr a -> Diff a Packed -> Packed -> m () #

sizeOfPacked :: proxy Packed -> Int #

readPacked :: MonadIO m => Ptr a -> Diff a Packed -> m Packed #

writePacked :: MonadIO m => Ptr a -> Diff a Packed -> Packed -> m () #

type PackedSize Packed Source # 
Instance details

Defined in Geomancy.IVec3

type PackedSize Packed = 12