partial な borrow であるという情報が関数の境界を跨いで持ち越してもらえない問題なぁa
確かに不便ではあり、一方で境界の切り方としてはそんなもんかなという気持ちもある (でないと、コンパイル通ってたのに caller を追加した瞬間に callee 側でコンパイルエラーが出るみたいな嫌なことになりかねない)
partial な borrow を型として表現できないかみたいな話、誰かが書いてたな。何だっけ……
Notes on partial borrows - language design - Rust Internals
https://internals.rust-lang.org/t/notes-on-partial-borrows/20020
いろいろありそう
View types for Rust · baby steps
https://smallcultfollowing.com/babysteps//blog/2021/11/05/view-types/
Blog post: View types for Rust - language design - Rust Internals
https://internals.rust-lang.org/t/blog-post-view-types-for-rust/15556/2