Returns a position expression for the specified range, or an optimized boolean item. @param min minimum position @param max minimum position (inclusive) @param info input info (can be null) @return expression
(final long min, final long max, final InputInfo info)
| 46 | * @return expression |
| 47 | */ |
| 48 | public static Expr get(final long min, final long max, final InputInfo info) { |
| 49 | // assumption: positions do not exceed bounds of long values |
| 50 | return min > max || max < 1 ? Bln.FALSE : min <= 1 && max == MAX_VALUE ? Bln.TRUE : |
| 51 | new IntPos(Math.max(1, min), Math.max(1, max), info); |
| 52 | } |
| 53 | |
| 54 | @Override |
| 55 | public Bln item(final QueryContext qc, final InputInfo ii) throws QueryException { |