# PipeRingBuffer in os::fs::pipe - Rust
API documentation for the Rust `PipeRingBuffer` struct in crate `os`.
Keywords: rust, rustlang, rust-lang, PipeRingBuffer

# Struct os::fs::pipe::PipeRingBuffer

source · [−]

    pub struct PipeRingBuffer {
        arr: [u8; 32],
        head: usize,
        tail: usize,
        status: RingBufferStatus,
        write_end: Option<Weak<Pipe>>,
    }

## Fields

`arr: [u8; 32]` `head: usize` `tail: usize` `status: RingBufferStatus` `write_end: Option<Weak<Pipe>>`

## Implementations

source

### impl PipeRingBuffer

source

#### pub fn new() -> Self

source

#### pub fn set_write_end(&mut self, write_end: &Arc<Pipe>)

source

#### pub fn write_byte(&mut self, byte: u8)

source

#### pub fn read_byte(&mut self) -> u8

source

#### pub fn available_read(&self) -> usize

source

#### pub fn available_write(&self) -> usize

source

#### pub fn all_write_ends_closed(&self) -> bool

## Auto Trait Implementations

### impl !RefUnwindSafe for PipeRingBuffer

### impl Send for PipeRingBuffer

### impl Sync for PipeRingBuffer

### impl Unpin for PipeRingBuffer

### impl !UnwindSafe for PipeRingBuffer

## Blanket Implementations

source

### impl<T> Any for T where
T: 'static + ?Sized,

source

#### pub fn type_id(&self) -> TypeId

Gets the `TypeId` of `self`. Read more

source

### impl<T> Borrow<T> for T where
T: ?Sized,

source

#### pub fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more

source

### impl<T> BorrowMut<T> for T where
T: ?Sized,

source

#### pub fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more

source

### impl<T> From<T> for T

source

#### pub fn from(t: T) -> T

Performs the conversion.

source

### impl<T, U> Into<U> for T where
U: From<T>,

source

#### pub fn into(self) -> U

Performs the conversion.

source

### impl<T, U> TryFrom<U> for T where
U: Into<T>,

#### type Error = Infallible

The type returned in the event of a conversion error.

source

#### pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.

source

### impl<T, U> TryInto<U> for T where
U: TryFrom<T>,

#### type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

source

#### pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.