Crypto-4.2.5.2: Common Cryptographic Algorithms in Pure Haskell
Copyright(c) Dominic Steinitz 2004
LicenseBSD-style (see the file ReadMe.tex)
Stabilityexperimental
Portabilityportable
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.LargeWord

Description

Provides Word128, Word192 and Word256 and a way of producing other large words if required.

Documentation

data LargeKey a b Source #

Instances

Instances details
AESKey Word128 Source # 
Instance details

Defined in Codec.Encryption.AES

AESKey Word192 Source # 
Instance details

Defined in Codec.Encryption.AES

AESKey Word256 Source # 
Instance details

Defined in Codec.Encryption.AES

(Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => Bits (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

(.&.) :: LargeKey a b -> LargeKey a b -> LargeKey a b #

(.|.) :: LargeKey a b -> LargeKey a b -> LargeKey a b #

xor :: LargeKey a b -> LargeKey a b -> LargeKey a b #

complement :: LargeKey a b -> LargeKey a b #

shift :: LargeKey a b -> Int -> LargeKey a b #

rotate :: LargeKey a b -> Int -> LargeKey a b #

zeroBits :: LargeKey a b #

bit :: Int -> LargeKey a b #

setBit :: LargeKey a b -> Int -> LargeKey a b #

clearBit :: LargeKey a b -> Int -> LargeKey a b #

complementBit :: LargeKey a b -> Int -> LargeKey a b #

testBit :: LargeKey a b -> Int -> Bool #

bitSizeMaybe :: LargeKey a b -> Maybe Int #

bitSize :: LargeKey a b -> Int #

isSigned :: LargeKey a b -> Bool #

shiftL :: LargeKey a b -> Int -> LargeKey a b #

unsafeShiftL :: LargeKey a b -> Int -> LargeKey a b #

shiftR :: LargeKey a b -> Int -> LargeKey a b #

unsafeShiftR :: LargeKey a b -> Int -> LargeKey a b #

rotateL :: LargeKey a b -> Int -> LargeKey a b #

rotateR :: LargeKey a b -> Int -> LargeKey a b #

popCount :: LargeKey a b -> Int #

(Ord a, Bits a, Bounded a, Integral a, LargeWord a, Bits b, Bounded b, Integral b, LargeWord b) => Bounded (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

minBound :: LargeKey a b #

maxBound :: LargeKey a b #

Enum (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

succ :: LargeKey a b -> LargeKey a b #

pred :: LargeKey a b -> LargeKey a b #

toEnum :: Int -> LargeKey a b #

fromEnum :: LargeKey a b -> Int #

enumFrom :: LargeKey a b -> [LargeKey a b] #

enumFromThen :: LargeKey a b -> LargeKey a b -> [LargeKey a b] #

enumFromTo :: LargeKey a b -> LargeKey a b -> [LargeKey a b] #

enumFromThenTo :: LargeKey a b -> LargeKey a b -> LargeKey a b -> [LargeKey a b] #

(Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => Num (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

(+) :: LargeKey a b -> LargeKey a b -> LargeKey a b #

(-) :: LargeKey a b -> LargeKey a b -> LargeKey a b #

(*) :: LargeKey a b -> LargeKey a b -> LargeKey a b #

negate :: LargeKey a b -> LargeKey a b #

abs :: LargeKey a b -> LargeKey a b #

signum :: LargeKey a b -> LargeKey a b #

fromInteger :: Integer -> LargeKey a b #

(Ord a, Bits a, LargeWord a, Ord b, Bits b, LargeWord b) => Integral (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

quot :: LargeKey a b -> LargeKey a b -> LargeKey a b #

rem :: LargeKey a b -> LargeKey a b -> LargeKey a b #

div :: LargeKey a b -> LargeKey a b -> LargeKey a b #

mod :: LargeKey a b -> LargeKey a b -> LargeKey a b #

quotRem :: LargeKey a b -> LargeKey a b -> (LargeKey a b, LargeKey a b) #

divMod :: LargeKey a b -> LargeKey a b -> (LargeKey a b, LargeKey a b) #

toInteger :: LargeKey a b -> Integer #

(Ord a, Bits a, LargeWord a, Ord b, Bits b, LargeWord b) => Real (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

toRational :: LargeKey a b -> Rational #

(Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => Show (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

showsPrec :: Int -> LargeKey a b -> ShowS #

show :: LargeKey a b -> String #

showList :: [LargeKey a b] -> ShowS #

(Eq a, Eq b) => Eq (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

(==) :: LargeKey a b -> LargeKey a b -> Bool #

(/=) :: LargeKey a b -> LargeKey a b -> Bool #

(Ord a, Ord b) => Ord (LargeKey a b) Source # 
Instance details

Defined in Data.LargeWord

Methods

compare :: LargeKey a b -> LargeKey a b -> Ordering #

(<) :: LargeKey a b -> LargeKey a b -> Bool #

(<=) :: LargeKey a b -> LargeKey a b -> Bool #

(>) :: LargeKey a b -> LargeKey a b -> Bool #

(>=) :: LargeKey a b -> LargeKey a b -> Bool #

max :: LargeKey a b -> LargeKey a b -> LargeKey a b #

min :: LargeKey a b -> LargeKey a b -> LargeKey a b #