Skip to content

Commit 3488ff7

Browse files
committed
Remove extraneous checks.
1 parent 5b1a20e commit 3488ff7

File tree

1 file changed

+10
-15
lines changed

1 file changed

+10
-15
lines changed

rust_fst/set.py

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -467,10 +467,9 @@ def __getitem__(self, s):
467467
if s.start and s.stop and s.start > s.stop:
468468
raise ValueError(
469469
"Start key must be lexicographically smaller than stop.")
470-
if len(self.sets) <= 1:
471-
raise ValueError(
472-
"Must have more than one set to operate on.")
473470

471+
if not self.sets:
472+
return
474473
opbuilder = OpBuilder.from_slice(self.sets[0]._ptr, s)
475474
streams = []
476475
for fst in self.sets[1:]:
@@ -483,9 +482,8 @@ def __getitem__(self, s):
483482
def __iter__(self):
484483
""" Get an iterator over all keys in all sets in lexicographical order.
485484
"""
486-
if len(self.sets) <= 1:
487-
raise ValueError(
488-
"Must have more than one set to operate on.")
485+
if not self.sets:
486+
return
489487
opbuilder = OpBuilder(self.sets[0]._ptr,
490488
input_type=OpBuilderInputType.SET)
491489
for fst in self.sets[1:]:
@@ -494,12 +492,11 @@ def __iter__(self):
494492

495493
def _make_opbuilder(self, *others):
496494
others = list(others)
497-
if len(self.sets) <= 1:
498-
raise ValueError(
499-
"Must have more than one set to operate on.")
500495
if not others:
501496
raise ValueError(
502497
"Must have at least one set to compare against.")
498+
if not self.sets:
499+
return
503500
our_opbuilder = OpBuilder(self.sets[0]._ptr,
504501
input_type=OpBuilderInputType.SET)
505502
for fst in self.sets[1:]:
@@ -544,9 +541,8 @@ def search(self, term, max_dist):
544541
:returns: Iterator over matching values in the set
545542
:rtype: :py:class:`KeyStreamIterator`
546543
"""
547-
if len(self.sets) <= 1:
548-
raise ValueError(
549-
"Must have more than one set to operate on.")
544+
if not self.sets:
545+
return
550546
opbuilder = OpBuilder.from_search(self.sets[0], term, max_dist)
551547
for fst in self.sets[1:]:
552548
opbuilder.push(_build_levsearch(fst, term, max_dist))
@@ -576,9 +572,8 @@ def search_re(self, pattern):
576572
:returns: An iterator over all matching keys in the set
577573
:rtype: :py:class:`KeyStreamIterator`
578574
"""
579-
if len(self.sets) <= 1:
580-
raise ValueError(
581-
"Must have more than one set to operate on.")
575+
if not self.sets:
576+
return
582577
opbuilder = OpBuilder.from_search_re(self.sets[0], pattern)
583578
for fst in self.sets[1:]:
584579
opbuilder.push(_build_research(fst, pattern))

0 commit comments

Comments
 (0)