io.virtdata.libbasics.shared.from_double.to_other.NullIfWithin Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of virtdata-lib-realer Show documentation
Show all versions of virtdata-lib-realer Show documentation
With inspiration from other libraries
package io.virtdata.libbasics.shared.from_double.to_other;
import io.virtdata.annotations.Categories;
import io.virtdata.annotations.Category;
import io.virtdata.annotations.ThreadSafeMapper;
import java.util.function.DoubleFunction;
/**
* Yields a null if the input value is within the specified range,
* inclusive.
*/
@ThreadSafeMapper
@Categories(Category.nulls)
public class NullIfWithin implements DoubleFunction {
private final double min;
private final double max;
public NullIfWithin(double min, double max) {
this.min = min;
this.max = max;
}
@Override
public Double apply(double value) {
if (value>=min && value <=max) { return null; }
return value;
}
}