Skip to content

Report useless ternary operator #1706

@orsinium

Description

@orsinium

Rule request

Thesis

Detect if both possible results of a ternary operator return the same value.

# bad
# (all results below can be replaced by just `a`)
a if ... else a
a if a is not None else None
a if a != b else b
b if a == b else a

# ok
a if ... else c
a.split() if a is not None else None
a if a != b else c

Reasoning

It is either a bug or unnecessary complexity.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions