Add an even higher-level API for people operating with full-octet streams #5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There are many circumstances where all parties involved know that the unencoded form will itself be an integer number of octets (that is, that the length of the output bitstream should be a multiple of 8). The current high level API is a bit clumsy for those use cases.
This series adds an even higher-level API that is simple to use in those scenarios. It is a bit asymmetrical, in that the encoding has no error state (all bytestreams are valid input), while decoding does, since there are characters that should never be in z-base-32 (so some charstreams are invalid input).
This should close #1.
Note that it is an expanded API, but it is all entirely backward compatible with previous API. So it probably warrants a minor version bump.