summaryrefslogtreecommitdiff
path: root/base/src/main/java/bjc/utils/data/internals/WrappedOption.java
diff options
context:
space:
mode:
Diffstat (limited to 'base/src/main/java/bjc/utils/data/internals/WrappedOption.java')
-rw-r--r--base/src/main/java/bjc/utils/data/internals/WrappedOption.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/base/src/main/java/bjc/utils/data/internals/WrappedOption.java b/base/src/main/java/bjc/utils/data/internals/WrappedOption.java
index 512c699..872295f 100644
--- a/base/src/main/java/bjc/utils/data/internals/WrappedOption.java
+++ b/base/src/main/java/bjc/utils/data/internals/WrappedOption.java
@@ -6,13 +6,30 @@ import java.util.function.UnaryOperator;
import bjc.utils.data.IHolder;
import bjc.utils.data.Option;
+/**
+ * A wrapped optional value.
+ *
+ * @author Ben Culkin.
+ */
public class WrappedOption<ContainedType> implements IHolder<ContainedType> {
+ /* The held value. */
private final IHolder<IHolder<ContainedType>> held;
+ /**
+ * Create a new wrapped option.
+ *
+ * @param seedValue
+ * The value to wrap.
+ */
public WrappedOption(final IHolder<ContainedType> seedValue) {
held = new Option<>(seedValue);
}
+ /*
+ * The dummy parameter is to ensure the compiler can pick the right
+ * method, because without this method erases to the same type as the
+ * public one.
+ */
private WrappedOption(final IHolder<IHolder<ContainedType>> toHold, final boolean dummy) {
held = toHold;
}