Go to file
Chris Vest 68795fb1a5 Introduce ByteIterator, and Buf.iterate
Motivation:
We need a simple API to efficiently iterate a buffer.
We've used the ByteProcessor so far, and while its internal iteration API is simple, it looses some efficiency by forcing code to only consider one byte at a time.

Modification:
The ByteIterator fills the same niche as the ByteProcessor, but uses external iteration instead of internal iteration.
This allows integrators to control the pace of iteration, and it makes it possible to expose methods for consuming bytes in bulk; one long of 8 bytes at a time.
This makes it possible to use the iterator in SIMD-Within-A-Register, or SWAR, data processing algorithms.

Result:
We have a ByteIterator for efficiently processing data within a buffer.
2020-11-17 15:26:57 +01:00
buffer/src Introduce ByteIterator, and Buf.iterate 2020-11-17 15:26:57 +01:00
common/src/main/java/io/netty/util Introduce ByteIterator, and Buf.iterate 2020-11-17 15:26:57 +01:00
microbench/src/main/java/io/netty/buffer Introduce ByteIterator, and Buf.iterate 2020-11-17 15:26:57 +01:00
.gitignore Prepare incubator repo for new buffer API 2020-11-17 14:56:28 +01:00
pom.xml Pom updates 2020-11-17 15:26:57 +01:00
README.md Prepare incubator repo for new buffer API 2020-11-17 14:56:28 +01:00

Netty Incubator Buffer API

This repository is incubating a new buffer API proposed for Netty 5.