Help with a model regarding transfer of ownership of self

Let there be a structure, J, with a lifetime 'hvec (i.e., J: 'hvec)

Let there be an accessor structure, K, with lifetime 'visit, such that 'hvec : 'visit (i.e., the lifetime of K lasts less than the lifetime of J)

Suppose within K, there exists a mutable borrow to J.

Within K, there exists a function, M(self, [...]) that receives full ownership of self, an instance of K.

Within M(self, [...]), the idea is to execute some code, which notably includes a subroutine/closure which takes a mutable borrow of K, &mut K. The mutable borrow of K, &mut K, is passed in order to allow the code within the subroutine to access the mutable borrow &mut J referred-to by &mut K that it receives. Anyways...

The idea is to keep the owned version of K alive as the code within M(self, [...]) executes.

However, I am having a mighty fight with the borrow checker. Does anyone have an idea of how to complete this theoretical model without descending into unsafe code and transmutes?


This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.