From 4edf5785065ca1dd6331fcb3dd74abd3282bf44d Mon Sep 17 00:00:00 2001 From: Dominik1123 <15989985+Dominik1123@users.noreply.github.com> Date: Mon, 16 Nov 2020 02:30:55 +0100 Subject: [PATCH] bpo-42317: Improve docs of typing.get_args concerning Union (GH-23254) (cherry picked from commit c3b9592244a9112d8af9610ff1c4e1e4cd4bfaca) Co-authored-by: Dominik1123 <15989985+Dominik1123@users.noreply.github.com> --- Doc/library/typing.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Doc/library/typing.rst b/Doc/library/typing.rst index a5f8b0403f8031..324abdeb5eb5bb 100644 --- a/Doc/library/typing.rst +++ b/Doc/library/typing.rst @@ -1687,6 +1687,9 @@ Introspection helpers For a typing object of the form ``X[Y, Z, ...]`` these functions return ``X`` and ``(Y, Z, ...)``. If ``X`` is a generic alias for a builtin or :mod:`collections` class, it gets normalized to the original class. + If ``X`` is a :class:`Union` contained in another generic type, + the order of ``(Y, Z, ...)`` may be different from the order of + the original arguments ``[Y, Z, ...]`` due to type caching. For unsupported objects return ``None`` and ``()`` correspondingly. Examples::