summaryrefslogtreecommitdiff
path: root/src/main/java/bjc/data/Pair.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/bjc/data/Pair.java')
-rw-r--r--src/main/java/bjc/data/Pair.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/main/java/bjc/data/Pair.java b/src/main/java/bjc/data/Pair.java
index fe65936..dd6ff7c 100644
--- a/src/main/java/bjc/data/Pair.java
+++ b/src/main/java/bjc/data/Pair.java
@@ -268,6 +268,15 @@ public interface Pair<LeftType, RightType> extends Bifunctor<LeftType, RightType
return new SimplePair<>(left, right);
}
+ /**
+ * Swap the left & right sides of this pair
+ *
+ * @return The pair with the left and right types swapped
+ */
+ public default Pair<RightType, LeftType> swap() {
+ return merge((l, r) -> Pair.pair(r, l));
+ }
+
@Override
default void formatTo(Formatter formatter, int flags, int width, int precision) {
if ((flags & FormattableFlags.ALTERNATE) != 0) {