Skip to main content

UnsafeUnpin

Trait UnsafeUnpin 

Source
pub unsafe auto trait UnsafeUnpin { }
๐Ÿ”ฌThis is a nightly-only experimental API. (unsafe_unpin)
Expand description

Used to determine whether a type contains any UnsafePinned (or PhantomPinned) internally, but not through an indirection. This affects, for example, whether we emit noalias metadata for &mut T or not.

This is part of RFC 3467, and is tracked by #125735.

Dyn Compatibilityยง

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementorsยง

Sourceยง

impl !UnsafeUnpin for PhantomPinned

Sourceยง

impl<T> !UnsafeUnpin for UnsafePinned<T>
where T: ?Sized,

Sourceยง

impl<T> UnsafeUnpin for &T
where T: ?Sized,

Sourceยง

impl<T> UnsafeUnpin for &mut T
where T: ?Sized,

Sourceยง

impl<T> UnsafeUnpin for *const T is !null
where T: ?Sized,

Sourceยง

impl<T> UnsafeUnpin for *const T
where T: ?Sized,

Sourceยง

impl<T> UnsafeUnpin for *mut T is !null
where T: ?Sized,

Sourceยง

impl<T> UnsafeUnpin for *mut T
where T: ?Sized,

Sourceยง

impl<T> UnsafeUnpin for PhantomData<T>
where T: ?Sized,

Auto implementorsยง

ยง

impl UnsafeUnpin for Abi

ยง

impl UnsafeUnpin for tipc_std::mem::Alignment

ยง

impl UnsafeUnpin for tipc_std::fmt::Alignment

ยง

impl UnsafeUnpin for AllocError

ยง

impl UnsafeUnpin for Array

ยง

impl UnsafeUnpin for Assume

ยง

impl UnsafeUnpin for AtomicOrdering

ยง

impl UnsafeUnpin for BasicBlock

ยง

impl UnsafeUnpin for Bool

ยง

impl UnsafeUnpin for BorrowError

ยง

impl UnsafeUnpin for BorrowMutError

ยง

impl UnsafeUnpin for CString

ยง

impl UnsafeUnpin for Char

ยง

impl UnsafeUnpin for CharCase

ยง

impl UnsafeUnpin for CharTryFromError

ยง

impl UnsafeUnpin for Const

ยง

impl UnsafeUnpin for CpuidResult

ยง

impl UnsafeUnpin for DebugAsHex

ยง

impl UnsafeUnpin for DecodeUtf16Error

ยง

impl UnsafeUnpin for DynTrait

ยง

impl UnsafeUnpin for DynTraitPredicate

ยง

impl UnsafeUnpin for Enum

ยง

impl UnsafeUnpin for Error

ยง

impl UnsafeUnpin for tipc_std::char::EscapeDebug

ยง

impl UnsafeUnpin for tipc_std::char::EscapeDefault

ยง

impl UnsafeUnpin for tipc_std::char::EscapeUnicode

ยง

impl UnsafeUnpin for FallibleCString

ยง

impl UnsafeUnpin for Field

ยง

impl UnsafeUnpin for FieldId

ยง

impl UnsafeUnpin for Float

ยง

impl UnsafeUnpin for FnPtr

ยง

impl UnsafeUnpin for FormattingOptions

ยง

impl UnsafeUnpin for FromUtf8Error

ยง

impl UnsafeUnpin for FromUtf16Error

ยง

impl UnsafeUnpin for Generic

ยง

impl UnsafeUnpin for GenericType

ยง

impl UnsafeUnpin for GetDisjointMutError

ยง

impl UnsafeUnpin for Infallible

ยง

impl UnsafeUnpin for Int

ยง

impl UnsafeUnpin for IntoChars

ยง

impl UnsafeUnpin for Lifetime

ยง

impl UnsafeUnpin for Locality

ยง

impl UnsafeUnpin for OneSidedRangeBound

ยง

impl UnsafeUnpin for Ordering

ยง

impl UnsafeUnpin for ParseBoolError

ยง

impl UnsafeUnpin for ParseCharError

ยง

impl UnsafeUnpin for Pointer

ยง

impl UnsafeUnpin for RangeFull

ยง

impl UnsafeUnpin for Reference

ยง

impl UnsafeUnpin for ReturnToArg

