functionalj.lens.lenses.java.time.LocalDateTimeAccess Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of functionalj-core Show documentation
Show all versions of functionalj-core Show documentation
The module for FunctionalJ Core.
package functionalj.lens.lenses.java.time;
import java.time.Duration;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.time.chrono.ChronoLocalDate;
import java.time.chrono.ChronoZonedDateTime;
import java.time.temporal.TemporalAdjuster;
import java.time.temporal.TemporalAmount;
import java.time.temporal.TemporalField;
import java.time.temporal.TemporalUnit;
import java.util.function.Function;
import functionalj.lens.lenses.AnyAccess;
import functionalj.lens.lenses.BooleanAccess;
import functionalj.lens.lenses.BooleanAccessPrimitive;
import functionalj.lens.lenses.ConcreteAccess;
import functionalj.lens.lenses.IntegerAccessPrimitive;
import lombok.val;
@FunctionalInterface
public interface LocalDateTimeAccess
extends AnyAccess
, TemporalAccess
, TemporalAdjusterAccess
, ChronoLocalDateTimeAccess
, ConcreteAccess > {
public static LocalDateTimeAccess of(Function func) {
return func::apply;
}
public default LocalDateTimeAccess newAccess(Function accessToValue) {
return host -> accessToValue.apply(host);
}
public default LocalDateAccess toLocalDate() {
return host -> {
val value = apply(host);
return value.toLocalDate();
};
}
public default IntegerAccessPrimitive getYear() {
return host -> {
val value = apply(host);
return value.getYear();
};
}
public default IntegerAccessPrimitive getMonthValue() {
return host -> {
val value = apply(host);
return value.getMonthValue();
};
}
public default MonthAccess getMonth() {
return host -> {
val value = apply(host);
return value.getMonth();
};
}
public default IntegerAccessPrimitive getDayOfMonth() {
return host -> {
val value = apply(host);
return value.getDayOfMonth();
};
}
public default IntegerAccessPrimitive getDayOfYear() {
return host -> {
val value = apply(host);
return value.getDayOfYear();
};
}
public default DayOfWeekAccess getDayOfWeek() {
return host -> {
val value = apply(host);
return value.getDayOfWeek();
};
}
public default LocalTimeAccess toLocalTime() {
return host -> {
val value = apply(host);
return value.toLocalTime();
};
}
public default IntegerAccessPrimitive getHour() {
return host -> {
val value = apply(host);
return value.getHour();
};
}
public default IntegerAccessPrimitive getMinute() {
return host -> {
val value = apply(host);
return value.getMinute();
};
}
public default IntegerAccessPrimitive getSecond() {
return host -> {
val value = apply(host);
return value.getSecond();
};
}
public default IntegerAccessPrimitive getNano() {
return host -> {
val value = apply(host);
return value.getNano();
};
}
public default LocalDateTimeAccess with(TemporalAdjuster adjuster) {
return host -> {
val value = apply(host);
return value.with(adjuster);
};
}
public default LocalDateTimeAccess with(TemporalField field, long newValue) {
return host -> {
val value = apply(host);
return value.with(field, newValue);
};
}
public default LocalDateTimeAccess withYear(int year) {
return host -> {
val value = apply(host);
return value.withYear(year);
};
}
public default LocalDateTimeAccess withMonth(int month) {
return host -> {
val value = apply(host);
return value.withMonth(month);
};
}
public default LocalDateTimeAccess withDayOfMonth(int dayOfMonth) {
return host -> {
val value = apply(host);
return value.withDayOfMonth(dayOfMonth);
};
}
public default LocalDateTimeAccess withDayOfYear(int dayOfYear) {
return host -> {
val value = apply(host);
return value.withDayOfYear(dayOfYear);
};
}
public default LocalDateTimeAccess withHour(int hour) {
return host -> {
val value = apply(host);
return value.withHour(hour);
};
}
public default LocalDateTimeAccess withMinute(int minute) {
return host -> {
val value = apply(host);
return value.withMinute(minute);
};
}
public default LocalDateTimeAccess withSecond(int second) {
return host -> {
val value = apply(host);
return value.withSecond(second);
};
}
public default LocalDateTimeAccess withNano(int nanoOfSecond) {
return host -> {
val value = apply(host);
return value.withNano(nanoOfSecond);
};
}
public default LocalDateTimeAccess truncatedTo(TemporalUnit unit) {
return host -> {
val value = apply(host);
return value.truncatedTo(unit);
};
}
public default LocalDateTimeAccess plus(TemporalAmount amountToAdd) {
return host -> {
val value = apply(host);
return value.plus(amountToAdd);
};
}
public default LocalDateTimeAccess plus(long amountToAdd, TemporalUnit unit) {
return host -> {
val value = apply(host);
return value.plus(amountToAdd, unit);
};
}
public default LocalDateTimeAccess plusYears(long years) {
return host -> {
val value = apply(host);
return value.plusYears(years);
};
}
public default LocalDateTimeAccess plusMonths(long months) {
return host -> {
val value = apply(host);
return value.plusMonths(months);
};
}
public default LocalDateTimeAccess plusWeeks(long weeks) {
return host -> {
val value = apply(host);
return value.plusWeeks(weeks);
};
}
public default LocalDateTimeAccess plusDays(long days) {
return host -> {
val value = apply(host);
return value.plusDays(days);
};
}
public default LocalDateTimeAccess plusHours(long hours) {
return host -> {
val value = apply(host);
return value.plusHours(hours);
};
}
public default LocalDateTimeAccess plusMinutes(long minutes) {
return host -> {
val value = apply(host);
return value.plusMinutes(minutes);
};
}
public default LocalDateTimeAccess plusSeconds(long seconds) {
return host -> {
val value = apply(host);
return value.plusSeconds(seconds);
};
}
public default LocalDateTimeAccess plusNanos(long nanos) {
return host -> {
val value = apply(host);
return value.plusNanos(nanos);
};
}
public default LocalDateTimeAccess minus(TemporalAmount amountToSubtract) {
return host -> {
val value = apply(host);
return value.minus(amountToSubtract);
};
}
public default LocalDateTimeAccess minus(long amountToSubtract, TemporalUnit unit) {
return host -> {
val value = apply(host);
return value.minus(amountToSubtract, unit);
};
}
public default LocalDateTimeAccess minusYears(long years) {
return host -> {
val value = apply(host);
return value.minusYears(years);
};
}
public default LocalDateTimeAccess minusMonths(long months) {
return host -> {
val value = apply(host);
return value.minusMonths(months);
};
}
public default LocalDateTimeAccess minusWeeks(long weeks) {
return host -> {
val value = apply(host);
return value.minusWeeks(weeks);
};
}
public default LocalDateTimeAccess minusDays(long days) {
return host -> {
val value = apply(host);
return value.minusDays(days);
};
}
public default LocalDateTimeAccess minusHours(long hours) {
return host -> {
val value = apply(host);
return value.minusHours(hours);
};
}
public default LocalDateTimeAccess minusMinutes(long minutes) {
return host -> {
val value = apply(host);
return value.minusMinutes(minutes);
};
}
public default LocalDateTimeAccess minusSeconds(long seconds) {
return host -> {
val value = apply(host);
return value.minusSeconds(seconds);
};
}
public default LocalDateTimeAccess minusNanos(long nanos) {
return host -> {
val value = apply(host);
return value.minusNanos(nanos);
};
}
public default OffsetDateTimeAccess atOffset(ZoneOffset offset) {
return host -> {
val value = apply(host);
return value.atOffset(offset);
};
}
public default ChronoZonedDateTimeAccess> atZone(ZoneId zone) {
return host -> {
val value = apply(host);
return value.atZone(zone);
};
}
public default DurationAccess durationTo(LocalDateTime endTimeExclusive) {
return host -> {
val value = apply(host);
return Duration.between(value, endTimeExclusive);
};
}
public default DurationAccess durationFrom(LocalDateTime startTimeInclusive) {
return host -> {
val value = apply(host);
return Duration.between(startTimeInclusive, value);
};
}
public default IntegerAccessPrimitive compareTo(LocalDateTime other) {
return host -> {
val value = apply(host);
return value.compareTo(other);
};
}
public default BooleanAccess thatGreaterThan(LocalDateTime anotherValue) {
return booleanAccess(false, any -> any.compareTo(anotherValue) > 0);
}
public default BooleanAccess thatLessThan(LocalDateTime anotherValue) {
return booleanAccess(false, any -> any.compareTo(anotherValue) < 0);
}
public default BooleanAccess thatGreaterThanOrEqualsTo(LocalDateTime anotherValue) {
return booleanAccess(false, any -> any.compareTo(anotherValue) >= 0);
}
public default BooleanAccess thatLessThanOrEqualsTo(LocalDateTime anotherValue) {
return booleanAccess(false, any -> any.compareTo(anotherValue) <= 0);
}
public default BooleanAccessPrimitive thatIsAfter(LocalDateTime other) {
return host -> {
val value = apply(host);
return value.isAfter(other);
};
}
public default BooleanAccessPrimitive thatIsBefore(LocalDateTime other) {
return host -> {
val value = apply(host);
return value.isBefore(other);
};
}
public default BooleanAccessPrimitive thatIsEqual(LocalDateTime other) {
return host -> {
val value = apply(host);
return value.isEqual(other);
};
}
}