summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSam T <sta.cs.vsu@gmail.com>2013-04-01 15:17:28 +0400
committerSam T <sta.cs.vsu@gmail.com>2013-04-01 15:17:28 +0400
commitf0a9f8dcb96bc0f012d291fc43a23c2704b79f1a (patch)
treec42a0fad628b2e9a7a5ec7d71e98e148a9a6933e /src
parent6d7e026b0934b220a60f6515bf07120a3ff7d93d (diff)
+ instance for text
Diffstat (limited to 'src')
-rw-r--r--src/Data/BEncode.hs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/Data/BEncode.hs b/src/Data/BEncode.hs
index 7539ede..357f63f 100644
--- a/src/Data/BEncode.hs
+++ b/src/Data/BEncode.hs
@@ -42,6 +42,8 @@ import qualified Data.ByteString.Lazy as Lazy
42import Data.ByteString.Internal as B (c2w, w2c) 42import Data.ByteString.Internal as B (c2w, w2c)
43import qualified Data.ByteString.Builder as B 43import qualified Data.ByteString.Builder as B
44import qualified Data.ByteString.Builder.Prim as BP () 44import qualified Data.ByteString.Builder.Prim as BP ()
45import Data.Text (Text)
46import qualified Data.Text.Encoding as T
45import Text.PrettyPrint.ANSI.Leijen (Pretty, Doc, pretty, (<+>), (</>)) 47import Text.PrettyPrint.ANSI.Leijen (Pretty, Doc, pretty, (<+>), (</>))
46import qualified Text.PrettyPrint.ANSI.Leijen as PP 48import qualified Text.PrettyPrint.ANSI.Leijen as PP
47 49
@@ -117,6 +119,15 @@ instance BEncodable ByteString where
117 fromBEncode _ = decodingError "string" 119 fromBEncode _ = decodingError "string"
118 {-# INLINE fromBEncode #-} 120 {-# INLINE fromBEncode #-}
119 121
122
123instance BEncodable Text where
124 toBEncode = toBEncode . T.encodeUtf8
125 {-# INLINE toBEncode #-}
126
127 fromBEncode b = T.decodeUtf8 <$> fromBEncode b
128 {-# INLINE fromBEncode #-}
129
130
120{- 131{-
121instance BEncodable String where 132instance BEncodable String where
122 toBEncode = BString . BC.pack 133 toBEncode = BString . BC.pack