pub unsafe trait UpcastStrict<T>: Upcast<T>where
T: VcValueTrait + ?Sized,{ }Expand description
A specialization of Upcast that ensures that the upcast is strict meaning that T !== Self.
See VcValueTrait for example usage.
§Safety
The implementor of this trait must ensure that Self implements the
trait T and that Self is not equal to T.
Implementations on Foreign Types§
impl UpcastStrict<Box<dyn ValueDebug>> for Option<bool>
impl UpcastStrict<Box<dyn ValueDebug>> for Option<u16>
impl UpcastStrict<Box<dyn ValueDebug>> for Option<u64>
impl UpcastStrict<Box<dyn ValueDebug>> for Option<RcStr>
impl UpcastStrict<Box<dyn ValueDebug>> for Option<String>
impl UpcastStrict<Box<dyn ValueDebug>> for Value
impl UpcastStrict<Box<dyn ValueDebug>> for bool
impl UpcastStrict<Box<dyn ValueDebug>> for i8
impl UpcastStrict<Box<dyn ValueDebug>> for i16
impl UpcastStrict<Box<dyn ValueDebug>> for i32
impl UpcastStrict<Box<dyn ValueDebug>> for i64
impl UpcastStrict<Box<dyn ValueDebug>> for i128
impl UpcastStrict<Box<dyn ValueDebug>> for isize
impl UpcastStrict<Box<dyn ValueDebug>> for u8
impl UpcastStrict<Box<dyn ValueDebug>> for u16
impl UpcastStrict<Box<dyn ValueDebug>> for u32
impl UpcastStrict<Box<dyn ValueDebug>> for u64
impl UpcastStrict<Box<dyn ValueDebug>> for u128
impl UpcastStrict<Box<dyn ValueDebug>> for ()
impl UpcastStrict<Box<dyn ValueDebug>> for usize
impl UpcastStrict<Box<dyn ValueDebug>> for RcStr
impl UpcastStrict<Box<dyn ValueDebug>> for Box<dyn ValueToString>
Available on debug-assertions enabled only.
impl UpcastStrict<Box<dyn ValueDebug>> for Box<dyn ValueDefault>
Available on debug-assertions enabled only.
impl UpcastStrict<Box<dyn ValueDebug>> for Box<dyn EffectCollectible>
Available on debug-assertions enabled only.