This commit is contained in:
counterweight 2026-05-14 10:56:04 +02:00
parent bc92231240
commit b8225c639e
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
11904 changed files with 1472749 additions and 133 deletions

53
node_modules/speech-rule-engine/mjs/walker/levels.js generated vendored Normal file
View file

@ -0,0 +1,53 @@
export class Levels {
constructor() {
this.level_ = [];
}
push(level) {
this.level_.push(level);
}
pop() {
return this.level_.pop();
}
peek() {
return this.level_[this.level_.length - 1] || null;
}
indexOf(element) {
const last = this.peek();
return !last ? null : last.indexOf(element);
}
find(pred) {
const last = this.peek();
if (!last) {
return null;
}
for (let i = 0, l = last.length; i < l; i++) {
if (pred(last[i])) {
return last[i];
}
}
return null;
}
get(index) {
const last = this.peek();
return !last || index < 0 || index >= last.length ? null : last[index];
}
depth() {
return this.level_.length;
}
clone() {
const levels = new Levels();
levels.level_ = this.level_.slice(0);
return levels;
}
toString() {
let str = '';
for (let i = 0, level; (level = this.level_[i]); i++) {
str +=
'\n' +
level.map(function (x) {
return x.toString();
});
}
return str;
}
}