From ba9cf27de7e9f31dfa97a7266979f300101d67f9 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Thu, 10 Nov 2016 19:44:22 -0500 Subject: Doc updates --- .../main/java/bjc/utils/data/BoundListHolder.java | 26 +++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java') diff --git a/BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java b/BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java index fe47dcc..a967383 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java +++ b/BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java @@ -5,6 +5,9 @@ import java.util.function.UnaryOperator; import bjc.utils.funcdata.IList; +/* + * Holds a list, converted into a holder + */ class BoundListHolder implements IHolder { private IList> heldHolders; @@ -15,6 +18,10 @@ class BoundListHolder implements IHolder { @Override public IHolder bind( Function> binder) { + if (binder == null) { + throw new NullPointerException("Binder must not be null"); + } + IList> boundHolders = heldHolders .map((containedHolder) -> { return containedHolder.bind(binder); @@ -26,6 +33,11 @@ class BoundListHolder implements IHolder { @Override public Function> lift( Function func) { + if (func == null) { + throw new NullPointerException( + "Function to lift must not be null"); + } + return (val) -> { return new ListHolder<>(func.apply(val)); }; @@ -34,6 +46,10 @@ class BoundListHolder implements IHolder { @Override public IHolder map( Function mapper) { + if (mapper == null) { + throw new NullPointerException("Mapper must not be null"); + } + IList> mappedHolders = heldHolders .map((containedHolder) -> { return containedHolder.map(mapper); @@ -45,6 +61,10 @@ class BoundListHolder implements IHolder { @Override public IHolder transform( UnaryOperator transformer) { + if (transformer == null) { + throw new NullPointerException("Transformer must not be null"); + } + heldHolders.forEach((containedHolder) -> { containedHolder.transform(transformer); }); @@ -55,6 +75,10 @@ class BoundListHolder implements IHolder { @Override public UnwrappedType unwrap( Function unwrapper) { + if (unwrapper == null) { + throw new NullPointerException("Unwrapper must not be null"); + } + return heldHolders.randItem().unwrap(unwrapper); } -} +} \ No newline at end of file -- cgit v1.2.3