UNPKG

@magic-xpa/utils

Version:

magic utils package

88 lines (87 loc) 4.88 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { List } from "@magic-xpa/mscorelib"; /** * @template T */ var /** * @template T */ Queue = /** @class */ (function () { /// <summary> </summary> function Queue() { this._queueVec = null; this._queueVec = new List(); } /// <summary> returns the first object in the queue</summary> /** * @return {?} */ Queue.prototype.get = /** * @return {?} */ function () { /** @type {?} */ var returnValue = null; if (this._queueVec.length > 0) { returnValue = this._queueVec.get_Item(0); this._queueVec.RemoveAt(0); } return returnValue; }; /// <summary> add an object to the end of the queue</summary> /// <param name="obj">the object to add /** * @param {?} obj * @return {?} */ Queue.prototype.put = /** * @param {?} obj * @return {?} */ function (obj) { this._queueVec.push(obj); }; /// <summary> remove all the objects from the queue</summary> /** * @return {?} */ Queue.prototype.clear = /** * @return {?} */ function () { this._queueVec.Clear(); }; /// <summary> returns true if the queue is empty</summary> /** * @return {?} */ Queue.prototype.isEmpty = /** * @return {?} */ function () { return this._queueVec.length === 0; }; /// <summary> returns size of the queue</summary> /** * @return {?} */ Queue.prototype.Size = /** * @return {?} */ function () { return this._queueVec.length; }; return Queue; }()); /** * @template T */ export { Queue }; if (false) { /** @type {?} */ Queue.prototype._queueVec; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVldWUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbWFnaWMteHBhL3V0aWxzLyIsInNvdXJjZXMiOlsic3JjL1F1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFHMUM7OztBQUFBO0lBR0Usd0JBQXdCO0lBQ3hCO3lCQUg2QixJQUFJO1FBSS9CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxJQUFJLEVBQUssQ0FBQztLQUNoQztJQUVELDZEQUE2RDs7OztJQUM3RCxtQkFBRzs7O0lBQUg7O1FBQ0UsSUFBSSxXQUFXLEdBQU0sSUFBSSxDQUFDO1FBRTFCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUIsV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzVCO1FBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQztLQUNwQjtJQUVELDZEQUE2RDtJQUM3RCx1Q0FBdUM7Ozs7O0lBQ3ZDLG1CQUFHOzs7O0lBQUgsVUFBSSxHQUFNO1FBQ1IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDMUI7SUFFRCw2REFBNkQ7Ozs7SUFDN0QscUJBQUs7OztJQUFMO1FBQ0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztLQUN4QjtJQUVELDBEQUEwRDs7OztJQUMxRCx1QkFBTzs7O0lBQVA7UUFDRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0tBQ3BDO0lBRUQsaURBQWlEOzs7O0lBQ2pELG9CQUFJOzs7SUFBSjtRQUNFLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztLQUM5QjtnQkExQ0g7SUEyQ0MsQ0FBQTs7OztBQXhDRCxpQkF3Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xpc3R9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5cclxuLy8vIDxzdW1tYXJ5PiBpbXBsZW1lbnRhdGlvbiBvZiBhIGdlbmVyYWwgcXVldWU8L3N1bW1hcnk+XHJcbmV4cG9ydCBjbGFzcyBRdWV1ZTxUPiB7XHJcbiAgcHJpdmF0ZSBfcXVldWVWZWM6IExpc3Q8VD4gPSBudWxsO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+IDwvc3VtbWFyeT5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuX3F1ZXVlVmVjID0gbmV3IExpc3Q8VD4oKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gcmV0dXJucyB0aGUgZmlyc3Qgb2JqZWN0IGluIHRoZSBxdWV1ZTwvc3VtbWFyeT5cclxuICBnZXQoKTogYW55IHtcclxuICAgIGxldCByZXR1cm5WYWx1ZTogVCA9IG51bGw7XHJcblxyXG4gICAgaWYgKHRoaXMuX3F1ZXVlVmVjLmxlbmd0aCA+IDApIHtcclxuICAgICAgcmV0dXJuVmFsdWUgPSB0aGlzLl9xdWV1ZVZlYy5nZXRfSXRlbSgwKTtcclxuICAgICAgdGhpcy5fcXVldWVWZWMuUmVtb3ZlQXQoMCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJldHVyblZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBhZGQgYW4gb2JqZWN0IHRvIHRoZSBlbmQgb2YgdGhlIHF1ZXVlPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm9ialwiPnRoZSBvYmplY3QgdG8gYWRkXHJcbiAgcHV0KG9iajogVCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcXVldWVWZWMucHVzaChvYmopO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiByZW1vdmUgYWxsIHRoZSBvYmplY3RzIGZyb20gdGhlIHF1ZXVlPC9zdW1tYXJ5PlxyXG4gIGNsZWFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcXVldWVWZWMuQ2xlYXIoKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gcmV0dXJucyB0cnVlIGlmIHRoZSBxdWV1ZSBpcyBlbXB0eTwvc3VtbWFyeT5cclxuICBpc0VtcHR5KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlVmVjLmxlbmd0aCA9PT0gMDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gcmV0dXJucyBzaXplIG9mIHRoZSBxdWV1ZTwvc3VtbWFyeT5cclxuICBTaXplKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fcXVldWVWZWMubGVuZ3RoO1xyXG4gIH1cclxufVxyXG4iXX0=