[−][src]Trait sbitty::UnsetBit
performing _ & !(1 << idx) with n the index
Examples
unset bit for big int
Don't pay attention to my bigint implementation.
pub struct BigInt { hwb: i64, lwb: i64, } impl UnsetBit for BigInt { fn unset_bit(&self, idx: usize) -> Result<Self,IndexError> where Self: Sized { if idx >= 128 { Err(IndexError) } else if idx >= 64 { Ok(BigInt{ hwb: self.hwb & !(1 << (idx - 64)), lwb: self.lwb }) } else { Ok(BigInt{ hwb: self.hwb, lwb: self.lwb & !(1 << (idx - 64)) }) } } }
Required methods
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
Implementors
impl UnsetBit for i8
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for i16
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for i32
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for i64
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for isize
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for u8
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for u16
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for u32
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for u64
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,
impl UnsetBit for usize
[src]
pub fn unset_bit(&self, idx: usize) -> Result<Self, IndexError> where
Self: Sized,
[src]
Self: Sized,