| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- "use strict";
- Object.defineProperty(exports, "t", {
- value: true
- });
- exports.default = void 0;
- var _Base = require("./Base");
- var _throwError = require("../../utils/throwError");
- class HashSetIterator extends _Base.HashContainerIterator {
- constructor(t, e, r, s) {
- super(t, e, s);
- this.container = r;
- }
- get pointer() {
- if (this.o === this.h) {
- (0, _throwError.throwIteratorAccessError)();
- }
- return this.o.u;
- }
- copy() {
- return new HashSetIterator(this.o, this.h, this.container, this.iteratorType);
- }
- }
- class HashSet extends _Base.HashContainer {
- constructor(t = []) {
- super();
- const e = this;
- t.forEach((function(t) {
- e.insert(t);
- }));
- }
- begin() {
- return new HashSetIterator(this.p, this.h, this);
- }
- end() {
- return new HashSetIterator(this.h, this.h, this);
- }
- rBegin() {
- return new HashSetIterator(this._, this.h, this, 1);
- }
- rEnd() {
- return new HashSetIterator(this.h, this.h, this, 1);
- }
- front() {
- return this.p.u;
- }
- back() {
- return this._.u;
- }
- insert(t, e) {
- return this.M(t, undefined, e);
- }
- getElementByPos(t) {
- if (t < 0 || t > this.i - 1) {
- throw new RangeError;
- }
- let e = this.p;
- while (t--) {
- e = e.B;
- }
- return e.u;
- }
- find(t, e) {
- const r = this.I(t, e);
- return new HashSetIterator(r, this.h, this);
- }
- forEach(t) {
- let e = 0;
- let r = this.p;
- while (r !== this.h) {
- t(r.u, e++, this);
- r = r.B;
- }
- }
- [Symbol.iterator]() {
- return function*() {
- let t = this.p;
- while (t !== this.h) {
- yield t.u;
- t = t.B;
- }
- }.bind(this)();
- }
- }
- var _default = HashSet;
- exports.default = _default;
- //# sourceMappingURL=HashSet.js.map
|