W3cubDocs

/Rust

Trait std::ops::DispatchFromDyn

#[lang = "dispatch_from_dyn"]pub trait DispatchFromDyn<T> { }
🔬 This is a nightly-only experimental API. (dispatch_from_dyn)

This is used for object safety, to check that a method's receiver type can be dispatched on.

An example implementation of the trait:

impl<T: ?Sized, U: ?Sized> DispatchFromDyn<Rc<U>> for Rc<T>
where
    T: Unsize<U>,
{}

Implementors

impl<'a, T, U> DispatchFromDyn<&'a U> for &'a T where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<'a, T, U> DispatchFromDyn<&'a mut U> for &'a mut T where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<P, U> DispatchFromDyn<Pin<U>> for Pin<P> where
    P: DispatchFromDyn<U>, 
[src]

impl<T, U> DispatchFromDyn<*const U> for *const T where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<T, U> DispatchFromDyn<*mut U> for *mut T where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<T, U> DispatchFromDyn<Box<U>> for Box<T> where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<T, U> DispatchFromDyn<NonNull<U>> for NonNull<T> where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<T, U> DispatchFromDyn<Rc<U>> for Rc<T> where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<T, U> DispatchFromDyn<Weak<U>> for std::rc::Weak<T> where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<T, U> DispatchFromDyn<Arc<U>> for Arc<T> where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

impl<T, U> DispatchFromDyn<Weak<U>> for std::sync::Weak<T> where
    T: Unsize<U> + ?Sized,
    U: ?Sized, 
[src]

Loading content...

© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/ops/trait.DispatchFromDyn.html