ยง

impl UnsafeUnpin for SearchStep

ยง

impl UnsafeUnpin for Sign

ยง

impl UnsafeUnpin for SimdAlign

ยง

impl UnsafeUnpin for SipHasher

ยง

impl UnsafeUnpin for Slice

ยง

impl UnsafeUnpin for Str

ยง

impl UnsafeUnpin for String

ยง

impl UnsafeUnpin for Struct

ยง

impl UnsafeUnpin for ToCasefold

ยง

impl UnsafeUnpin for ToLowercase

ยง

impl UnsafeUnpin for ToTitlecase

ยง

impl UnsafeUnpin for ToUppercase

ยง

impl UnsafeUnpin for Trait

ยง

impl UnsafeUnpin for TryFromCharError

ยง

impl UnsafeUnpin for TryFromSliceError

ยง

impl UnsafeUnpin for TryNewError

ยง

impl UnsafeUnpin for Tuple

ยง

impl UnsafeUnpin for Type

ยง

impl UnsafeUnpin for TypeId

ยง

impl UnsafeUnpin for TypeKind

ยง

impl UnsafeUnpin for Union

ยง

impl UnsafeUnpin for UnwindActionArg

ยง

impl UnsafeUnpin for UnwindTerminateReason

ยง

impl UnsafeUnpin for Utf8Error

ยง

impl UnsafeUnpin for Variant

ยง

impl UnsafeUnpin for __m128

ยง

impl UnsafeUnpin for __m256

ยง

impl UnsafeUnpin for __m512

ยง

impl UnsafeUnpin for __m128bh

ยง

impl UnsafeUnpin for __m128d

ยง

impl UnsafeUnpin for __m128h

ยง

impl UnsafeUnpin for __m128i

ยง

impl UnsafeUnpin for __m256bh

ยง

impl UnsafeUnpin for __m256d

ยง

impl UnsafeUnpin for __m256h

ยง

impl UnsafeUnpin for __m256i

ยง

impl UnsafeUnpin for __m512bh

ยง

impl UnsafeUnpin for __m512d

ยง

impl UnsafeUnpin for __m512h

ยง

impl UnsafeUnpin for __m512i

ยง

impl UnsafeUnpin for __tile1024i

ยง

impl UnsafeUnpin for bf16

ยง

impl<'a, 'b, const N: usize> UnsafeUnpin for CharArrayRefSearcher<'a, 'b, N>

ยง

impl<'a, 'b> UnsafeUnpin for CharSliceSearcher<'a, 'b>

ยง

impl<'a, 'b> UnsafeUnpin for DebugList<'a, 'b>

ยง

impl<'a, 'b> UnsafeUnpin for DebugMap<'a, 'b>

ยง

impl<'a, 'b> UnsafeUnpin for DebugSet<'a, 'b>

ยง

impl<'a, 'b> UnsafeUnpin for DebugStruct<'a, 'b>

ยง

impl<'a, 'b> UnsafeUnpin for DebugTuple<'a, 'b>

ยง

impl<'a, 'b> UnsafeUnpin for StrSearcher<'a, 'b>

ยง

impl<'a, A> UnsafeUnpin for tipc_std::option::Iter<'a, A>

ยง

impl<'a, A> UnsafeUnpin for tipc_std::option::IterMut<'a, A>

ยง

impl<'a, B> UnsafeUnpin for Cow<'a, B>
where <B as ToOwned>::Owned: UnsafeUnpin, B: ?Sized,

ยง

impl<'a, F> UnsafeUnpin for CharPredicateSearcher<'a, F>
where F: UnsafeUnpin,

ยง

impl<'a, I, A> UnsafeUnpin for Splice<'a, I, A>
where I: UnsafeUnpin,

ยง

impl<'a, I> UnsafeUnpin for ByRefSized<'a, I>

ยง

impl<'a, P> UnsafeUnpin for MatchIndices<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for Matches<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for RMatchIndices<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for RMatches<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for tipc_std::str::RSplit<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for tipc_std::str::RSplitN<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for RSplitTerminator<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for tipc_std::str::Split<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for tipc_std::str::SplitInclusive<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for tipc_std::str::SplitN<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, P> UnsafeUnpin for SplitTerminator<'a, P>
where <P as Pattern>::Searcher<'a>: UnsafeUnpin,

