pub fn downcast_ref<T>(&self) -> Option<&T>
    where
        T: Gauge,
    {
        if self.is::<T>() {
            unsafe { Some(&*(self as *const dyn Gauge as *const T)) }
        } else {
            None
        }
    }
/// Attempts to downcast the gauge's value to the type `T` if it has that type.
Attempts to downcast the gauge's value to the type `T` if it has that type.
Attempts to downcast the gauge ' s value to the type ` T ` if it has that type .
pub fn downcast_ref<T>(&self) -> Option<&T>
    where
        T: Gauge,
    {
        if self.is::<T>() {
            unsafe { Some(&*(self as *const dyn Gauge as *const T)) }
        } else {
            None
        }
    }
pub fn downcast_ref < T > ( & self ) -> Option < & T > where T : Gauge , { if self . is :: < T > ( ) { unsafe { Some ( & * ( self as * const dyn Gauge as * const T ) ) } } else { None } }
Attempts to downcast the gauge's value to the type `T` if it has that type.
Attempts to downcast the gauge ' s value to the type ` T ` if it has that type .
&self
&self