It's not really "legal" per se. But as it's currently documented, someone could pass in a `nil` block.

I'm thinking a better approach would be to document that it can't be passed in as `nil` and parameter assert?