diff options
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/data/WrappedLazy.java')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/data/WrappedLazy.java | 34 |
1 files changed, 12 insertions, 22 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/data/WrappedLazy.java b/BJC-Utils2/src/main/java/bjc/utils/data/WrappedLazy.java index b894ac7..d278358 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/data/WrappedLazy.java +++ b/BJC-Utils2/src/main/java/bjc/utils/data/WrappedLazy.java @@ -12,46 +12,37 @@ class WrappedLazy<ContainedType> implements IHolder<ContainedType> { // This has an extra parameter, because otherwise it erases to the same // as the public one - private WrappedLazy(IHolder<IHolder<ContainedType>> wrappedHolder, - boolean dummy) { + private WrappedLazy(IHolder<IHolder<ContainedType>> wrappedHolder, boolean dummy) { held = wrappedHolder; } @Override - public <BoundType> IHolder<BoundType> bind( - Function<ContainedType, IHolder<BoundType>> binder) { - IHolder<IHolder<BoundType>> newHolder = held - .map((containedHolder) -> { - return containedHolder.bind(binder); - }); + public <BoundType> IHolder<BoundType> bind(Function<ContainedType, IHolder<BoundType>> binder) { + IHolder<IHolder<BoundType>> newHolder = held.map((containedHolder) -> { + return containedHolder.bind(binder); + }); return new WrappedLazy<>(newHolder, false); } @Override - public <NewType> Function<ContainedType, IHolder<NewType>> lift( - Function<ContainedType, NewType> func) { + public <NewType> Function<ContainedType, IHolder<NewType>> lift(Function<ContainedType, NewType> func) { return (val) -> { return new Lazy<>(func.apply(val)); }; } @Override - public <MappedType> IHolder<MappedType> map( - Function<ContainedType, MappedType> mapper) { - IHolder<IHolder<MappedType>> newHolder = held - .map((containedHolder) -> { - return containedHolder.map(mapper); - }); + public <MappedType> IHolder<MappedType> map(Function<ContainedType, MappedType> mapper) { + IHolder<IHolder<MappedType>> newHolder = held.map((containedHolder) -> { + return containedHolder.map(mapper); + }); return new WrappedLazy<>(newHolder, false); } @Override - public IHolder<ContainedType> transform( - UnaryOperator<ContainedType> transformer) { - // FIXME this smells bad to me, but I can't figure out how else to - // do it + public IHolder<ContainedType> transform(UnaryOperator<ContainedType> transformer) { held.transform((containedHolder) -> { return containedHolder.transform(transformer); }); @@ -60,8 +51,7 @@ class WrappedLazy<ContainedType> implements IHolder<ContainedType> { } @Override - public <UnwrappedType> UnwrappedType unwrap( - Function<ContainedType, UnwrappedType> unwrapper) { + public <UnwrappedType> UnwrappedType unwrap(Function<ContainedType, UnwrappedType> unwrapper) { return held.unwrap((containedHolder) -> { return containedHolder.unwrap(unwrapper); }); |
