Size: a a a

2020 October 29

A

Arsen in Rust Beginners
спасибо
источник

G

George in Rust Beginners
Выхлоп от cargo expand там жёсткий, правда. И внутри ансейфа немного.
источник

G

George in Rust Beginners
.iter()/.into_iter()

Быстрее чем


for i in 0..tasks.len() {
   // SAFETY: we always within the Index because of 0..tasks.len()
   task = unsafe {tasks.get_unchecked(i)}
}

?

Итераторы сами рассахариваются во что-то быстрое без проверки индексов?
источник

RG

Random Guy in Rust Beginners
George
.iter()/.into_iter()

Быстрее чем


for i in 0..tasks.len() {
   // SAFETY: we always within the Index because of 0..tasks.len()
   task = unsafe {tasks.get_unchecked(i)}
}

?

Итераторы сами рассахариваются во что-то быстрое без проверки индексов?
Да
источник

АГ

Алексей Герасимов... in Rust Beginners
George
.iter()/.into_iter()

Быстрее чем


for i in 0..tasks.len() {
   // SAFETY: we always within the Index because of 0..tasks.len()
   task = unsafe {tasks.get_unchecked(i)}
}

?

Итераторы сами рассахариваются во что-то быстрое без проверки индексов?
не быстрее, это одно и то же в лучшем случае. Итераторы тем и хороши, что мы не по индексу обращаемся, а последовательно, значить проверки индексов не нужны. Но не всегда копилятор может идеально скомпилировать цепочку комбинаторов, надо в асм смотреть чтобы убедиться
источник

G

George in Rust Beginners
То есть если длинная цепочка с известными величина - лучше руками работать?
А как на счёт этих:
.iter().for_each()
.iter().fold()
? Верно тоже самое?
источник

G

George in Rust Beginners
Тут кто-то писал, что fold лучше или по крайней мере не медленнее.
источник

АГ

Алексей Герасимов... in Rust Beginners
в идеале оно скомпилится в быстрый код, да, под это все заточено. но порой всплывают жалобы что где-то остаются неоптимальности
источник

ИЛ

Иван Лещенко... in Rust Beginners
Есть ли какой-то гайд как правильно составить ишью из-за ICE?
источник

ИЛ

Иван Лещенко... in Rust Beginners
У меня компилятор упал из-за того, что я просто не создал переменную
источник

ИЛ

Иван Лещенко... in Rust Beginners
Иван Лещенко
У меня компилятор упал из-за того, что я просто не создал переменную
источник

АГ

Алексей Герасимов... in Rust Beginners
Иван Лещенко
Есть ли какой-то гайд как правильно составить ишью из-за ICE?
он же вон сам написал где шаблон ишью смотреть
источник

ИЛ

Иван Лещенко... in Rust Beginners
Алексей Герасимов
он же вон сам написал где шаблон ишью смотреть
Шаблон это не всё
источник

ИЛ

Иван Лещенко... in Rust Beginners
Ещё нужно как-то создать минимальный пример как воспроизвести. Но это такая простая ошибка, что я даже не знаю откуда начать
источник

АГ

Алексей Герасимов... in Rust Beginners
а ты искал, может уже зарепортили?
источник

АГ

Алексей Герасимов... in Rust Beginners
Иван Лещенко
Ещё нужно как-то создать минимальный пример как воспроизвести. Но это такая простая ошибка, что я даже не знаю откуда начать
удаляй из своего кода куски пока проблема продолжит воспроизводиться
источник

ИЛ

Иван Лещенко... in Rust Beginners
Алексей Герасимов
а ты искал, может уже зарепортили?
Вроде оно https://github.com/rust-lang/rust/issues/77993 а вроде и нет
источник

ИЛ

Иван Лещенко... in Rust Beginners
Больше ICE богу ICE
источник

АГ

Алексей Герасимов... in Rust Beginners
допиши им в ишью, вдруг это другое
источник

ИЛ

Иван Лещенко... in Rust Beginners
Алексей Герасимов
допиши им в ишью, вдруг это другое
Я не могу это повторить на плейграунде
источник