KeySpecifier improvements
Closes #1151 (closed) I think.
Items 1-7, 8, 10 were straightforward and have come out nicely, I think. 7a is no longer needed, as the macro no longer has any local variables named after fields.
I chose not to do 9 (change to the signature of KeySpecifierComponent::to_component
). I think it's fine the way it is. The std::fmt
API is awkward because you can't just take something which has such a fmt
method and convert it to a string without inventing adapter newtypes.
I also added the role (which is the spec name) to KeyPathInfo
. I'm sure there was a todo about this somewhere but I couldn't find it to tick it off.
Closes #1147 (closed) #1126 (closed)
Edited by Ian Jackson