pub fn poll_ref(&mut self) -> Poll<Option<Ref<T>>, error::RecvError> {
        // Make sure the task is up to date
        self.inner.task.register();

        let state = self.shared.version.load(SeqCst);
        let version = state & !CLOSED;

        if version != self.ver {
            // Track the latest version
            self.ver = version;

            let inner = self.shared.value.read().unwrap();

            return Ok(Some(Ref { inner }).into());
        }

        if CLOSED == state & CLOSED {
            // The `Store` handle has been dropped.
            return Ok(None.into());
        }

        Ok(Async::NotReady)
    }
/// Attempts to receive the latest value sent via the channel.
///
/// If a new, unobserved, value has been sent, a reference to it is
/// returned. If no new value has been sent, then `NotReady` is returned and
/// the current task is notified once a new value is sent.
///
/// Only the **most recent** value is returned. If the receiver is falling
/// behind the sender, intermediate values are dropped.
Attempts to receive the latest value sent via the channel.
If a new, unobserved, value has been sent, a reference to it is
returned. If no new value has been sent, then `NotReady` is returned and
the current task is notified once a new value is sent.

Only the **most recent** value is returned. If the receiver is falling
behind the sender, intermediate values are dropped.
Attempts to receive the latest value sent via the channel . If a new unobserved value has been sent a reference to it is returned . If no new value has been sent then ` NotReady ` is returned and the current task is notified once a new value is sent . Only the ** most recent ** value is returned . If the receiver is falling behind the sender intermediate values are dropped .
pub fn poll_ref(&mut self) -> Poll<Option<Ref<T>>, error::RecvError> {
        // Make sure the task is up to date
        self.inner.task.register();
        let state = self.shared.version.load(SeqCst);
        let version = state & !CLOSED;
        if version != self.ver {
            // Track the latest version
            self.ver = version;
            let inner = self.shared.value.read().unwrap();
            return Ok(Some(Ref { inner }).into());
        }
        if CLOSED == state & CLOSED {
            // The `Store` handle has been dropped.
            return Ok(None.into());
        }
        Ok(Async::NotReady)
    }
pub fn poll_ref ( & mut self ) -> Poll < Option < Ref < T > > , error :: RecvError > { // Make sure the task is up to date self . inner . task . register ( ) ; let state = self . shared . version . load ( SeqCst ) ; let version = state & ! CLOSED ; if version != self . ver { // Track the latest version self . ver = version ; let inner = self . shared . value . read ( ) . unwrap ( ) ; return Ok ( Some ( Ref { inner } ) . into ( ) ) ; } if CLOSED == state & CLOSED { // The `Store` handle has been dropped. return Ok ( None . into ( ) ) ; } Ok ( Async :: NotReady ) }
Attempts to receive the latest value sent via the channel.
Attempts to receive the latest value sent via the channel .
&mut self