[][src]Trait drone_core::bitfield::Bitfield

pub trait Bitfield: Sized + Send + Sync + Clone + Copy + 'static {
    type Bits: Bits;
    pub fn bits(&self) -> Self::Bits;
pub fn bits_mut(&mut self) -> &mut Self::Bits; pub unsafe fn read_bit(&self, offset: Self::Bits) -> bool { ... }
pub unsafe fn set_bit(&mut self, offset: Self::Bits) { ... }
pub unsafe fn clear_bit(&mut self, offset: Self::Bits) { ... }
pub unsafe fn toggle_bit(&mut self, offset: Self::Bits) { ... }
pub unsafe fn read_bits(
        &self,
        offset: Self::Bits,
        width: Self::Bits
    ) -> Self::Bits { ... }
pub unsafe fn write_bits(
        &mut self,
        offset: Self::Bits,
        width: Self::Bits,
        bits: Self::Bits
    ) { ... } }

An integer value treated as a sequence of bits, which can be toggled individually.

See the module level documentation for more.

Associated Types

type Bits: Bits[src]

The type of the integer. Determines the total number of bits.

Loading content...

Required methods

pub fn bits(&self) -> Self::Bits[src]

Returns a copy of the underlying integer.

pub fn bits_mut(&mut self) -> &mut Self::Bits[src]

Returns a mutable reference to the underlying integer.

Loading content...

Provided methods

pub unsafe fn read_bit(&self, offset: Self::Bits) -> bool[src]

Returns true if the bit at offset is set.

Safety

offset must not exceed the integer size.

pub unsafe fn set_bit(&mut self, offset: Self::Bits)[src]

Sets the bit at offset.

Safety

offset must not exceed the integer size.

pub unsafe fn clear_bit(&mut self, offset: Self::Bits)[src]

Clears the bit at offset.

Safety

offset must not exceed the integer size.

pub unsafe fn toggle_bit(&mut self, offset: Self::Bits)[src]

Toggles the bit at offset.

Safety

offset must not exceed the integer size.

pub unsafe fn read_bits(
    &self,
    offset: Self::Bits,
    width: Self::Bits
) -> Self::Bits
[src]

Returns width number of bits at offset position.

Safety

offset + width must not exceed the integer size.

pub unsafe fn write_bits(
    &mut self,
    offset: Self::Bits,
    width: Self::Bits,
    bits: Self::Bits
)
[src]

Writes width number of bits at offset position from bits.

Safety

offset + width must not exceed the integer size.

Loading content...

Implementors

Loading content...