From d3d940cdb143494122a5dec2f137b655d529a4b3 Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Tue, 20 Oct 2020 18:43:18 -0400 Subject: Add additional tests Clean up the tests for BooleanToggle, and add a basic test for Either --- src/main/java/bjc/data/BooleanToggle.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/java/bjc/data') diff --git a/src/main/java/bjc/data/BooleanToggle.java b/src/main/java/bjc/data/BooleanToggle.java index af083f5..3e41d6d 100644 --- a/src/main/java/bjc/data/BooleanToggle.java +++ b/src/main/java/bjc/data/BooleanToggle.java @@ -76,6 +76,6 @@ public class BooleanToggle implements Toggle { @Override public String toString() { - return String.format("BooleanToggle [val=%s]", val); + return String.format("%s", val); } } -- cgit v1.2.3 From a9cf11c9d27bada2eaee1aefd27c4765bf2917a1 Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Sat, 31 Oct 2020 11:13:52 -0400 Subject: Do some restructuring of things --- src/main/java/bjc/data/IntHolder.java | 72 +++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 src/main/java/bjc/data/IntHolder.java (limited to 'src/main/java/bjc/data') diff --git a/src/main/java/bjc/data/IntHolder.java b/src/main/java/bjc/data/IntHolder.java new file mode 100644 index 0000000..2783669 --- /dev/null +++ b/src/main/java/bjc/data/IntHolder.java @@ -0,0 +1,72 @@ +package bjc.data; + +/** + * Utility class for ints by ref. + * + * @author Ben Culkin + */ +public class IntHolder { + /** + * The int value. + */ + public int val; + + /** + * Create a new int-holder set to 0. + */ + public IntHolder() { + val = 0; + } + + /** + * Create a new int-holder set to a value. + * + * @param i + * The value to set the int to. + */ + public IntHolder(int i) { + val = i; + } + + /** + * Increment the value by one, and return it. + * + * @return The value of the holder. + */ + public int incr() { + return incr(1); + } + + /** + * Increment the value by an amount and return it. + * + * @param i + * The amount to increment by. + * + * @return The value of the holder. + */ + public int incr(int i) { + val += 1; + + return val; + } + + /** + * Get the value. + * + * @return The value. + */ + public int get() { + return val; + } + + /** + * Set the value. + * + * @param i + * The value to set it to. + */ + public void set(int i) { + val = i; + } +} -- cgit v1.2.3 From 169c7404bef2838d86c49f721e0f6e7e06938db1 Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Sun, 8 Nov 2020 19:49:41 -0500 Subject: Do some cleanup of things --- src/main/java/bjc/data/Either.java | 80 +++++++++++++++----------------------- 1 file changed, 31 insertions(+), 49 deletions(-) (limited to 'src/main/java/bjc/data') diff --git a/src/main/java/bjc/data/Either.java b/src/main/java/bjc/data/Either.java index 55518d8..0ac3181 100644 --- a/src/main/java/bjc/data/Either.java +++ b/src/main/java/bjc/data/Either.java @@ -75,8 +75,7 @@ public class Either implements IPair { @Override public IPair bind( final BiFunction> binder) { - if (binder == null) - throw new NullPointerException("Binder must not be null"); + if (binder == null) throw new NullPointerException("Binder must not be null"); return binder.apply(leftVal, rightVal); } @@ -84,25 +83,19 @@ public class Either implements IPair { @Override public IPair bindLeft(final Function> leftBinder) { - if (leftBinder == null) - throw new NullPointerException("Left binder must not be null"); + if (leftBinder == null) throw new NullPointerException("Left binder must not be null"); - if (isLeft) - return leftBinder.apply(leftVal); - - return new Either<>(null, rightVal); + if (isLeft) return leftBinder.apply(leftVal); + else return new Either<>(null, rightVal); } @Override public IPair bindRight( final Function> rightBinder) { - if (rightBinder == null) - throw new NullPointerException("Right binder must not be null"); - - if (isLeft) - return new Either<>(leftVal, null); + if (rightBinder == null) throw new NullPointerException("Right binder must not be null"); - return rightBinder.apply(rightVal); + if (isLeft) return new Either<>(leftVal, null); + else return rightBinder.apply(rightVal); } @Override @@ -126,44 +119,37 @@ public class Either implements IPair { return new Either<>(cLeft, null); }); + } else { + return otherPair.bind((otherLeft, otherRight) -> { + CombinedRight cRight = rightCombiner.apply(rightVal, otherRight); + + return new Either<>(null, cRight); + }); } - - return otherPair.bind((otherLeft, otherRight) -> { - CombinedRight cRight = rightCombiner.apply(rightVal, otherRight); - - return new Either<>(null, cRight); - }); } @Override public IPair mapLeft(final Function mapper) { - if (mapper == null) - throw new NullPointerException("Mapper must not be null"); - - if (isLeft) - return new Either<>(mapper.apply(leftVal), null); + if (mapper == null) throw new NullPointerException("Mapper must not be null"); - return new Either<>(null, rightVal); + if (isLeft) return new Either<>(mapper.apply(leftVal), null); + else return new Either<>(null, rightVal); } @Override public IPair mapRight(final Function mapper) { - if (mapper == null) - throw new NullPointerException("Mapper must not be null"); + if (mapper == null) throw new NullPointerException("Mapper must not be null"); - if (isLeft) - return new Either<>(leftVal, null); - - return new Either<>(null, mapper.apply(rightVal)); + if (isLeft) return new Either<>(leftVal, null); + else return new Either<>(null, mapper.apply(rightVal)); } @Override public MergedType merge(final BiFunction merger) { - if (merger == null) - throw new NullPointerException("Merger must not be null"); + if (merger == null) throw new NullPointerException("Merger must not be null"); return merger.apply(leftVal, rightVal); } @@ -182,30 +168,26 @@ public class Either implements IPair { @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof Either)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof Either)) return false; final Either other = (Either) obj; - if (isLeft != other.isLeft) - return false; + if (isLeft != other.isLeft) return false; if (leftVal == null) { - if (other.leftVal != null) - return false; - } else if (!leftVal.equals(other.leftVal)) + if (other.leftVal != null) return false; + } else if (!leftVal.equals(other.leftVal)) { return false; + } if (rightVal == null) { - if (other.rightVal != null) - return false; - } else if (!rightVal.equals(other.rightVal)) + if (other.rightVal != null) return false; + } else if (!rightVal.equals(other.rightVal)) { return false; - + } + return true; } -- cgit v1.2.3 From bbddfcafec1b72972e1f925048ddbe715411798d Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Sun, 8 Nov 2020 19:50:55 -0500 Subject: Add some additional tests --- src/main/java/bjc/data/ArrayIterator.java | 3 +-- src/main/java/bjc/data/BooleanToggle.java | 15 +++++---------- 2 files changed, 6 insertions(+), 12 deletions(-) (limited to 'src/main/java/bjc/data') diff --git a/src/main/java/bjc/data/ArrayIterator.java b/src/main/java/bjc/data/ArrayIterator.java index 6d11a1d..c5f68cc 100644 --- a/src/main/java/bjc/data/ArrayIterator.java +++ b/src/main/java/bjc/data/ArrayIterator.java @@ -34,8 +34,7 @@ public class ArrayIterator implements Iterator { @SuppressWarnings("unchecked") @Override public T next() { - if (idx >= arr.length) - return null; + if (idx >= arr.length) return null; return (T) (arr[idx++]); } diff --git a/src/main/java/bjc/data/BooleanToggle.java b/src/main/java/bjc/data/BooleanToggle.java index 3e41d6d..e0286d4 100644 --- a/src/main/java/bjc/data/BooleanToggle.java +++ b/src/main/java/bjc/data/BooleanToggle.java @@ -59,19 +59,14 @@ public class BooleanToggle implements Toggle { @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof BooleanToggle)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof BooleanToggle)) return false; final BooleanToggle other = (BooleanToggle) obj; - if (val != other.val) - return false; - - return true; + if (val != other.val) return false; + else return true; } @Override -- cgit v1.2.3 From 6340caa7ec15be51c6d633a0519f3e0c76b25241 Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Mon, 9 Nov 2020 18:53:43 -0500 Subject: Formatting cleanup --- src/main/java/bjc/data/IPair.java | 3 +- src/main/java/bjc/data/ITree.java | 3 +- src/main/java/bjc/data/Identity.java | 15 ++--- src/main/java/bjc/data/Lazy.java | 62 +++++++++++--------- src/main/java/bjc/data/LazyPair.java | 66 ++++++++++------------ src/main/java/bjc/data/ListHolder.java | 15 ++--- src/main/java/bjc/data/OneWayToggle.java | 10 ++-- src/main/java/bjc/data/Option.java | 28 ++++----- src/main/java/bjc/data/Pair.java | 41 ++++++-------- src/main/java/bjc/data/QueuedIterator.java | 15 ++--- src/main/java/bjc/data/ResettableIterator.java | 7 +-- .../java/bjc/data/TopDownTransformIterator.java | 18 ++---- src/main/java/bjc/data/Tree.java | 43 ++++++-------- src/main/java/bjc/data/ValueToggle.java | 14 ++--- 14 files changed, 142 insertions(+), 198 deletions(-) (limited to 'src/main/java/bjc/data') diff --git a/src/main/java/bjc/data/IPair.java b/src/main/java/bjc/data/IPair.java index 5b1298e..f7d7956 100644 --- a/src/main/java/bjc/data/IPair.java +++ b/src/main/java/bjc/data/IPair.java @@ -81,7 +81,8 @@ public interface IPair extends Bifunctor IPair, IPair> combine(final IPair otherPair) { - return combine(otherPair, Pair::new, + return combine(otherPair, + Pair::new, Pair::new); } diff --git a/src/main/java/bjc/data/ITree.java b/src/main/java/bjc/data/ITree.java index e9c829e..7f9c67e 100644 --- a/src/main/java/bjc/data/ITree.java +++ b/src/main/java/bjc/data/ITree.java @@ -270,8 +270,7 @@ public interface ITree { Toggle tog = new OneWayToggle<>(false, true); traverse(TreeLinearizationMethod.POSTORDER, val -> { - if (pred.test(val)) - tog.get(); + if (pred.test(val)) tog.get(); }); return tog.get(); diff --git a/src/main/java/bjc/data/Identity.java b/src/main/java/bjc/data/Identity.java index c80c7e1..75b4ecd 100644 --- a/src/main/java/bjc/data/Identity.java +++ b/src/main/java/bjc/data/Identity.java @@ -48,20 +48,17 @@ public class Identity implements IHolder { @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof Identity)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof Identity)) return false; final Identity other = (Identity) obj; if (heldValue == null) { - if (other.heldValue != null) - return false; - } else if (!heldValue.equals(other.heldValue)) + if (other.heldValue != null) return false; + } else if (!heldValue.equals(other.heldValue)) { return false; + } return true; } diff --git a/src/main/java/bjc/data/Lazy.java b/src/main/java/bjc/data/Lazy.java index a425232..8573325 100644 --- a/src/main/java/bjc/data/Lazy.java +++ b/src/main/java/bjc/data/Lazy.java @@ -65,13 +65,14 @@ public class Lazy implements IHolder { bind(final Function> binder) { final IList> pendingActions = new FunctionalList<>(); - actions.forEach(pendingActions::add); + for (UnaryOperator action : actions) { + pendingActions.add(action); + } + final Supplier supplier = () -> { - if (valueMaterialized) - return heldValue; - - return valueSupplier.get(); + if (valueMaterialized) return heldValue; + else return valueSupplier.get(); }; return new BoundLazy<>(() -> new Lazy<>(supplier, pendingActions), binder); @@ -87,8 +88,10 @@ public class Lazy implements IHolder { public IHolder map(final Function mapper) { final IList> pendingActions = new FunctionalList<>(); - - actions.forEach(pendingActions::add); + + for (UnaryOperator action : actions) { + pendingActions.add(action); + } return new Lazy<>(() -> { ContainedType currVal = heldValue; @@ -97,7 +100,8 @@ public class Lazy implements IHolder { currVal = valueSupplier.get(); } - return pendingActions.reduceAux(currVal, UnaryOperator::apply, + return pendingActions.reduceAux(currVal, + UnaryOperator::apply, value -> mapper.apply(value)); }); } @@ -107,12 +111,18 @@ public class Lazy implements IHolder { if (valueMaterialized) { if (actions.isEmpty()) { return String.format("value[v='%s']", heldValue); + } else { + return String.format("value[v='%s'] (has %d pending transforms)", + heldValue, actions.getSize()); } - - return String.format("value[v='%s'] (has pending transforms)", heldValue); } - return "(unmaterialized)"; + if (actions.isEmpty()) { + return"(unmaterialized)"; + } else { + return String.format("(unmaterialized; has %d pending transforms", + actions.getSize()); + } } @Override @@ -132,9 +142,9 @@ public class Lazy implements IHolder { valueMaterialized = true; } - actions.forEach(action -> { - heldValue = action.apply(heldValue); - }); + for (UnaryOperator action : actions) { + heldValue = action.apply(heldValue); + } actions = new FunctionalList<>(); @@ -155,12 +165,9 @@ public class Lazy implements IHolder { @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof Lazy)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof Lazy)) return false; final Lazy other = (Lazy) obj; @@ -169,18 +176,19 @@ public class Lazy implements IHolder { if (valueMaterialized) { if (heldValue == null) { - if (other.heldValue != null) - return false; - } else if (!heldValue.equals(other.heldValue)) + if (other.heldValue != null) return false; + } else if (!heldValue.equals(other.heldValue)) { return false; - } else + } + } else { return false; + } if (actions == null) { - if (other.actions != null) - return false; - } else if (actions.getSize() > 0 || other.actions.getSize() > 0) + if (other.actions != null) return false; + } else if (actions.getSize() > 0 || other.actions.getSize() > 0) { return false; + } return true; } diff --git a/src/main/java/bjc/data/LazyPair.java b/src/main/java/bjc/data/LazyPair.java index e668cd4..2481cd7 100644 --- a/src/main/java/bjc/data/LazyPair.java +++ b/src/main/java/bjc/data/LazyPair.java @@ -79,8 +79,7 @@ public class LazyPair implements IPair public IPair bindLeft(final Function> leftBinder) { final Supplier leftSupp = () -> { - if (leftMaterialized) - return leftValue; + if (leftMaterialized) return leftValue; return leftSupplier.get(); }; @@ -92,8 +91,7 @@ public class LazyPair implements IPair public IPair bindRight( final Function> rightBinder) { final Supplier rightSupp = () -> { - if (rightMaterialized) - return rightValue; + if (rightMaterialized) return rightValue; return rightSupplier.get(); }; @@ -108,12 +106,14 @@ public class LazyPair implements IPair final BiFunction leftCombiner, final BiFunction rightCombiner) { - return otherPair.bind((otherLeft, otherRight) -> bind((leftVal, rightVal) -> { - final CombinedLeft left = leftCombiner.apply(leftVal, otherLeft); - final CombinedRight right = rightCombiner.apply(rightVal, otherRight); - - return new LazyPair<>(left, right); - })); + return otherPair.bind((otherLeft, otherRight) -> { + return bind((leftVal, rightVal) -> { + final CombinedLeft left = leftCombiner.apply(leftVal, otherLeft); + final CombinedRight right = rightCombiner.apply(rightVal, otherRight); + + return new LazyPair<>(left, right); + }); + }); } @Override @@ -142,15 +142,13 @@ public class LazyPair implements IPair public IPair mapLeft(final Function mapper) { final Supplier leftSupp = () -> { - if (leftMaterialized) - return mapper.apply(leftValue); + if (leftMaterialized) return mapper.apply(leftValue); return mapper.apply(leftSupplier.get()); }; final Supplier rightSupp = () -> { - if (rightMaterialized) - return rightValue; + if (rightMaterialized) return rightValue; return rightSupplier.get(); }; @@ -162,15 +160,13 @@ public class LazyPair implements IPair public IPair mapRight(final Function mapper) { final Supplier leftSupp = () -> { - if (leftMaterialized) - return leftValue; + if (leftMaterialized) return leftValue; return leftSupplier.get(); }; final Supplier rightSupp = () -> { - if (rightMaterialized) - return mapper.apply(rightValue); + if (rightMaterialized) return mapper.apply(rightValue); return mapper.apply(rightSupplier.get()); }; @@ -231,37 +227,35 @@ public class LazyPair implements IPair @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof LazyPair)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof LazyPair)) return false; final LazyPair other = (LazyPair) obj; - if (leftMaterialized != other.leftMaterialized) - return false; + if (leftMaterialized != other.leftMaterialized) return false; if (leftMaterialized) { if (leftValue == null) { - if (other.leftValue != null) - return false; - } else if (!leftValue.equals(other.leftValue)) + if (other.leftValue != null) return false; + } else if (!leftValue.equals(other.leftValue)) { return false; - } else + } + } else { return false; + } - if (rightMaterialized != other.rightMaterialized) - return false; + if (rightMaterialized != other.rightMaterialized) return false; + if (rightMaterialized) { if (rightValue == null) { - if (other.rightValue != null) - return false; - } else if (!rightValue.equals(other.rightValue)) + if (other.rightValue != null) return false; + } else if (!rightValue.equals(other.rightValue)) { return false; - } else + } + } else { return false; + } return true; } diff --git a/src/main/java/bjc/data/ListHolder.java b/src/main/java/bjc/data/ListHolder.java index ab3bfa8..79c900d 100644 --- a/src/main/java/bjc/data/ListHolder.java +++ b/src/main/java/bjc/data/ListHolder.java @@ -93,20 +93,17 @@ public class ListHolder implements IHolder { @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof ListHolder)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof ListHolder)) return false; final ListHolder other = (ListHolder) obj; if (heldValues == null) { - if (other.heldValues != null) - return false; - } else if (!heldValues.equals(other.heldValues)) + if (other.heldValues != null) return false; + } else if (!heldValues.equals(other.heldValues)) { return false; + } return true; } diff --git a/src/main/java/bjc/data/OneWayToggle.java b/src/main/java/bjc/data/OneWayToggle.java index c2e9e4b..b6074b0 100644 --- a/src/main/java/bjc/data/OneWayToggle.java +++ b/src/main/java/bjc/data/OneWayToggle.java @@ -31,23 +31,21 @@ public class OneWayToggle implements Toggle { @Override public E get() { - if (gotFirst) - return second; + if (gotFirst) return second; gotFirst = true; + return first; } @Override public E peek() { - if (gotFirst) - return second; - return first; + if (gotFirst) return second; + else return first; } @Override public void set(boolean gotFirst) { this.gotFirst = gotFirst; } - } diff --git a/src/main/java/bjc/data/Option.java b/src/main/java/bjc/data/Option.java index b5d6d5e..84e71a2 100644 --- a/src/main/java/bjc/data/Option.java +++ b/src/main/java/bjc/data/Option.java @@ -27,8 +27,7 @@ public class Option implements IHolder { @Override public IHolder bind(final Function> binder) { - if (held == null) - return new Option<>(null); + if (held == null) return new Option<>(null); return binder.apply(held); } @@ -42,8 +41,7 @@ public class Option implements IHolder { @Override public IHolder map(final Function mapper) { - if (held == null) - return new Option<>(null); + if (held == null) return new Option<>(null); return new Option<>(mapper.apply(held)); } @@ -51,9 +49,7 @@ public class Option implements IHolder { @Override public IHolder transform(final UnaryOperator transformer) { - if (held != null) { - held = transformer.apply(held); - } + if (held != null) held = transformer.apply(held); return this; } @@ -61,8 +57,7 @@ public class Option implements IHolder { @Override public UnwrappedType unwrap(final Function unwrapper) { - if (held == null) - return null; + if (held == null) return null; return unwrapper.apply(held); } @@ -84,20 +79,17 @@ public class Option implements IHolder { @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof Option)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof Option)) return false; final Option other = (Option) obj; if (held == null) { - if (other.held != null) - return false; - } else if (!held.equals(other.held)) + if (other.held != null) return false; + } else if (!held.equals(other.held)) { return false; + } return true; } diff --git a/src/main/java/bjc/data/Pair.java b/src/main/java/bjc/data/Pair.java index 610e89c..ea2f82f 100644 --- a/src/main/java/bjc/data/Pair.java +++ b/src/main/java/bjc/data/Pair.java @@ -22,7 +22,7 @@ public class Pair implements IPair { /** Create a new pair with both sides set to null. */ public Pair() { - + // Do nothing :) } /** @@ -42,8 +42,7 @@ public class Pair implements IPair { @Override public IPair bind( final BiFunction> binder) { - if (binder == null) - throw new NullPointerException("Binder must not be null."); + if (binder == null) throw new NullPointerException("Binder must not be null."); return binder.apply(leftValue, rightValue); } @@ -51,8 +50,7 @@ public class Pair implements IPair { @Override public IPair bindLeft(final Function> leftBinder) { - if (leftBinder == null) - throw new NullPointerException("Binder must not be null"); + if (leftBinder == null) throw new NullPointerException("Binder must not be null"); return leftBinder.apply(leftValue); } @@ -60,8 +58,7 @@ public class Pair implements IPair { @Override public IPair bindRight( final Function> rightBinder) { - if (rightBinder == null) - throw new NullPointerException("Binder must not be null"); + if (rightBinder == null) throw new NullPointerException("Binder must not be null"); return rightBinder.apply(rightValue); } @@ -84,8 +81,7 @@ public class Pair implements IPair { @Override public IPair mapLeft(final Function mapper) { - if (mapper == null) - throw new NullPointerException("Mapper must not be null"); + if (mapper == null) throw new NullPointerException("Mapper must not be null"); return new Pair<>(mapper.apply(leftValue), rightValue); } @@ -93,8 +89,7 @@ public class Pair implements IPair { @Override public IPair mapRight(final Function mapper) { - if (mapper == null) - throw new NullPointerException("Mapper must not be null"); + if (mapper == null) throw new NullPointerException("Mapper must not be null"); return new Pair<>(leftValue, mapper.apply(rightValue)); } @@ -102,8 +97,7 @@ public class Pair implements IPair { @Override public MergedType merge(final BiFunction merger) { - if (merger == null) - throw new NullPointerException("Merger must not be null"); + if (merger == null) throw new NullPointerException("Merger must not be null"); return merger.apply(leftValue, rightValue); } @@ -137,26 +131,23 @@ public class Pair implements IPair { @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof Pair)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof Pair)) return false; final Pair other = (Pair) obj; if (leftValue == null) { - if (other.leftValue != null) - return false; - } else if (!leftValue.equals(other.leftValue)) + if (other.leftValue != null) return false; + } else if (!leftValue.equals(other.leftValue)) { return false; + } if (rightValue == null) { - if (other.rightValue != null) - return false; - } else if (!rightValue.equals(other.rightValue)) + if (other.rightValue != null) return false; + } else if (!rightValue.equals(other.rightValue)) { return false; + } return true; } diff --git a/src/main/java/bjc/data/QueuedIterator.java b/src/main/java/bjc/data/QueuedIterator.java index f10014e..78f180d 100644 --- a/src/main/java/bjc/data/QueuedIterator.java +++ b/src/main/java/bjc/data/QueuedIterator.java @@ -82,9 +82,7 @@ public class QueuedIterator implements Iterator { public QueuedIterator(Iterator... inits) { this(); - for (Iterator init : inits) { - pending.add(init); - } + for (Iterator init : inits) pending.add(init); } /** @@ -97,9 +95,7 @@ public class QueuedIterator implements Iterator { public QueuedIterator(Iterable... inits) { this(); - for (Iterable init : inits) { - pending.add(init.iterator()); - } + for (Iterable init : inits) pending.add(init.iterator()); } /** @@ -208,8 +204,7 @@ public class QueuedIterator implements Iterator { @Override public boolean hasNext() { while (cur == null || !cur.hasNext()) { - if (pending.isEmpty()) - return false; + if (pending.isEmpty()) return false; cur = pending.pop(); } @@ -220,13 +215,11 @@ public class QueuedIterator implements Iterator { @Override public E next() { while (cur == null || !cur.hasNext()) { - if (pending.isEmpty()) - return null; + if (pending.isEmpty()) return null; cur = pending.pop(); } return cur.next(); } - } diff --git a/src/main/java/bjc/data/ResettableIterator.java b/src/main/java/bjc/data/ResettableIterator.java index 2208fb2..8b7f07a 100644 --- a/src/main/java/bjc/data/ResettableIterator.java +++ b/src/main/java/bjc/data/ResettableIterator.java @@ -56,11 +56,8 @@ public class ResettableIterator implements Iterator { @Override public boolean hasNext() { - if (isRepeating) { - return cacheIterator.hasNext() ? true : backing.hasNext(); - } else { - return backing.hasNext(); - } + if (isRepeating) return cacheIterator.hasNext() ? true : backing.hasNext(); + else return backing.hasNext(); } @Override diff --git a/src/main/java/bjc/data/TopDownTransformIterator.java b/src/main/java/bjc/data/TopDownTransformIterator.java index 3b4b997..cf211d3 100644 --- a/src/main/java/bjc/data/TopDownTransformIterator.java +++ b/src/main/java/bjc/data/TopDownTransformIterator.java @@ -97,9 +97,7 @@ public class TopDownTransformIterator * The nodes to yield. */ public void addYield(final Iterator> src) { - if (currYield != null) { - toYield.push(currYield); - } + if (currYield != null) toYield.push(currYield); currYield = src; } @@ -128,9 +126,7 @@ public class TopDownTransformIterator */ toYield.add(new SingleIterator<>(val)); - if (currYield.hasNext()) { - return currYield.next(); - } + if (currYield.hasNext()) return currYield.next(); while (toYield.size() != 0 && !currYield.hasNext()) { currYield = toYield.pop(); @@ -149,8 +145,7 @@ public class TopDownTransformIterator @Override public ITree next() { - if (done) - throw new NoSuchElementException(); + if (done) throw new NoSuchElementException(); /* * Flush any values that need to be yielded. @@ -158,8 +153,7 @@ public class TopDownTransformIterator if (currYield != null) { ITree yeld = flushYields(null); - if (yeld != null) - return yeld; + if (yeld != null) return yeld; } if (initial) { @@ -226,9 +220,7 @@ public class TopDownTransformIterator throw new IllegalArgumentException("Unknown result type " + res); } - if (res != RTRANSFORM) { - initial = false; - } + if (res != RTRANSFORM) initial = false; } if (curChild == null || !curChild.hasNext()) { diff --git a/src/main/java/bjc/data/Tree.java b/src/main/java/bjc/data/Tree.java index 9a4caa6..95f4d1e 100644 --- a/src/main/java/bjc/data/Tree.java +++ b/src/main/java/bjc/data/Tree.java @@ -139,9 +139,7 @@ public class Tree implements ITree { @Override public void doForChildren(final Consumer> action) { - if (childCount > 0) { - children.forEach(action); - } + if (childCount > 0) children.forEach(action); } @Override @@ -151,13 +149,10 @@ public class Tree implements ITree { @Override public int revFind(final Predicate> childPred) { - if (childCount == 0) { - return -1; - } + if (childCount == 0) return -1; for (int i = childCount - 1; i >= 0; i--) { - if (childPred.test(getChild(i))) - return i; + if (childPred.test(getChild(i))) return i; } return -1; @@ -252,9 +247,7 @@ public class Tree implements ITree { private void internalToString(final StringBuilder builder, final int indentLevel, final boolean initial) { if (!initial) { - for (int i = 0; i < indentLevel; i++) { - builder.append(">\t"); - } + for (int i = 0; i < indentLevel; i++) builder.append(">\t"); } builder.append("Node #"); @@ -287,7 +280,9 @@ public class Tree implements ITree { final Function leafTransformer, final Function operatorTransformer) { if (hasChildren) { - final IList> mappedChildren = children.map(child -> child.rebuildTree(leafTransformer, operatorTransformer)); + final IList> mappedChildren = + children.map(child -> + child.rebuildTree(leafTransformer, operatorTransformer)); final MappedType mapData = operatorTransformer.apply(data); return new Tree<>(mapData, mappedChildren); @@ -417,29 +412,25 @@ public class Tree implements ITree { @Override public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (!(obj instanceof Tree)) - return false; + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof Tree)) return false; final Tree other = (Tree) obj; if (data == null) { - if (other.data != null) - return false; - } else if (!data.equals(other.data)) + if (other.data != null) return false; + } else if (!data.equals(other.data)) { return false; + } - if (childCount != other.childCount) - return false; + if (childCount != other.childCount) return false; if (children == null) { - if (other.children != null) - return false; - } else if (!children.equals(other.children)) + if (other.children != null) return false; + } else if (!children.equals(other.children)) { return false; + } return true; } diff --git a/src/main/java/bjc/data/ValueToggle.java b/src/main/java/bjc/data/ValueToggle.java index 041a2d5..9e4b83b 100644 --- a/src/main/java/bjc/data/ValueToggle.java +++ b/src/main/java/bjc/data/ValueToggle.java @@ -37,20 +37,14 @@ public class ValueToggle implements Toggle { @Override public E get() { - if (alignment.get()) { - return lft; - } - - return rght; + if (alignment.get()) return lft; + else return rght; } @Override public E peek() { - if (alignment.peek()) { - return lft; - } - - return rght; + if (alignment.peek()) return lft; + else return rght; } @Override -- cgit v1.2.3 From c56a10f7c943dd9e9f04854395638babfaba6529 Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Wed, 11 Nov 2020 11:22:42 -0500 Subject: Tweak some things --- src/main/java/bjc/data/Tree.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/main/java/bjc/data') diff --git a/src/main/java/bjc/data/Tree.java b/src/main/java/bjc/data/Tree.java index 95f4d1e..83b33bd 100644 --- a/src/main/java/bjc/data/Tree.java +++ b/src/main/java/bjc/data/Tree.java @@ -28,8 +28,10 @@ public class Tree implements ITree { /* Whether this node has children. */ /* * @NOTE Why have both this boolean and childCount? Why not just do a childCount - * == 0 whenever you'd check hasChildren? - Because hasChildren is set once and - * not reset, and really what it indicates is that children has been allocated. + * == 0 whenever you'd check hasChildren? + * + * - Because hasChildren is set once and not reset, and really what it + * indicates is that children has been allocated. */ private boolean hasChildren; /* The number of children this node has. */ -- cgit v1.2.3