| Safe Haskell | Safe-Inferred | 
|---|---|
| Language | GHC2021 | 
Database.LSMTree.Internal.BitMath
Description
Some arithmetic implemented using bit operations
Valid for non-negative arguments.
Synopsis
- div2 :: Bits a => a -> a
 - mod2 :: (Bits a, Num a) => a -> a
 - mul2 :: Bits a => a -> a
 - ceilDiv2 :: (Bits a, Num a) => a -> a
 - div4 :: Bits a => a -> a
 - mod4 :: (Bits a, Num a) => a -> a
 - mul4 :: Bits a => a -> a
 - div8 :: Bits a => a -> a
 - mod8 :: (Bits a, Num a) => a -> a
 - mul8 :: Bits a => a -> a
 - ceilDiv8 :: (Bits a, Num a) => a -> a
 - div16 :: Bits a => a -> a
 - mod16 :: (Bits a, Num a) => a -> a
 - mul16 :: Bits a => a -> a
 - div32 :: Bits a => a -> a
 - mod32 :: (Bits a, Num a) => a -> a
 - div64 :: Bits a => a -> a
 - mod64 :: (Bits a, Num a) => a -> a
 - mul64 :: Bits a => a -> a
 - ceilDiv64 :: (Bits a, Num a) => a -> a
 - divPageSize :: Bits a => a -> a
 - modPageSize :: (Bits a, Num a) => a -> a
 - mulPageSize :: Bits a => a -> a
 - ceilDivPageSize :: (Bits a, Num a) => a -> a
 - roundUpToPageSize :: (Bits a, Num a) => a -> a
 
Two
Four
Eight
Sixteen
32
64
ceilDiv64 :: (Bits a, Num a) => a -> a Source #
rounding up division
>>>map ceilDiv64 [0 :: Word, 1, 63, 64, 65][0,1,1,1,2]
4096, page size
divPageSize :: Bits a => a -> a Source #
Assumes pageSize = 4096.
modPageSize :: (Bits a, Num a) => a -> a Source #
Assumes pageSize = 4096.
mulPageSize :: Bits a => a -> a Source #
Assumes pageSize = 4096.
ceilDivPageSize :: (Bits a, Num a) => a -> a Source #
Assumes pageSize = 4096.
roundUpToPageSize :: (Bits a, Num a) => a -> a Source #
Assumes pageSize = 4096.