1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- var __extends = this && this.t || function() {
- var extendStatics = function(t, r) {
- extendStatics = Object.setPrototypeOf || {
- __proto__: []
- } instanceof Array && function(t, r) {
- t.__proto__ = r;
- } || function(t, r) {
- for (var e in r) if (Object.prototype.hasOwnProperty.call(r, e)) t[e] = r[e];
- };
- return extendStatics(t, r);
- };
- return function(t, r) {
- if (typeof r !== "function" && r !== null) throw new TypeError("Class extends value " + String(r) + " is not a constructor or null");
- extendStatics(t, r);
- function __() {
- this.constructor = t;
- }
- t.prototype = r === null ? Object.create(r) : (__.prototype = r.prototype, new __);
- };
- }();
- import { ContainerIterator } from "../../ContainerBase";
- var TreeIterator = function(t) {
- __extends(TreeIterator, t);
- function TreeIterator(r, e, n) {
- var i = t.call(this, n) || this;
- i.D = r;
- i.J = e;
- if (i.iteratorType === 0) {
- i.pre = function() {
- if (this.D === this.J.Y) {
- throw new RangeError("Tree iterator access denied!");
- }
- this.D = this.D.pre();
- return this;
- };
- i.next = function() {
- if (this.D === this.J) {
- throw new RangeError("Tree iterator access denied!");
- }
- this.D = this.D.next();
- return this;
- };
- } else {
- i.pre = function() {
- if (this.D === this.J.Z) {
- throw new RangeError("Tree iterator access denied!");
- }
- this.D = this.D.next();
- return this;
- };
- i.next = function() {
- if (this.D === this.J) {
- throw new RangeError("Tree iterator access denied!");
- }
- this.D = this.D.pre();
- return this;
- };
- }
- return i;
- }
- Object.defineProperty(TreeIterator.prototype, "index", {
- get: function() {
- var t = this.D;
- var r = this.J.tt;
- if (t === this.J) {
- if (r) {
- return r.rt - 1;
- }
- return 0;
- }
- var e = 0;
- if (t.Y) {
- e += t.Y.rt;
- }
- while (t !== r) {
- var n = t.tt;
- if (t === n.Z) {
- e += 1;
- if (n.Y) {
- e += n.Y.rt;
- }
- }
- t = n;
- }
- return e;
- },
- enumerable: false,
- configurable: true
- });
- TreeIterator.prototype.equals = function(t) {
- return this.D === t.D;
- };
- return TreeIterator;
- }(ContainerIterator);
- export default TreeIterator;
|