Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/third_party/rust/scopeguard/examples/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 492 B image not shown  

Quelle  readme.rs   Sprache: unbekannt

 

#[macro_use(defer)] extern crate scopeguard;

use scopeguard::guard;

fn f() {
    defer!(println!("Called at return or panic"));
    panic!();
}

use std::fs::File;
use std::io::Write;

fn g() {
    let f = File::create("newfile.txt").unwrap();
    let mut file = guard(f, |f| {
        // write file at return or panic
        let _ = f.sync_all();
    });
    // Access the file through the scope guard itself
    file.write_all(b"test me\n").unwrap();
}

fn main() {
    f();
    g();
}

[ Dauer der Verarbeitung: 0.22 Sekunden  (vorverarbeitet)  ]