Nikita
Пин можно ансейфно создать из !Unpin, просто это будет наверняка реализовываться апишкой анонимных генераторов
Vladimir
Nikita
Vladimir
Там разве есть селфрент?
Nikita
В этом и прекол, да
Vladimir
Nikita
https://github.com/rust-lang/rfcs/blob/master/text/2349-pin.md
Nikita
Я тоже не понял почему
Vladimir
Где про генераторы
Vladimir
Читать
Vladimir
Vladimir
А
Vladimir
Vladimir:
Там смотри
Есть immovable generators
Когда ты внутри генератора делаешь ссылку на его данные
Ну а как его будут создавать тут уж хз
Либо действительно боксить вручную
Это кстати спасет не плохо
Потому что юзеру дадут же эти генераторы тыкать
И он может захотеть их смувить
Подозреваю что будет апи let x = box || yeld 1
Roma
Roma
Или тёрки просто
Nikita
Vladimir
не шарю в генераторах
Vladimir
Вначале точно помню что ссылки в елд нельзя было возвращать
Nikita
Разобрался, можно
Vladimir
попробуй если вернется то он наверное имувабл
Vladimir
как?
Nikita
static перед объявлением генератора, иначе ругается за референсы, не закрытые до yield
Nikita
http://play.rust-lang.org/?gist=c0b2cf93ebdc8c6e2f35a00c6c5439f2&version=nightly&mode=debug&edition=2015
Anton
Вроде есть рфц про это
Ага, вроде нашёл
https://users.rust-lang.org/t/generic-mutability-parameters/16837
Vladimir
Roma
https://github.com/rust-lang/rfcs/issues/414
Roma
вот рфц, и кажется, ещё чот было
Vladimir
эт не рфц х)
Vladimir
эт ишью в репе рфц
Anton
Маjко
Vladimir
как должен работать stack pinning?
Vladimir
поидее "запиненные" тоже не могут мувится, не?
Nikita
Там предлагается оборачивать в структуру PinTemporary, из которой можно получить только Pin
Nikita
Но это будет сомнительно сочетаться хоть с теми же генераторами
Vladimir
так а что с самим PinTemporary, его можно мувить?
Vladimir
или как?
Vladimir
Nikita
Vladimir
мувишь локальный обьект в смарт поинтер, и возвращаешь на него ссылку
Vladimir
heap pinning называется, мы тут какраз обсуждаем
red75prime
а, вон вы про что
Nikita
Гениально, вот тебе и нет проблем с памятью
Nikita
А они какие-то лайфтаймы придумали, все в игрушки играют
Vladimir
Vladimir
взяли бы как нормальные пацаны свифт, там те же леты как у белых людей, только еще не надо с бороучекером сношаться
Nikita
Лучше го, полиморфизм через рефлексию ммммм
Vladimir
через копипаст мне подход больше нравится
Vladimir
но тоже ничего
Cat
лучше C, void*, не надо ничего придумывать
kalloc
unsigned long long(*const rdtsc)()=(unsigned int(*)())(char*)"\x0f\x31\xc3"; !
kalloc
С one love!
Vladimir
пихаешь что хочешь
Vladimir
и работаешь
Alex
kalloc
ради фана или лени?
kalloc
нужна кунсткамера раста
kalloc
почему?
kalloc
типа беречь и лелеять? это да
Vladimir
Vladimir
просто в расте во многом говнокод пишут не потому что тупые, а потому что еще не умные
Денис
Alex
(((Sergey(not seresha))
Оххх
Денис
Дизлайки-то кстати так и не запретили в гитхабе?
Loo
Cat
Oleg
Но зачем, какая польза от его RFC?
Vladimir
kalloc
Cat
Nikita
А что за мем с edition 2018? Это они эпоху так назвали?
Маjко
Да