I think this is fine. At the point where the -b argument is matched, it is not clear what key-type is being handled. It is in your case, but not if -b and -t arguments are swapped.You can go read the source to see why.
Cool! Thanks for the education!