6 releases (1 stable)
1.0.0 | Feb 13, 2021 |
---|---|
0.1.4 | Jan 26, 2020 |
0.1.3 | Sep 22, 2019 |
0.1.2 | Apr 21, 2019 |
#929 in Rust patterns
29,081 downloads per month
Used in 11 crates
6KB
str-macro
Rust crate for the str!()
macro, which makes the conveniences available from vec![]
available for String
as well.
Has no dependencies, and should work on any Rust release channel.
- Create an empty
String
// Vec equivalent
let v = vec![];
assert_eq!(v, Vec::new());
assert!(v.is_empty());
// String
let s = str!();
assert_eq!(s, String::new());
assert!(s.is_empty());
- Create an owned
String
from a constant str reference.
// Vec equivalent
let v = vec!["alpha", "beta", "gamma"];
assert_eq!(&v, &["alpha", "beta", "gamma"];
assert_eq!(v.len(), 3);
// String
let s = str!("alpha beta gamma");
assert_eq!(&s, "alpha beta gamma");
let _: String = s;
- Create an owned
String
from an object which implementsToString
.
Note that this is automatically implemented for anything that implements Display
.
let s = str!(2194);
assert_eq!(&s, "2194");
let s = str!(Ipv4Addr::new(127, 0, 0, 1));
assert_eq!(&s, "127.0.0.1");
Copyright (C) 2019-2021 Ammon Smith
Available under the MIT License.