pub mod convert;
pub mod merge;
fn get_fn_name_suffix(ty_name: String) -> String {
let mut result = String::default();
let mut started = false;
let mut angle_brackets = 0;
for c in ty_name.chars() {
if c == '<' {
angle_brackets += 1;
continue;
}
if c == '>' {
angle_brackets -= 1;
continue;
}
if angle_brackets > 0 {
continue;
}
if c.is_ascii_uppercase() {
if !started {
started = true;
}
result.push('_');
result.push(c.to_ascii_lowercase());
continue;
}
if started {
if c.is_ascii_lowercase() || c.is_ascii_digit() {
result.push(c);
continue;
}
break;
}
}
result
}