diff options
author | Sam Truzjan <pxqr.sta@gmail.com> | 2013-09-28 02:43:14 +0400 |
---|---|---|
committer | Sam Truzjan <pxqr.sta@gmail.com> | 2013-09-28 02:43:14 +0400 |
commit | 8999f7f1f4244a7a11d5912dc0bfbbe0199bad67 (patch) | |
tree | 297f919dacc2def59a38f84ff20683911b791e82 | |
parent | 0c782699ae1be88eb7da50a4605b888ab86b890e (diff) |
Minor refactoring
-rw-r--r-- | src/Data/BEncode.hs | 68 |
1 files changed, 34 insertions, 34 deletions
diff --git a/src/Data/BEncode.hs b/src/Data/BEncode.hs index eda5404..bf841f5 100644 --- a/src/Data/BEncode.hs +++ b/src/Data/BEncode.hs | |||
@@ -381,6 +381,40 @@ instance BEncodable BDict where | |||
381 | {-# INLINE fromBEncode #-} | 381 | {-# INLINE fromBEncode #-} |
382 | 382 | ||
383 | {-------------------------------------------------------------------- | 383 | {-------------------------------------------------------------------- |
384 | -- Integeral instances | ||
385 | --------------------------------------------------------------------} | ||
386 | |||
387 | instance BEncodable Word8 where | ||
388 | toBEncode = toBEncode . (fromIntegral :: Word8 -> Word64) | ||
389 | {-# INLINE toBEncode #-} | ||
390 | fromBEncode b = (fromIntegral :: Word64 -> Word8) <$> fromBEncode b | ||
391 | {-# INLINE fromBEncode #-} | ||
392 | |||
393 | instance BEncodable Word16 where | ||
394 | toBEncode = toBEncode . (fromIntegral :: Word16 -> Word64) | ||
395 | {-# INLINE toBEncode #-} | ||
396 | fromBEncode b = (fromIntegral :: Word64 -> Word16) <$> fromBEncode b | ||
397 | {-# INLINE fromBEncode #-} | ||
398 | |||
399 | instance BEncodable Word32 where | ||
400 | toBEncode = toBEncode . (fromIntegral :: Word32 -> Word64) | ||
401 | {-# INLINE toBEncode #-} | ||
402 | fromBEncode b = (fromIntegral :: Word64 -> Word32) <$> fromBEncode b | ||
403 | {-# INLINE fromBEncode #-} | ||
404 | |||
405 | instance BEncodable Word64 where | ||
406 | toBEncode = toBEncode . (fromIntegral :: Word64 -> Int) | ||
407 | {-# INLINE toBEncode #-} | ||
408 | fromBEncode b = (fromIntegral :: Int -> Word64) <$> fromBEncode b | ||
409 | {-# INLINE fromBEncode #-} | ||
410 | |||
411 | instance BEncodable Word where | ||
412 | toBEncode = toBEncode . (fromIntegral :: Word -> Int) | ||
413 | {-# INLINE toBEncode #-} | ||
414 | fromBEncode b = (fromIntegral :: Int -> Word) <$> fromBEncode b | ||
415 | {-# INLINE fromBEncode #-} | ||
416 | |||
417 | {-------------------------------------------------------------------- | ||
384 | -- Derived instances | 418 | -- Derived instances |
385 | --------------------------------------------------------------------} | 419 | --------------------------------------------------------------------} |
386 | 420 | ||
@@ -744,37 +778,3 @@ ppBEncode (BDict d) | |||
744 | = braces $ vcat $ punctuate comma $ map ppKV $ M.toAscList d | 778 | = braces $ vcat $ punctuate comma $ map ppKV $ M.toAscList d |
745 | where | 779 | where |
746 | ppKV (k, v) = ppBS k <+> colon <+> ppBEncode v | 780 | ppKV (k, v) = ppBS k <+> colon <+> ppBEncode v |
747 | |||
748 | {-------------------------------------------------------------------- | ||
749 | Other instances | ||
750 | --------------------------------------------------------------------} | ||
751 | |||
752 | instance BEncodable Word8 where | ||
753 | toBEncode = toBEncode . (fromIntegral :: Word8 -> Word64) | ||
754 | {-# INLINE toBEncode #-} | ||
755 | fromBEncode b = (fromIntegral :: Word64 -> Word8) <$> fromBEncode b | ||
756 | {-# INLINE fromBEncode #-} | ||
757 | |||
758 | instance BEncodable Word16 where | ||
759 | toBEncode = toBEncode . (fromIntegral :: Word16 -> Word64) | ||
760 | {-# INLINE toBEncode #-} | ||
761 | fromBEncode b = (fromIntegral :: Word64 -> Word16) <$> fromBEncode b | ||
762 | {-# INLINE fromBEncode #-} | ||
763 | |||
764 | instance BEncodable Word32 where | ||
765 | toBEncode = toBEncode . (fromIntegral :: Word32 -> Word64) | ||
766 | {-# INLINE toBEncode #-} | ||
767 | fromBEncode b = (fromIntegral :: Word64 -> Word32) <$> fromBEncode b | ||
768 | {-# INLINE fromBEncode #-} | ||
769 | |||
770 | instance BEncodable Word64 where | ||
771 | toBEncode = toBEncode . (fromIntegral :: Word64 -> Int) | ||
772 | {-# INLINE toBEncode #-} | ||
773 | fromBEncode b = (fromIntegral :: Int -> Word64) <$> fromBEncode b | ||
774 | {-# INLINE fromBEncode #-} | ||
775 | |||
776 | instance BEncodable Word where | ||
777 | toBEncode = toBEncode . (fromIntegral :: Word -> Int) | ||
778 | {-# INLINE toBEncode #-} | ||
779 | fromBEncode b = (fromIntegral :: Int -> Word) <$> fromBEncode b | ||
780 | {-# INLINE fromBEncode #-} | ||