Может и подошёл бы, но компилятор стал ругаться на лайфтаймы в том месте где я использовал этот итератор. При этом на реализацию итератора не ругался. Я к этому моменту уже умаялся с ним, поэтому не стал дальше ковыряться и откатил все изменения. Завтра ещё раз попробую с предложенными тут решениями.
Вектор мутабельных слайсов это оченьстранная фигня. Сделал бы Vec<Box<[u32]>> тогда уж
У меня на вход приходит массив ссылок из C-шной либы, которая распаковывает картинки. В первую очередь мне нужно сделать интеграцию своего крекйта именно с таким вариантом. Я конечно могу взять и скопировать все строки изображения в один большой кускок памяти, но это занимает и время и память. Самое простое что я придумал - превартить массив ссылок в вектор слайсов.
самый простой способ будет держать указателями. Либо заворачивай в UnsafeCell
Хотелось бы иметь более rust-овый и safe-овый интерфейс у самого крейта, т.к. планирую его опублиовать его в crates.io для всех. Не хочется напрягать пользователей без необходимости указателями и unsafe-ами. Вариант с вектором слайсов показался наиболее простым для использования и при этом он safe-овый.
а пользователи при чем? Это же кишки, прячешь их за интерфейс. наружу отдаешь итераторы, инто век и ещё что-нибудь такое
Хм, у меня всё остальное, все алгоритмы ресайза картинок, были уже написаны на слайсах. Поэтому пошёл по простому пути.
ну говорю попробуй в UnsafeCell завернуть, там можно & в &mut
Обсуждают сегодня