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

Safe Haskell | None
Language | Haskell2010

Data.WideWord.Int128

# Documentation

data Int128 Source #

Constructors

Int128 |

Fields

- int128Hi64 :: !Word64
- int128Lo64 :: !Word64

#### Instances

Instances details

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

Instance details

Defined in Data.WideWord.Int128

Methods

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

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

xor :: Int128 -> Int128 -> Int128 Source #

complement :: Int128 -> Int128 Source #

shift :: Int128 -> Int -> Int128 Source #

rotate :: Int128 -> Int -> Int128 Source #

zeroBits :: Int128 Source #

bit :: Int -> Int128 Source #

setBit :: Int128 -> Int -> Int128 Source #

clearBit :: Int128 -> Int -> Int128 Source #

complementBit :: Int128 -> Int -> Int128 Source #

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

bitSizeMaybe :: Int128 -> Maybe Int Source #

bitSize :: Int128 -> Int Source #

isSigned :: Int128 -> Bool Source #

shiftL :: Int128 -> Int -> Int128 Source #

unsafeShiftL :: Int128 -> Int -> Int128 Source #

shiftR :: Int128 -> Int -> Int128 Source #

unsafeShiftR :: Int128 -> Int -> Int128 Source #

rotateL :: Int128 -> Int -> Int128 Source #

rotateR :: Int128 -> Int -> Int128 Source #

popCount :: Int128 -> Int Source #

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

Instance details

Defined in Data.WideWord.Int128

Methods

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

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

toConstr :: Int128 -> Constr Source #

dataTypeOf :: Int128 -> DataType Source #

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

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

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

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

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

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

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

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

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

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

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

Instance details

Defined in Data.WideWord.Int128

Methods

succ :: Int128 -> Int128 Source #

pred :: Int128 -> Int128 Source #

toEnum :: Int -> Int128 Source #

fromEnum :: Int128 -> Int Source #

enumFrom :: Int128 -> [Int128] Source #

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

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

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

Storable Int128 Source # |

Instance details

Defined in Data.WideWord.Int128

Methods

sizeOf :: Int128 -> Int Source #

alignment :: Int128 -> Int Source #

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

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

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

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

peek :: Ptr Int128 -> IO Int128 Source #

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

Generic Int128 Source # |

Instance details

Defined in Data.WideWord.Int128

Associated Types

type Rep Int128 |

Instance details

Defined in Data.WideWord.Int128

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

Methods

from :: Int128 -> Rep Int128 x Source #

to :: Rep Int128 x -> Int128 Source #

Ix Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods range :: (Int128, Int128) -> [Int128] Source # index :: (Int128, Int128) -> Int128 -> Int Source # unsafeIndex :: (Int128, Int128) -> Int128 -> Int Source # inRange :: (Int128, Int128) -> Int128 -> Bool Source # rangeSize :: (Int128, Int128) -> Int Source # unsafeRangeSize :: (Int128, Int128) -> Int Source #
Num Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods (+) :: Int128 -> Int128 -> Int128 Source # (-) :: Int128 -> Int128 -> Int128 Source # (*) :: Int128 -> Int128 -> Int128 Source # negate :: Int128 -> Int128 Source # abs :: Int128 -> Int128 Source # signum :: Int128 -> Int128 Source # fromInteger :: Integer -> Int128 Source #
Read Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods readsPrec :: Int -> ReadS Int128 Source # readList :: ReadS [Int128] Source # readPrec :: ReadPrec Int128 Source # readListPrec :: ReadPrec [Int128] Source #
Integral Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods quot :: Int128 -> Int128 -> Int128 Source # rem :: Int128 -> Int128 -> Int128 Source # div :: Int128 -> Int128 -> Int128 Source # mod :: Int128 -> Int128 -> Int128 Source # quotRem :: Int128 -> Int128 -> (Int128, Int128) Source # divMod :: Int128 -> Int128 -> (Int128, Int128) Source # toInteger :: Int128 -> Integer Source #
Real Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods toRational :: Int128 -> Rational Source #
Show Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods showsPrec :: Int -> Int128 -> ShowS Source # show :: Int128 -> String Source # showList :: [Int128] -> ShowS Source #
Eq Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods (==) :: Int128 -> Int128 -> Bool Source # (/=) :: Int128 -> Int128 -> Bool Source #
Ord Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods compare :: Int128 -> Int128 -> Ordering Source # (<) :: Int128 -> Int128 -> Bool Source # (<=) :: Int128 -> Int128 -> Bool Source # (>) :: Int128 -> Int128 -> Bool Source # (>=) :: Int128 -> Int128 -> Bool Source # max :: Int128 -> Int128 -> Int128 Source # min :: Int128 -> Int128 -> Int128 Source #
Hashable Int128 Source # |
Instance details Defined in Data.WideWord.Int128 Methods hashWithSalt :: Int -> Int128 -> Int Source # hash :: Int128 -> Int Source #
Prim Int128 Source # |

Instance details

Defined in Data.WideWord.Int128

Methods

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

sizeOf# :: Int128 -> Int# Source #

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

alignment# :: Int128 -> Int# Source #

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

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

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

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

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

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

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

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

type Rep Int128 Source # |

Instance details

Defined in Data.WideWord.Int128

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

byteSwapInt128 :: Int128 -> Int128 Source #

showHexInt128 :: Int128 -> String Source #

zeroInt128 :: Int128 Source #