Auto merge of #27192 - dotdash:inline_eq_slice, r=luqmana
eq_slice_() used to be a common implementation for two function that both called it, but of those only eq_slice() is left, so we can as well directly inline the code.
This commit is contained in:
@@ -871,12 +871,12 @@ impl<'a> DoubleEndedIterator for LinesAny<'a> {
|
|||||||
Section: Comparing strings
|
Section: Comparing strings
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// share the implementation of the lang-item vs. non-lang-item
|
/// Bytewise slice equality
|
||||||
// eq_slice.
|
|
||||||
/// NOTE: This function is (ab)used in rustc::middle::trans::_match
|
/// NOTE: This function is (ab)used in rustc::middle::trans::_match
|
||||||
/// to compare &[u8] byte slices that are not necessarily valid UTF-8.
|
/// to compare &[u8] byte slices that are not necessarily valid UTF-8.
|
||||||
|
#[lang = "str_eq"]
|
||||||
#[inline]
|
#[inline]
|
||||||
fn eq_slice_(a: &str, b: &str) -> bool {
|
fn eq_slice(a: &str, b: &str) -> bool {
|
||||||
// NOTE: In theory n should be libc::size_t and not usize, but libc is not available here
|
// NOTE: In theory n should be libc::size_t and not usize, but libc is not available here
|
||||||
#[allow(improper_ctypes)]
|
#[allow(improper_ctypes)]
|
||||||
extern { fn memcmp(s1: *const i8, s2: *const i8, n: usize) -> i32; }
|
extern { fn memcmp(s1: *const i8, s2: *const i8, n: usize) -> i32; }
|
||||||
@@ -887,15 +887,6 @@ fn eq_slice_(a: &str, b: &str) -> bool {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Bytewise slice equality
|
|
||||||
/// NOTE: This function is (ab)used in rustc::middle::trans::_match
|
|
||||||
/// to compare &[u8] byte slices that are not necessarily valid UTF-8.
|
|
||||||
#[lang = "str_eq"]
|
|
||||||
#[inline]
|
|
||||||
fn eq_slice(a: &str, b: &str) -> bool {
|
|
||||||
eq_slice_(a, b)
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Section: Misc
|
Section: Misc
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user