feat: refactoring project

This commit is contained in:
Carlos
2024-11-23 14:56:07 -05:00
parent f0c2a50c18
commit 1c6db5818d
2351 changed files with 39323 additions and 60326 deletions

View File

@@ -9,7 +9,11 @@
* @template {any[]} T
*/
class TupleSet {
/**
* @param {Iterable<T>=} init init
*/
constructor(init) {
/** @type {Map<T, TODO>} */
this._map = new Map();
this.size = 0;
if (init) {
@@ -62,7 +66,7 @@ class TupleSet {
}
const beforeLast = args[args.length - 2];
let set = map.get(beforeLast);
const set = map.get(beforeLast);
if (set === undefined) {
return false;
}
@@ -86,7 +90,7 @@ class TupleSet {
}
const beforeLast = args[args.length - 2];
let set = map.get(beforeLast);
const set = map.get(beforeLast);
if (set === undefined) {
return;
}
@@ -101,10 +105,17 @@ class TupleSet {
* @returns {Iterator<T>} iterator
*/
[Symbol.iterator]() {
/** @type {TODO[]} */
const iteratorStack = [];
/** @type {T[]} */
const tuple = [];
let currentSetIterator = undefined;
/** @type {Iterator<T> | undefined} */
let currentSetIterator;
/**
* @param {TODO} it iterator
* @returns {boolean} result
*/
const next = it => {
const result = it.next();
if (result.done) {
@@ -118,9 +129,8 @@ class TupleSet {
if (value instanceof Set) {
currentSetIterator = value[Symbol.iterator]();
return true;
} else {
return next(value[Symbol.iterator]());
}
return next(value[Symbol.iterator]());
};
next(this._map[Symbol.iterator]());