jetscii

Crates.iojetscii
lib.rsjetscii
version0.5.3
sourcesrc
created_at2015-05-08 00:55:28.861601
updated_at2022-07-07 01:47:46.975416
descriptionA tiny library to efficiently search strings and byte slices for sets of ASCII characters or bytes.
homepage
repositoryhttps://github.com/shepmaster/jetscii
max_upload_size
id2050
size73,296
Jake Goulding (shepmaster)

documentation

https://docs.rs/jetscii/

README

Jetscii

A tiny library to efficiently search strings for sets of ASCII characters or byte slices for sets of bytes.

Current Version Documentation

Examples

Searching for a set of ASCII characters

#[macro_use]
extern crate jetscii;

fn main() {
    let part_number = "86-J52:rev1";
    let first = ascii_chars!('-', ':').find(part_number);
    assert_eq!(first, Some(2));
}

Searching for a set of bytes

#[macro_use]
extern crate jetscii;

fn main() {
    let raw_data = [0x00, 0x01, 0x10, 0xFF, 0x42];
    let first = bytes!(0x01, 0x10).find(&raw_data);
    assert_eq!(first, Some(1));
}

Check out the documentation for information about feature flags and benchmarks.

Contributing

  1. Fork it (https://github.com/shepmaster/jetscii/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Add a failing test.
  4. Add code to pass the test.
  5. Commit your changes (git commit -am 'Add some feature')
  6. Ensure tests pass.
  7. Push to the branch (git push origin my-new-feature)
  8. Create a new Pull Request
Commit count: 154

cargo fmt