Versão Rust 1.43.0: compilador e inferência de tipo aprimorados para primitivas, item em macros

A equipe Rust tem o prazer de anunciar o lançamento de uma nova versão, 1.43.0. Rust é uma linguagem de programação que permite a todos criar software confiável e eficiente.


Se você instalou a versão anterior do Rust usando ferramentas rustup, para atualizar para a versão 1.43.0, basta executar o seguinte comando:


rustup update stable

Se você ainda não o instalou rustup, pode instalá-lo na página correspondente do nosso site e também ver notas de versão detalhadas no GitHub.


O que está incluído na versão estável 1.43.0


Alterações e inovações significativas que esta versão não contém. Estabilizamos várias novas APIs, melhoramos o desempenho do compilador e adicionamos algumas alterações ao sistema de macro. Veja as notas de versão detalhadas para mais detalhes .


Fragmentos item


Agora você pode usar fragmentos itemincorporando-os ao corpo de características, implementações ou blocos externos. Por exemplo:


macro_rules! mac_trait {
    ($i:item) => {
        trait T { $i }
    }
}
mac_trait! {
    fn foo() {}
}

:


trait T {
    fn foo() {}
}


, . , Rust 1.42, Rust 1.43.


let n: f32 = 0.0 + &0.0;

Rust 1.42 "casting &f64 as f32 is invalid — cannot cast &f64 as f32". — f32.


Cargo


, Cargo .


: , , "cli". cli . Cargo CARGO_BIN_EXE_cli, :


let exe = env!("CARGO_BIN_EXE_cli");

cli , .



, , , . u32::MAX f32::NAN use std::u32; use std::f32;.


primitive, Rust. , , .


API:




, Cargo Clippy .


1.43.0


, Rust 1.43.0. , !



Rust - .


andreevlex, funkill, Hirrolot, l4l, H. K. blandger.


All Articles