macro_rules! convert_case {
    (lower, $s: literal) => { ... };
    (upper, $s: literal) => { ... };
    (lower_camel, $s: literal) => { ... };
    (upper_camel, $s: literal) => { ... };
    (snake, $s: literal) => { ... };
    (kebab, $s: literal) => { ... };
    (shouty_snake, $s: literal) => { ... };
    (shouty_kebab, $s: literal) => { ... };
}
Available on crate features proc or case only.
Expand description

Converts a string literal to a specified case.

These variants require the feature case.

  • lower_camel
  • upper_camel
  • kebab
  • snake
  • shouty_snake
  • shouty_kebab

§Examples

use const_str::convert_case;

const S1: &str = convert_case!(lower, "Lower Case");
const S2: &str = convert_case!(upper, "Upper Case");
const S3: &str = convert_case!(lower_camel, "lower camel case");
const S4: &str = convert_case!(upper_camel, "upper camel case");
const S5: &str = convert_case!(snake, "snake case");
const S6: &str = convert_case!(kebab, "kebab case");
const S7: &str = convert_case!(shouty_snake, "shouty snake case");
const S8: &str = convert_case!(shouty_kebab, "shouty kebab case");

assert_eq!(S1, "lower case");
assert_eq!(S2, "UPPER CASE");
assert_eq!(S3, "lowerCamelCase");
assert_eq!(S4, "UpperCamelCase");
assert_eq!(S5, "snake_case");
assert_eq!(S6, "kebab-case");
assert_eq!(S7, "SHOUTY_SNAKE_CASE");
assert_eq!(S8, "SHOUTY-KEBAB-CASE");