New submission from Łukasz Langa <luk...@langa.pl>: With the patch attached to this issue, @singledispatch gains support for passing the type in @register via annotations.
This looks more natural and enables more thorough type checking without repeating yourself: @singledispatch def generic(arg): ... @generic.register def _(arg: str): ... @generic.register def _(arg: int): ... The previous API is still available for backwards compatibility, as well as stacking, and use with classes (sic, I was surprised to learn it's used that way, too). The patch should be uncontroversial, maybe except for the fact that it's importing the `typing` module if annotations are used. This is necessary because of forward references, usage of None as a type, and so on. More importantly, with PEP 563 it's mandatory. ---------- assignee: lukasz.langa components: Library (Lib) messages: 307686 nosy: lukasz.langa, rhettinger, yselivanov priority: normal severity: normal status: open title: singledispatch support for type annotations type: enhancement versions: Python 3.7 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue32227> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com