wide-word-0.1.8.1: Data types for large but fixed width signed and unsigned integers

Safe Haskell | None
Language | Haskell2010

Data.WideWord.Word128

# Documentation

data Word128 Source #

Constructors

Word128 |

Fields

- word128Hi64 :: !Word64
- word128Lo64 :: !Word64

#### Instances

Instances details

Binary Word128 Source # | Since: 0.1.5.0
Instance details Defined in Data.WideWord.Word128 Methods put :: Word128 -> Put Source # get :: Get Word128 Source # putList :: [Word128] -> Put Source #
NFData Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods rnf :: Word128 -> () Source #
Bits Word128 Source # |

Instance details

Defined in Data.WideWord.Word128

Methods

(.&.) :: Word128 -> Word128 -> Word128 Source #

(.|.) :: Word128 -> Word128 -> Word128 Source #

xor :: Word128 -> Word128 -> Word128 Source #

complement :: Word128 -> Word128 Source #

shift :: Word128 -> Int -> Word128 Source #

rotate :: Word128 -> Int -> Word128 Source #

zeroBits :: Word128 Source #

bit :: Int -> Word128 Source #

setBit :: Word128 -> Int -> Word128 Source #

clearBit :: Word128 -> Int -> Word128 Source #

complementBit :: Word128 -> Int -> Word128 Source #

testBit :: Word128 -> Int -> Bool Source #

bitSizeMaybe :: Word128 -> Maybe Int Source #

bitSize :: Word128 -> Int Source #

isSigned :: Word128 -> Bool Source #

shiftL :: Word128 -> Int -> Word128 Source #

unsafeShiftL :: Word128 -> Int -> Word128 Source #

shiftR :: Word128 -> Int -> Word128 Source #

unsafeShiftR :: Word128 -> Int -> Word128 Source #

rotateL :: Word128 -> Int -> Word128 Source #

rotateR :: Word128 -> Int -> Word128 Source #

popCount :: Word128 -> Int Source #

FiniteBits Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods finiteBitSize :: Word128 -> Int Source # countLeadingZeros :: Word128 -> Int Source # countTrailingZeros :: Word128 -> Int Source #
Data Word128 Source # |

Instance details

Defined in Data.WideWord.Word128

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Word128 -> c Word128 Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Word128 Source #

toConstr :: Word128 -> Constr Source #

dataTypeOf :: Word128 -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Word128) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Word128) Source #

gmapT :: (forall b. Data b => b -> b) -> Word128 -> Word128 Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Word128 -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Word128 -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Word128 -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Word128 -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Word128 -> m Word128 Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Word128 -> m Word128 Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Word128 -> m Word128 Source #

Bounded Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods minBound :: Word128 Source # maxBound :: Word128 Source #
Enum Word128 Source # |

Instance details

Defined in Data.WideWord.Word128

Methods

succ :: Word128 -> Word128 Source #

pred :: Word128 -> Word128 Source #

toEnum :: Int -> Word128 Source #

fromEnum :: Word128 -> Int Source #

enumFrom :: Word128 -> [Word128] Source #

enumFromThen :: Word128 -> Word128 -> [Word128] Source #

enumFromTo :: Word128 -> Word128 -> [Word128] Source #

enumFromThenTo :: Word128 -> Word128 -> Word128 -> [Word128] Source #

Storable Word128 Source # |

Instance details

Defined in Data.WideWord.Word128

Methods

sizeOf :: Word128 -> Int Source #

alignment :: Word128 -> Int Source #

peekElemOff :: Ptr Word128 -> Int -> IO Word128 Source #

pokeElemOff :: Ptr Word128 -> Int -> Word128 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word128 Source #

pokeByteOff :: Ptr b -> Int -> Word128 -> IO () Source #

peek :: Ptr Word128 -> IO Word128 Source #

poke :: Ptr Word128 -> Word128 -> IO () Source #

Generic Word128 Source # |

Instance details

Defined in Data.WideWord.Word128

Associated Types

type Rep Word128 |

Instance details

Defined in Data.WideWord.Word128

