From 9fbd262dabfc74bf134855597815642bc4e3665c Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Mon, 11 Apr 2016 09:50:01 -0400 Subject: Added toStrings for easier debugging --- .../main/java/bjc/utils/data/lazy/LazyHolder.java | 29 ++++++++++++++++++++++ .../main/java/bjc/utils/data/lazy/LazyPair.java | 6 ++++- 2 files changed, 34 insertions(+), 1 deletion(-) (limited to 'BJC-Utils2/src/main/java/bjc/utils/data/lazy') diff --git a/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyHolder.java b/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyHolder.java index 9f9dc4a..85b7493 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyHolder.java +++ b/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyHolder.java @@ -79,6 +79,22 @@ public class LazyHolder implements IHolder, ILazy { }); } + @Override + public String toString() { + if (holderSource == null) { + if (holder == null) { + return "(null)"; + } + + return holder.toString(); + } + + if (holder == null) { + return "(unmaterialized values)"; + } + + return holder.toString(); + } } private static final class LazyHolderSupplier @@ -252,4 +268,17 @@ public class LazyHolder implements IHolder, ILazy { return binder.apply(unwrap((val) -> val)); }); } + + @Override + public String toString() { + if (isMaterialized()) { + if (hasPendingActions()) { + return heldValue.toString() + " (has pending actions)"; + } + + return heldValue.toString(); + } + + return "(unmaterialized value)"; + } } \ No newline at end of file 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 index 7ba7ee7..70f5478 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyPair.java +++ b/BJC-Utils2/src/main/java/bjc/utils/data/lazy/LazyPair.java @@ -173,7 +173,6 @@ public class LazyPair implements IPair, ILazy { @Override public IPair bind( BiFunction> binder) { - // TODO Auto-generated method stub IHolder> newDelegate = delegatePair .map((pairVal) -> { return pairVal.bind(binder); @@ -182,4 +181,9 @@ public class LazyPair implements IPair, ILazy { return new LazyPair<>(newDelegate, isMaterialized(), hasPendingActions()); } + + @Override + public String toString() { + return delegatePair.toString(); + } } \ No newline at end of file -- cgit v1.2.3