no-else-raise / R1720ΒΆ
Message emitted:
Unnecessary "%s" after "raise", %s
Description:
Used in order to highlight an unnecessary block of code following an if, or a try/except containing a raise statement. As such, it will warn when it encounters an else following a chain of ifs, all of them containing a raise statement.
Problematic code:
def integer_sum(a: int, b: int) -> int:
if not (isinstance(a, int) and isinstance(b, int)): # [no-else-raise]
raise ValueError("Function supports only integer parameters.")
else:
return a + b
Correct code:
def integer_sum(a: int, b: int) -> int:
if not (isinstance(a, int) and isinstance(b, int)):
raise ValueError("Function supports only integer parameters.")
return a + b
Created by the refactoring checker.