pub unsafe fn concat_unordered<'a>(
a: &'a str,
b: &'a str,
) -> Result<&'a str, Error>Expand description
Concatenate two adjacent string slices no matter their order.
This is the same as concat except that it also concatenates
b to a if b is in front of a (in which case concat errors).
§Safety
The provided slices must come from the same underlying allocation. The adjacency test can not reliably differentiate between the one-past-the-end pointer of one allocation and the start of another. However, all slices must be within a single allocation.
§Examples
Reversed order:
let s = "0123456789";
unsafe {
// SAFETY: slices from the same str originally.
assert_eq!("0123456", concat_unordered(&s[5..7], &s[..5]).unwrap());
}Normal order:
let s = "0123456789";
unsafe {
// SAFETY: slices from the same str originally.
assert_eq!("0123456", concat_unordered(&s[..5], &s[5..7]).unwrap())
}