diff options
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java | 19 |
1 files changed, 9 insertions, 10 deletions
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 85ec8f6..fe47dcc 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java +++ b/BJC-Utils2/src/main/java/bjc/utils/data/BoundListHolder.java @@ -8,8 +8,7 @@ import bjc.utils.funcdata.IList; class BoundListHolder<ContainedType> implements IHolder<ContainedType> { private IList<IHolder<ContainedType>> heldHolders; - public BoundListHolder( - IList<IHolder<ContainedType>> toHold) { + public BoundListHolder(IList<IHolder<ContainedType>> toHold) { heldHolders = toHold; } @@ -25,6 +24,14 @@ class BoundListHolder<ContainedType> implements IHolder<ContainedType> { } @Override + public <NewType> Function<ContainedType, IHolder<NewType>> lift( + Function<ContainedType, NewType> func) { + return (val) -> { + return new ListHolder<>(func.apply(val)); + }; + } + + @Override public <MappedType> IHolder<MappedType> map( Function<ContainedType, MappedType> mapper) { IList<IHolder<MappedType>> mappedHolders = heldHolders @@ -50,12 +57,4 @@ class BoundListHolder<ContainedType> implements IHolder<ContainedType> { Function<ContainedType, UnwrappedType> unwrapper) { return heldHolders.randItem().unwrap(unwrapper); } - - @Override - public <NewType> Function<ContainedType, IHolder<NewType>> lift( - Function<ContainedType, NewType> func) { - return (val) -> { - return new ListHolder<>(func.apply(val)); - }; - } } |
