Size: a a a

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

2021 June 23

Э

Эрик in Rust — русскоговорящее сообщество
Если ты не можешь гарантировать, что лайфтаймы сойдутся, то ты не должен их трансмутить, всё очень просто.
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
Это не работает если ты принимаешь тип T не зная, какие у него лайфтаймы.
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
Но при этом способен гарантировать, что какими бы они ни были, ты позаимствуешь его на меньшее время.
источник

Э

Эрик in Rust — русскоговорящее сообщество
Ну и всё, значит юзер сам должен трансмутить лайфтаймы на этот тип, иначе ты получаешь unsound и ловишь шитштормы как actix.
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
По ссылке выше от меня решение, не требующее трансмутить.
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
И работающее для типов с неизвестным количеством лайфтаймовых параметров.
источник

П

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

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
Ну, все места где можно ошибиться помечены как ансейф и снабжены комментами о том, почему я думаю что это sound
источник

VL

Vital L in Rust — русскоговорящее сообщество
Как я понял там все становится статиком
источник

П

Пух in Rust — русскоговорящее сообщество
Ну временно трансмутится, наверн
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
Конечно когда ты стираешь лайфтаймы ты должен знать что делаешь и быть осторожен.
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
Нет, не трансмутится. TypeId используется исключительно для проверки запрашиваемого типа, и ссылку на значение этого типа гарантированно нельзя утечь за пределы скоупа.
источник

VL

Vital L in Rust — русскоговорящее сообщество
Но память освободится только когда программа сдохнет?
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
?
источник

П

Пух in Rust — русскоговорящее сообщество
Я не оч понимаю как оно работает, если честно
источник

VL

Vital L in Rust — русскоговорящее сообщество
Ну типа статик
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
Через задницу, если честно. Но другие пути еще хуже.
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
В том смысле, что не работают.
источник

П

Пух in Rust — русскоговорящее сообщество
Если игнорятся лайфтаймы, то фигня чуток
источник

MS

Mikola Summer Duck in Rust — русскоговорящее сообщество
Они не игнорятся. Они проверяются в другом месте.
источник