1
0
mirror of https://github.com/quinton-ashley/java2js synced 2024-12-29 10:11:54 +01:00
java2js/jdk/java/util/AbstractCollection.js
Quinton Ashley 213f552d52 1.1.4
2022-02-01 21:32:29 -05:00

72 lines
1.1 KiB
JavaScript

jdk.imports['java.util.AbstractCollection'].load = async () => {
const Itr = await jdk.import('java.util.Itr');
class AbstractCollection {
constructor(co) {
this.arr = co || [];
}
add(idx, elem) {
if (typeof elem == 'undefined') {
return this.arr.push(idx);
} else {
return this.arr.splice(idx, 0, elem);
}
}
addAll(idx, vals) {
this.arr.splice(idx, 0, ...vals);
}
clear() {
this.arr = [];
}
contains(val) {
return this.arr.indexOf(val) != -1;
}
// containsAll(elems) {}
isEmpty() {
return this.arr.length == 0;
}
iterator() {
return new Itr(this);
}
// parallelStream() {}
remove(idxOrElem) {
let index = idxOrElem;
if (typeof idxOrElem != 'number') {
index = this.arr.indexOf(idxOrElem);
}
return this.arr.splice(index, 1);
}
removeAll() {
this.arr = [];
return true;
}
// removeIf() {}
// retainAll(collection) {}
size() {
return this.arr.length;
}
toArray() {
return this.arr;
}
toString() {
return '[' + this.arr.join(', ') + ']';
}
}
jdk.java.util.AbstractCollection = AbstractCollection;
};