Range implements Serializable, HasIsConstrained { public boolean before(final long num) { return to != null && to.longValue() <= num; } @JsonCreator  Range(@JsonProperty("from") final T from,
                 @JsonProperty("to") final T to,
                 @JsonProperty("matchNull") final boolean matchNull);  Range();  Range(final T from, final T to); static Range<T> of(final T from, final T to); static Range<T> from(final T from); static Range<T> to(final T to); boolean isMatchNull(); void setMatchNull(final boolean matchNull); boolean contains(final long num); boolean after(final long num); boolean before(final long num); T getFrom(); T getFromOrElse(final T other); T getTo(); T getToOrElse(final T other); @JsonIgnore boolean isBounded(); @JsonIgnore boolean isEmpty(); Number size(); @SuppressWarnings({"rawtypes", "unchecked"}) Range<T> union(final Range other); @JsonIgnore @Override boolean isConstrained(); @Override final boolean equals(final Object obj); boolean isMatch(final T num); @Override final int hashCode(); @Override String toString();  }
@Test void before() { assertThat(Range.of(10L, 20L).before(9)).isFalse(); assertThat(Range.of(10L, 20L).before(10)).isFalse(); assertThat(Range.of(10L, 20L).before(15)).isFalse(); assertThat(Range.of(10L, 20L).before(19)).isFalse(); assertThat(Range.of(10L, 20L).before(20L)).isTrue(); }