А какие альтернативы? Можно было бы сделать мув конструкторы но они ансейф, можно сделать нативный саппорт нот мувабл типов - но это просто сахар над пинами. Ещё предложения?
Переписать борроу чекер чтобы он разрешил self-ref
А нужно чтобы был припинен только то поле на которое ссылаются
Эм,а это реально вообще? У тебя мув = memcpy всей структуры в рантайме. Чтобы сделать как ты хочешь, компилятор должен автоматом обновить ссылку после мува.
Эм,а это реально вообще? У тебя мув = memcpy всей структуры в рантайме. Чтобы сделать как ты хочешь, компилятор должен автоматом обновить ссылку после мува.
Т.е. когда есть struct { A RefA -> A }
После мува должно стать
struct { ACopy RefA -> ACopy }
поэтому нужна структура которая копирует только указатель, а данные по указателю никогда не муваются