INNER CODE UNIT · Rust

__bind

rusqlite/rusqlite · rusqlite-macros/src/lib.rs:16

pub fn __bind(input: TokenStream) -> TokenStream {
    try_bind(input).unwrap_or_else(|msg| parse_ts(&format!("compile_error!({msg:?})")))
}

type Result<T> = std::result::Result<T, String>;

fn try_bind(input: TokenStream) -> Result<TokenStream> {
    let (stmt, literal) = {
        let mut iter = input.into_iter();
        let stmt = iter.next().unwrap();
        let literal = iter.next().unwrap();
        assert!(iter.next().is_none());
        (stmt, literal)
    };

    let Some(literal) = into_literal(&literal) else {
        return Err("expected a plain string literal".to_string());
    };

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…