summaryrefslogtreecommitdiff
path: root/base/src/main/java/bjc
diff options
context:
space:
mode:
Diffstat (limited to 'base/src/main/java/bjc')
-rw-r--r--base/src/main/java/bjc/utils/data/ArrayIterator.java6
-rw-r--r--base/src/main/java/bjc/utils/data/QueuedIterator.java13
-rw-r--r--base/src/main/java/bjc/utils/data/Tree.java2
-rw-r--r--base/src/main/java/bjc/utils/funcutils/IteratorUtils.java33
-rw-r--r--base/src/main/java/bjc/utils/funcutils/TestUtils.java9
-rw-r--r--base/src/main/java/bjc/utils/ioutils/LineReader.java7
-rw-r--r--base/src/main/java/bjc/utils/ioutils/properties/Property.java2
-rw-r--r--base/src/main/java/bjc/utils/ioutils/properties/PropertyDB.java11
8 files changed, 70 insertions, 13 deletions
diff --git a/base/src/main/java/bjc/utils/data/ArrayIterator.java b/base/src/main/java/bjc/utils/data/ArrayIterator.java
index 6a00800..1592901 100644
--- a/base/src/main/java/bjc/utils/data/ArrayIterator.java
+++ b/base/src/main/java/bjc/utils/data/ArrayIterator.java
@@ -4,6 +4,8 @@ import java.util.Iterator;
/**
* Represents an iterator over an array of values.
*
+ * @param <T> The type of values in the array.
+ *
* @author Ben Culkin
*/
public class ArrayIterator<T> implements Iterator<T> {
@@ -13,9 +15,10 @@ public class ArrayIterator<T> implements Iterator<T> {
/**
* Create a new array iterator.
*
- * @param elems
+ * @param elms
* The array that will be iterated over.
*/
+ @SafeVarargs
public ArrayIterator(T... elms) {
arr = elms;
idx = 0;
@@ -26,6 +29,7 @@ public class ArrayIterator<T> implements Iterator<T> {
return idx < arr.length;
}
+ @SuppressWarnings("unchecked")
@Override
public T next() {
if (idx >= arr.length) return null;
diff --git a/base/src/main/java/bjc/utils/data/QueuedIterator.java b/base/src/main/java/bjc/utils/data/QueuedIterator.java
index 0eeac4d..ae3afb8 100644
--- a/base/src/main/java/bjc/utils/data/QueuedIterator.java
+++ b/base/src/main/java/bjc/utils/data/QueuedIterator.java
@@ -33,6 +33,7 @@ public class QueuedIterator<E> implements Iterator<E> {
*
* @return A queued iterator.
*/
+ @SafeVarargs
public static <E> QueuedIterator<E> queued(E... vals) {
return new QueuedIterator<>(new ArrayIterator<>(vals));
}
@@ -108,7 +109,7 @@ public class QueuedIterator<E> implements Iterator<E> {
*/
@SafeVarargs
public QueuedIterator(E... vals) {
- this(new ArrayIterator(vals));
+ this(new ArrayIterator<>(vals));
}
/**
@@ -139,7 +140,7 @@ public class QueuedIterator<E> implements Iterator<E> {
* @param vals
* Values to iterate over first.
*/
- public void before(E... vals) {
+ public void before(@SuppressWarnings("unchecked") E... vals) {
before(new ArrayIterator<>(vals));
}
@@ -169,7 +170,7 @@ public class QueuedIterator<E> implements Iterator<E> {
* @param vals
* The values to iterate over next.
*/
- public void after(E... vals) {
+ public void after(@SuppressWarnings("unchecked") E... vals) {
after(new ArrayIterator<>(vals));
}
@@ -196,10 +197,10 @@ public class QueuedIterator<E> implements Iterator<E> {
/**
* Add a new set of values who we will iterate through last.
*
- * @param itr
- * The iterable to go through last.
+ * @param vals
+ * The values we will iterate over.
*/
- public void last(E... vals) {
+ public void last(@SuppressWarnings("unchecked") E... vals) {
last(new ArrayIterator<>(vals));
}
diff --git a/base/src/main/java/bjc/utils/data/Tree.java b/base/src/main/java/bjc/utils/data/Tree.java
index c8e167e..920ab80 100644
--- a/base/src/main/java/bjc/utils/data/Tree.java
+++ b/base/src/main/java/bjc/utils/data/Tree.java
@@ -109,7 +109,7 @@ public class Tree<ContainedType> implements ITree<ContainedType> {
@Override
public void addChild(final ContainedType child) {
- addChild(new Tree(child));
+ addChild(new Tree<>(child));
}
@Override
diff --git a/base/src/main/java/bjc/utils/funcutils/IteratorUtils.java b/base/src/main/java/bjc/utils/funcutils/IteratorUtils.java
index 5242fc4..d691bab 100644
--- a/base/src/main/java/bjc/utils/funcutils/IteratorUtils.java
+++ b/base/src/main/java/bjc/utils/funcutils/IteratorUtils.java
@@ -12,12 +12,31 @@ import bjc.utils.data.*;
*
*/
public class IteratorUtils {
+ /**
+ * A chain iterator. This is essentially flatMap in iterator form.
+ * @author bjculkin
+ *
+ * @param <T1>
+ * The type of the input values.
+ *
+ * @param <T2>
+ * The type of the output values.
+ */
public static class ChainIterator<T1, T2> implements Iterator<T2> {
private Iterator<T1> mainItr;
private Function<T1, Iterator<T2>> trans;
private Iterator<T2> curItr;
+ /**
+ * Create a new chain iterator.
+ *
+ * @param mainItr
+ * The main iterator for input.
+ *
+ * @param trans
+ * The transformation to use to produce the outputs.
+ */
public ChainIterator(Iterator<T1> mainItr, Function<T1, Iterator<T2>> trans) {
this.mainItr = mainItr;
this.trans = trans;
@@ -75,11 +94,23 @@ public class IteratorUtils {
*
* @return An iterator over the provided array.
*/
+ @SafeVarargs
public static <E> Iterator<E> AI(E... parms) {
return new ArrayIterator<>(parms);
}
+ /**
+ * Create a chain iterator.
+ *
+ * @param itrA
+ * The iterator for input values.
+ *
+ * @param itrB
+ * The transformation for output values.
+ *
+ * @return A chain iterator from the provided values.
+ */
public static <A, B> Iterator<B> chain(Iterator<A> itrA, Function<A, Iterator<B>> itrB) {
- return new ChainIterator(itrA, itrB);
+ return new ChainIterator<>(itrA, itrB);
}
}
diff --git a/base/src/main/java/bjc/utils/funcutils/TestUtils.java b/base/src/main/java/bjc/utils/funcutils/TestUtils.java
index 586d366..c037ec4 100644
--- a/base/src/main/java/bjc/utils/funcutils/TestUtils.java
+++ b/base/src/main/java/bjc/utils/funcutils/TestUtils.java
@@ -52,6 +52,15 @@ public class TestUtils {
assertEquals(hasMore, src.hasNext());
}
+ /**
+ * Assert that a list has a given set of contents.
+ *
+ * @param src
+ * The list of actual elements.
+ *
+ * @param exps
+ * The list of expected elements.
+ */
@SafeVarargs
public static <T> void assertListEquals(List<T> src, T... exps) {
assertEquals(exps.length, src.size());
diff --git a/base/src/main/java/bjc/utils/ioutils/LineReader.java b/base/src/main/java/bjc/utils/ioutils/LineReader.java
index 4463b24..7449670 100644
--- a/base/src/main/java/bjc/utils/ioutils/LineReader.java
+++ b/base/src/main/java/bjc/utils/ioutils/LineReader.java
@@ -2,6 +2,11 @@ package bjc.utils.ioutils;
import java.util.Scanner;
+/**
+ * A line reader
+ * @author bjculkin
+ *
+ */
public class LineReader implements AutoCloseable {
private Scanner scn;
@@ -9,4 +14,6 @@ public class LineReader implements AutoCloseable {
public void close() {
scn.close();
}
+
+ // @TODO Implement me - ben, 1/6/20
}
diff --git a/base/src/main/java/bjc/utils/ioutils/properties/Property.java b/base/src/main/java/bjc/utils/ioutils/properties/Property.java
index 341cfb6..7cc9369 100644
--- a/base/src/main/java/bjc/utils/ioutils/properties/Property.java
+++ b/base/src/main/java/bjc/utils/ioutils/properties/Property.java
@@ -1,5 +1,7 @@
package bjc.utils.ioutils.properties;
+// @TODO implement me - ben, 1/6/20
+@SuppressWarnings("javadoc")
public class Property {
public String name;
public String comment;
diff --git a/base/src/main/java/bjc/utils/ioutils/properties/PropertyDB.java b/base/src/main/java/bjc/utils/ioutils/properties/PropertyDB.java
index 8f0165b..0996b58 100644
--- a/base/src/main/java/bjc/utils/ioutils/properties/PropertyDB.java
+++ b/base/src/main/java/bjc/utils/ioutils/properties/PropertyDB.java
@@ -1,8 +1,11 @@
package bjc.utils.ioutils.properties;
-import bjc.utils.esodata.Directory;
-import bjc.utils.esodata.SimpleDirectory;
-
+/**
+ * A database of properties.
+ *
+ * @author bjculkin
+ *
+ */
public class PropertyDB {
-
+ // @TODO Implement me :) - Ben Culkin, 1/5/20
}