@inversifyjs/core
Version:
InversifyJs core package
34 lines • 873 B
JavaScript
export class SingleImmutableLinkedList {
last;
length;
constructor(last, length) {
this.last = last;
this.length = length;
}
concat(elem) {
return new SingleImmutableLinkedList({
elem,
previous: this.last,
}, this.length + 1);
}
[Symbol.iterator]() {
let node = this.last;
return {
next: () => {
if (node === undefined) {
return {
done: true,
value: undefined,
};
}
const elem = node.elem;
node = node.previous;
return {
done: false,
value: elem,
};
},
};
}
}
//# sourceMappingURL=SingleImmutableLinkedList.js.map