-
Notifications
You must be signed in to change notification settings - Fork 13.5k
Open
Labels
C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.Relevant to the library API team, which will review and decide on the PR/issue.
Description
Feature gate: #![feature(error_generic_member_access)]
This is a tracking issue for the generic member access API on the error trait, which generalizes the pattern of fn source(&self) -> Option<&dyn Error>
and fn backtrace(&self) -> Option<&Backtrace>
into fn request_ref::<T>(&self) -> Option<&T>
Public API
// std::error
pub trait Error: Debug + Display {
// existing API unchanged
fn provide<'a>(&'a self, req: &mut Demand<'a>) {}
}
impl dyn Error + Send + Sync + 'static { // and all combinations of send/sync
pub fn request_ref<T: ?Sized + 'static>(&self) -> Option<&T> {
core::any::request_ref(self)
}
pub fn request_value<T: 'static>(&self) -> Option<T> {
core::any::request_value(self)
}
}
Steps / History
Now tracked by @waynr in #99301 (comment)
Unresolved Questions
- None yet.
stepancheg, tgross35, thebluetropics, jess-sol, schneiderfelipe and 9 morerobsdedude, adriandelgado, artob, chamons and joseluis
Metadata
Metadata
Assignees
Labels
C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.Relevant to the library API team, which will review and decide on the PR/issue.