One Hat Cyber Team
Your IP :
10.30.1.1
Server IP :
103.148.201.5
Server :
Linux web-olt 5.15.0-161-generic #171-Ubuntu SMP Sat Oct 11 08:17:01 UTC 2025 x86_64
Server Software :
Apache/2.4.52 (Ubuntu)
PHP Version :
8.1.29
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
proc
/
9611
/
root
/
usr
/
share
/
nodejs
/
symbol-tree
/
lib
/
Edit File:
TreeIterator.js
'use strict'; const TREE = Symbol(); const ROOT = Symbol(); const NEXT = Symbol(); const ITERATE_FUNC = Symbol(); class TreeIterator { constructor(tree, root, firstResult, iterateFunction) { this[TREE] = tree; this[ROOT] = root; this[NEXT] = firstResult; this[ITERATE_FUNC] = iterateFunction; } next() { const tree = this[TREE]; const iterateFunc = this[ITERATE_FUNC]; const root = this[ROOT]; if (!this[NEXT]) { return { done: true, value: root, }; } const value = this[NEXT]; if (iterateFunc === 1) { this[NEXT] = tree._node(value).previousSibling; } else if (iterateFunc === 2) { this[NEXT] = tree._node(value).nextSibling; } else if (iterateFunc === 3) { this[NEXT] = tree._node(value).parent; } else if (iterateFunc === 4) { this[NEXT] = tree.preceding(value, {root: root}); } else /* if (iterateFunc === 5)*/ { this[NEXT] = tree.following(value, {root: root}); } return { done: false, value: value, }; } } Object.defineProperty(TreeIterator.prototype, Symbol.iterator, { value: function() { return this; }, writable: false, }); TreeIterator.PREV = 1; TreeIterator.NEXT = 2; TreeIterator.PARENT = 3; TreeIterator.PRECEDING = 4; TreeIterator.FOLLOWING = 5; Object.freeze(TreeIterator); Object.freeze(TreeIterator.prototype); module.exports = TreeIterator;
Simpan