Safe Haskell | None |
---|---|
Language | Haskell2010 |
Language.Futhark.Core
Description
This module contains very basic definitions for Futhark - so basic, that they can be shared between the internal and external representation.
Synopsis
- data Uniqueness
- data StreamOrd
- data Commutativity
- locStr :: Located a => a -> String
- locStrRel :: (Located a, Located b) => a -> b -> String
- prettyStacktrace :: Int -> [String] -> String
- data Name
- nameToString :: Name -> String
- nameFromString :: String -> Name
- nameToText :: Name -> Text
- nameFromText :: Text -> Name
- data VName = VName !Name !Int
- baseTag :: VName -> Int
- baseName :: VName -> Name
- baseString :: VName -> String
- pretty :: Pretty a => a -> String
- quote :: String -> String
- pquote :: Doc -> Doc
- defaultEntryPoint :: Name
- data Int8
- data Int16
- data Int32
- data Int64
- data Word8
- data Word16
- data Word32
- data Word64
Documentation
data Uniqueness Source #
The uniqueness attribute of a type. This essentially indicates
whether or not in-place modifications are acceptable. With respect
to ordering, Unique
is greater than Nonunique
.
Constructors
Nonunique | May have references outside current function. |
Unique | No references outside current function. |
Instances
Instances
Eq StreamOrd Source # | |
Ord StreamOrd Source # | |
Show StreamOrd Source # | |
data Commutativity Source #
Whether some operator is commutative or not. The Monoid
instance returns the least commutative of its arguments.
Constructors
Noncommutative | |
Commutative |
Instances
Location utilities
locStr :: Located a => a -> String Source #
A human-readable location string, of the form
filename:lineno:columnno
. This follows the GNU coding standards
for error messages:
https://www.gnu.org/prep/standards/html_node/Errors.html
This function assumes that both start and end position is in the same file (it is not clear what the alternative would even mean).
locStrRel :: (Located a, Located b) => a -> b -> String Source #
Like locStr
, but locStrRel prev now
prints the location now
with the file name left out if the same as prev
. This is useful
when printing messages that are all in the context of some
initially printed location (e.g. the first mention contains the
file name; the rest just line and column name).
prettyStacktrace :: Int -> [String] -> String Source #
Given a list of strings representing entries in the stack trace and the index of the frame to highlight, produce a final newline-terminated string for showing to the user. This string should also be preceded by a newline. The most recent stack frame must come first in the list.
Name handling
The abstract (not really) type representing names in the Futhark
compiler. String
s, being lists of characters, are very slow,
while Text
s are based on byte-arrays.
Instances
nameToString :: Name -> String Source #
Convert a name to the corresponding list of characters.
nameFromString :: String -> Name Source #
Convert a list of characters to the corresponding name.
A name tagged with some integer. Only the integer is used in
comparisons, no matter the type of vn
.
Instances
quote :: String -> String Source #
Enclose a string in the prefered quotes used in error messages. These are picked to not collide with characters permitted in identifiers.
Special identifiers
defaultEntryPoint :: Name Source #
The name of the default program entry point (main).
Integer re-export
8-bit signed integer type
Instances
Bounded Int8 | Since: base-2.1 |
Enum Int8 | Since: base-2.1 |
Eq Int8 | Since: base-2.1 |
Integral Int8 | Since: base-2.1 |
Num Int8 | Since: base-2.1 |
Ord Int8 | Since: base-2.1 |
Read Int8 | Since: base-2.1 |
Real Int8 | Since: base-2.1 |
Defined in GHC.Int Methods toRational :: Int8 -> Rational # | |
Show Int8 | Since: base-2.1 |
Ix Int8 | Since: base-2.1 |
PrintfArg Int8 | Since: base-2.1 |
Defined in Text.Printf | |
Storable Int8 | Since: base-2.1 |
Defined in Foreign.Storable | |
Bits Int8 | Since: base-2.1 |
Defined in GHC.Int Methods (.&.) :: Int8 -> Int8 -> Int8 # (.|.) :: Int8 -> Int8 -> Int8 # complement :: Int8 -> Int8 # shift :: Int8 -> Int -> Int8 # rotate :: Int8 -> Int -> Int8 # setBit :: Int8 -> Int -> Int8 # clearBit :: Int8 -> Int -> Int8 # complementBit :: Int8 -> Int -> Int8 # testBit :: Int8 -> Int -> Bool # bitSizeMaybe :: Int8 -> Maybe Int # shiftL :: Int8 -> Int -> Int8 # unsafeShiftL :: Int8 -> Int -> Int8 # shiftR :: Int8 -> Int -> Int8 # unsafeShiftR :: Int8 -> Int -> Int8 # rotateL :: Int8 -> Int -> Int8 # | |
FiniteBits Int8 | Since: base-4.6.0.0 |
Defined in GHC.Int Methods finiteBitSize :: Int8 -> Int # countLeadingZeros :: Int8 -> Int # countTrailingZeros :: Int8 -> Int # | |
Binary Int8 | |
NFData Int8 | |
Defined in Control.DeepSeq | |
ToConst Int8 | |
Defined in Language.C.Quote.Base | |
ToExp Int8 | |
Defined in Language.C.Quote.Base | |
Unbox Int8 | |
Defined in Data.Vector.Unboxed.Base | |
Prim Int8 | |
Defined in Data.Primitive.Types Methods alignment# :: Int8 -> Int# indexByteArray# :: ByteArray# -> Int# -> Int8 readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Int8 #) writeByteArray# :: MutableByteArray# s -> Int# -> Int8 -> State# s -> State# s setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int8 -> State# s -> State# s indexOffAddr# :: Addr# -> Int# -> Int8 readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Int8 #) writeOffAddr# :: Addr# -> Int# -> Int8 -> State# s -> State# s setOffAddr# :: Addr# -> Int# -> Int# -> Int8 -> State# s -> State# s | |
Pretty Int8 | |
Hashable Int8 | |
Defined in Data.Hashable.Class | |
IsValue Int8 Source # | |
IsPrimValue Int8 Source # | |
FromJSON Int8 | |
Defined in Data.Aeson.Types.FromJSON | |
FromJSONKey Int8 | |
Defined in Data.Aeson.Types.FromJSON | |
ToJSON Int8 | |
Defined in Data.Aeson.Types.ToJSON Methods toEncoding :: Int8 -> Encoding toJSONList :: [Int8] -> Value toEncodingList :: [Int8] -> Encoding | |
ToJSONKey Int8 | |
Defined in Data.Aeson.Types.ToJSON | |
Random Int8 | |
Lift Int8 | |
IArray UArray Int8 | |
Defined in Data.Array.Base Methods bounds :: Ix i => UArray i Int8 -> (i, i) # numElements :: Ix i => UArray i Int8 -> Int unsafeArray :: Ix i => (i, i) -> [(Int, Int8)] -> UArray i Int8 unsafeAt :: Ix i => UArray i Int8 -> Int -> Int8 unsafeReplace :: Ix i => UArray i Int8 -> [(Int, Int8)] -> UArray i Int8 unsafeAccum :: Ix i => (Int8 -> e' -> Int8) -> UArray i Int8 -> [(Int, e')] -> UArray i Int8 unsafeAccumArray :: Ix i => (Int8 -> e' -> Int8) -> Int8 -> (i, i) -> [(Int, e')] -> UArray i Int8 | |
Vector Vector Int8 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) Int8 -> m (Vector Int8) basicUnsafeThaw :: PrimMonad m => Vector Int8 -> m (Mutable Vector (PrimState m) Int8) basicLength :: Vector Int8 -> Int basicUnsafeSlice :: Int -> Int -> Vector Int8 -> Vector Int8 basicUnsafeIndexM :: Monad m => Vector Int8 -> Int -> m Int8 basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) Int8 -> Vector Int8 -> m () | |
MVector MVector Int8 | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s Int8 -> Int basicUnsafeSlice :: Int -> Int -> MVector s Int8 -> MVector s Int8 basicOverlaps :: MVector s Int8 -> MVector s Int8 -> Bool basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Int8) basicInitialize :: PrimMonad m => MVector (PrimState m) Int8 -> m () basicUnsafeReplicate :: PrimMonad m => Int -> Int8 -> m (MVector (PrimState m) Int8) basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Int8 -> Int -> m Int8 basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Int8 -> Int -> Int8 -> m () basicClear :: PrimMonad m => MVector (PrimState m) Int8 -> m () basicSet :: PrimMonad m => MVector (PrimState m) Int8 -> Int8 -> m () basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Int8 -> MVector (PrimState m) Int8 -> m () basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Int8 -> MVector (PrimState m) Int8 -> m () basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Int8 -> Int -> m (MVector (PrimState m) Int8) | |
MArray (STUArray s) Int8 (ST s) | |
Defined in Data.Array.Base Methods getBounds :: Ix i => STUArray s i Int8 -> ST s (i, i) # getNumElements :: Ix i => STUArray s i Int8 -> ST s Int newArray :: Ix i => (i, i) -> Int8 -> ST s (STUArray s i Int8) # newArray_ :: Ix i => (i, i) -> ST s (STUArray s i Int8) # unsafeNewArray_ :: Ix i => (i, i) -> ST s (STUArray s i Int8) unsafeRead :: Ix i => STUArray s i Int8 -> Int -> ST s Int8 unsafeWrite :: Ix i => STUArray s i Int8 -> Int -> Int8 -> ST s () | |
newtype Vector Int8 | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Int8 | |
Defined in Data.Vector.Unboxed.Base |
16-bit signed integer type
Instances
Bounded Int16 | Since: base-2.1 |
Enum Int16 | Since: base-2.1 |
Eq Int16 | Since: base-2.1 |
Integral Int16 | Since: base-2.1 |
Num Int16 | Since: base-2.1 |
Ord Int16 | Since: base-2.1 |
Read Int16 | Since: base-2.1 |
Real Int16 | Since: base-2.1 |
Defined in GHC.Int Methods toRational :: Int16 -> Rational # | |
Show Int16 | Since: base-2.1 |
Ix Int16 | Since: base-2.1 |
PrintfArg Int16 | Since: base-2.1 |
Defined in Text.Printf | |
Storable Int16 | Since: base-2.1 |
Bits Int16 | Since: base-2.1 |
Defined in GHC.Int Methods (.&.) :: Int16 -> Int16 -> Int16 # (.|.) :: Int16 -> Int16 -> Int16 # xor :: Int16 -> Int16 -> Int16 # complement :: Int16 -> Int16 # shift :: Int16 -> Int -> Int16 # rotate :: Int16 -> Int -> Int16 # setBit :: Int16 -> Int -> Int16 # clearBit :: Int16 -> Int -> Int16 # complementBit :: Int16 -> Int -> Int16 # testBit :: Int16 -> Int -> Bool # bitSizeMaybe :: Int16 -> Maybe Int # shiftL :: Int16 -> Int -> Int16 # unsafeShiftL :: Int16 -> Int -> Int16 # shiftR :: Int16 -> Int -> Int16 # unsafeShiftR :: Int16 -> Int -> Int16 # rotateL :: Int16 -> Int -> Int16 # | |
FiniteBits Int16 | Since: base-4.6.0.0 |
Defined in GHC.Int Methods finiteBitSize :: Int16 -> Int # countLeadingZeros :: Int16 -> Int # countTrailingZeros :: Int16 -> Int # | |
Binary Int16 | |
NFData Int16 | |
Defined in Control.DeepSeq | |
ToConst Int16 | |
Defined in Language.C.Quote.Base | |
ToExp Int16 | |
Defined in Language.C.Quote.Base | |
Unbox Int16 | |
Defined in Data.Vector.Unboxed.Base | |
Prim Int16 | |
Defined in Data.Primitive.Types Methods alignment# :: Int16 -> Int# indexByteArray# :: ByteArray# -> Int# -> Int16 readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Int16 #) writeByteArray# :: MutableByteArray# s -> Int# -> Int16 -> State# s -> State# s setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int16 -> State# s -> State# s indexOffAddr# :: Addr# -> Int# -> Int16 readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Int16 #) writeOffAddr# :: Addr# -> Int# -> Int16 -> State# s -> State# s setOffAddr# :: Addr# -> Int# -> Int# -> Int16 -> State# s -> State# s | |
Pretty Int16 | |
Hashable Int16 | |
Defined in Data.Hashable.Class | |
IsValue Int16 Source # | |
IsPrimValue Int16 Source # | |
FromJSON Int16 | |
Defined in Data.Aeson.Types.FromJSON | |
FromJSONKey Int16 | |
Defined in Data.Aeson.Types.FromJSON | |
ToJSON Int16 | |
Defined in Data.Aeson.Types.ToJSON Methods toEncoding :: Int16 -> Encoding toJSONList :: [Int16] -> Value toEncodingList :: [Int16] -> Encoding | |
ToJSONKey Int16 | |
Defined in Data.Aeson.Types.ToJSON | |
Random Int16 | |
Lift Int16 | |
IArray UArray Int16 | |
Defined in Data.Array.Base Methods bounds :: Ix i => UArray i Int16 -> (i, i) # numElements :: Ix i => UArray i Int16 -> Int unsafeArray :: Ix i => (i, i) -> [(Int, Int16)] -> UArray i Int16 unsafeAt :: Ix i => UArray i Int16 -> Int -> Int16 unsafeReplace :: Ix i => UArray i Int16 -> [(Int, Int16)] -> UArray i Int16 unsafeAccum :: Ix i => (Int16 -> e' -> Int16) -> UArray i Int16 -> [(Int, e')] -> UArray i Int16 unsafeAccumArray :: Ix i => (Int16 -> e' -> Int16) -> Int16 -> (i, i) -> [(Int, e')] -> UArray i Int16 | |
Vector Vector Int16 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) Int16 -> m (Vector Int16) basicUnsafeThaw :: PrimMonad m => Vector Int16 -> m (Mutable Vector (PrimState m) Int16) basicLength :: Vector Int16 -> Int basicUnsafeSlice :: Int -> Int -> Vector Int16 -> Vector Int16 basicUnsafeIndexM :: Monad m => Vector Int16 -> Int -> m Int16 basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) Int16 -> Vector Int16 -> m () | |
MVector MVector Int16 | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s Int16 -> Int basicUnsafeSlice :: Int -> Int -> MVector s Int16 -> MVector s Int16 basicOverlaps :: MVector s Int16 -> MVector s Int16 -> Bool basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Int16) basicInitialize :: PrimMonad m => MVector (PrimState m) Int16 -> m () basicUnsafeReplicate :: PrimMonad m => Int -> Int16 -> m (MVector (PrimState m) Int16) basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Int16 -> Int -> m Int16 basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Int16 -> Int -> Int16 -> m () basicClear :: PrimMonad m => MVector (PrimState m) Int16 -> m () basicSet :: PrimMonad m => MVector (PrimState m) Int16 -> Int16 -> m () basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Int16 -> MVector (PrimState m) Int16 -> m () basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Int16 -> MVector (PrimState m) Int16 -> m () basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Int16 -> Int -> m (MVector (PrimState m) Int16) | |
MArray (STUArray s) Int16 (ST s) | |
Defined in Data.Array.Base Methods getBounds :: Ix i => STUArray s i Int16 -> ST s (i, i) # getNumElements :: Ix i => STUArray s i Int16 -> ST s Int newArray :: Ix i => (i, i) -> Int16 -> ST s (STUArray s i Int16) # newArray_ :: Ix i => (i, i) -> ST s (STUArray s i Int16) # unsafeNewArray_ :: Ix i => (i, i) -> ST s (STUArray s i Int16) unsafeRead :: Ix i => STUArray s i Int16 -> Int -> ST s Int16 unsafeWrite :: Ix i => STUArray s i Int16 -> Int -> Int16 -> ST s () | |
newtype Vector Int16 | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Int16 | |
Defined in Data.Vector.Unboxed.Base |
32-bit signed integer type
Instances
Bounded Int32 | Since: base-2.1 |
Enum Int32 | Since: base-2.1 |
Eq Int32 | Since: base-2.1 |
Integral Int32 | Since: base-2.1 |
Num Int32 | Since: base-2.1 |
Ord Int32 | Since: base-2.1 |
Read Int32 | Since: base-2.1 |
Real Int32 | Since: base-2.1 |
Defined in GHC.Int Methods toRational :: Int32 -> Rational # | |
Show Int32 | Since: base-2.1 |
Ix Int32 | Since: base-2.1 |
PrintfArg Int32 | Since: base-2.1 |
Defined in Text.Printf | |
Storable Int32 | Since: base-2.1 |
Bits Int32 | Since: base-2.1 |
Defined in GHC.Int Methods (.&.) :: Int32 -> Int32 -> Int32 # (.|.) :: Int32 -> Int32 -> Int32 # xor :: Int32 -> Int32 -> Int32 # complement :: Int32 -> Int32 # shift :: Int32 -> Int -> Int32 # rotate :: Int32 -> Int -> Int32 # setBit :: Int32 -> Int -> Int32 # clearBit :: Int32 -> Int -> Int32 # complementBit :: Int32 -> Int -> Int32 # testBit :: Int32 -> Int -> Bool # bitSizeMaybe :: Int32 -> Maybe Int # shiftL :: Int32 -> Int -> Int32 # unsafeShiftL :: Int32 -> Int -> Int32 # shiftR :: Int32 -> Int -> Int32 # unsafeShiftR :: Int32 -> Int -> Int32 # rotateL :: Int32 -> Int -> Int32 # | |
FiniteBits Int32 | Since: base-4.6.0.0 |
Defined in GHC.Int Methods finiteBitSize :: Int32 -> Int # countLeadingZeros :: Int32 -> Int # countTrailingZeros :: Int32 -> Int # | |
Binary Int32 | |
NFData Int32 | |
Defined in Control.DeepSeq | |
ToConst Int32 | |
Defined in Language.C.Quote.Base | |
ToExp Int32 | |
Defined in Language.C.Quote.Base | |
Unbox Int32 | |
Defined in Data.Vector.Unboxed.Base | |
Prim Int32 | |
Defined in Data.Primitive.Types Methods alignment# :: Int32 -> Int# indexByteArray# :: ByteArray# -> Int# -> Int32 readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Int32 #) writeByteArray# :: MutableByteArray# s -> Int# -> Int32 -> State# s -> State# s setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int32 -> State# s -> State# s indexOffAddr# :: Addr# -> Int# -> Int32 readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Int32 #) writeOffAddr# :: Addr# -> Int# -> Int32 -> State# s -> State# s setOffAddr# :: Addr# -> Int# -> Int# -> Int32 -> State# s -> State# s | |
Pretty Int32 | |
Hashable Int32 | |
Defined in Data.Hashable.Class | |
IsValue Int32 Source # | |
IsPrimValue Int32 Source # | |
ToMarkup Int32 | |
Defined in Text.Blaze | |
ToValue Int32 | |
Defined in Text.Blaze | |
FromJSON Int32 | |
Defined in Data.Aeson.Types.FromJSON | |
FromJSONKey Int32 | |
Defined in Data.Aeson.Types.FromJSON | |
ToJSON Int32 | |
Defined in Data.Aeson.Types.ToJSON Methods toEncoding :: Int32 -> Encoding toJSONList :: [Int32] -> Value toEncodingList :: [Int32] -> Encoding | |
ToJSONKey Int32 | |
Defined in Data.Aeson.Types.ToJSON | |
Random Int32 | |
Lift Int32 | |
IArray UArray Int32 | |
Defined in Data.Array.Base Methods bounds :: Ix i => UArray i Int32 -> (i, i) # numElements :: Ix i => UArray i Int32 -> Int unsafeArray :: Ix i => (i, i) -> [(Int, Int32)] -> UArray i Int32 unsafeAt :: Ix i => UArray i Int32 -> Int -> Int32 unsafeReplace :: Ix i => UArray i Int32 -> [(Int, Int32)] -> UArray i Int32 unsafeAccum :: Ix i => (Int32 -> e' -> Int32) -> UArray i Int32 -> [(Int, e')] -> UArray i Int32 unsafeAccumArray :: Ix i => (Int32 -> e' -> Int32) -> Int32 -> (i, i) -> [(Int, e')] -> UArray i Int32 | |
Vector Vector Int32 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) Int32 -> m (Vector Int32) basicUnsafeThaw :: PrimMonad m => Vector Int32 -> m (Mutable Vector (PrimState m) Int32) basicLength :: Vector Int32 -> Int basicUnsafeSlice :: Int -> Int -> Vector Int32 -> Vector Int32 basicUnsafeIndexM :: Monad m => Vector Int32 -> Int -> m Int32 basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) Int32 -> Vector Int32 -> m () | |
MVector MVector Int32 | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s Int32 -> Int basicUnsafeSlice :: Int -> Int -> MVector s Int32 -> MVector s Int32 basicOverlaps :: MVector s Int32 -> MVector s Int32 -> Bool basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Int32) basicInitialize :: PrimMonad m => MVector (PrimState m) Int32 -> m () basicUnsafeReplicate :: PrimMonad m => Int -> Int32 -> m (MVector (PrimState m) Int32) basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Int32 -> Int -> m Int32 basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Int32 -> Int -> Int32 -> m () basicClear :: PrimMonad m => MVector (PrimState m) Int32 -> m () basicSet :: PrimMonad m => MVector (PrimState m) Int32 -> Int32 -> m () basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Int32 -> MVector (PrimState m) Int32 -> m () basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Int32 -> MVector (PrimState m) Int32 -> m () basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Int32 -> Int -> m (MVector (PrimState m) Int32) | |
Pretty (ShapeDecl Int32) | |
MArray (STUArray s) Int32 (ST s) | |
Defined in Data.Array.Base Methods getBounds :: Ix i => STUArray s i Int32 -> ST s (i, i) # getNumElements :: Ix i => STUArray s i Int32 -> ST s Int newArray :: Ix i => (i, i) -> Int32 -> ST s (STUArray s i Int32) # newArray_ :: Ix i => (i, i) -> ST s (STUArray s i Int32) # unsafeNewArray_ :: Ix i => (i, i) -> ST s (STUArray s i Int32) unsafeRead :: Ix i => STUArray s i Int32 -> Int -> ST s Int32 unsafeWrite :: Ix i => STUArray s i Int32 -> Int -> Int32 -> ST s () | |
newtype Vector Int32 | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Int32 | |
Defined in Data.Vector.Unboxed.Base |
64-bit signed integer type
Instances
8-bit unsigned integer type
Instances
Bounded Word8 | Since: base-2.1 |
Enum Word8 | Since: base-2.1 |
Eq Word8 | Since: base-2.1 |
Integral Word8 | Since: base-2.1 |
Num Word8 | Since: base-2.1 |
Ord Word8 | Since: base-2.1 |
Read Word8 | Since: base-2.1 |
Real Word8 | Since: base-2.1 |
Defined in GHC.Word Methods toRational :: Word8 -> Rational # | |
Show Word8 | Since: base-2.1 |
Ix Word8 | Since: base-2.1 |
PrintfArg Word8 | Since: base-2.1 |
Defined in Text.Printf | |
Storable Word8 | Since: base-2.1 |
Bits Word8 | Since: base-2.1 |
Defined in GHC.Word Methods (.&.) :: Word8 -> Word8 -> Word8 # (.|.) :: Word8 -> Word8 -> Word8 # xor :: Word8 -> Word8 -> Word8 # complement :: Word8 -> Word8 # shift :: Word8 -> Int -> Word8 # rotate :: Word8 -> Int -> Word8 # setBit :: Word8 -> Int -> Word8 # clearBit :: Word8 -> Int -> Word8 # complementBit :: Word8 -> Int -> Word8 # testBit :: Word8 -> Int -> Bool # bitSizeMaybe :: Word8 -> Maybe Int # shiftL :: Word8 -> Int -> Word8 # unsafeShiftL :: Word8 -> Int -> Word8 # shiftR :: Word8 -> Int -> Word8 # unsafeShiftR :: Word8 -> Int -> Word8 # rotateL :: Word8 -> Int -> Word8 # | |
FiniteBits Word8 | Since: base-4.6.0.0 |
Defined in GHC.Word Methods finiteBitSize :: Word8 -> Int # countLeadingZeros :: Word8 -> Int # countTrailingZeros :: Word8 -> Int # | |
Binary Word8 | |
NFData Word8 | |
Defined in Control.DeepSeq | |
ToConst Word8 | |
Defined in Language.C.Quote.Base | |
ToExp Word8 | |
Defined in Language.C.Quote.Base | |
Unbox Word8 | |
Defined in Data.Vector.Unboxed.Base | |
Prim Word8 | |
Defined in Data.Primitive.Types Methods alignment# :: Word8 -> Int# indexByteArray# :: ByteArray# -> Int# -> Word8 readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Word8 #) writeByteArray# :: MutableByteArray# s -> Int# -> Word8 -> State# s -> State# s setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word8 -> State# s -> State# s indexOffAddr# :: Addr# -> Int# -> Word8 readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Word8 #) writeOffAddr# :: Addr# -> Int# -> Word8 -> State# s -> State# s setOffAddr# :: Addr# -> Int# -> Int# -> Word8 -> State# s -> State# s | |
Pretty Word8 | |
Hashable Word8 | |
Defined in Data.Hashable.Class | |
IsValue Word8 Source # | |
IsPrimValue Word8 Source # | |
FromJSON Word8 | |
Defined in Data.Aeson.Types.FromJSON | |
FromJSONKey Word8 | |
Defined in Data.Aeson.Types.FromJSON | |
ToJSON Word8 | |
Defined in Data.Aeson.Types.ToJSON Methods toEncoding :: Word8 -> Encoding toJSONList :: [Word8] -> Value toEncodingList :: [Word8] -> Encoding | |
ToJSONKey Word8 | |
Defined in Data.Aeson.Types.ToJSON | |
ByteSource Word8 | |
Defined in Data.UUID.Types.Internal.Builder | |
Random Word8 | |
Lift Word8 | |
IArray UArray Word8 | |
Defined in Data.Array.Base Methods bounds :: Ix i => UArray i Word8 -> (i, i) # numElements :: Ix i => UArray i Word8 -> Int unsafeArray :: Ix i => (i, i) -> [(Int, Word8)] -> UArray i Word8 unsafeAt :: Ix i => UArray i Word8 -> Int -> Word8 unsafeReplace :: Ix i => UArray i Word8 -> [(Int, Word8)] -> UArray i Word8 unsafeAccum :: Ix i => (Word8 -> e' -> Word8) -> UArray i Word8 -> [(Int, e')] -> UArray i Word8 unsafeAccumArray :: Ix i => (Word8 -> e' -> Word8) -> Word8 -> (i, i) -> [(Int, e')] -> UArray i Word8 | |
Vector Vector Word8 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) Word8 -> m (Vector Word8) basicUnsafeThaw :: PrimMonad m => Vector Word8 -> m (Mutable Vector (PrimState m) Word8) basicLength :: Vector Word8 -> Int basicUnsafeSlice :: Int -> Int -> Vector Word8 -> Vector Word8 basicUnsafeIndexM :: Monad m => Vector Word8 -> Int -> m Word8 basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) Word8 -> Vector Word8 -> m () | |
MVector MVector Word8 | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s Word8 -> Int basicUnsafeSlice :: Int -> Int -> MVector s Word8 -> MVector s Word8 basicOverlaps :: MVector s Word8 -> MVector s Word8 -> Bool basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Word8) basicInitialize :: PrimMonad m => MVector (PrimState m) Word8 -> m () basicUnsafeReplicate :: PrimMonad m => Int -> Word8 -> m (MVector (PrimState m) Word8) basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Word8 -> Int -> m Word8 basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Word8 -> Int -> Word8 -> m () basicClear :: PrimMonad m => MVector (PrimState m) Word8 -> m () basicSet :: PrimMonad m => MVector (PrimState m) Word8 -> Word8 -> m () basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Word8 -> MVector (PrimState m) Word8 -> m () basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Word8 -> MVector (PrimState m) Word8 -> m () basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Word8 -> Int -> m (MVector (PrimState m) Word8) | |
UTF8Bytes [Word8] Int | |
Defined in Codec.Binary.UTF8.Generic | |
MArray (STUArray s) Word8 (ST s) | |
Defined in Data.Array.Base Methods getBounds :: Ix i => STUArray s i Word8 -> ST s (i, i) # getNumElements :: Ix i => STUArray s i Word8 -> ST s Int newArray :: Ix i => (i, i) -> Word8 -> ST s (STUArray s i Word8) # newArray_ :: Ix i => (i, i) -> ST s (STUArray s i Word8) # unsafeNewArray_ :: Ix i => (i, i) -> ST s (STUArray s i Word8) unsafeRead :: Ix i => STUArray s i Word8 -> Int -> ST s Word8 unsafeWrite :: Ix i => STUArray s i Word8 -> Int -> Word8 -> ST s () | |
newtype Vector Word8 | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Word8 | |
Defined in Data.Vector.Unboxed.Base | |
type ByteSink Word8 g | |
Defined in Data.UUID.Types.Internal.Builder type ByteSink Word8 g = Takes1Byte g |
16-bit unsigned integer type
Instances
32-bit unsigned integer type
Instances
64-bit unsigned integer type