Path 1: 62 calls (0.65)

If (62)

False (62)

1def is_sys_guard(node: nodes.If) -> bool:
2    """Return True if IF stmt is a sys.version_info guard.
3
4    >>> import sys
5    >>> if sys.version_info > (3, 8):
6    >>>     from typing import Literal
7    >>> else:
8    >>>     from typing_extensions import Literal
9    """
10    if isinstance(node.test, nodes.Compare):
11        value = node.test.left
12        if isinstance(value, nodes.Subscript):
13            value = value.value
14        if (
15            isinstance(value, nodes.Attribute)
16            and value.as_string() == "sys.version_info"
17        ):
18            return True
19
20    return False
            

Path 2: 21 calls (0.22)

If (21)

True (21)

1def is_sys_guard(node: nodes.If) -> bool:
2    """Return True if IF stmt is a sys.version_info guard.
3
4    >>> import sys
5    >>> if sys.version_info > (3, 8):
6    >>>     from typing import Literal
7    >>> else:
8    >>>     from typing_extensions import Literal
9    """
10    if isinstance(node.test, nodes.Compare):
11        value = node.test.left
12        if isinstance(value, nodes.Subscript):
13            value = value.value
14        if (
15            isinstance(value, nodes.Attribute)
16            and value.as_string() == "sys.version_info"
17        ):
18            return True
19
20    return False
            

Path 3: 6 calls (0.06)

If (6)

True (6)

1def is_sys_guard(node: nodes.If) -> bool:
2    """Return True if IF stmt is a sys.version_info guard.
3
4    >>> import sys
5    >>> if sys.version_info > (3, 8):
6    >>>     from typing import Literal
7    >>> else:
8    >>>     from typing_extensions import Literal
9    """
10    if isinstance(node.test, nodes.Compare):
11        value = node.test.left
12        if isinstance(value, nodes.Subscript):
13            value = value.value
14        if (
15            isinstance(value, nodes.Attribute)
16            and value.as_string() == "sys.version_info"
17        ):
18            return True
19
20    return False
            

Path 4: 5 calls (0.05)

If (5)

False (5)

1def is_sys_guard(node: nodes.If) -> bool:
2    """Return True if IF stmt is a sys.version_info guard.
3
4    >>> import sys
5    >>> if sys.version_info > (3, 8):
6    >>>     from typing import Literal
7    >>> else:
8    >>>     from typing_extensions import Literal
9    """
10    if isinstance(node.test, nodes.Compare):
11        value = node.test.left
12        if isinstance(value, nodes.Subscript):
13            value = value.value
14        if (
15            isinstance(value, nodes.Attribute)
16            and value.as_string() == "sys.version_info"
17        ):
18            return True
19
20    return False
            

Path 5: 1 calls (0.01)

If (1)

False (1)

1def is_sys_guard(node: nodes.If) -> bool:
2    """Return True if IF stmt is a sys.version_info guard.
3
4    >>> import sys
5    >>> if sys.version_info > (3, 8):
6    >>>     from typing import Literal
7    >>> else:
8    >>>     from typing_extensions import Literal
9    """
10    if isinstance(node.test, nodes.Compare):
11        value = node.test.left
12        if isinstance(value, nodes.Subscript):
13            value = value.value
14        if (
15            isinstance(value, nodes.Attribute)
16            and value.as_string() == "sys.version_info"
17        ):
18            return True
19
20    return False