There can be cases where the function is defined with some arguments untyped, but there is still some (more or less) restricted signature that is actually supported in terms of semantic versioning. One example is functions that take any callable object - naively you may want to type that as ::Function, but then you’d exclude callable structs. Of course, Anything is not actually always callable, so you’re only able to point that out in the docstring, not the actual signature.
3 Likes