Add error type to use for RenameRule parsing

This commit is contained in:
David Tolnay
2021-01-23 14:09:58 -08:00
parent ed04824f10
commit 7db0982e58
2 changed files with 12 additions and 8 deletions
+6 -2
View File
@@ -34,7 +34,7 @@ pub enum RenameRule {
}
impl RenameRule {
pub fn from_str(rename_all_str: &str) -> Result<Self, ()> {
pub fn from_str(rename_all_str: &str) -> Result<Self, ParseError> {
match rename_all_str {
"lowercase" => Ok(LowerCase),
"UPPERCASE" => Ok(UPPERCASE),
@@ -44,7 +44,7 @@ impl RenameRule {
"SCREAMING_SNAKE_CASE" => Ok(ScreamingSnakeCase),
"kebab-case" => Ok(KebabCase),
"SCREAMING-KEBAB-CASE" => Ok(ScreamingKebabCase),
_ => Err(()),
unknown => Err(ParseError { unknown }),
}
}
@@ -104,6 +104,10 @@ impl RenameRule {
}
}
pub struct ParseError<'a> {
unknown: &'a str,
}
#[test]
fn rename_variants() {
for &(original, lower, upper, camel, snake, screaming, kebab, screaming_kebab) in &[