Всем привет! У меня проблема с лайфтаймами: У меня есть структура

Block внутри которой есть &’a [u8]
Соответсвенно у блока лт <‘a>
соответственно у меня impl Block требует <‘_>

Также у меня есть структура Chain которая содержит Vec<Block<‘a>>
Также есть impl Chain<‘_> внутри которого есть метод сигнатурой fn add(&mut self, block: Block), который вызывает .push(block) для вектора внутри Chain

Проблема: при компиляции возникает lifetime mismatch. Потому что у impl Chain стоит <‘_> один лт а у блока который передается в add() другой.
Без объявления слайса внутри Block, а, как следствие, без объявления ЛТ - все компилируется. Но мне нужен слайс, потому что у меня нужно держать в блоке массив байт, размер которого не известен в compile-time
Вопрос: Почему возникает конфликт лт (скорее всего догадываюсь, но хочу удостовериться)? И как исправить проблему?

2 ответов

4 просмотра

А как можно держать массив не известного размера?

ㅤ-Protocol Автор вопроса
ChzChz
А как можно держать массив не известного размера?

ну так у меня есть в Block поле data, размер которого заранее не может быть известен - поэтому я использую слайс и при создании блока в рантайме размер фиксирован

Похожие вопросы

Обсуждают сегодня

Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
а что делать если тебя убивают на картах?
Yarik yarik kyda ti lezesh
43
Как с помощью opencv найти ракету на картинке?))
ᅠ [ Кому не ответил, дублируйте ]
2
Мне вот что интересно, кто на рфе стартовал/играл, что вы фармили, в каком виде контента он прямо хорош? Экспедиция? Вроде прямо на замазанных мапах рф сдувается
Владислав
20
‌/r/pathofexile moderation changes top scoring links : pathofexile (RSS) Hi, everyone. On behalf of the subreddit mod team, I’m here to give you a few updates on the subreddi...
Esionru
3
Подскажите где можно прочитать про реализацию возможности писать человеку при подписке на телеграм канал от имени бота? Было бы не плохо если для Telegraf@3.38.0
Pan Lipton
10
У меня вопрос к знающими, стоит ли вступать в гильдии в игре или лучше полная свобода?
Енот Полоскун
17
У вас бывает ощущение, что хочется потратить весь отпуск на то, чтоб только спать?
Николай
15
Как можно настроить фильтр в пое под себя?
Yarik yarik kyda ti lezesh
15
Кто нибудь поясните это всё таки вброс или да? Про санктум слышал на поедб вбросили, а по дурке откуда инфа и на сколько это вообще правда? Пахнет шизофренией какой-то ✅Divi...
Dmitry Ritter
9
Карта сайта