#string #reserved #string-conversion #case #formatting #keyword

convert_string

A trait to convert Strings to safe non-keywords and/or convert a Strings case (snake_case, PascalCase, ...)

5 releases

0.2.0 Aug 30, 2024
0.1.3 Nov 25, 2023
0.1.2 Aug 30, 2023
0.1.1 Aug 29, 2023
0.1.0 Aug 29, 2023

#630 in Text processing

Download history 11/week @ 2024-08-18 176/week @ 2024-08-25 43/week @ 2024-09-01 24/week @ 2024-09-08 26/week @ 2024-09-15 43/week @ 2024-09-22 22/week @ 2024-09-29 108/week @ 2024-10-06 208/week @ 2024-10-13 179/week @ 2024-10-20 169/week @ 2024-10-27 217/week @ 2024-11-03 287/week @ 2024-11-10 269/week @ 2024-11-17 333/week @ 2024-11-24 340/week @ 2024-12-01

1,234 downloads per month
Used in xml_schema_generator

Apache-2.0

13KB
144 lines

convert_string

github crates.io docs.rs build status

A trait for String-like types to check if a string is a reserved keyword, and convert it to a safe non-keyword if so. Offers some type conversions as well

Only strict and reserved keywords are checked against; weak keywords are not include

You can add this dependency with:

[dependencies]
convert_string = "0.2.0"

Example

use convert_string::ConvertString;;

assert_eq!("r_type", String::from("type").to_valid_key(&String::from("r")));
assert_eq!("foo", String::from("ns:foo").remove_namespace());
assert_eq!("YdTax", String::from("yd_tax").to_pascal_case());
assert_eq!("yd_tax", String::from("YdTax").to_snake_case());

Rust Editions

[dependencies]
convert_string = { version = "0.2.0" }

Future Rust editions may add new keywords, and this crate will be updated to reflect (Or you can create an issue on github if I don't.)

Credit

Huge parts of this library are taken from https://github.com/JoelCourtney/check_keyword

Source

License: Apache-2.0

https://github.com/Thomblin/convert_string

No runtime deps