Defer

Defer se utiliza para ejecutar una declaración al salir del bloque actual/scope.

test "defer" {
    var x: i16 = 5;
    {
        defer x += 2;
        try expect(x == 5);
    }
    try expect(x == 7);
}

Cuando hay múltiples defers en un solo bloque, se ejecutan en orden inverso.

test "multi defer" {
    var x: f32 = 5;
    {
        defer x += 2;
        defer x /= 2;
    }
    try expect(x == 4.5);
}

Defer es útil para garantizar que los recursos se limpien cuando ya no sean necesarios. En lugar de tener que recordar liberar manualmente el recurso, puedes agregar una declaración defer justo al lado de la declaración que asigna el recurso.

Edita esta pagina Última actualización: 5/15/2024 por Vital