INNER CODE UNIT · Rust

table_name

stepancheg/rust-protobuf · protobuf-examples/issue-614/src/lib.rs:5

fn table_name(message: &MessageDescriptor) -> String {
    format!("{}s", message.name().to_lowercase())
}

pub fn generate_schema_for(message: MessageDescriptor) -> String {
    let table = table_name(&message);
    let mut columns = Vec::new();
    for field in message.fields() {
        if field.containing_oneof().is_some() {
            continue;
        }
        columns.push(format!("{} STRING", field.name()));
    }
    for oneof in message.oneofs() {
        columns.push(format!("{}_type STRING", oneof.name()));
        columns.push(format!("{}_value STRING", oneof.name()));
    }
    let columns = columns.join(", ");

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…