diff options
author | Sam T <sta.cs.vsu@gmail.com> | 2013-04-01 15:17:28 +0400 |
---|---|---|
committer | Sam T <sta.cs.vsu@gmail.com> | 2013-04-01 15:17:28 +0400 |
commit | f0a9f8dcb96bc0f012d291fc43a23c2704b79f1a (patch) | |
tree | c42a0fad628b2e9a7a5ec7d71e98e148a9a6933e /src | |
parent | 6d7e026b0934b220a60f6515bf07120a3ff7d93d (diff) |
+ instance for text
Diffstat (limited to 'src')
-rw-r--r-- | src/Data/BEncode.hs | 11 |
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 | |||
42 | import Data.ByteString.Internal as B (c2w, w2c) | 42 | import Data.ByteString.Internal as B (c2w, w2c) |
43 | import qualified Data.ByteString.Builder as B | 43 | import qualified Data.ByteString.Builder as B |
44 | import qualified Data.ByteString.Builder.Prim as BP () | 44 | import qualified Data.ByteString.Builder.Prim as BP () |
45 | import Data.Text (Text) | ||
46 | import qualified Data.Text.Encoding as T | ||
45 | import Text.PrettyPrint.ANSI.Leijen (Pretty, Doc, pretty, (<+>), (</>)) | 47 | import Text.PrettyPrint.ANSI.Leijen (Pretty, Doc, pretty, (<+>), (</>)) |
46 | import qualified Text.PrettyPrint.ANSI.Leijen as PP | 48 | import 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 | |||
123 | instance 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 | {- |
121 | instance BEncodable String where | 132 | instance BEncodable String where |
122 | toBEncode = BString . BC.pack | 133 | toBEncode = BString . BC.pack |