Skip to content

Commit

Permalink
optimise range check
Browse files Browse the repository at this point in the history
  • Loading branch information
yatharthranjan committed Jul 30, 2021
1 parent 6fe931d commit 106713e
Showing 1 changed file with 1 addition and 9 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
package org.radarbase.schema.tools;

import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import net.sourceforge.argparse4j.inf.ArgumentChoice;
import net.sourceforge.argparse4j.inf.ArgumentParser;
import net.sourceforge.argparse4j.inf.Namespace;
Expand Down Expand Up @@ -48,20 +45,15 @@ class IntRangeArgumentChoice implements ArgumentChoice {

private final int minRange;
private final int maxRange;
private final Set<Integer> range;

public IntRangeArgumentChoice(int minRange, int maxRange) {
this.minRange = minRange;
this.maxRange = maxRange;
this.range = IntStream
.rangeClosed(minRange, maxRange)
.boxed()
.collect(Collectors.toUnmodifiableSet());
}

@Override
public boolean contains(Object val) {
return range.contains((int) val);
return val instanceof Integer && (Integer) val >= minRange && (Integer) val <= maxRange;
}

@Override
Expand Down

0 comments on commit 106713e

Please sign in to comment.