add initial marp implementation with sample content and build configuration
This commit is contained in:
57
node_modules/speech-rule-engine/js/walker/levels.js
generated
vendored
Normal file
57
node_modules/speech-rule-engine/js/walker/levels.js
generated
vendored
Normal file
@@ -0,0 +1,57 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.Levels = void 0;
|
||||
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;
|
||||
}
|
||||
}
|
||||
exports.Levels = Levels;
|
||||
Reference in New Issue
Block a user