I've got a function of the form:
def get_new_file(prefix: str) -> pathlib.Path:
for i in itertools.count(0):
p = pathlib.Path(f'{prefix}_{i}')
if not p.is_file():
return p
# This line is unreachable.
mypy understandably complains that the function is missing a return statement. Is there a way to mark a line so as to inform mypy that the line should be considered unreachable?
This was raised as an issue. The recommended solution is assert False
.
def get_new_file(prefix: str) -> pathlib.Path:
for i in itertools.count(0):
p = pathlib.Path(f'{prefix}_{i}')
if not p.is_file():
return p
assert False