pub trait ToLowerSnake {
// Required methods
fn to_lower_snake_canonical(&self) -> String;
fn to_lower_snake_decorated(&self) -> String;
}Expand description
Converts an identifier into a preset lower-snake identifier string.
See the convert module for more details.
§Examples
assert_eq!(
LowerCamelIdent::new("lowerCamel")?.to_lower_snake_canonical(),
"lower_camel"
);
assert_eq!(
LowerHybridIdent::new("lowerHybrid")?.to_lower_snake_canonical(),
"lower_hybrid"
);
assert_eq!(
LowerKebabIdent::new("lower-kebab")?.to_lower_snake_canonical(),
"lower_kebab"
);
assert_eq!(
LowerSnakeIdent::new("lower_snake")?.to_lower_snake_canonical(),
"lower_snake"
);
assert_eq!(
UpperCamelIdent::new("UpperCamel")?.to_lower_snake_canonical(),
"upper_camel"
);
assert_eq!(
UpperHybridIdent::new("UpperHybrid")?.to_lower_snake_canonical(),
"upper_hybrid"
);
assert_eq!(
UpperKebabIdent::new("UPPER-KEBAB")?.to_lower_snake_canonical(),
"upper_kebab"
);
assert_eq!(
UpperSnakeIdent::new("UPPER_SNAKE")?.to_lower_snake_canonical(),
"upper_snake"
);Required Methods§
Sourcefn to_lower_snake_canonical(&self) -> String
fn to_lower_snake_canonical(&self) -> String
Returns a displayable type that converts the provided input to lower snake in canonical form.
See the fmt module documentation for details on different forms.
§Examples
Basic Usage:
assert_eq!(
LowerCamelIdent::new("__lower__camel_case__")?
.to_lower_snake_canonical(),
"lower_camel_case"
);
assert_eq!(
LowerHybridIdent::new("_-lower-_hybrid-case-_")?
.to_lower_snake_canonical(),
"lower_hybrid_case"
);
assert_eq!(
LowerKebabIdent::new("--lower--kebab-case--")?
.to_lower_snake_canonical(),
"lower_kebab_case"
);
assert_eq!(
LowerSnakeIdent::new("__lower__snake_case__")?
.to_lower_snake_canonical(),
"lower_snake_case"
);
assert_eq!(
UpperCamelIdent::new("__Upper__Camel_Case__")?
.to_lower_snake_canonical(),
"upper_camel_case"
);
assert_eq!(
UpperHybridIdent::new("-_Upper_-Hybrid_Case_-")?
.to_lower_snake_canonical(),
"upper_hybrid_case"
);
assert_eq!(
UpperKebabIdent::new("--UPPER--KEBAB-CASE--")?
.to_lower_snake_canonical(),
"upper_kebab_case"
);
assert_eq!(
UpperSnakeIdent::new("__UPPER__SNAKE_CASE__")?
.to_lower_snake_canonical(),
"upper_snake_case"
);Notice that it will attempt to keep necessary prefix delimiters.
assert_eq!(
UpperCamelIdent::new("_____")?
.to_lower_snake_canonical(),
"_"
);
assert_eq!(
UpperCamelIdent::new("__2__Example__Camel__")?
.to_lower_snake_canonical(),
"_2_example_camel"
);Sourcefn to_lower_snake_decorated(&self) -> String
fn to_lower_snake_decorated(&self) -> String
Returns a displayable type that converts the provided input to lower snake in decorated form.
See the fmt module documentation for details on different forms.
§Examples
Basic Usage:
assert_eq!(
LowerCamelIdent::new("__lower__camel_case__")?
.to_lower_snake_decorated(),
"__lower__camel_case__"
);
assert_eq!(
LowerHybridIdent::new("_-lower-_hybrid-case-_")?
.to_lower_snake_decorated(),
"__lower__hybrid_case__"
);
assert_eq!(
LowerKebabIdent::new("--lower--kebab-case--")?
.to_lower_snake_decorated(),
"__lower__kebab_case__"
);
assert_eq!(
LowerSnakeIdent::new("__lower__snake_case__")?
.to_lower_snake_decorated(),
"__lower__snake_case__"
);
assert_eq!(
UpperCamelIdent::new("__Upper__Camel_Case__")?
.to_lower_snake_decorated(),
"__upper__camel_case__"
);
assert_eq!(
UpperHybridIdent::new("-_Upper_-Hybrid_Case_-")?
.to_lower_snake_decorated(),
"__upper__hybrid_case__"
);
assert_eq!(
UpperKebabIdent::new("--UPPER--KEBAB-CASE--")?
.to_lower_snake_decorated(),
"__upper__kebab_case__"
);
assert_eq!(
UpperSnakeIdent::new("__UPPER__SNAKE_CASE__")?
.to_lower_snake_decorated(),
"__upper__snake_case__"
);Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".