memx

Crates.iomemx
lib.rsmemx
version0.1.32
sourcesrc
created_at2021-05-12 08:26:33.699518
updated_at2024-06-19 01:00:37.029937
descriptionmemory functions like libc memcmp(), memchr(), memmem(), memcpy(), memset()
homepage
repositoryhttps://github.com/aki-akaguma/memx
max_upload_size
id396446
size1,107,203
(aki-akaguma)

documentation

README

memx

crate Docs Rust Version Apache2/MIT licensed Test ubu Test mac Test win

memx minics libc.

This crate is implemented memory functions like libc memcmp(), memchr(), memmem(), memcpy(), memset().

Features

  • Rewriting with rust lang.
  • minimum support rustc 1.56.1 (59eed8a2a 2021-11-01)

Todo

  • Support the zero overhead trait.
  • Support more fast routine on armv7-android
  • Support more fast routine on x86_64
  • Support #![no_std]

Support status of miri :: rustc 1.68.0-nightly (77429957a 2023-01-01)

Ok lists:

  • cargo +nightly miri test --target=x86_64-unknown-linux-gnu
  • cargo +nightly miri test --target=i686-unknown-linux-gnu
  • cargo +nightly miri test --target=i586-unknown-linux-gnu
  • cargo +nightly miri test --target=aarch64-unknown-linux-gnu
  • cargo +nightly miri test --target=armv7-unknown-linux-gnueabihf

Failed lists:

  • nothing

Benchmark results

forward search backward search
memchr() memrchr()
memnechr() memrnechr()
memmem() memrmem()
memchr_dbl() memrchr_dbl()
memchr_tpl() memrchr_tpl()
memchr_qpl() memrchr_qpl()
memnechr_dbl() memrnechr_dbl()
memnechr_tpl() memrnechr_tpl()
memnechr_qpl() memrnechr_qpl()
memory op
memcmp()
memeq()
memcpy()
memset()

Changelogs

This crate's changelog here.

License

This project is licensed under either of

at your option.

Commit count: 214

cargo fmt