Path 1: 32 calls (0.55)

_ParameterSignature (32)

_CallSignature (32)

True (31) False (1)

GeneratorExit (1)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 2: 12 calls (0.21)

_ParameterSignature (12)

_CallSignature (12)

False (12)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 3: 3 calls (0.05)

_ParameterSignature (3)

_CallSignature (3)

True (3)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 4: 3 calls (0.05)

_ParameterSignature (3)

_CallSignature (3)

True (3)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 5: 2 calls (0.03)

_ParameterSignature (2)

_CallSignature (2)

False (2)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 6: 2 calls (0.03)

_ParameterSignature (2)

_CallSignature (2)

False (2)

GeneratorExit (2)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 7: 1 calls (0.02)

_ParameterSignature (1)

_CallSignature (1)

False (1)

GeneratorExit (1)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 8: 1 calls (0.02)

_ParameterSignature (1)

_CallSignature (1)

False (1)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 9: 1 calls (0.02)

_ParameterSignature (1)

_CallSignature (1)

False (1)

GeneratorExit (1)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)
            

Path 10: 1 calls (0.02)

_ParameterSignature (1)

_CallSignature (1)

False (1)

1def _definition_equivalent_to_call(
2    definition: _ParameterSignature, call: _CallSignature
3) -> bool:
4    """Check if a definition signature is equivalent to a call."""
5    if definition.kwargs:
6        if definition.kwargs not in call.starred_kws:
7            return False
8    elif call.starred_kws:
9        return False
10    if definition.varargs:
11        if definition.varargs not in call.starred_args:
12            return False
13    elif call.starred_args:
14        return False
15    if any(kw not in call.kws for kw in definition.kwonlyargs):
16        return False
17    if definition.args != call.args:
18        return False
19
20    # No extra kwargs in call.
21    return all(kw in call.args or kw in definition.kwonlyargs for kw in call.kws)