検索
Results of 1 - 7 of about 7 for slice (0.004 sec.)
- Final Code 11814
- はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ
...t = [T]; fn deref(&self) -> &[T] { unsafe { ::std::slice::from_raw_parts(self.ptr(), self.len) } } } impl<T...deref_mut(&mut self) -> &mut [T] { unsafe { ::std::slice::from_raw_parts_mut(self.ptr(), self.len) } } } st...*const T, } impl<T> RawValIter<T> { unsafe fn new(slice: &[T]) -> Self { RawValIter { start: slice.as_ptr(...), end: if mem::size_of::<T>() == 0 { ((slice.as_ptr() as usize) + slice.len()) as *const _ } el... - https://man.plustar.jp/rust/nomicon/vec-final.html - [similar]
- サイズが 0 の型を扱う 10469
- はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ
...いう方法です。 impl<T> RawValIter<T> { unsafe fn new(slice: &[T]) -> Self { RawValIter { start: slice.as_ptr(...), end: if mem::size_of::<T>() == 0 { ((slice.as_ptr() as usize) + slice.len()) as *const _ } el...se if slice.len() == 0 { slice.as_ptr() } else { slice.as_ptr(...).offset(slice.len() as isize) } } } } さて、これにより別のバグが... - https://man.plustar.jp/rust/nomicon/vec-zsts.html - [similar]
- Drain 9851
- はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ
...ートな実装詳細ですので問題ありません。 unsafe fn new(slice: &[T]) -> Self { RawValIter { start: slice.as_ptr(...), end: if slice.len() == 0 { // もし `len = 0` なら、実際にはメモリ...てしまうため、 // オフセットを避ける必要があります。 slice.as_ptr() } else { slice.as_ptr().offset(slice.len(... - https://man.plustar.jp/rust/nomicon/vec-drain.html - [similar]
- 参照外し 9233
- はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ
...振る舞わせる ことができるようになります。 必要なのは slice::from_raw_parts です。これによって、正しく空の スラ...t = [T]; fn deref(&self) -> &[T] { unsafe { ::std::slice::from_raw_parts(*self.ptr, self.len) } } } では De...deref_mut(&mut self) -> &mut [T] { unsafe { ::std::slice::from_raw_parts_mut(*self.ptr, self.len) } } } これ...スライス , mut , 実装 , Vec , self , ライフタイム , slice , DerefMut , サイズ... - https://man.plustar.jp/rust/nomicon/vec-deref.html - [similar]
- 借用の分割 9106
- はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ
...T; fn next(&mut self) -> Option<Self::Item> { let slice = mem::replace(&mut self.0, &mut []); if slice.is_...empty() { return None; } let (l, r) = slice.split_at_mut(1); self.0 = r; l.get_mut(0) } } impl...n next_back(&mut self) -> Option<Self::Item> { let slice = mem::replace(&mut self.0, &mut []); if slice.is_...empty() { return None; } let new_len = slice.len() - 1; let (l, r) = slice.split_at_mut(new_len... - https://man.plustar.jp/rust/nomicon/borrow-splitting.html - [similar]
- print.html 6906
- はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ
...リにはいくつものアンセーフな関数があります。例えば、 slice::get_unchecked は未チェックのインデックス参照を実行...T; fn next(&mut self) -> Option<Self::Item> { let slice = mem::replace(&mut self.0, &mut []); if slice.is_...empty() { return None; } let (l, r) = slice.split_at_mut(1); self.0 = r; l.get_mut(0) } } impl...n next_back(&mut self) -> Option<Self::Item> { let slice = mem::replace(&mut self.0, &mut []); if slice.is_... - https://man.plustar.jp/rust/nomicon/print.html - [similar]
- 安全と危険の相互作用 6179
- はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ
...リにはいくつものアンセーフな関数があります。例えば、 slice::get_unchecked は未チェックのインデックス参照を実行... - https://man.plustar.jp/rust/nomicon/safe-unsafe-meaning.html - [similar]
PREV
1
NEXT