Релиз Rust 1.53.0 — давно ожидаемый IntoIterator для массивов и огромное количество остальных новейших инноваций языка — анонсы на Tproger

Поделиться

В официальном блоге языка Rust возникла запись о релизе свежайшей версии под номером 1.53.0. По словам самих разрабов, в ней они решили сконцентрироваться на добавлении нескольких новейших языковых функций и огромного количества новейших функций библиотеки.

IntoIterator для массивов

«Звездой» апдейта стала возможность перебора массивов по значению через цикл for:

for i in [1, 2, 3] {
..
}

Ранее это работало только через конструкции вида &[1, 2, 3] либо [1, 2, 3].iter().

Вкупе с тем сейчас Rust-разработчики могут передавать массивы способам, ожидающим T: IntoIterator:

let set = BTreeSet::from_iter([1, 2, 3]);
for (a, b) in some_iterator.chain([1]).zip([1, 2, 3]) {
..
}

Unicode-идентификаторы

Сейчас идентификаторы могут содержать знаки, хорошие от ascii. К примеру, можно употреблять Unicode-символы, определённые в UAX # 31. Правда, есть и ограничение — эмодзи всё ещё запрещены.

Стабилизировали ряд API

В числе доделанных способов и трейтов оказались:

    array::from_ref
    array::from_mut
    AtomicBool::fetch_update
    AtomicPtr::fetch_update
    BTreeSet::retain
    BTreeMap::retain
    BufReader::seek_relative
    cmp::min_by
    cmp::min_by_key
    cmp::max_by
    cmp::max_by_key
    DebugStruct::finish_non_exhaustive
    Duration::ZERO
    Duration::MAX
    Duration::is_zero
    Duration::saturating_add
    Duration::saturating_sub
    Duration::saturating_mul

и огромное количество остальных.

Источник: tproger.ru

Поделиться с друзьями:
Андройд IT
Добавить комментарий