| ▲ | self_awareness 4 hours ago | |
It would be easier for you to argument that the user is expected to have discipline to NOT use "unsafe" keyword in all functions. Because a lot of mechanisms actually still have guards in runtime. And using .clone() on Rc/Arc is actually the idiomatic/preferred way of evading the borrow checker if we can't design the data structure in a different way. It's a big difference between cases when you need to spend brain energy to find ways to "out-smart" the compiler, and spend brain energy to "fit into the proper set of assumptions" of a programming language. | ||