Add PhantomData marker to Context to make Context !Send and !Sync
This commit is contained in:
parent
fb9dfa8cef
commit
fd59b628ea
1 changed files with 4 additions and 1 deletions
|
@ -181,6 +181,9 @@ pub struct Context<'a> {
|
||||||
// are contravariant while return-position lifetimes are
|
// are contravariant while return-position lifetimes are
|
||||||
// covariant).
|
// covariant).
|
||||||
_marker: PhantomData<fn(&'a ()) -> &'a ()>,
|
_marker: PhantomData<fn(&'a ()) -> &'a ()>,
|
||||||
|
// Ensure `Context` is `!Send` and `!Sync` in order to allow
|
||||||
|
// for future `!Send` and / or `!Sync` fields.
|
||||||
|
_marker2: PhantomData<*mut ()>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a> Context<'a> {
|
impl<'a> Context<'a> {
|
||||||
|
@ -190,7 +193,7 @@ impl<'a> Context<'a> {
|
||||||
#[must_use]
|
#[must_use]
|
||||||
#[inline]
|
#[inline]
|
||||||
pub const fn from_waker(waker: &'a Waker) -> Self {
|
pub const fn from_waker(waker: &'a Waker) -> Self {
|
||||||
Context { waker, _marker: PhantomData }
|
Context { waker, _marker: PhantomData, _marker2: PhantomData }
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Returns a reference to the [`Waker`] for the current task.
|
/// Returns a reference to the [`Waker`] for the current task.
|
||||||
|
|
Loading…
Add table
Reference in a new issue