Weşana Zimanê Bernamesaziyê Rust 1.43

weşandin serbestberdana zimanê bernamesaziya pergalê Rûst 1.43, ji hêla projeya Mozilla ve hatî damezrandin. Ziman balê dikişîne ser ewlehiya bîranînê, rêveberiya bîranînê ya otomatîkî peyda dike, û amûran peyda dike ji bo bidestxistina paraleliya peywira bilind bêyî karanîna berhevkarek çopê û davêjin.

Rêvebiriya bîranîna otomatîkî ya Rust pêşdebiran ji manîpulasyona nîşankerê azad dike û li hember pirsgirêkên ku ji manîpulasyona bîranînê ya nizm derdikevin, wek gihandina bîranîna bêpere, veqetandinên nîşangirên betal, zêdekirina tampon û yên wekî wan diparêze. Rêvebirek pakêtê ji bo belavkirina pirtûkxaneyan, misogerkirina civîn û birêvebirina girêdanên ji hêla projeyê ve tê pêşve xistin. Bar, dihêle hûn pirtûkxaneyên ku ji bo bernameyê hewce ne bi yek klîk bistînin. Depoyek ji bo pirtûkxaneyên mêvandar tê piştgirî kirin crates.io.

sereke nûbûnên:

  • Makro şiyana karanîna perçeyên hêmanan peyda dikin da ku wan veguherînin kodê ji bo taybetmendî (xislet), pêkanîn (impl) an blokên derveyî. Bo nimûne:

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

    Dê bibe sedema nifşê:

    taybetmendiya T {
    fn foo() {}
    }

  • Tespîtkirina celebê ya primitives, referans û operasyonên binary çêtir kirin.
    Mînakî, koda jêrîn, ku berê bû sedema xeletiyek, dê nuha karibe berhev bike (Rust naha rast destnîşan dike ku 0.0 û &0.0 divê ji celebê f32 be):

    bila n: f32 = 0.0 + & 0.0;

  • Guherînek hawîrdorê ya nû CARGO_BIN_EXE_{name} li Cargo hate zêdekirin, ku dema ceribandinên entegrasyonê têne çêkirin tê saz kirin û dihêle hûn riya tevahî ya pelê îcrakar a ku di beşa "[[bin]]" ya pakêtê de hatî destnîşankirin destnîşan bikin.
  • Ger daxuyan destûr bidin ku taybetmendiyên wekî "#[cfg()] bikar bînin.
  • Pirtûkxane îmkana karanîna domdarên têkildar rasterast ji bo celebên yekjimar û fraksîyonî, bêyî îtxalkirina modulek peyda dike. Mînakî, hûn dikarin yekser u32::MAX an f32::NAN binivîsin bêyî ku pêşî "std::u32" û "std::f32 bikar bînin" destnîşan bikin.
  • Modula nû lê zêde kirin negihîştş, ku cureyên Rust primitive ji nû ve îxrac dike, mînakî dema ku hûn hewce ne ku makroyek binivîsin û pê ewle bibin ku celeb veşartî ne.
  • Beşek nû ya API-yê ji kategoriya îstîqrar, tevî stabîl, veguheztin

    Carekê::is_completed,
    f32::LOG10_2,
    f32::LOG2_10,
    f64::LOG10_2,
    f64::LOG2_10 û
    iter:: carekê_bi.

Source: opennet.ru

Add a comment