From 327c2a35bde7a13d77f343464e41e19e4a214790 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Sat, 13 Oct 2018 15:51:53 -0400 Subject: General cleanup and documentation. Cleanup files, and add missing comments in places. --- base/src/main/java/bjc/utils/funcdata/IList.java | 112 +++++++++++++---------- 1 file changed, 62 insertions(+), 50 deletions(-) (limited to 'base/src/main/java/bjc/utils/funcdata') diff --git a/base/src/main/java/bjc/utils/funcdata/IList.java b/base/src/main/java/bjc/utils/funcdata/IList.java index 12eaf2f..c2f247b 100644 --- a/base/src/main/java/bjc/utils/funcdata/IList.java +++ b/base/src/main/java/bjc/utils/funcdata/IList.java @@ -18,14 +18,14 @@ import bjc.utils.functypes.ID; * @author ben * * @param - * The type in this list + * The type in this list */ public interface IList extends Iterable { /** * Add an item to this list. * * @param item - * The item to add to this list. + * The item to add to this list. * * @return Whether the item was added to the list successfully.. */ @@ -35,7 +35,7 @@ public interface IList extends Iterable { * Add all of the elements in the provided list to this list. * * @param items - * The list of items to add. + * The list of items to add. * * @return True if every item was successfully added to the list, false * otherwise. @@ -48,7 +48,7 @@ public interface IList extends Iterable { * Add all of the elements in the provided array to this list. * * @param items - * The array of items to add. + * The array of items to add. * * @return True if every item was successfully added to the list, false * otherwise. @@ -57,7 +57,7 @@ public interface IList extends Iterable { default boolean addAll(final ContainedType... items) { boolean succ = true; - for(final ContainedType item : items) { + for (final ContainedType item : items) { final boolean addSucc = add(item); succ = succ ? addSucc : false; @@ -71,7 +71,7 @@ public interface IList extends Iterable { * predicate. * * @param matcher - * The predicate to use for checking. + * The predicate to use for checking. * * @return Whether all of the elements of the list match the specified * predicate. @@ -82,7 +82,7 @@ public interface IList extends Iterable { * Check if any of the elements in this list match the specified list. * * @param matcher - * The predicate to use for checking. + * The predicate to use for checking. * * @return Whether any element in the list matches the provided * predicate. @@ -93,13 +93,13 @@ public interface IList extends Iterable { * Reduce the contents of this list using a collector. * * @param - * The intermediate accumulation type. + * The intermediate accumulation type. * * @param - * The final, reduced type. + * The final, reduced type. * * @param collector - * The collector to use for reduction. + * The collector to use for reduction. * * @return The reduced list. */ @@ -126,16 +126,16 @@ public interface IList extends Iterable { * list and the combined one. * * @param - * The type of the second list. + * The type of the second list. * * @param - * The type of the combined list. + * The type of the combined list. * * @param list - * The list to combine with. + * The list to combine with. * * @param combiner - * The function to use for combining element pairs. + * The function to use for combining element pairs. * * @return A new list containing the merged pairs of lists. */ @@ -146,7 +146,7 @@ public interface IList extends Iterable { * Check if the list contains the specified item. * * @param item - * The item to see if it is contained. + * The item to see if it is contained. * * @return Whether or not the specified item is in the list. */ @@ -166,7 +166,18 @@ public interface IList extends Iterable { */ ContainedType last(); + /** + * Remove and return the first element from the list. + * + * @return The first element from the list. + */ ContainedType popFirst(); + + /** + * Remove and return the last element from the list. + * + * @return The last element from the list. + */ ContainedType popLast(); /** @@ -176,10 +187,10 @@ public interface IList extends Iterable { * Does not change the underlying list. * * @param - * The type of the flattened list. + * The type of the flattened list. * * @param expander - * The function to apply to each member of the list. + * The function to apply to each member of the list. * * @return A new list containing the flattened results of applying the * provided function. @@ -190,7 +201,7 @@ public interface IList extends Iterable { * Apply a given action for each member of the list. * * @param action - * The action to apply to each member of the list. + * The action to apply to each member of the list. */ @Override void forEach(Consumer action); @@ -199,8 +210,8 @@ public interface IList extends Iterable { * Apply a given function to each element in the list and its index. * * @param action - * The function to apply to each element in the list and its - * index. + * The function to apply to each element in the list and + * its index. */ void forEachIndexed(BiConsumer action); @@ -208,7 +219,7 @@ public interface IList extends Iterable { * Retrieve a value in the list by its index. * * @param index - * The index to retrieve a value from. + * The index to retrieve a value from. * * @return The value at the specified index in the list. */ @@ -218,7 +229,7 @@ public interface IList extends Iterable { * Retrieve a list containing all elements matching a predicate. * * @param predicate - * The predicate to match by. + * The predicate to match by. * * @return A list containing all elements that match the predicate. */ @@ -245,10 +256,10 @@ public interface IList extends Iterable { * Does not change the underlying list. * * @param - * The type of the transformed list. + * The type of the transformed list. * * @param transformer - * The function to apply to each element in the list. + * The function to apply to each element in the list. * * @return A new list containing the mapped elements of this list. */ @@ -258,10 +269,10 @@ public interface IList extends Iterable { * Zip two lists into a list of pairs. * * @param - * The type of the second list. + * The type of the second list. * * @param list - * The list to use as the left side of the pair. + * The list to use as the left side of the pair. * * @return A list containing pairs of this element and the specified * list. @@ -272,7 +283,8 @@ public interface IList extends Iterable { * Partition this list into a list of sublists. * * @param partitionSize - * The size of elements to put into each one of the sublists. + * The size of elements to put into each one of the + * sublists. * * @return A list partitioned into partitions of size partitionSize. The * last partition may not be completely full if the size of the @@ -284,7 +296,7 @@ public interface IList extends Iterable { * Prepend an item to the list. * * @param item - * The item to prepend to the list. + * The item to prepend to the list. */ void prepend(ContainedType item); @@ -292,11 +304,11 @@ public interface IList extends Iterable { * Prepend an array of items to the list. * * @param items - * The items to prepend to the list. + * The items to prepend to the list. */ @SuppressWarnings("unchecked") default void prependAll(final ContainedType... items) { - for(final ContainedType item : items) { + for (final ContainedType item : items) { prepend(item); } } @@ -316,7 +328,7 @@ public interface IList extends Iterable { * generator. * * @param rnd - * The random number generator to use. + * The random number generator to use. * * @return A random element from this list. */ @@ -326,21 +338,21 @@ public interface IList extends Iterable { * Reduce this list to a single value, using a accumulative approach. * * @param - * The in-between type of the values + * The in-between type of the values * * @param - * The final value type + * The final value type * * @param initial - * The initial value of the accumulative state. + * The initial value of the accumulative state. * * @param accumulator - * The function to use to combine a list element with the - * accumulative state. + * The function to use to combine a list element with the + * accumulative state. * * @param transformer - * The function to use to convert the accumulative state into a - * final result. + * The function to use to convert the accumulative state + * into a final result. * * @return A single value condensed from this list and transformed into * its final state. @@ -353,14 +365,14 @@ public interface IList extends Iterable { * Reduce this list to a single value, using a accumulative approach. * * @param - * The in-between type of the values. + * The in-between type of the values. * * @param initial - * The initial value of the accumulative state. + * The initial value of the accumulative state. * * @param accumulator - * The function to use to combine a list element with the - * accumulative state. + * The function to use to combine a list element with the + * accumulative state. * * @return A single value condensed from this list. */ @@ -373,7 +385,7 @@ public interface IList extends Iterable { * Remove all elements that match a given predicate. * * @param predicate - * The predicate to use to determine elements to delete. + * The predicate to use to determine elements to delete. * * @return Whether there was anything that satisfied the predicate. */ @@ -383,7 +395,7 @@ public interface IList extends Iterable { * Remove all parameters that match a given parameter. * * @param element - * The object to remove all matching copies of. + * The object to remove all matching copies of. */ void removeMatching(ContainedType element); @@ -398,11 +410,11 @@ public interface IList extends Iterable { * hand. * * @param key - * The key to search for. + * The key to search for. * * @param comparator - * The way to compare elements for searching. Pass null to use - * the natural ordering for E. + * The way to compare elements for searching. Pass null + * to use the natural ordering for E. * * @return The element if it is in this list, or null if it is not. */ @@ -415,8 +427,8 @@ public interface IList extends Iterable { * Does change the underlying list. * * @param comparator - * The way to compare elements for sorting. Pass null to use E's - * natural ordering + * The way to compare elements for sorting. Pass null to + * use E's natural ordering */ void sort(Comparator comparator); @@ -431,7 +443,7 @@ public interface IList extends Iterable { * Convert this list into an array. * * @param type - * The type of array to return. + * The type of array to return. * * @return The list, as an array. */ -- cgit v1.2.3