Skip to content

Commit f75ef82

Browse files
committed
fix: make __len__ and __iter__ consistent
1 parent 03c627d commit f75ef82

1 file changed

Lines changed: 2 additions & 4 deletions

File tree

src/snakemake/scheduling/milp.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ def nondefault_solvers(self) -> List[str]:
4444
def __iter__(self) -> Iterator[str]:
4545
if self.default is not None:
4646
yield self.default
47-
yield from self.nondefault_solvers
47+
yield from self.nondefault_solvers
4848

4949
def __contains__(self, x: object) -> bool:
5050
try:
@@ -55,9 +55,7 @@ def __contains__(self, x: object) -> bool:
5555
return False
5656

5757
def __len__(self) -> int:
58-
if self.default is None:
59-
return 0
60-
return 1 + len(self.nondefault_solvers)
58+
return (1 if self.default is not None else 0) + len(self.nondefault_solvers)
6159

6260

6361
lp_solvers = LpSolverCollection()

0 commit comments

Comments
 (0)