7 releases

Uses old Rust 2015

0.1.6 Aug 14, 2019
0.1.5 Mar 6, 2019
0.1.4 Dec 2, 2018
0.1.3 Apr 8, 2018
0.1.2 Feb 1, 2018

#16 in #cstr

Download history 144/week @ 2023-12-07 158/week @ 2023-12-14 154/week @ 2023-12-21 127/week @ 2023-12-28 147/week @ 2024-01-04 173/week @ 2024-01-11 147/week @ 2024-01-18 131/week @ 2024-01-25 29/week @ 2024-02-01 78/week @ 2024-02-08 64/week @ 2024-02-15 73/week @ 2024-02-22 78/week @ 2024-02-29 67/week @ 2024-03-07 78/week @ 2024-03-14 75/week @ 2024-03-21

311 downloads per month

MIT license

4KB
64 lines

cstr

CI Crates.io Docs

A macro for getting &'static CStr from literal or identifier.

This macro checks whether the given literal is valid for CStr at compile time, and returns a static reference of CStr.

This macro can be used to to initialize constants.

Example

use cstr::cstr;
use std::ffi::CStr;

let test = cstr!(b"hello\xff");
assert_eq!(test, CStr::from_bytes_with_nul(b"hello\xff\0").unwrap());
let test = cstr!("hello");
assert_eq!(test, CStr::from_bytes_with_nul(b"hello\0").unwrap());
let test = cstr!(hello);
assert_eq!(test, CStr::from_bytes_with_nul(b"hello\0").unwrap());

Dependencies

~1.5MB
~32K SLoC