Tag: ownership

5 รายการ

Blog

ปูต้นฉบับตรวจลูกโอ๊กในกล่องตัวเลือกและคีบออกเฉพาะเมื่อผ่านเกณฑ์บนฉากสว่าง
rustoptionownership

Rust Option::take_if: ย้ายค่าออกเมื่อเงื่อนไขผ่าน โดยไม่ชน borrow

ใช้ take_if ตรวจและย้ายค่าจาก Option อย่างเป็นอะตอม พร้อมเทียบกับ take และ as_ref

พี่โชว์
ปูสีส้มแดงต้นฉบับกำลังคัดลอกกรอบวัดช่วงเดียวกันไปวางบนริบบิ้นสองเส้น
rustrangeownership

Rust core::range::Range: เก็บ span แบบ Copy โดยไม่ให้ range เป็น iterator

ใช้ range ชุดใหม่ของ Rust แยกข้อมูลช่วงออกจากสถานะ iteration พร้อมข้อควรระวังเรื่อง syntax เดิม

พี่โชว์
ปูสีส้มแดงต้นฉบับกำลังปรับชิ้นงานบนสายพานแล้วคัดชิ้นที่ไม่ผ่านลงถาดข้างโต๊ะ
rustcollectionsperformance

Rust Vec::retain_mut: แก้ค่าและกรองสมาชิกในรอบเดียวโดยรักษาลำดับ

ใช้ retain_mut ทำ normalization ก่อนตัดค่าที่ไม่ผ่าน พร้อมเข้าใจ ownership, panic และต้นทุนการเลื่อนข้อมูล

พี่โชว์
ปูต้นฉบับกำลังใส่ชิ้นงานคนละแบบลงช่อง array ที่เรียงต่อกัน
rustarrayownership

Rust array::from_fn: สร้าง array ของค่าที่ไม่ใช่ Copy ทีละช่อง

ใช้ closure ที่รับ index สร้าง fixed array พร้อมทดสอบลำดับและกรณี array ว่าง

พี่โชว์
ปูสีส้มต้นฉบับยกตะกร้าข้อมูลเต็มออกจากช่องยืม แล้ววางตะกร้าเปล่าแทนบนโต๊ะสีมิ้นต์
rustownershipstate-machine

Rust std::mem::take: ย้ายค่าออกจาก Borrow โดยไม่ Clone

ใช้ mem::take เปลี่ยน field เป็นค่า Default แล้วรับ ownership ของค่าเดิม เหมาะกับ state machine และ batch drain ที่ไม่อยากคัดลอก

พี่โชว์