From df852b8a67f4b8f1c3e6f89d8c3630e678c49c14 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Tue, 1 Mar 2016 20:43:09 -0500 Subject: Implemented support for lazy pairs --- .../main/java/bjc/utils/data/lazy/LazyPair.java | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyPair.java (limited to 'BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyPair.java') diff --git a/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyPair.java b/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyPair.java new file mode 100644 index 0000000..f680ed7 --- /dev/null +++ b/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyPair.java @@ -0,0 +1,31 @@ +package bjc.utils.data.lazy; + +import java.util.function.BiConsumer; +import java.util.function.BiFunction; +import java.util.function.Function; + +import bjc.utils.data.IPair; +import bjc.utils.data.Pair; + +public class LazyPair implements IPair { + private LazyHolder> del; + + @Override + public IPair apply(Function lf, + Function rf) { + return del.unwrap((par) -> par.apply(lf, rf)); + } + + @Override + public E merge(BiFunction bf) { + return del.unwrap((par) -> par.merge(bf)); + } + + @Override + public void doWith(BiConsumer bc) { + del.doWith((par) -> { + par.doWith(bc); + }); + } + +} -- cgit v1.2.3