* Fixes #537: Remove release mode logging levels restrictions; * Add information about log's logging levels in the README;
39 lines
892 B
Rust
39 lines
892 B
Rust
//! Cranelift DSL classes.
|
|
//!
|
|
//! This module defines the classes that are used to define Cranelift
|
|
//! instructions and other entities.
|
|
|
|
pub mod types;
|
|
|
|
/// Convert the string `s` to CamelCase.
|
|
fn _camel_case(s: &str) -> String {
|
|
let mut output_chars = String::with_capacity(s.len());
|
|
|
|
let mut capitalize = true;
|
|
for curr_char in s.chars() {
|
|
if curr_char == '_' {
|
|
capitalize = true;
|
|
} else {
|
|
if capitalize {
|
|
output_chars.extend(curr_char.to_uppercase());
|
|
} else {
|
|
output_chars.push(curr_char);
|
|
}
|
|
capitalize = false;
|
|
}
|
|
}
|
|
|
|
output_chars
|
|
}
|
|
|
|
#[cfg(test)]
|
|
mod tests {
|
|
use super::_camel_case as camel_case;
|
|
|
|
#[test]
|
|
fn camel_case_works() {
|
|
assert_eq!(camel_case("x"), "X");
|
|
assert_eq!(camel_case("camel_case"), "CamelCase");
|
|
}
|
|
}
|