検索

phrase: max: clip:
target: order:
Results of 11 - 20 of about 32 for mut (0.042 sec.)
レイアウト 8280
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu レイア ... 良いということになります。 pub struct Vec<T> { ptr: *mut T, cap: usize, len: usize, } fn main() {} そして実 ... ているアロケーションに対する生ポインタを持つ場合、 *mut T の代わりに Unique<T> を使用するべきです。 Unique ... ため) T が Send/Sync を実装している場合、継承される *mut T に参照外しをする (つまりコード内では専ら *mut...
https://man.plustar.jp/rust/nomicon/vec-layout.html - [similar]
参照外し 7974
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu 参照外 ... rom_raw_parts(*self.ptr, self.len) } } } では DerefMut も実装しましょう。 use std::ops::DerefMut; impl<T> ... DerefMut for Vec<T> { fn deref_mut(&mut self) -> &mut [T] { ... unsafe { ::std::slice::from_raw_parts_mut(*self.ptr, self.len) } } } これで、 len 、 first 、 ...
https://man.plustar.jp/rust/nomicon/vec-deref.html - [similar]
例外安全性 7813
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu 例外安 ... 純な実装です。 impl<T: Clone> Vec<T> { fn push_all(&mut self, to_push: &[T]) { self.reserve(to_push.len()) ... を綺麗にします。 struct Hole<'a, T: 'a> { data: &'a mut [T], /// `elt` は new で生成されたときからドロップ ... size, } impl<'a, T> Hole<'a, T> { fn new(data: &'a mut [T], pos: usize) -> Self { unsafe { let elt = ptr: ...
https://man.plustar.jp/rust/nomicon/exception-safety.html - [similar]
サイズが 0 の型を扱う 7781
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu サイズ ... なります。 RawVec { ptr: Unique::new(heap::EMPTY as *mut T), cap: cap } } } fn grow(&mut self) { unsafe { l ... self.cap; let ptr = heap::reallocate(*self.ptr as *mut _, self.cap * elem_size, new_cap * elem_size, alig ... is_null() { oom() } self.ptr = Unique::new(ptr as *mut _); self.cap = new_cap; } } } impl<T> Drop for Raw ...
https://man.plustar.jp/rust/nomicon/vec-zsts.html - [similar]
Drop Check 7555
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu Drop C ... 'a u8); impl<'a> Drop for Inspector<'a> { fn drop(&mut self) { println!("I was only {} days from retireme ... c str); impl<'a> Drop for Inspector<'a> { fn drop(&mut self) { println!("Inspector(_, {}) knows when *not ... <T: fmt::Display> Drop for Inspector<T> { fn drop(&mut self) { println!("Inspector(_, {}) knows when *not ...
https://man.plustar.jp/rust/nomicon/dropck.html - [similar]
IntoIter 7555
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu IntoIt ... 行しましょう。 Deref の魔法のおかげで、 iter と iter_mut は 既に書かれています。しかし、 Vec が提供できて、 ... Iterator for IntoIter<T> { type Item = T; fn next(&mut self) -> Option<T> { if self.start == self.end { N ... oubleEndedIterator for IntoIter<T> { fn next_back(&mut self) -> Option<T> { if self.start == self.end { N ...
https://man.plustar.jp/rust/nomicon/vec-into-iter.html - [similar]
リファレンス 7523
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu 参照 こ ... 。 参照には 2 種類あります。 共有参照: & 可変参照: &mut 参照は次のルールに従います。 参照のライフタイムが、 ... 。 内部可変性を持った型の例としては、Cell, RefCell, Mutex, RWLock があります。 これらの型は、実行時の制約を ... ができます。 #![allow(unused)] fn main() { let x = &mut (1, 2); { // x のフィールドを又借りする let y = &m ...
https://man.plustar.jp/rust/nomicon/references.html - [similar]
ドロップフラグ 7281
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu ドロッ ... 用した 代入では、状況によらずドロップしません。 let mut x = Box::new(0); // let によって新しい変数が生成さ ... れるので、ドロップの必要はありません let y = &mut x; *y = Box::new(1); // 参照外しでは、参照される側 ... を持っています。 #![allow(unused)] fn main() { let mut x = Box::new(0); // x は初期化されていないので、単 ...
https://man.plustar.jp/rust/nomicon/drop-flags.html - [similar]
リーク 7249
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu リーク ... ます! 安心! それでは以下の例を考えてみましょう。 let mut vec = vec![Box::new(0); 4]; { // ドレインを開始しま ... す。 vec にはもうアクセスできません let mut drainer = vec.drain(..); // 2 つの値を引き出し、即 ... た Rc の実装を確認しましょう。 struct Rc<T> { ptr: *mut RcBox<T>, } struct RcBox<T> { data: T, ref_count: ...
https://man.plustar.jp/rust/nomicon/leaking.html - [similar]
ライフタイム 7249
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... サイズが 0 の型を扱う 9.11. Final Code 10. Arc と Mutex の実装 Light (default) Rust Coal Navy Ayu ライフ ... 可変参照の別名付け もう一つの例はどうでしょう。 let mut data = vec![1, 2, 3]; let x = &data[0]; data.push( ... 4); println!("{}", x); 'a: { let mut data: Vec<i32> = vec![1, 2, 3]; 'b: { // スコープ ... b i32 = Index::index::<'b>(&'b data, 0); 'c: { // &mut は長生きする必要が無いので、一時的なスコープ 'c が ...
https://man.plustar.jp/rust/nomicon/lifetimes.html - [similar]
PREV 1 2 3 4 NEXT