fashex - fast hexadecimal string formatting
Features
- Precise public APIs (
encodeordecode). - Best-effort SIMD acceleration.
- APIs that works in const contexts.
- Unlike crates
const-hex,faster-hex, etc., this crate does not require initialization of the output buffer.
Roadmap to 1.0
Theoretically, the current version of this crate is already stable and ready for production use: the core APIs are unlikely to change, and all tests are passing. However, there're still some questions:
-
Does it worth a feature flag disabling SIMD acceleration? If so, should it be enabled by default?
Currently, we don't have such feature flag and SIMD acceleration is enabled by default.
-
Does it worth a feature flag enabling runtime CPU features detection? If so, should it be enabled by default?
Currently, we don't have such feature flag and runtime CPU features detection is enabled by default.
Disclaimer
Although all tests are passing and hours of fuzz tests show no failures, there may still be bugs lurking in the code. If you find any bugs, please report them.
Acknowledgements
This crate is highly inspired by the following repositories:
const-hex, SPDX-License-Identifier: MIT OR Apache-2.0faster-hex, SPDX-License-Identifier: MIT OR Apache-2.0hex-simd, SPDX-License-Identifier: MIT