module Tahoe.Netstring (
netstring,
) where
import qualified Data.ByteString as B
import qualified Data.ByteString.Char8 as C8
netstring :: B.ByteString -> B.ByteString
netstring :: ByteString -> ByteString
netstring ByteString
xs =
[ByteString] -> ByteString
B.concat
[ String -> ByteString
C8.pack (String -> ByteString)
-> (ByteString -> String) -> ByteString -> ByteString
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> String
forall a. Show a => a -> String
show (Int -> String) -> (ByteString -> Int) -> ByteString -> String
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ByteString -> Int
B.length (ByteString -> ByteString) -> ByteString -> ByteString
forall a b. (a -> b) -> a -> b
$ ByteString
xs
, ByteString
":"
, ByteString
xs
, ByteString
","
]