diff options
author | Sam Truzjan <pxqr.sta@gmail.com> | 2013-09-28 04:45:36 +0400 |
---|---|---|
committer | Sam Truzjan <pxqr.sta@gmail.com> | 2013-09-28 04:45:36 +0400 |
commit | 9a6cc9574acaf2be87b30dc660fc3fe3f5ca6168 (patch) | |
tree | f3b1f16d3b0a31dd5d45f6d57b34ef290429dca1 | |
parent | 2ca295606c9d9996e2280e96f5eb3e8494b67955 (diff) |
Remove overlapping instances
-rw-r--r-- | src/Data/BEncode.hs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/Data/BEncode.hs b/src/Data/BEncode.hs index c869d93..e932254 100644 --- a/src/Data/BEncode.hs +++ b/src/Data/BEncode.hs | |||
@@ -366,6 +366,8 @@ instance BEncodable BString where | |||
366 | fromBEncode _ = decodingError "BString" | 366 | fromBEncode _ = decodingError "BString" |
367 | {-# INLINE fromBEncode #-} | 367 | {-# INLINE fromBEncode #-} |
368 | 368 | ||
369 | {- NOTE: those overlap with instance BEncodable a => BEncodable [a] | ||
370 | |||
369 | instance BEncodable BList where | 371 | instance BEncodable BList where |
370 | toBEncode = BList | 372 | toBEncode = BList |
371 | {-# INLINE toBEncode #-} | 373 | {-# INLINE toBEncode #-} |
@@ -381,6 +383,7 @@ instance BEncodable BDict where | |||
381 | fromBEncode (BDict d) = pure d | 383 | fromBEncode (BDict d) = pure d |
382 | fromBEncode _ = decodingError "BDict" | 384 | fromBEncode _ = decodingError "BDict" |
383 | {-# INLINE fromBEncode #-} | 385 | {-# INLINE fromBEncode #-} |
386 | -} | ||
384 | 387 | ||
385 | {-------------------------------------------------------------------- | 388 | {-------------------------------------------------------------------- |
386 | -- Integral instances | 389 | -- Integral instances |
@@ -495,7 +498,7 @@ instance BEncodable Text where | |||
495 | {-# INLINE fromBEncode #-} | 498 | {-# INLINE fromBEncode #-} |
496 | 499 | ||
497 | instance BEncodable a => BEncodable [a] where | 500 | instance BEncodable a => BEncodable [a] where |
498 | {-# SPECIALIZE instance BEncodable [BEncode] #-} | 501 | {-# SPECIALIZE instance BEncodable BList #-} |
499 | toBEncode = BList . map toBEncode | 502 | toBEncode = BList . map toBEncode |
500 | {-# INLINE toBEncode #-} | 503 | {-# INLINE toBEncode #-} |
501 | 504 | ||
@@ -504,7 +507,7 @@ instance BEncodable a => BEncodable [a] where | |||
504 | {-# INLINE fromBEncode #-} | 507 | {-# INLINE fromBEncode #-} |
505 | 508 | ||
506 | instance BEncodable a => BEncodable (Map ByteString a) where | 509 | instance BEncodable a => BEncodable (Map ByteString a) where |
507 | {-# SPECIALIZE instance BEncodable (Map ByteString BEncode) #-} | 510 | {-# SPECIALIZE instance BEncodable BDict #-} |
508 | toBEncode = BDict . M.map toBEncode | 511 | toBEncode = BDict . M.map toBEncode |
509 | {-# INLINE toBEncode #-} | 512 | {-# INLINE toBEncode #-} |
510 | 513 | ||