Size: a a a

Rust — русскоговорящее сообществo

2020 March 04

OA

Oleg Andreev in Rust — русскоговорящее сообществo
я понимаю, что софт один раз напишешь а потом типа всегда работает, но это если тебе платят за LOC. А потом это кому-то нужно читать и чинить через год
источник

r

red75prime in Rust — русскоговорящее сообществo
Oleg Andreev
cost-benefit analysis и все такое.
Это обычный irrefutable pattern match. Никакой особой инфраструктуры на этот случай там скорее всего не надо.
источник

AL

Andrey @ozkriff Lesnikov in Rust — русскоговорящее сообществo
Oleg Andreev
это прикольно, но зачем
Раст давно пинали, что массивы и срезы неполноценные в этом плане. Так что это практически дело чести)
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
да там у вас вообще все по понятиям
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
то ли дело в Си. Передаешь поинтер и не помолился - согрешил
источник

В

Вафель in Rust — русскоговорящее сообществo
Оооо, только теперь понял в чём проблемы с такой-же фичей для туплов
источник

RA

Roman Akberov in Rust — русскоговорящее сообществo
Ну так можно и про tuple/tuple struct паттерны сказать.
источник

BV

Boris Vinogradov in Rust — русскоговорящее сообществo
Вафель
Оооо, только теперь понял в чём проблемы с такой-же фичей для туплов
сегодня в растблоге писали как раз про всякие такие штуки
источник

r

red75prime in Rust — русскоговорящее сообществo
slice::split() разбивает с исключением заматченных элементов. А как бы разбить слайс без их исключения? То есть резать слайс между текущим и предыдущим элементом, если предикат вернул true.
источник

В

Вафель in Rust — русскоговорящее сообществo
red75prime
slice::split() разбивает с исключением заматченных элементов. А как бы разбить слайс без их исключения? То есть резать слайс между текущим и предыдущим элементом, если предикат вернул true.
[0, 1, 2, 3].split(|n| n % 2 == 0)

Должен выдать [0], [1, 2], [3]?
источник

r

red75prime in Rust — русскоговорящее сообществo
[], [0, 1], [2, 3]
источник

В

Вафель in Rust — русскоговорящее сообществo
Сейчас попробую придумать 🤔
источник

r

red75prime in Rust — русскоговорящее сообществo
Задачу я уже по-другому решил, потом подумаю как можно сделать
источник

RA

Roman Akberov in Rust — русскоговорящее сообществo
red75prime
slice::split() разбивает с исключением заматченных элементов. А как бы разбить слайс без их исключения? То есть резать слайс между текущим и предыдущим элементом, если предикат вернул true.
источник

r

red75prime in Rust — русскоговорящее сообществo
"Also that looks like an advent of code problem" Хех. Но таки понадобилось в реальном коде. Запись данных в файлы фиксированного размера
источник

В

Вафель in Rust — русскоговорящее сообществo
red75prime
"Also that looks like an advent of code problem" Хех. Но таки понадобилось в реальном коде. Запись данных в файлы фиксированного размера
а почему тогда не chunks?
источник

r

red75prime in Rust — русскоговорящее сообществo
Вафель
а почему тогда не chunks?
Потому что данные разного размера и между файлами их... ну не то чтобы нельзя, но лучше не разбивать
источник

СМ

Сергей Майоров in Rust — русскоговорящее сообществo
вопрос
вот примерно такой код собирается
fn myfunc1(arg: &mut mytype) {
   somefunc(arg);
}
теперь mytype завернут в enum
enum myenum {
  one,
  two(mytype),
}

fn myfunc2(arg: &mut myenum) {
     match arg {
       one => bla-bla-lba,
       two(mut p) => myfunc(&mut p),
     }
}
уже не собирается хотя это по усти тоже самое только в enum'е
как решить проблему?
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Сергей Майоров
вопрос
вот примерно такой код собирается
fn myfunc1(arg: &mut mytype) {
   somefunc(arg);
}
теперь mytype завернут в enum
enum myenum {
  one,
  two(mytype),
}

fn myfunc2(arg: &mut myenum) {
     match arg {
       one => bla-bla-lba,
       two(mut p) => myfunc(&mut p),
     }
}
уже не собирается хотя это по усти тоже самое только в enum'е
как решить проблему?
two(ref mut p) => myfunc(p),
источник

🦉⁣

🦉 ⁣ in Rust — русскоговорящее сообществo
Сергей Майоров
вопрос
вот примерно такой код собирается
fn myfunc1(arg: &mut mytype) {
   somefunc(arg);
}
теперь mytype завернут в enum
enum myenum {
  one,
  two(mytype),
}

fn myfunc2(arg: &mut myenum) {
     match arg {
       one => bla-bla-lba,
       two(mut p) => myfunc(&mut p),
     }
}
уже не собирается хотя это по усти тоже самое только в enum'е
как решить проблему?
ref mut p ?
источник