#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

#571 in Text processing

Download history 41/week @ 2024-07-24 14/week @ 2024-07-31 7/week @ 2024-08-07 12/week @ 2024-08-14 10/week @ 2024-08-21 202/week @ 2024-08-28 20/week @ 2024-09-04 25/week @ 2024-09-11 34/week @ 2024-09-18 37/week @ 2024-09-25 32/week @ 2024-10-02 178/week @ 2024-10-09 234/week @ 2024-10-16 162/week @ 2024-10-23 195/week @ 2024-10-30 125/week @ 2024-11-06

759 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