acr-assist-simulator-module
Version:
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.7.4.
107 lines (106 loc) • 6.44 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* @record
* @template T
*/
export function IDictionary() { }
function IDictionary_tsickle_Closure_declarations() {
/** @type {?} */
IDictionary.prototype.Add;
/** @type {?} */
IDictionary.prototype.ContainsKey;
/** @type {?} */
IDictionary.prototype.Count;
/** @type {?} */
IDictionary.prototype.Item;
/** @type {?} */
IDictionary.prototype.Keys;
/** @type {?} */
IDictionary.prototype.Remove;
/** @type {?} */
IDictionary.prototype.Values;
}
/**
* @template T
*/
export class Dictionary {
constructor() {
this.items = {};
this.count = 0;
}
/**
* @param {?} key
* @return {?}
*/
ContainsKey(key) {
return this.items.hasOwnProperty(key);
}
/**
* @return {?}
*/
Count() {
return this.count;
}
/**
* @param {?} key
* @param {?} value
* @return {?}
*/
Add(key, value) {
if (!this.items.hasOwnProperty(key)) {
this.count++;
}
this.items[key] = value;
}
/**
* @param {?} key
* @return {?}
*/
Remove(key) {
const /** @type {?} */ val = this.items[key];
delete this.items[key];
this.count--;
return val;
}
/**
* @param {?} key
* @return {?}
*/
Item(key) {
return this.items[key];
}
/**
* @return {?}
*/
Keys() {
const /** @type {?} */ keySet = [];
for (const /** @type {?} */ prop in this.items) {
if (this.items.hasOwnProperty(prop)) {
keySet.push(prop);
}
}
return keySet;
}
/**
* @return {?}
*/
Values() {
const /** @type {?} */ values = [];
for (const /** @type {?} */ prop in this.items) {
if (this.items.hasOwnProperty(prop)) {
values.push(this.items[prop]);
}
}
return values;
}
}
function Dictionary_tsickle_Closure_declarations() {
/** @type {?} */
Dictionary.prototype.items;
/** @type {?} */
Dictionary.prototype.count;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2Fjci1hc3Npc3Qtc2ltdWxhdG9yLW1vZHVsZS8iLCJzb3VyY2VzIjpbInNyYy9hcHAvbW9kdWxlcy9zaW11bGF0b3Jsb2FkZXIvc2hhcmVkL21vZGVscy9kaWN0aW9uYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTQSxNQUFNOztxQkFDc0MsRUFBRTtxQkFFMUIsQ0FBQzs7Ozs7O0lBRVYsV0FBVyxDQUFDLEdBQVc7UUFDMUIsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzs7OztJQUduQyxLQUFLO1FBQ1IsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7Ozs7Ozs7SUFHZixHQUFHLENBQUMsR0FBVyxFQUFFLEtBQVE7UUFDNUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2hCO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7Ozs7OztJQUdyQixNQUFNLENBQUMsR0FBVztRQUNyQix1QkFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsTUFBTSxDQUFDLEdBQUcsQ0FBQzs7Ozs7O0lBR1IsSUFBSSxDQUFDLEdBQVc7UUFDbkIsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Ozs7O0lBR3BCLElBQUk7UUFDUCx1QkFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBRTVCLEdBQUcsQ0FBQyxDQUFDLHVCQUFNLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUM1QixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDckI7U0FDSjtRQUVELE1BQU0sQ0FBQyxNQUFNLENBQUM7Ozs7O0lBR1gsTUFBTTtRQUNULHVCQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFFdkIsR0FBRyxDQUFDLENBQUMsdUJBQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQzVCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDakM7U0FDSjtRQUVELE1BQU0sQ0FBQyxNQUFNLENBQUM7O0NBRXJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJRGljdGlvbmFyeTxUPiB7XHJcbiAgICBBZGQoa2V5OiBzdHJpbmcsIHZhbHVlOiBUKTtcclxuICAgIENvbnRhaW5zS2V5KGtleTogc3RyaW5nKTogYm9vbGVhbjtcclxuICAgIENvdW50KCk6IG51bWJlcjtcclxuICAgIEl0ZW0oa2V5OiBzdHJpbmcpOiBUO1xyXG4gICAgS2V5cygpOiBzdHJpbmdbXTtcclxuICAgIFJlbW92ZShrZXk6IHN0cmluZyk6IFQ7XHJcbiAgICBWYWx1ZXMoKTogVFtdO1xyXG59XHJcbmV4cG9ydCBjbGFzcyBEaWN0aW9uYXJ5PFQ+IGltcGxlbWVudHMgSURpY3Rpb25hcnk8VD4ge1xyXG4gICAgcHJpdmF0ZSBpdGVtczogeyBbaW5kZXg6IHN0cmluZ106IFQgfSA9IHt9O1xyXG5cclxuICAgIHByaXZhdGUgY291bnQgPSAwO1xyXG5cclxuICAgIHB1YmxpYyBDb250YWluc0tleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLmhhc093blByb3BlcnR5KGtleSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIENvdW50KCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY291bnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIEFkZChrZXk6IHN0cmluZywgdmFsdWU6IFQpIHtcclxuICAgICAgICBpZiAoIXRoaXMuaXRlbXMuaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG4gICAgICAgICAgICB0aGlzLmNvdW50Kys7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLml0ZW1zW2tleV0gPSB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgUmVtb3ZlKGtleTogc3RyaW5nKTogVCB7XHJcbiAgICAgICAgY29uc3QgdmFsID0gdGhpcy5pdGVtc1trZXldO1xyXG4gICAgICAgIGRlbGV0ZSB0aGlzLml0ZW1zW2tleV07XHJcbiAgICAgICAgdGhpcy5jb3VudC0tO1xyXG4gICAgICAgIHJldHVybiB2YWw7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIEl0ZW0oa2V5OiBzdHJpbmcpOiBUIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5pdGVtc1trZXldO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBLZXlzKCk6IHN0cmluZ1tdIHtcclxuICAgICAgICBjb25zdCBrZXlTZXQ6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiB0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLml0ZW1zLmhhc093blByb3BlcnR5KHByb3ApKSB7XHJcbiAgICAgICAgICAgICAgICBrZXlTZXQucHVzaChwcm9wKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGtleVNldDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgVmFsdWVzKCk6IFRbXSB7XHJcbiAgICAgICAgY29uc3QgdmFsdWVzOiBUW10gPSBbXTtcclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBwcm9wIGluIHRoaXMuaXRlbXMpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuaXRlbXMuaGFzT3duUHJvcGVydHkocHJvcCkpIHtcclxuICAgICAgICAgICAgICAgIHZhbHVlcy5wdXNoKHRoaXMuaXRlbXNbcHJvcF0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdmFsdWVzO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==