Avatar
もし callAsFunction が暗黙的変換されるようになったら、 SE-0249 で色々がんばらなくても KeyPathcallAsFunction 付けたらそれで済むと思うんだけど、それだと key path 式に限らず KeyPath 全般が変換できるようになるのと、 KeyPath() でコールできるようになるのでまずいかな?
11:46 AM
subscript での [keyPath: keyPath] 形式は、さっきと同じで、左辺値の概念が入ってるんで、 そこは良いような気もしてます
一瞬なるほどと思ったけど、 foo[keyPath: \.bar]\.bar(foo) は主従が逆だからいいんじゃないかな? callAsFunction を持つのは KeyPath 側、 subscript(keyPath:) を持つのは Foo 側。