# Trait core::ops::CoerceUnsized [−] [src]

    pub trait CoerceUnsized<T> { }

Unstable (`coerce_unsized` #27732)

Trait that indicates that this is a pointer or a wrapper for one, where unsizing can be performed on the pointee.

## Implementors

- `impl<T: Zeroable + CoerceUnsized<U>, U: Zeroable> CoerceUnsized<NonZero<U>> for NonZero<T>`
- `impl<T: ?Sized, U: ?Sized> CoerceUnsized<Unique<U>> for Unique<T> where T: Unsize<U>`
- `impl<T: ?Sized, U: ?Sized> CoerceUnsized<Shared<U>> for Shared<T> where T: Unsize<U>`
- `impl<'a, T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<&'a mut U> for &'a mut T`
- `impl<'a, 'b, T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<&'a U> for &'b mut T`
- `impl<'a, T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<*mut U> for &'a mut T`
- `impl<'a, T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<*const U> for &'a mut T`
- `impl<'a, 'b, T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<&'a U> for &'b T`
- `impl<'a, T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<*const U> for &'a T`
- `impl<T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<*mut U> for *mut T`
- `impl<T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<*const U> for *mut T`
- `impl<T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<*const U> for *const T`
- `impl<'b, T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<Ref<'b, U>> for Ref<'b, T>`
- `impl<'b, T: ?Sized + Unsize<U>, U: ?Sized> CoerceUnsized<RefMut<'b, U>> for RefMut<'b, T>`

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
⇤
  Move up in search results
⇥
  Move down in search results
⏎
  Go to active search result

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)