Comment by ordu
11 hours ago
I don't see why it may fail to integrate. Declare Pin as !Move and... thats all? I mean, there will be issues, edge-cases because it is just how these things happen, but still I don't see any fundamental issues with continuing to use Pin.
Like others said, Pin is incompatible with these semantics. Some people argue, though, that we need both (basically because pinned types can be moved before being pinned).
Pin applies to the pointer, !Move applies to the pointee.
So... Pin should be defined as Pin<T: !Move>?
No, the point of Pin is to wrap types that CAN move. If the type were !Move then Pin wouldn't be needed.
6 replies →
Give it some time and see how people will use it and problems emerging. I do feel that this will stay.