Are KeyPaths Codable?

Using .recursivelyAllKeyPaths from here, and a .recursivelyAllMemberNames that uses Mirror to traverse an object graph for member names, I've been able to make a mapping between name and KeyPath that enables making arbitrary-depth KeyPaths Codable.
My .recursivelyAllMemberNames is pretty hacky (including regex-ing mirror.description to pull out the width of a SIMD, for example). It would be nice if there was more Reflection functionality to get that in a less rickety way.