ยง

impl<'a, T, A> UnsafeUnpin for tipc_std::vec::Drain<'a, T, A>

ยง

impl<'a, T, A> UnsafeUnpin for PeekMut<'a, T, A>

ยง

impl<'a, T, F, A> UnsafeUnpin for ExtractIf<'a, T, F, A>
where F: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for ChunkBy<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for ChunkByMut<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for tipc_std::slice::RSplit<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for RSplitMut<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for tipc_std::slice::RSplitN<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for RSplitNMut<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for tipc_std::slice::Split<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for tipc_std::slice::SplitInclusive<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for SplitInclusiveMut<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for SplitMut<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for tipc_std::slice::SplitN<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, P> UnsafeUnpin for SplitNMut<'a, T, P>
where P: UnsafeUnpin,

ยง

impl<'a, T, const N: usize> UnsafeUnpin for ArrayWindows<'a, T, N>

ยง

impl<'a, T> UnsafeUnpin for Chunks<'a, T>

ยง

impl<'a, T> UnsafeUnpin for ChunksExact<'a, T>

ยง

impl<'a, T> UnsafeUnpin for ChunksExactMut<'a, T>

ยง

impl<'a, T> UnsafeUnpin for ChunksMut<'a, T>

ยง

impl<'a, T> UnsafeUnpin for tipc_std::result::Iter<'a, T>

ยง

impl<'a, T> UnsafeUnpin for tipc_std::slice::Iter<'a, T>

ยง

impl<'a, T> UnsafeUnpin for tipc_std::result::IterMut<'a, T>

ยง

impl<'a, T> UnsafeUnpin for tipc_std::slice::IterMut<'a, T>

ยง

impl<'a, T> UnsafeUnpin for MutexGuard<'a, T>

ยง

impl<'a, T> UnsafeUnpin for RChunks<'a, T>

ยง

impl<'a, T> UnsafeUnpin for RChunksExact<'a, T>

ยง

impl<'a, T> UnsafeUnpin for RChunksExactMut<'a, T>

ยง

impl<'a, T> UnsafeUnpin for RChunksMut<'a, T>

ยง

impl<'a, T> UnsafeUnpin for Windows<'a, T>

ยง

impl<'a, const N: usize> UnsafeUnpin for CharArraySearcher<'a, N>

ยง

impl<'a> UnsafeUnpin for Arguments<'a>

ยง

impl<'a> UnsafeUnpin for Bytes<'a>

ยง

impl<'a> UnsafeUnpin for CharIndices<'a>

ยง

impl<'a> UnsafeUnpin for CharSearcher<'a>

ยง

impl<'a> UnsafeUnpin for Chars<'a>

ยง

impl<'a> UnsafeUnpin for tipc_std::string::Drain<'a>

ยง

impl<'a> UnsafeUnpin for EncodeUtf16<'a>

ยง

impl<'a> UnsafeUnpin for EscapeAscii<'a>

ยง

impl<'a> UnsafeUnpin for tipc_std::str::EscapeDebug<'a>

ยง

impl<'a> UnsafeUnpin for tipc_std::str::EscapeDefault<'a>

ยง

impl<'a> UnsafeUnpin for tipc_std::str::EscapeUnicode<'a>

ยง

impl<'a> UnsafeUnpin for Formatter<'a>

ยง

impl<'a> UnsafeUnpin for Lines<'a>

ยง

impl<'a> UnsafeUnpin for LinesAny<'a>

ยง

impl<'a> UnsafeUnpin for PhantomContravariantLifetime<'a>

ยง

impl<'a> UnsafeUnpin for PhantomCovariantLifetime<'a>

ยง

impl<'a> UnsafeUnpin for PhantomInvariantLifetime<'a>

ยง

impl<'a> UnsafeUnpin for SplitAsciiWhitespace<'a>

ยง

impl<'a> UnsafeUnpin for SplitWhitespace<'a>

ยง

impl<'a> UnsafeUnpin for Utf8Chunk<'a>

ยง

impl<'a> UnsafeUnpin for Utf8Chunks<'a>

ยง

impl<'a> UnsafeUnpin for Utf8Pattern<'a>

ยง

impl<'b, T> UnsafeUnpin for Ref<'b, T>
where T: ?Sized,

ยง

