SingleBits

Trait SingleBits 

Source
pub trait SingleBits {
    // Required methods
    fn set_bit(self, bit_offset: u32) -> Result<Self, String>
       where Self: Sized;
    fn get_bit(self, bit_offset: u32) -> Result<bool, String>;
    fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
       where Self: Sized;
}
Expand description

Defines a set of functions to get, set and clear single bits

Required Methods§

Source

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Sets a single bit and returns a Result object, which contains the modified variable

Parameters:

  • bit_offset (u32) the offset of the bit to be set. Zero is the MOST significant bit.
Source

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Tests a single bit and returns true or false in a Result object

On error, the Result object contains an error message. This may happen if the bit_offset is larger than the data source (bit_offset > variable size)

Parameters:

  • bit_offset (u32) the offset of the bit to be set. Zero is the MOST significant bit.
Source

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Clears a single bit and then returns a Result Object, which contains the modified variable

Parameters:

  • bit_offset (u32) the offset of the bit to be set. Zero is the MOST significant bit.

Implementations on Foreign Types§

Source§

impl SingleBits for i8

Source§

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Source§

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

impl SingleBits for i16

Source§

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Source§

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

impl SingleBits for i32

Source§

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Source§

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

impl SingleBits for i64

Source§

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Source§

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

impl SingleBits for u8

Source§

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Source§

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

impl SingleBits for u16

Source§

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Source§

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

impl SingleBits for u32

Source§

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Source§

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

impl SingleBits for u64

Source§

fn set_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Source§

fn get_bit(self, bit_offset: u32) -> Result<bool, String>

Source§

fn clear_bit(self, bit_offset: u32) -> Result<Self, String>
where Self: Sized,

Implementors§