bytestring: Fast, compact, strict and lazy byte strings with a list interface
An efficient compact, immutable byte string type (both strict and lazy) suitable for binary or 8-bit character data.
The ByteString
type represents sequences of bytes or 8-bit characters.
It is suitable for high performance use, both in terms of large data
quantities, or high speed requirements. The ByteString
functions follow
the same style as Haskell's ordinary lists, so it is easy to convert code
from using String
to ByteString
.
Two ByteString
variants are provided:
Strict
ByteString
s keep the string as a single large array. This makes them convenient for passing data between C and Haskell.Lazy
ByteString
s use a lazy list of strict chunks which makes it suitable for I/O streaming tasks.
The Char8
modules provide a character-based view of the same
underlying ByteString
types. This makes it convenient to handle mixed
binary and 8-bit character content (which is common in many file formats
and network protocols).
The Builder
module provides an efficient way to build up ByteString
s
in an ad-hoc way by repeated concatenation. This is ideal for fast
serialisation or pretty printing.
There is also a ShortByteString
type which has a lower memory overhead
and can can be converted to or from a ByteString
, but supports very few
other operations. It is suitable for keeping many short strings in memory.
ByteString
s are not designed for Unicode. For Unicode strings you should
use the Text
type from the text
package.
These modules are intended to be imported qualified, to avoid name clashes with Prelude functions, e.g.
import qualified Data.ByteString as BS
[Skip to Readme]
Modules
[Index]
- Data
- Data.ByteString
- Data.ByteString.Builder
- Data.ByteString.Builder.Extra
- Data.ByteString.Builder.Internal
- Data.ByteString.Builder.Prim
- Data.ByteString.Builder.Prim.Internal
- Data.ByteString.Char8
- Data.ByteString.Internal
- Data.ByteString.Lazy
- Data.ByteString.Short
- Data.ByteString.Short.Internal
- Data.ByteString.Unsafe
- Data.ByteString.Builder
- Data.ByteString
Flags
Automatic Flags
Name | Description | Default |
---|---|---|
integer-simple | Use the simple integer library instead of GMP | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- bytestring-0.10.6.0.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.
Maintainer's Corner
- BenGamari, DonaldStewart, DuncanCoutts, HerbertValerioRiedel, IanLynagh, SylvainHenry, Bodigrim, sjakobi, chessai, clyring
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.9, 0.9.0.1, 0.9.0.2, 0.9.0.3, 0.9.0.4, 0.9.1.0, 0.9.1.1, 0.9.1.2, 0.9.1.3, 0.9.1.4, 0.9.1.5, 0.9.1.6, 0.9.1.7, 0.9.1.8, 0.9.1.9, 0.9.1.10, 0.9.2.0, 0.9.2.1, 0.10.0.0, 0.10.0.1, 0.10.0.2, 0.10.2.0, 0.10.4.0, 0.10.4.1, 0.10.6.0, 0.10.8.0, 0.10.8.1, 0.10.8.2, 0.10.9.0, 0.10.10.0, 0.10.10.1, 0.10.12.0, 0.10.12.1, 0.11.0.0, 0.11.1.0, 0.11.2.0, 0.11.3.0, 0.11.3.1, 0.11.4.0, 0.11.5.0, 0.11.5.1, 0.11.5.2, 0.11.5.3, 0.12.0.0, 0.12.0.1, 0.12.0.2, 0.12.1.0, 0.12.2.0 |
---|---|
Change log | Changelog.md |
Dependencies | base (>=4.2 && <4.11), deepseq, ghc-prim, integer (>=0.1 && <0.2), integer-gmp (>=0.2) [details] |
Tested with | ghc ==7.10.1, ghc ==7.8.4, ghc ==7.6.3, ghc ==7.4.2, ghc ==6.12.3 |
License | BSD-3-Clause |
Copyright | Copyright (c) Don Stewart 2005-2009, (c) Duncan Coutts 2006-2015, (c) David Roundy 2003-2005, (c) Jasper Van der Jeugt 2010, (c) Simon Meier 2010-2013. |
Author | Don Stewart, Duncan Coutts |
Maintainer | Duncan Coutts <duncan@community.haskell.org> |
Revised | Revision 1 made by phadej at 2018-03-19T19:35:18Z |
Category | Data |
Home page | https://github.com/haskell/bytestring |
Bug tracker | https://github.com/haskell/bytestring/issues |
Source repo | head: git clone https://github.com/haskell/bytestring |
Uploaded | by DuncanCoutts at 2015-03-23T11:08:06Z |
Distributions | Arch:0.11.4.0, Fedora:0.11.4.0 |
Reverse Dependencies | 6096 direct, 8820 indirect [details] |
Downloads | 118341 total (629 in the last 30 days) |
Rating | 2.75 (votes: 20) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2015-03-23 [all 1 reports] |