public static <T extends RingPosition<T>> Boundary<T> minRight(Boundary<T> right1, T right2, boolean isInclusiveRight2) { return minRight(right1, new Boundary<T>(right2, isInclusiveRight2)); }
public Boundary<T> leftBoundary() { return new Boundary<>(left, inclusiveLeft()); }
public Boundary<T> rightBoundary() { return new Boundary<>(right, inclusiveRight()); }
public Boundary<T> leftBoundary() { return new Boundary<>(left, inclusiveLeft()); }
public Boundary<T> leftBoundary() { return new Boundary<>(left, inclusiveLeft()); }
public static <T extends RingPosition<T>> Boundary<T> maxLeft(Boundary<T> left1, T left2, boolean isInclusiveLeft2) { return maxLeft(left1, new Boundary<T>(left2, isInclusiveLeft2)); }
public static <T extends RingPosition<T>> Boundary<T> minRight(Boundary<T> right1, T right2, boolean isInclusiveRight2) { return minRight(right1, new Boundary<T>(right2, isInclusiveRight2)); }
public Boundary<T> leftBoundary() { return new Boundary<>(left, inclusiveLeft()); }
public static <T extends RingPosition<T>> Boundary<T> minRight(Boundary<T> right1, T right2, boolean isInclusiveRight2) { return minRight(right1, new Boundary<T>(right2, isInclusiveRight2)); }
public static <T extends RingPosition<T>> Boundary<T> maxLeft(Boundary<T> left1, T left2, boolean isInclusiveLeft2) { return maxLeft(left1, new Boundary<T>(left2, isInclusiveLeft2)); }
public static <T extends RingPosition<T>> Boundary<T> minRight(Boundary<T> right1, T right2, boolean isInclusiveRight2) { return minRight(right1, new Boundary<T>(right2, isInclusiveRight2)); }
public Boundary<T> rightBoundary() { return new Boundary<>(right, inclusiveRight()); }
public Boundary<T> leftBoundary() { return new Boundary<>(left, inclusiveLeft()); }
public Boundary<T> rightBoundary() { return new Boundary<>(right, inclusiveRight()); }
public Boundary<T> rightBoundary() { return new Boundary<>(right, inclusiveRight()); }
public static <T extends RingPosition<T>> Boundary<T> maxLeft(Boundary<T> left1, T left2, boolean isInclusiveLeft2) { return maxLeft(left1, new Boundary<T>(left2, isInclusiveLeft2)); }
public static <T extends RingPosition<T>> Boundary<T> minRight(Boundary<T> right1, T right2, boolean isInclusiveRight2) { return minRight(right1, new Boundary<T>(right2, isInclusiveRight2)); }
public static <T extends RingPosition<T>> Boundary<T> maxLeft(Boundary<T> left1, T left2, boolean isInclusiveLeft2) { return maxLeft(left1, new Boundary<T>(left2, isInclusiveLeft2)); }
public Boundary<T> rightBoundary() { return new Boundary<>(right, inclusiveRight()); }
public static <T extends RingPosition<T>> Boundary<T> maxLeft(Boundary<T> left1, T left2, boolean isInclusiveLeft2) { return maxLeft(left1, new Boundary<T>(left2, isInclusiveLeft2)); }