Hoʻokuʻu ʻia ʻo Rust 1.43

paʻi ʻia hoʻokuʻu ʻōlelo hoʻolālā ʻōnaehana Popo 1.43, i hoʻokumu ʻia e ka papahana Mozilla. Hoʻopili ka ʻōlelo i ka palekana hoʻomanaʻo, hāʻawi i ka hoʻokele hoʻomanaʻo maʻalahi, a hāʻawi i nā mea paahana no ka loaʻa ʻana o ka parallelism hana kiʻekiʻe me ka hoʻohana ʻole ʻana i ka ʻohi ʻōpala a Runtime.

Hoʻokuʻu ka hoʻokele hoʻomanaʻo ʻakomi a Rust i ka mea hoʻomohala mai ka hoʻopololei ʻana i ka pointer a pale aku i nā pilikia e kū mai ana mai ka hoʻohana ʻana i ka hoʻomanaʻo haʻahaʻa haʻahaʻa, e like me ka loaʻa ʻana o ka hoʻomanaʻo ʻana ma hope o ka manuahi, ka hoʻihoʻi ʻole ʻana o ka pointer, ka hoʻonui ʻana i ka buffer, a me nā mea like. Ke kūkulu ʻia nei kahi luna pūʻolo e puʻunaue i nā hale waihona puke, e hōʻoia i ka hui ʻana a me ka mālama ʻana i nā hilinaʻi e ka papahana. waiwai, hiki iā ʻoe ke kiʻi i nā hale waihona puke e pono ai no ka papahana i hoʻokahi kaomi. Kākoʻo ʻia kahi waihona no ka mālama ʻana i nā hale waihona puke crates.io.

ka papa kuhikuhiE nā mea hou:

  • Hāʻawi nā Macros i ka hiki ke hoʻohana i nā ʻāpana o nā mea e hoʻohuli iā lākou i code no nā ʻano (trait), hoʻokō (impl) a i ʻole nā ​​poloka waho. ʻo kahi laʻana:

    macro_rules! mac_trait {
    ($i: ʻikamu) => {
    ʻano T { $i }
    }
    }
    mac_trait! {
    fn foo() {}
    }

    E alakaʻi i ka hanauna:

    ʻano T {
    fn foo() {}
    }

  • Hoʻomaikaʻi ʻia ke ʻano ʻike o nā primitives, nā kuhikuhi a me nā hana binary.
    No ka laʻana, hiki ke hoʻohui i kēia code aʻe, ka mea i hana mua i kahi hewa (Ua hoʻoholo pololei ʻo Rust ʻo 0.0 a me &0.0 ke ʻano f32):

    e n: f32 = 0.0 + &0.0;

  • Ua hoʻohui ʻia kahi ʻano hoʻololi kaiapuni hou ʻo CARGO_BIN_EXE_{inoa} iā Cargo, i hoʻonohonoho ʻia i ka wā e kūkulu ai i nā hoʻāʻo hoʻohui a hiki iā ʻoe ke hoʻoholo i ke ala piha i ka faila hiki ke hoʻokō ʻia ma ka ʻāpana "[[bin]]" o ka pūʻolo.
  • Inā ʻae ʻia nā ʻōlelo e hoʻohana i nā ʻano e like me "#[cfg()]".
  • Hāʻawi ka waihona i ka hiki ke hoʻohana pololei i nā mea mau e pili ana no nā ʻano integer a me nā ʻano hakina, me ka lawe ʻole ʻana i kahi module. No ka laʻana, hiki iā ʻoe ke kākau koke iā u32::MAX a i ʻole f32::NAN me ka ʻole e kuhikuhi mua i "hoʻohana std::u32" a "hoʻohana std::f32".
  • Hoʻohui ʻia ka module hou ʻike mua, ka mea e hoʻokuʻu hou aku i nā ʻano primitive Rust, no ka laʻana inā pono ʻoe e kākau i kahi macro a hōʻoia i ka hūnā ʻole ʻia o nā ʻano.
  • Ua hoʻoili ʻia kahi ʻāpana hou o nā API i ka ʻāpana paʻa, me ka hoʻopaʻa ʻia

    Once::is_completed,
    f32::LOG10_2,
    f32::LOG2_10,
    f64::LOG10_2,
    f64::LOG2_10 a
    iter::kekahi_me.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka