ืฉื—ืจื•ืจ ืฉืคืช ืชื›ื ื•ืช Rust 1.54

ืคื•ืจืกื ืฉื—ืจื•ืจ ืฉืคืช ื”ืชื›ื ื•ืช ื”ืžืขืจื›ืชื™ืช Rust 1.54, ืฉื”ื•ืงืžื” ืขืœ ื™ื“ื™ ืคืจื•ื™ืงื˜ ืžื•ื–ื™ืœื”, ืืš ืคื•ืชื—ื” ื›ืขืช ื‘ื—ืกื•ืช ื”ืขืžื•ืชื” ื”ืขืฆืžืื™ืช Rust Foundation. ื”ืฉืคื” ืžืชืžืงื“ืช ื‘ื‘ื˜ื™ื—ื•ืช ื–ื™ื›ืจื•ืŸ, ืžืกืคืงืช ื ื™ื”ื•ืœ ื–ื™ื›ืจื•ืŸ ืื•ื˜ื•ืžื˜ื™, ื•ืžืกืคืงืช ืืช ื”ืืžืฆืขื™ื ืœื”ืฉื’ืช ืžืงื‘ื™ืœื™ื•ืช ืžืฉื™ืžื•ืช ื’ื‘ื•ื”ื” ืœืœื ืฉื™ืžื•ืฉ ื‘ืืกืคืŸ ืืฉืคื” ืื• ื–ืžืŸ ืจื™ืฆื” (ื–ืžืŸ ื”ืจื™ืฆื” ืžืฆื˜ืžืฆื ืœืืชื—ื•ืœ ื•ืชื—ื–ื•ืงื” ื‘ืกื™ืกื™ื™ื ืฉืœ ื”ืกืคืจื™ื™ื” ื”ืกื˜ื ื“ืจื˜ื™ืช).

ื ื™ื”ื•ืœ ื”ื–ื™ื›ืจื•ืŸ ื”ืื•ื˜ื•ืžื˜ื™ ืฉืœ Rust ืžื‘ื˜ืœ ืฉื’ื™ืื•ืช ื‘ืขืช ืžื ื™ืคื•ืœืฆื™ื” ืฉืœ ืžืฆื‘ื™ืขื™ื ื•ืžื’ืŸ ืžืคื ื™ ื‘ืขื™ื•ืช ื”ื ื•ื‘ืขื•ืช ืžืžื ื™ืคื•ืœืฆื™ื” ืฉืœ ื–ื™ื›ืจื•ืŸ ื‘ืจืžื” ื ืžื•ื›ื”, ื›ื’ื•ืŸ ื’ื™ืฉื” ืœืื–ื•ืจ ื–ื™ื›ืจื•ืŸ ืœืื—ืจ ืฉื—ืจื•ืจื•, ื”ืคื ื™ื™ืช ืžืฆื‘ื™ืข ืืคืกื™ืช, ื—ืจื™ื’ื•ืช ืžืื’ืจ ื•ื›ื•'. ื›ื“ื™ ืœื”ืคื™ืฅ ืกืคืจื™ื•ืช, ืœื”ื‘ื˜ื™ื— ื”ืจื›ื‘ื” ื•ืœื ื”ืœ ืชืœื•ืช, ื”ืคืจื•ื™ืงื˜ ืžืคืชื— ืืช ืžื ื”ืœ ื”ื—ื‘ื™ืœื•ืช Cargo. ืžืื’ืจ crates.io ื ืชืžืš ืœืื™ืจื•ื— ืกืคืจื™ื•ืช.

