Pull to refresh

Comments 4

Не очень перевод в этот раз, какие-то инопланетные фразы, по которым вообще ничего не понятно.

1

Теперь они рассматриваются как подсказки, которые компилятор не должен использовать. Также это не ошибка, предоставляющая диагностику, которую компилятор не распознаёт.

Чего? Не должен использовать? А в примере вывода вполне себе использует. Что в оригинале:

These are treated as hints which the compiler is not required to use, and it is also not an error to provide a diagnostic that the compiler doesn't recognize.

Правильный перевод будет таким:

Они содержат лишь подсказки, которые компилятор не заставляет выполнять. Можно указать диагностику, которую компилятор не понимает — ошибкой это считаться не будет.

2

// Создание отступа от `ptr` что всегда будет единственным отличием от корректного смещения `u16`

А точно тут «единственным»? Оригинал:

// Create an offset from `ptr` that will always be one off from `u16`'s correct alignment

Конечно, нет. Должно быть:

// Вычисляем отступ от `ptr`, на единицу меньший правильного выравнивания для `u16`

3

Эти предостережения в первую очередь существовали как страховка от вычисления const, но в любом случае они были стабильны только для использования вне const.

Ничего не понятно. Что ещё за вычисление const? И что значит «вне const»? Оригинал (кстати, почему «оговорки» из предыдущего предложения внезапно стали «предостережениями»?):

Those caveats primarily existed as a hedge against const evaluation, but they're only stable for non-const use anyway.

«Правильный» перевод (правда, я не знаю Rust и не уверен полностью насчёт того, что здесь имеется в виду под const, предполагаю, что это «вычисления в константном контексте»):

Эти оговорки в основном служили страховкой от вычислений в const-контексте, хотя указанные функции стабильны были всё равно только не в const-контексте.

4

Функции slice::align_to и slice::align_to_mut преобразуют срезы в выровненный срез средней части данных и невыровненные головной и хвостовой. Теперь они обещают возвращать максимально возможную среднюю часть — вместо того, чтобы позволять реализации возвращать что-то менее оптимальное. Например, возвращать всё в виде головного среза.

Вроде и понятно, но очень косноязычно. Оригинал значительно понятнее:

slice::align_to and slice::align_to_mut both transmute slices to an aligned middle slice and the remaining unaligned head and tail slices. These methods now promise to return the largest possible middle part, rather than allowing the implementation to return something less optimal like returning everything as the head slice.

Понятный перевод:

Функции slice::align_to и slice::align_to_mut разбивают срезы на части (до трёх штук): выровненную среднюю часть и невыровненные части по краям. Теперь они обещают возвращать среднюю часть наибольшего возможного размера. Ранее реализации могли возвращать что-то менее оптимальное — например, просто возвращать всё в виде первой невыровненной части.

Все это хорошо, но не совсем вовремя. Приглашаем в чат https://t.me/rustlang_ru_translations где вы сможете в след.раз написать все "правильно". Спасибо.

Давно хочу стать растаманом, начинаю читать книгу, а они всё обновления да обновления.

Страшно становится каждый раз :D

А что такого страшного в обновлениях?)

Sign up to leave a comment.

Articles