INNER CODE UNIT · Rust
str_to_cstring
rusqlite/rusqlite · src/lib.rs:319
fn str_to_cstring(s: &str) -> Result<util::SmallCString> {
Ok(util::SmallCString::new(s)?)
}
/// Returns `(string ptr, len as c_int, SQLITE_STATIC | SQLITE_TRANSIENT)`
/// normally.
/// The `sqlite3_destructor_type` item is always `SQLITE_TRANSIENT` unless
/// the string was empty (in which case it's `SQLITE_STATIC`, and the ptr is
/// static).
fn str_for_sqlite(
s: &[u8],
) -> (
*const c_char,
ffi::sqlite3_uint64,
ffi::sqlite3_destructor_type,
) {
let len = s.len();
let (ptr, dtor_info) = if len != 0 {