DropGuard
DropGuard (드롭 시 클로저 실행 래퍼)
값을 감싸고 드롭될 때 클로저를 실행하는 구조체예요. 소멸자를 인라인으로 빠르게 만들 때 유용해요.
출처: Rust 공식 문서
본문
값을 감싸고 드롭될 때 클로저를 실행해요. 인라인으로 소멸자를 빠르게 만드는 데 유용해요.
pub struct DropGuard<T, F>
where
F: FnOnce(T),
{ /* private fields */ }
예시
#![feature(drop_guard)]
use std::mem::DropGuard;
{
// 드롭될 때 값을 출력할 문자열 주위에 새 가드를 만든다.
let s = String::from("Chashu likes tuna");
let _guard = DropGuard(s, |v| println!("{v}"));
}