Passed
Pull Request — main (#360)
by
unknown
01:36
created

pincer.utils.conversion.construct_client_dict()   A

Complexity

Conditions 1

Size

Total Lines 14
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 2
dl 0
loc 14
rs 10
c 0
b 0
f 0
cc 1
nop 2
1
# Copyright Pincer 2021-Present
0 ignored issues
show
introduced by
Missing module docstring
Loading history...
2
# Full MIT License can be found in `LICENSE` at the project root.
3
4
from __future__ import annotations
5
6
from typing import TYPE_CHECKING
7
8
if TYPE_CHECKING:
9
    from typing import Dict, List, Set, Union, Tuple
10
11
12
def remove_none(obj: Union[List, Dict, Set, Tuple]) -> Union[List, Dict, Set, Tuple]:
0 ignored issues
show
Unused Code introduced by
Either all return statements in a function should return an expression, or none of them should.
Loading history...
13
    """
14
    Removes all ``None`` values from a list, dict or set.
15
16
    Parameters
17
    ----------
18
    obj : Union[List, Dict, Set, Tuple]
19
        The list, dict, set or tuple to remove ``None`` values from.
20
21
    Returns
22
    -------
23
    Union[List, Dict, Set, Tuple]
24
        The list, dict, set or tuple, without ``None`` values.
25
    """
26
    if isinstance(obj, list):
0 ignored issues
show
unused-code introduced by
Unnecessary "elif" after "return"
Loading history...
27
        return [i for i in obj if i is not None]
28
    elif isinstance(obj, tuple):
29
        return tuple(i for i in obj if i is not None)
30
    elif isinstance(obj, set):
31
        return obj - {None}
32
    elif isinstance(obj, dict):
33
        return {k: v for k, v in obj.items() if None not in (k, v)}
34