summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java
diff options
context:
space:
mode:
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java66
1 files changed, 36 insertions, 30 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java
index ed4b9d3..aa59a31 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java
@@ -12,19 +12,20 @@ import java.util.function.Function;
*/
public class FunctionalStringTokenizer {
/**
- * The string tokenizer being driven
+ * Create a new tokenizer from the specified string.
+ *
+ * @param s
+ * The string to create a tokenizer from.
+ * @return A new tokenizer that splits the provided string on spaces.
*/
- private StringTokenizer inp;
+ public static FunctionalStringTokenizer fromString(String s) {
+ return new FunctionalStringTokenizer(new StringTokenizer(s, " "));
+ }
/**
- * Create a functional string tokenizer from a non-functional one
- *
- * @param inp
- * The non-functional string tokenizer to wrap
+ * The string tokenizer being driven
*/
- public FunctionalStringTokenizer(StringTokenizer inp) {
- this.inp = inp;
- }
+ private StringTokenizer inp;
/**
* Create a functional string tokenizer from a given string
@@ -40,14 +41,26 @@ public class FunctionalStringTokenizer {
* Create a functional string tokenizer from a given string and set of
* seperators
*
- * @param inp The string to tokenize
- * @param seps The string to use for splitting
+ * @param inp
+ * The string to tokenize
+ * @param seps
+ * The string to use for splitting
*/
public FunctionalStringTokenizer(String inp, String seps) {
this.inp = new StringTokenizer(inp, seps);
}
/**
+ * Create a functional string tokenizer from a non-functional one
+ *
+ * @param inp
+ * The non-functional string tokenizer to wrap
+ */
+ public FunctionalStringTokenizer(StringTokenizer inp) {
+ this.inp = inp;
+ }
+
+ /**
* Execute a provided action for each of the remaining tokens
*
* @param f
@@ -60,6 +73,15 @@ public class FunctionalStringTokenizer {
}
/**
+ * Get the string tokenizer encapsuled by this
+ *
+ * @return The encapsulated tokenizer
+ */
+ public StringTokenizer getInternal() {
+ return inp;
+ }
+
+ /**
* Return the next token from the tokenizer Returns null if no more
* tokens are available
*
@@ -73,6 +95,9 @@ public class FunctionalStringTokenizer {
* Convert the contents of this tokenizer into a list. Consumes all of
* the input from this tokenizer.
*
+ * @param <E>
+ * The type of the converted tokens
+ *
* @param f
* The function to use to convert tokens.
* @return A list containing all of the converted tokens.
@@ -84,23 +109,4 @@ public class FunctionalStringTokenizer {
return r;
}
-
- /**
- * Create a new tokenizer from the specified string.
- *
- * @param s
- * The string to create a tokenizer from.
- * @return A new tokenizer that splits the provided string on spaces.
- */
- public static FunctionalStringTokenizer fromString(String s) {
- return new FunctionalStringTokenizer(new StringTokenizer(s, " "));
- }
-
- /**
- * Get the string tokenizer encapsuled by this
- * @return The encapsulated tokenizer
- */
- public StringTokenizer getInternal() {
- return inp;
- }
}