arysn 0.5.3

ORM code generator
Documentation
pub fn escape_like<T: AsRef<str>>(s: T) -> String {
    let mut result = String::new();
    for c in s.as_ref().chars() {
        match c {
            '%' => result.push_str(r"\%"),
            '_' => result.push_str(r"\_"),
            '\\' => result.push_str(r"\\"),
            c => result.push(c),
        }
    }
    result
}

pub fn title_case(s: &str) -> String {
    s.split("_")
        .map(|s| {
            let mut c = s.chars();
            match c.next() {
                None => String::new(),
                Some(first) => first.to_uppercase().collect::<String>() + c.as_str(),
            }
        })
        .collect::<Vec<String>>()
        .join("")
}