[過去ログ] Rust part16 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
360
(2): 2022/07/13(水)23:59 ID:qlTJEO+a(1) AAS
>>353
もっと便利にできるぜ

use std::cell::Cell;

trait CellWithMethod<T> {
fn with<R>(&self, f: impl FnOnce(&mut T) -> R) -> R;
}

impl<T: Default> CellWithMethod<T> for Cell<T> {
#[inline]
fn with<R>(&self, f: impl FnOnce(&mut T) -> R) -> R {
let mut inner = self.take();
省12
361
(1): 2022/07/15(金)21:39 ID:qV4GyRtM(1) AAS
>>360
CellでVec使えるのか
何か間違って学習していた

外部リンク:qiita.com
> 1. Cellの中身の型はCopyをimplしていなければならない

外部リンク:dev.classmethod.jp
> ・Cellの中の型はCopyトレイト実装が必須

外部リンク:qiita.com
> Cell は値の "移動" によって内部可変性を実装するため <T> は Copy 可能な "値" 向けのコンテナーで、
> i32 や Copy trait を実装した何かを扱うのに"適した"コンテナーです。
省4
366: 2022/07/16(土)23:27 ID:MG4+BxCd(1) AAS
>>360
!Syncで参照無しならデータ競合を起こさない、という点を使った用法だな
便利だから公式サポートすればいいのにな
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.051s