[−][src]Struct btle::bytes::StaticBuf
Static byte buffer. StaticBuf<[u8; 16]>
can store a [u8]
array from 0-16 bytes for example.
Unlike other static buffers, this does NOT reallocate if you out grow the internal buffer. If
you try to request more bytes than its able to store, it will panic.
Methods
impl<ArrayBuf: AsRef<[u8]> + AsMut<[u8]> + Default + Copy> StaticBuf<ArrayBuf>
[src]
pub fn max_size() -> usize
[src]
Returns the maximum size the StaticBuf
can hold.
Examples
use btle::bytes::StaticBuf; assert_eq!(StaticBuf::<[u8; 10]>::max_size(), 10); assert_eq!(StaticBuf::<[u8; 23]>::max_size(), 23);
pub fn resize(&mut self, new_size: usize)
[src]
Resizes the StaticBuf
by settings self.len
to new_size
if new_size <= Self::max_size()
.
This is only a single variable change and WILL NOT zero or change any of the buffers bytes.
Examples
use btle::bytes::{StaticBuf, Storage}; let mut buf = StaticBuf::<[u8; 10]>::with_size(10); assert_eq!(buf.len(), 10); assert_eq!(buf[9], 0); buf[9] = 0xFF; buf.resize(1); assert_eq!(buf.len(), 1); buf.resize(10); assert_eq!(buf[9], 0xFF);
Trait Implementations
impl<ArrayBuf: AsRef<[u8]> + AsMut<[u8]> + Default + Copy> AsMut<[u8]> for StaticBuf<ArrayBuf>
[src]
impl<ArrayBuf: AsRef<[u8]> + AsMut<[u8]> + Default + Copy> AsRef<[u8]> for StaticBuf<ArrayBuf>
[src]
impl<ArrayBuf: Clone + AsRef<[u8]> + AsMut<[u8]> + Default + Copy> Clone for StaticBuf<ArrayBuf>
[src]
impl<ArrayBuf: Copy + AsRef<[u8]> + AsMut<[u8]> + Default> Copy for StaticBuf<ArrayBuf>
[src]
impl<ArrayBuf: Default + AsRef<[u8]> + AsMut<[u8]> + Copy> Default for StaticBuf<ArrayBuf>
[src]
impl<ArrayBuf: AsRef<[u8]> + AsMut<[u8]> + Default + Copy> Index<RangeFull> for StaticBuf<ArrayBuf>
[src]
type Output = [u8]
The returned type after indexing.
fn index(&self, _index: RangeFull) -> &Self::Output
[src]
impl<ArrayBuf: AsRef<[u8]> + AsMut<[u8]> + Default + Copy> Index<usize> for StaticBuf<ArrayBuf>
[src]
type Output = u8
The returned type after indexing.
fn index(&self, index: usize) -> &Self::Output
[src]
impl<ArrayBuf: AsRef<[u8]> + AsMut<[u8]> + Default + Copy> IndexMut<RangeFull> for StaticBuf<ArrayBuf>
[src]
impl<ArrayBuf: AsRef<[u8]> + AsMut<[u8]> + Default + Copy> IndexMut<usize> for StaticBuf<ArrayBuf>
[src]
impl<ArrayBuf: AsRef<[u8]> + AsMut<[u8]> + Default + Copy> Storage for StaticBuf<ArrayBuf>
[src]
Auto Trait Implementations
impl<ArrayBuf> RefUnwindSafe for StaticBuf<ArrayBuf> where
ArrayBuf: RefUnwindSafe,
ArrayBuf: RefUnwindSafe,
impl<ArrayBuf> Send for StaticBuf<ArrayBuf> where
ArrayBuf: Send,
ArrayBuf: Send,
impl<ArrayBuf> Sync for StaticBuf<ArrayBuf> where
ArrayBuf: Sync,
ArrayBuf: Sync,
impl<ArrayBuf> Unpin for StaticBuf<ArrayBuf> where
ArrayBuf: Unpin,
ArrayBuf: Unpin,
impl<ArrayBuf> UnwindSafe for StaticBuf<ArrayBuf> where
ArrayBuf: UnwindSafe,
ArrayBuf: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,