Allow comparisons between CStr
, CString
, and Cow<CStr>
. by bjoernager · Pull Request #137268 · rust-lang/rust (original) (raw)
Closes: #137265
This PR adds the trait implementations proposed in the ACP under the c_string_eq_c_str
feature gate:
// core::ffi
impl PartialEq<&Self> for CStr;
impl PartialEq for CStr;
impl PartialEq<Cow<'_, Self>> for CStr;
// alloc::ffi
impl PartialEq for CString;
impl PartialEq<&CStr> for CString;
impl PartialEq<Cow<'_, CStr>> for CString;
// alloc::borrow
impl PartialEq for Cow<'_, CStr>;
impl PartialEq<&CStr> for Cow<'_, CStr>;
impl PartialEq for Cow<'_, CStr>;
As I understand it, stable traits cannot be unstably implemented for stable types, and we would thereby be forced to skip the FCP and directly stabilise these implementations (as is done in this PR).
(@joshtriplett mentioned that Crater may have to be run).