pub const fn bytes_rfind_keep<'a, const N: usize, P>(
this: &'a [u8],
needle: &P,
) -> Option<&'a [u8]>where
P: ?Sized + BytesPattern<N>,
Expand description
Truncates this
to the last instance of needle
.
Return None
if no instance of needle
is found.
Return Some(this)
if needle
is empty.
ยงExample
use konst::slice::bytes_rfind_keep;
{
const FOUND: Option<&[u8]> = bytes_rfind_keep(b"foo bar _ bar baz", b"bar");
assert_eq!(FOUND, Some(&b"foo bar _ bar"[..]));
}
{
const NOT_FOUND: Option<&[u8]> = bytes_rfind_keep(b"foo bar baz", &'q');
assert_eq!(NOT_FOUND, None);
}
{
const EMPTY_NEEDLE: Option<&[u8]> = bytes_rfind_keep(b"foo bar baz", "");
assert_eq!(EMPTY_NEEDLE, Some(&b"foo bar baz"[..]));
}