pub struct VecBool { /* private fields */ }Expand description
cpp class: template<class Allocator> std::vector<bool, Allocator>
Implementations§
Source§impl VecBool
impl VecBool
Sourcepub fn get(&self, pos: usize) -> Option<bool>
pub fn get(&self, pos: usize) -> Option<bool>
use hicc_std::VecBool;
let mut vec = VecBool::new();
assert_eq!(vec.get(0), None);
vec.push_back(true);
assert_eq!(vec.get(0), Some(true));Sourcepub fn back(&self) -> Option<bool>
pub fn back(&self) -> Option<bool>
use hicc_std::VecBool;
let mut vec = VecBool::new();
assert_eq!(vec.back(), None);
vec.push_back(true);
assert_eq!(vec.back(), Some(true));Sourcepub fn front(&self) -> Option<bool>
pub fn front(&self) -> Option<bool>
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.push_back(true);
assert_eq!(vec.front(), Some(true));Sourcepub fn assign(&mut self, n: usize, val: bool)
pub fn assign(&mut self, n: usize, val: bool)
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.assign(2, true);
assert_eq!(vec.size(), 2);
assert_eq!(vec.front(), Some(true));
assert_eq!(vec.back(), Some(true));Sourcepub fn pop_back(&mut self)
pub fn pop_back(&mut self)
如果为空不做任何改变.
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.pop_back();
vec.push_back(true);
vec.pop_back();
assert!(vec.is_empty());Sourcepub fn is_empty(&self) -> bool
pub fn is_empty(&self) -> bool
use hicc_std::VecBool;
let vec = VecBool::new();
assert!(vec.is_empty());Sourcepub fn size(&self) -> usize
pub fn size(&self) -> usize
use hicc_std::VecBool;
let vec = VecBool::new();
assert_eq!(vec.size(), 0);Sourcepub fn max_size(&self) -> usize
pub fn max_size(&self) -> usize
use hicc_std::VecBool;
let vec = VecBool::new();
println!("vec.max_size = {}", vec.max_size());Sourcepub fn capacity(&self) -> usize
pub fn capacity(&self) -> usize
use hicc_std::VecBool;
let vec = VecBool::new();
println!("vec.capacity = {}", vec.capacity());Sourcepub fn clear(&mut self)
pub fn clear(&mut self)
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.push_back(true);
vec.clear();
assert!(vec.is_empty());Sourcepub fn reserve(&mut self, n: usize)
pub fn reserve(&mut self, n: usize)
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.reserve(10_usize);
assert!(vec.is_empty());
println!("vec.capacity = {}", vec.capacity());Sourcepub fn shrink_to_fit(&mut self)
pub fn shrink_to_fit(&mut self)
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.reserve(10_usize);
// ...
vec.shrink_to_fit();Sourcepub fn resize(&mut self, n: usize, val: bool)
pub fn resize(&mut self, n: usize, val: bool)
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.resize(2, true);
assert_eq!(vec.size(), 2);
assert_eq!(vec.back(), Some(true));
assert_eq!(vec.front(), Some(true));Sourcepub fn set(&mut self, pos: usize, val: bool)
pub fn set(&mut self, pos: usize, val: bool)
cpp global function: void SelfMethods::set(Self&, size_t, bool)
如果pos超出范围,则不做任何修改.
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.set(0, false);
assert_eq!(vec.get(0), None);
vec.push_back(true);
assert_eq!(vec.get(0), Some(true));
vec.set(0, false);
assert_eq!(vec.get(0), Some(false));Sourcepub fn push_back(&mut self, val: bool)
pub fn push_back(&mut self, val: bool)
cpp global function: void SelfMethods::push_back(Self&, bool)
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.push_back(true);
assert_eq!(vec.front(), Some(true));Sourcepub fn swap(&mut self, other: &mut <VecBool as AbiType>::InputType)
pub fn swap(&mut self, other: &mut <VecBool as AbiType>::InputType)
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.push_back(true);
vec.swap(&mut VecBool::new());
assert!(vec.is_empty());Sourcepub fn insert(&mut self, pos: usize, count: usize, val: bool)
pub fn insert(&mut self, pos: usize, count: usize, val: bool)
cpp global function: void SelfMethods::insert(Self&, size_t, size_t, bool)
如果pos超出范围则添加到最后.
use hicc_std::VecBool;
let mut vec = VecBool::new();
vec.insert(0, 2, true);
vec.insert(vec.size(), 1, false);
assert_eq!(vec.get(0), Some(true));
assert_eq!(vec.get(1), Some(true));
assert_eq!(vec.get(2), Some(false));
assert_eq!(vec.get(3), None);Trait Implementations§
Source§impl AbiClass for VecBool
impl AbiClass for VecBool
Source§fn get_raw_obj(&self) -> *const ()
fn get_raw_obj(&self) -> *const ()
仅内部使用.指针携带附加信息,不能转换为
c++类指针.Source§unsafe fn into_unique(self) -> Self
unsafe fn into_unique(self) -> Self
Safety Read more
Source§fn as_mut(&mut self) -> ClassRefMut<'_, Self>
fn as_mut(&mut self) -> ClassRefMut<'_, Self>
Source§fn as_mut_ptr(&mut self) -> ClassMutPtr<'_, Self>
fn as_mut_ptr(&mut self) -> ClassMutPtr<'_, Self>
AbiType::InputMutPtr<'_, T>参数类型实际是&ClassMutPtr<'_, T>,
当需要传递这类参数时可调用此接口.Source§fn into_ref(self) -> ClassRef<'static, Self>
fn into_ref(self) -> ClassRef<'static, Self>
T, ClassRef<'_, T>, ClassRefMut<'_, T>, ClassPtr<'_, T>, ClassMutPtr<'_, T>作为返回值实质是等价.Source§fn into_mut(self) -> ClassRefMut<'static, Self>
fn into_mut(self) -> ClassRefMut<'static, Self>
T, ClassRef<'_, T>, ClassRefMut<'_, T>, ClassPtr<'_, T>, ClassMutPtr<'_, T>作为返回值实质是等价.Source§fn into_ptr(self) -> ClassPtr<'static, Self>
fn into_ptr(self) -> ClassPtr<'static, Self>
T, ClassRef<'_, T>, ClassRefMut<'_, T>, ClassPtr<'_, T>, ClassMutPtr<'_, T>作为返回值实质是等价.Source§fn into_mut_ptr(self) -> ClassMutPtr<'static, Self>
fn into_mut_ptr(self) -> ClassMutPtr<'static, Self>
T, ClassRef<'_, T>, ClassRefMut<'_, T>, ClassPtr<'_, T>, ClassMutPtr<'_, T>作为返回值实质是等价.impl Send for VecBool
impl Sync for VecBool
Auto Trait Implementations§
impl Freeze for VecBool
impl RefUnwindSafe for VecBool
impl Unpin for VecBool
impl UnwindSafe for VecBool
Blanket Implementations§
Source§impl<T> AbiType for Twhere
T: AbiClass,
impl<T> AbiType for Twhere
T: AbiClass,
type InputType = T
type InputPtr<'a, P, const N: usize> = &'a ClassPtr<'a, T, N> where T: 'a
type InputMutPtr<'a, P, const N: usize> = &'a ClassMutPtr<'a, T, N> where T: 'a
type OutputType = T
type OutputRef<'a> = ClassRef<'a, T> where T: 'a
type OutputRefMut<'a> = ClassRefMut<'a, T> where T: 'a
type OutputPtr<'a, P, const N: usize> = ClassPtr<'a, T, N> where T: 'a
type OutputMutPtr<'a, P, const N: usize> = ClassMutPtr<'a, T, N> where T: 'a
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more