Data.BEncode

bencode-0.6.0.0: Parser and printer for bencoded data.

Copyright | (c) 2005 Jesper Louis Andersen <jlouis@mongers.org> 2006 Lemmih <lemmih@gmail.com>
License | BSD3
Maintainer | lemmih@gmail.com
Stability | believed to be stable
Portability | portable
Safe Haskell | Safe
Language | Haskell2010

Data.BEncode

Contents

- Data types
- Functions

Description

Provides a BEncode data type is well as functions for converting this data type to and from a String.

Also supplies a number of properties which the module must satisfy.

Synopsis

- data BEncode
  - = BInt Integer
  - | BString ByteString
  - | BList [BEncode]
  - | BDict (Map String BEncode)
- bRead :: ByteString -> Maybe BEncode
- bShow :: BEncode -> ShowS
- bPack :: BEncode -> ByteString

# Data types

data BEncode

The B-coding defines an abstract syntax tree given as a simple data type here

Constructors

BInt Integer |
BString ByteString |
BList [BEncode] |
BDict (Map String BEncode) |

Instances

Eq BEncode |
Ord BEncode |
Show BEncode |
Binary BEncode |

# Functions

bRead :: ByteString -> Maybe BEncode

bRead is a conversion routine. It assumes a B-coded string as input and attempts a parse of it into a BEncode data type

bShow :: BEncode -> ShowS

Render a BEncode structure to a B-coded string

bPack :: BEncode -> ByteString