summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java
diff options
context:
space:
mode:
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java120
1 files changed, 60 insertions, 60 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java
index eaa425b..fb8bb81 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalMap.java
@@ -30,20 +30,6 @@ public class FunctionalMap<KeyType, ValueType>
}
/**
- * Create a new functional map wrapping the specified map
- *
- * @param wrap
- * The map to wrap
- */
- public FunctionalMap(Map<KeyType, ValueType> wrap) {
- if (wrap == null) {
- throw new NullPointerException("Map to wrap must not be null");
- }
-
- wrappedMap = wrap;
- }
-
- /**
* Create a new functional map with the specified entries
*
* @param entries
@@ -60,18 +46,48 @@ public class FunctionalMap<KeyType, ValueType>
}
}
+ /**
+ * Create a new functional map wrapping the specified map
+ *
+ * @param wrap
+ * The map to wrap
+ */
+ public FunctionalMap(Map<KeyType, ValueType> wrap) {
+ if (wrap == null) {
+ throw new NullPointerException("Map to wrap must not be null");
+ }
+
+ wrappedMap = wrap;
+ }
+
/*
* (non-Javadoc)
*
- * @see bjc.utils.funcdata.IFunctionalMap#put(K, V)
+ * @see bjc.utils.funcdata.IFunctionalMap#containsKey(K)
*/
@Override
- public ValueType put(KeyType key, ValueType val) {
- if (key == null) {
- throw new NullPointerException("Key must not be null");
- }
+ public boolean containsKey(KeyType key) {
+ return wrappedMap.containsKey(key);
+ }
- return wrappedMap.put(key, val);
+ @Override
+ public IFunctionalMap<KeyType, ValueType> extend() {
+ return new ExtendedMap<>(this, new FunctionalMap<>());
+ }
+
+ @Override
+ public void forEach(BiConsumer<KeyType, ValueType> action) {
+ wrappedMap.forEach(action);
+ }
+
+ @Override
+ public void forEachKey(Consumer<KeyType> action) {
+ wrappedMap.keySet().forEach(action);
+ }
+
+ @Override
+ public void forEachValue(Consumer<ValueType> action) {
+ wrappedMap.values().forEach(action);
}
/*
@@ -93,6 +109,22 @@ public class FunctionalMap<KeyType, ValueType>
return wrappedMap.get(key);
}
+ @Override
+ public int getSize() {
+ return wrappedMap.size();
+ }
+
+ @Override
+ public IFunctionalList<KeyType> keyList() {
+ FunctionalList<KeyType> keys = new FunctionalList<>();
+
+ wrappedMap.keySet().forEach((key) -> {
+ keys.add(key);
+ });
+
+ return keys;
+ }
+
/*
* (non-Javadoc)
*
@@ -112,32 +144,15 @@ public class FunctionalMap<KeyType, ValueType>
/*
* (non-Javadoc)
*
- * @see bjc.utils.funcdata.IFunctionalMap#containsKey(K)
+ * @see bjc.utils.funcdata.IFunctionalMap#put(K, V)
*/
@Override
- public boolean containsKey(KeyType key) {
- return wrappedMap.containsKey(key);
- }
-
- @Override
- public String toString() {
- return wrappedMap.toString();
- }
-
- @Override
- public IFunctionalList<KeyType> keyList() {
- FunctionalList<KeyType> keys = new FunctionalList<>();
-
- wrappedMap.keySet().forEach((key) -> {
- keys.add(key);
- });
-
- return keys;
- }
+ public ValueType put(KeyType key, ValueType val) {
+ if (key == null) {
+ throw new NullPointerException("Key must not be null");
+ }
- @Override
- public void forEach(BiConsumer<KeyType, ValueType> action) {
- wrappedMap.forEach(action);
+ return wrappedMap.put(key, val);
}
@Override
@@ -146,18 +161,8 @@ public class FunctionalMap<KeyType, ValueType>
}
@Override
- public int getSize() {
- return wrappedMap.size();
- }
-
- @Override
- public void forEachKey(Consumer<KeyType> action) {
- wrappedMap.keySet().forEach(action);
- }
-
- @Override
- public void forEachValue(Consumer<ValueType> action) {
- wrappedMap.values().forEach(action);
+ public String toString() {
+ return wrappedMap.toString();
}
@Override
@@ -170,9 +175,4 @@ public class FunctionalMap<KeyType, ValueType>
return values;
}
-
- @Override
- public IFunctionalMap<KeyType, ValueType> extend() {
- return new ExtendedMap<>(this, new FunctionalMap<>());
- }
} \ No newline at end of file