emk/rust-streaming

EXPERIMENTAL: Various hacks for zero-allocation stream parsing in Rust.

Rust

59

14 commits

updated Dec 15, 2014

See the code

README

EXPERIMENTAL: Zero-Allocation Streaming Parsers in Rust

Here there be hacks. No APIs are stable. Code may not do what the comments claim.

Key goal:

  • Build a StreamingIterator type that can return references to internal state, including as I/O buffers and the output buffers of libraries like flate2. This prevents implementing collect, but why can't we have map, filter and fold?

Target applications:

  • rust-csv.
  • Multicore map/reduce of Snappy-compressed records.
  • Anybody else who needs to iterate over a data stream without allocating.

Random useful things to read:

We beg for help::

Contributors

emk

13 commits

BurntSushi

1 commits

emk/rust-streaming

EXPERIMENTAL: Various hacks for zero-allocation stream parsing in Rust.

Rust

59

14 commits

updated Dec 15, 2014

See the code

README

EXPERIMENTAL: Zero-Allocation Streaming Parsers in Rust

Here there be hacks. No APIs are stable. Code may not do what the comments claim.

Key goal:

  • Build a StreamingIterator type that can return references to internal state, including as I/O buffers and the output buffers of libraries like flate2. This prevents implementing collect, but why can't we have map, filter and fold?

Target applications:

  • rust-csv.
  • Multicore map/reduce of Snappy-compressed records.
  • Anybody else who needs to iterate over a data stream without allocating.

Random useful things to read:

We beg for help::

Contributors

emk

13 commits

BurntSushi

1 commits

Languages

Rust

100.0%