blob: 1f98a3a826644ac76a594c812dd631cfcf1c635f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
module Test where
import Data.Word
import Data.Int
import Data.Bits
w8 :: Word8 -> Word8
w8 x = x .&. 0xFF
w16 :: Word16 -> Word16
w16 x = x .&. 0xFFFF
w32 :: Word32 -> Word32
w32 x = x .&. 0xFFFFFFFF
w64 :: Word64 -> Word64
w64 x = x .&. 0xFFFFFFFFFFFFFFFF
w :: Word -> Word
w x = x .&. maxBound
i8 :: Int8 -> Int8
i8 x = x .&. (-1)
i16 :: Int16 -> Int16
i16 x = x .&. (-1)
i32 :: Int32 -> Int32
i32 x = x .&. (-1)
i64 :: Int64 -> Int64
i64 x = x .&. (-1)
i :: Int -> Int
i x = x .&. (-1)
|