pub fn pop_front(&self) -> T {
        loop {
            let mut guard = self.queue.lock();
            if let Some(t) = guard.pop_front() {
                return t;
            } else {
                self.cond_var.wait(guard);
            }
        }
    }
/// Pops an element from the front.
/// Waits if no elements are available.
Pops an element from the front.
Waits if no elements are available.
Pops an element from the front . Waits if no elements are available .
pub fn pop_front(&self) -> T {
        loop {
            let mut guard = self.queue.lock();
            if let Some(t) = guard.pop_front() {
                return t;
            } else {
                self.cond_var.wait(guard);
            }
        }
    }
pub fn pop_front ( & self ) -> T { loop { let mut guard = self . queue . lock ( ) ; if let Some ( t ) = guard . pop_front ( ) { return t ; } else { self . cond_var . wait ( guard ) ; } } }
Pops an element from the front.
Pops an element from the front .
&self
&self