ื—ื™ื“ื•ืฉื™ื ืขื™ืงืจื™ื™ื:

  • ื ื•ืกืคื” ื”ื™ื›ื•ืœืช ืœื”ืฉืชืžืฉ ื‘ืคืงื•ื“ื•ืช ืžืืงืจื• ื“ืžื•ื™ื•ืช ืคื•ื ืงืฆื™ื•ืช ื‘ืชื•ืš ืชื›ื•ื ื•ืช (ืคืงื•ื“ื•ืช ืžืืงืจื• ืคืจื•ืฆื“ื•ืจืœื™ื•ืช ื•ืคืงื•ื“ื•ืช ืžืืงืจื• ืฉื ื•ืฆืจื• ื‘ืืžืฆืขื•ืช ื”ืžืืงืจื• "acro_rules!". ืคืงื•ื“ื•ืช ืžืืงืจื• ื›ืืœื” ื ื‘ื“ืœื•ืช ืžืคื•ื ืงืฆื™ื•ืช ืขืœ ื™ื“ื™ ื”ืกืžืœ "!" ืื—ืจื™ ื”ืฉื (ืžืืงืจื•!(...)) ื•ื”ื—ืœืคืช ื˜ืงืกื˜ ืžืงื•ืจ ื”ืžืืงืจื• ื‘ืžืงื•ื ื™ืฆื™ืจืช ืงืจื™ืื” ืœืคื•ื ืงืฆื™ื”. ืงืจื™ืืช ืคืงื•ื“ื•ืช ืžืืงืจื• ื‘ืชื•ืš ืชื›ื•ื ื•ืช ื™ื›ื•ืœื” ืœื”ื™ื•ืช ืฉื™ืžื•ืฉื™ืช ืœื›ืœื•ืœ ืชื•ื›ืŸ ืžืงื‘ืฆื™ื ืื—ืจื™ื ื‘ืชื™ืขื•ื“ ื”ืขืจื•ืช. ืœื“ื•ื’ืžื”, ื›ื“ื™ ืœื”ื›ื ื™ืก ืืช ื”ืชื•ื›ืŸ ืฉืœ ืงื•ื‘ืฅ README ื•ืืช ื”ืชื•ืฆืื” ืฉืœ ื‘ื™ืฆื•ืข ื”ืกืงืจื™ืคื˜, ืืชื” ื™ื›ื•ืœ ืœืฆื™ื™ืŸ: #![doc = include_str!("README.md")] #[path = concat!(env!("OUT_DIR "), "/generated.rs" )] ืžื•ื“ ืฉื ื•ืฆืจ;
  • ืคื•ื ืงืฆื™ื•ืช ื”ืžื”ื“ืจ ื”ืžื•ื‘ื ื•ืช (Intrinsics) ืขื‘ื•ืจ ืคืœื˜ืคื•ืจืžืช wasm32 ื”ืชื™ื™ืฆื‘ื•, ืžื” ืฉืžืืคืฉืจ ืฉื™ืžื•ืฉ ื‘ื”ื•ืจืื•ืช SIMD ื‘-WebAssembly. ืจื•ื‘ ื”ืคื•ื ืงืฆื™ื•ืช, ื›ื’ื•ืŸ v128_bitselect, ื–ืžื™ื ื•ืช ื‘ืžืฆื‘ "ื‘ื˜ื•ื—", ืืš ื—ืœืง ืžื”ืคื•ื ืงืฆื™ื•ืช ืฉืขื•ื‘ื“ื•ืช ืขื ืžืฆื‘ื™ืขื™ื (ืœื“ื•ื’ืžื”, v128_load) ื ืฉืืจื•ืช "ืœื ื‘ื˜ื•ื—ื•ืช".
  • ืฉื™ืžื•ืฉ ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ืฉืœ ืงื•ืžืคื™ืœืฆื™ื” ืžืฆื˜ื‘ืจืช ื—ื–ืจ, ื•ืžืืคืฉืจ ืœืš ืœื‘ื ื•ืช ืžื—ื“ืฉ ืจืง ืืช ื”ื—ืœืงื™ื ืฉื”ืฉืชื ื• ื‘ืงื•ื“, ืžื” ืฉื™ื›ื•ืœ ืœื”ืคื—ื™ืช ืžืฉืžืขื•ืชื™ืช ืืช ื”ื–ืžืŸ ืฉืœื•ืงื— ืœื‘ื ื™ื™ืช ืคืจื•ื™ืงื˜ ื‘ืขืช ื”ื™ื“ื•ืจ ืžื—ื“ืฉ ืœืื—ืจ ื‘ื™ืฆื•ืข ืฉื™ื ื•ื™ื™ื ืงืœื™ื. ื”ื™ื“ื•ืจ ืžืฆื˜ื‘ืจ ื”ื•ืฉื‘ืช ื‘ืžื”ื“ื•ืจื” 1.52.1 ืขืงื‘ ื‘ืื’ื™ื ื ืกืชืจื™ื ืฉืฆืฆื• ืœืื—ืจ ื”ื•ืกืคืช ื‘ื“ื™ืงื” ื ื•ืกืคืช ืœื˜ืขื™ื ืช ื ืชื•ื ื™ื ืžืžื˜ืžื•ืŸ ื”ื“ื™ืกืง.
  • ื—ืœืง ื—ื“ืฉ ืฉืœ ืžืžืฉืงื™ API ื”ื•ืขื‘ืจ ืœืงื˜ื’ื•ืจื™ื™ืช ื”ื™ืฆื™ื‘ื•ืช, ื›ื•ืœืœ ื”ืชื™ื™ืฆื‘ื•ืช ื”ื‘ืื™ื:
      BTreeMap::into_keys
    • BTreeMap::into_values
    • HashMap::into_keys
    • HashMap::into_values
    • arch::wasm32
    • VecDeque::binary_search
    • VecDeque::binary_search_by
    • VecDeque::binary_search_by_key
    • VecDeque::partition_point
  • ืœืขืฅ ื”ืžื˜ืขืŸ ื ื•ืกืคื• ืืคืฉืจื•ื™ื•ืช: "โ€”Prune " ื›ื“ื™ ืœื”ืกื™ืจ ื—ื‘ื™ืœื” ืžื’ืจืฃ ื”ืชืœื•ืช, "โ€”depth" ื›ื“ื™ ืœื”ืฆื™ื’ ืจืง ืืœืžื ื˜ื™ื ืฉืœ ืจืžืช ืงื™ื ื•ืŸ ื ืชื•ื ื” ื‘ืขืฅ ื”ืชืœื•ืช, "โ€”edges no-proc- ืžืืงืจื•" ื›ื“ื™ ืœื”ืกืชื™ืจ ืชืœื•ืช ืฉืœ ืคืงื•ื“ื•ืช ืžืืงืจื• ืคืจื•ืฆื“ื•ืจืœื™ื•ืช.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”