impl<'b, T> UnsafeUnpin for RefMut<'b, T>
where T: ?Sized,

ยง

impl<A, B> UnsafeUnpin for Chain<A, B>
where A: UnsafeUnpin, B: UnsafeUnpin,

ยง

impl<A, B> UnsafeUnpin for Zip<A, B>
where A: UnsafeUnpin, B: UnsafeUnpin,

ยง

impl<A> UnsafeUnpin for tipc_std::option::IntoIter<A>
where A: UnsafeUnpin,

ยง

impl<A> UnsafeUnpin for OptionFlatten<A>
where A: UnsafeUnpin,

ยง

impl<A> UnsafeUnpin for Repeat<A>
where A: UnsafeUnpin,

ยง

impl<A> UnsafeUnpin for RepeatN<A>
where A: UnsafeUnpin,

ยง

impl<B, C> UnsafeUnpin for ControlFlow<B, C>
where C: UnsafeUnpin, B: UnsafeUnpin,

ยง

impl<Dyn> UnsafeUnpin for DynMetadata<Dyn>
where Dyn: ?Sized,

ยง

impl<F> UnsafeUnpin for tipc_std::iter::FromFn<F>
where F: UnsafeUnpin,

ยง

impl<F> UnsafeUnpin for tipc_std::fmt::FromFn<F>
where F: UnsafeUnpin,

ยง

impl<F> UnsafeUnpin for OnceWith<F>
where F: UnsafeUnpin,

ยง

impl<F> UnsafeUnpin for PollFn<F>
where F: UnsafeUnpin,

ยง

impl<F> UnsafeUnpin for RepeatWith<F>
where F: UnsafeUnpin,

ยง

impl<G> UnsafeUnpin for FromCoroutine<G>
where G: UnsafeUnpin,

ยง

impl<H> UnsafeUnpin for BuildHasherDefault<H>

ยง

impl<I, F, const N: usize> UnsafeUnpin for MapWindows<I, F, N>

ยง

impl<I, F> UnsafeUnpin for FilterMap<I, F>
where I: UnsafeUnpin, F: UnsafeUnpin,

ยง

impl<I, F> UnsafeUnpin for Inspect<I, F>
where I: UnsafeUnpin, F: UnsafeUnpin,

ยง

impl<I, F> UnsafeUnpin for Map<I, F>
where I: UnsafeUnpin, F: UnsafeUnpin,

ยง

impl<I, G> UnsafeUnpin for IntersperseWith<I, G>

ยง

impl<I, P> UnsafeUnpin for Filter<I, P>
where I: UnsafeUnpin, P: UnsafeUnpin,

ยง

impl<I, P> UnsafeUnpin for MapWhile<I, P>
where I: UnsafeUnpin, P: UnsafeUnpin,

ยง

impl<I, P> UnsafeUnpin for SkipWhile<I, P>
where I: UnsafeUnpin, P: UnsafeUnpin,

ยง

impl<I, P> UnsafeUnpin for TakeWhile<I, P>
where I: UnsafeUnpin, P: UnsafeUnpin,

ยง

impl<I, St, F> UnsafeUnpin for Scan<I, St, F>

ยง

impl<I, U, F> UnsafeUnpin for FlatMap<I, U, F>

ยง

impl<I, const N: usize> UnsafeUnpin for ArrayChunks<I, N>
where I: UnsafeUnpin, <I as Iterator>::Item: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Cloned<I>
where I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Copied<I>
where I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Cycle<I>
where I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for DecodeUtf16<I>
where I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Enumerate<I>
where I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Flatten<I>

ยง

impl<I> UnsafeUnpin for Fuse<I>
where I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Intersperse<I>
where <I as Iterator>::Item: Sized + UnsafeUnpin, I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Peekable<I>
where I: UnsafeUnpin, <I as Iterator>::Item: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Skip<I>
where I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for StepBy<I>
where I: UnsafeUnpin,

ยง

impl<I> UnsafeUnpin for Take<I>
where I: UnsafeUnpin,

ยง

impl<Idx> UnsafeUnpin for Range<Idx>
where Idx: UnsafeUnpin,

ยง

impl<Idx> UnsafeUnpin for RangeFrom<Idx>
where Idx: UnsafeUnpin,

ยง