type Rep Word128 = D1 ('MetaData "Word128" "Data.WideWord.Word128" "wide-word-0.1.8.1-LTrmCJN05el1haHeL5Fg3U" 'False) (C1 ('MetaCons "Word128" 'PrefixI 'True) (S1 ('MetaSel ('Just "word128Hi64") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64) :*: S1 ('MetaSel ('Just "word128Lo64") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64)))

Methods

from :: Word128 -> Rep Word128 x Source #

to :: Rep Word128 x -> Word128 Source #

Ix Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods range :: (Word128, Word128) -> [Word128] Source # index :: (Word128, Word128) -> Word128 -> Int Source # unsafeIndex :: (Word128, Word128) -> Word128 -> Int Source # inRange :: (Word128, Word128) -> Word128 -> Bool Source # rangeSize :: (Word128, Word128) -> Int Source # unsafeRangeSize :: (Word128, Word128) -> Int Source #
Num Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods (+) :: Word128 -> Word128 -> Word128 Source # (-) :: Word128 -> Word128 -> Word128 Source # (*) :: Word128 -> Word128 -> Word128 Source # negate :: Word128 -> Word128 Source # abs :: Word128 -> Word128 Source # signum :: Word128 -> Word128 Source # fromInteger :: Integer -> Word128 Source #
Read Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods readsPrec :: Int -> ReadS Word128 Source # readList :: ReadS [Word128] Source # readPrec :: ReadPrec Word128 Source # readListPrec :: ReadPrec [Word128] Source #
Integral Word128 Source # |

Instance details

Defined in Data.WideWord.Word128

Methods

quot :: Word128 -> Word128 -> Word128 Source #

rem :: Word128 -> Word128 -> Word128 Source #

div :: Word128 -> Word128 -> Word128 Source #

mod :: Word128 -> Word128 -> Word128 Source #

quotRem :: Word128 -> Word128 -> (Word128, Word128) Source #

divMod :: Word128 -> Word128 -> (Word128, Word128) Source #

toInteger :: Word128 -> Integer Source #

Real Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods toRational :: Word128 -> Rational Source #
Show Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods showsPrec :: Int -> Word128 -> ShowS Source # show :: Word128 -> String Source # showList :: [Word128] -> ShowS Source #
Eq Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods (==) :: Word128 -> Word128 -> Bool Source # (/=) :: Word128 -> Word128 -> Bool Source #
Ord Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods compare :: Word128 -> Word128 -> Ordering Source # (<) :: Word128 -> Word128 -> Bool Source # (<=) :: Word128 -> Word128 -> Bool Source # (>) :: Word128 -> Word128 -> Bool Source # (>=) :: Word128 -> Word128 -> Bool Source # max :: Word128 -> Word128 -> Word128 Source # min :: Word128 -> Word128 -> Word128 Source #
Hashable Word128 Source # |
Instance details Defined in Data.WideWord.Word128 Methods hashWithSalt :: Int -> Word128 -> Int Source # hash :: Word128 -> Int Source #
Prim Word128 Source # |

Instance details

Defined in Data.WideWord.Word128

Methods

sizeOfType# :: Proxy Word128 -> Int# Source #

sizeOf# :: Word128 -> Int# Source #

alignmentOfType# :: Proxy Word128 -> Int# Source #

alignment# :: Word128 -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Word128 Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Word128 #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Word128 -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word128 -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Word128 Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Word128 #) Source #

writeOffAddr# :: Addr# -> Int# -> Word128 -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Word128 -> State# s -> State# s Source #

type Rep Word128 Source # |

Instance details

Defined in Data.WideWord.Word128

type Rep Word128 = D1 ('MetaData "Word128" "Data.WideWord.Word128" "wide-word-0.1.8.1-LTrmCJN05el1haHeL5Fg3U" 'False) (C1 ('MetaCons "Word128" 'PrefixI 'True) (S1 ('MetaSel ('Just "word128Hi64") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64) :*: S1 ('MetaSel ('Just "word128Lo64") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64)))

byteSwapWord128 :: Word128 -> Word128 Source #

showHexWord128 :: Word128 -> String Source #

zeroWord128 :: Word128 Source #