str_utils/
lib.rs

1/*!
2# str Utils
3
4This crate provides some traits to extend types which implement `AsRef<[u8]>` or `AsRef<str>`.
5
6## Examples
7
8```rust
9use str_utils::*;
10
11assert_eq!(true, "foobar".starts_with_ignore_ascii_case("FoO"));
12assert_eq!(Some(1), "photo.jpg".ends_with_ignore_ascii_case_multiple(&[".png", ".jpg", ".gif"]));
13assert_eq!(true, "http".eq_ignore_ascii_case_with_uppercase("HTTP")); // faster than `eq_ignore_ascii_case`
14```
15*/
16
17#![no_std]
18
19// TODO eq_ignore_case_multiple
20// TODO starts_with_ignore_case_multiple
21// TODO ends_with_ignore_case_multiple
22
23mod ends_with_ignore_ascii_case;
24mod ends_with_ignore_ascii_case_multiple;
25mod ends_with_ignore_case;
26mod ends_with_multiple;
27mod eq_ignore_ascii_case;
28mod eq_ignore_ascii_case_multiple;
29mod eq_ignore_case;
30mod eq_multiple;
31mod starts_with_ignore_ascii_case;
32mod starts_with_ignore_ascii_case_multiple;
33mod starts_with_ignore_case;
34mod starts_with_multiple;
35
36pub use ends_with_ignore_ascii_case::*;
37pub use ends_with_ignore_ascii_case_multiple::*;
38pub use ends_with_ignore_case::*;
39pub use ends_with_multiple::*;
40pub use eq_ignore_ascii_case::*;
41pub use eq_ignore_ascii_case_multiple::*;
42pub use eq_ignore_case::*;
43pub use eq_multiple::*;
44pub use starts_with_ignore_ascii_case::*;
45pub use starts_with_ignore_ascii_case_multiple::*;
46pub use starts_with_ignore_case::*;
47pub use starts_with_multiple::*;