impl<Idx> UnsafeUnpin for RangeInclusive<Idx>
where Idx: UnsafeUnpin,

ยง

impl<Idx> UnsafeUnpin for RangeTo<Idx>
where Idx: UnsafeUnpin,

ยง

impl<Idx> UnsafeUnpin for RangeToInclusive<Idx>
where Idx: UnsafeUnpin,

ยง

impl<P> UnsafeUnpin for MaybeDangling<P>
where P: UnsafeUnpin + ?Sized,

ยง

impl<Ptr> UnsafeUnpin for Pin<Ptr>
where Ptr: UnsafeUnpin,

ยง

impl<T, A> UnsafeUnpin for Box<T, A>
where A: UnsafeUnpin, T: ?Sized,

ยง

impl<T, A> UnsafeUnpin for tipc_std::vec::IntoIter<T, A>
where A: UnsafeUnpin,

ยง

impl<T, A> UnsafeUnpin for Rc<T, A>
where A: UnsafeUnpin, T: ?Sized,

ยง

impl<T, A> UnsafeUnpin for UniqueRc<T, A>
where A: UnsafeUnpin, T: ?Sized,

ยง

impl<T, A> UnsafeUnpin for Vec<T, A>
where A: UnsafeUnpin,

ยง

impl<T, A> UnsafeUnpin for Weak<T, A>
where A: UnsafeUnpin, T: ?Sized,

ยง

impl<T, E> UnsafeUnpin for Result<T, E>
where T: UnsafeUnpin, E: UnsafeUnpin,

ยง

impl<T, F> UnsafeUnpin for DropGuard<T, F>
where T: UnsafeUnpin, F: UnsafeUnpin,

ยง

impl<T, F> UnsafeUnpin for LazyCell<T, F>
where F: UnsafeUnpin, T: UnsafeUnpin,

ยง

impl<T, F> UnsafeUnpin for LazyLock<T, F>
where T: UnsafeUnpin, F: UnsafeUnpin,

ยง

impl<T, F> UnsafeUnpin for Successors<T, F>
where F: UnsafeUnpin, T: UnsafeUnpin,

ยง

impl<T, const N: usize, A> UnsafeUnpin for BoxedArrayIntoIter<T, N, A>
where A: UnsafeUnpin,

ยง

impl<T, const N: usize> UnsafeUnpin for tipc_std::array::IntoIter<T, N>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for Bound<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for Cell<T>
where T: UnsafeUnpin + ?Sized,

ยง

impl<T> UnsafeUnpin for Discriminant<T>

ยง

impl<T> UnsafeUnpin for Empty<T>

ยง

impl<T> UnsafeUnpin for tipc_std::result::IntoIter<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for ManuallyDrop<T>
where T: UnsafeUnpin + ?Sized,

ยง

impl<T> UnsafeUnpin for MaybeUninit<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for Mutex<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for NonNull<T>
where T: ?Sized,

ยง

impl<T> UnsafeUnpin for Once<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for OnceCell<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for OnceLock<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for Option<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for Pending<T>

ยง

impl<T> UnsafeUnpin for PhantomContravariant<T>
where T: ?Sized,

ยง

impl<T> UnsafeUnpin for PhantomCovariant<T>
where T: ?Sized,

ยง

impl<T> UnsafeUnpin for PhantomInvariant<T>
where T: ?Sized,

ยง

impl<T> UnsafeUnpin for PoisonError<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for Ready<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for RefCell<T>
where T: UnsafeUnpin + ?Sized,

ยง

impl<T> UnsafeUnpin for Rev<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for Reverse<T>
where T: UnsafeUnpin,

ยง

impl<T> UnsafeUnpin for SyncUnsafeCell<T>
where T: UnsafeUnpin + ?Sized,

ยง

impl<T> UnsafeUnpin for ThinBox<T>
where T: ?Sized,

ยง

impl<T> UnsafeUnpin for TraitImpl<T>
where T: ?Sized,

ยง

impl<T> UnsafeUnpin for UnsafeCell<T>
where T: UnsafeUnpin + ?Sized,

ยง

impl<T> UnsafeUnpin for Yeet<T>
where T: UnsafeUnpin,

ยง

impl<Y, R> UnsafeUnpin for CoroutineState<Y, R>
where Y: UnsafeUnpin, R: UnsafeUnpin,