UNPKG

iceye-angular-cesium-fork

Version:

Angular library for working with Cesium.

21 lines 2.07 kB
import { Injectable } from '@angular/core'; export class ComputationCache { constructor() { this._cache = new Map(); } get(expression, insertFn) { if (this._cache.has(expression)) { return this._cache.get(expression); } const value = insertFn(); this._cache.set(expression, value); return value; } clear() { this._cache.clear(); } } ComputationCache.decorators = [ { type: Injectable } ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0YXRpb24tY2FjaGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY2VzaXVtL3NyYy9saWIvYW5ndWxhci1jZXNpdW0vc2VydmljZXMvY29tcHV0YXRpb24tY2FjaGUvY29tcHV0YXRpb24tY2FjaGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFFVSxXQUFNLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQztJQWUxQyxDQUFDO0lBYkMsR0FBRyxDQUFDLFVBQWtCLEVBQUUsUUFBcUI7UUFDM0MsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3BDO1FBRUQsTUFBTSxLQUFLLEdBQUcsUUFBUSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ25DLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3RCLENBQUM7OztZQWhCRixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29tcHV0YXRpb25DYWNoZSB7XG4gIHByaXZhdGUgX2NhY2hlID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcblxuICBnZXQoZXhwcmVzc2lvbjogc3RyaW5nLCBpbnNlcnRGbjogKCgpID0+IGFueSkpOiBhbnkge1xuICAgIGlmICh0aGlzLl9jYWNoZS5oYXMoZXhwcmVzc2lvbikpIHtcbiAgICAgIHJldHVybiB0aGlzLl9jYWNoZS5nZXQoZXhwcmVzc2lvbik7XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBpbnNlcnRGbigpO1xuICAgIHRoaXMuX2NhY2hlLnNldChleHByZXNzaW9uLCB2YWx1ZSk7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5fY2FjaGUuY2xlYXIoKTtcbiAgfVxufVxuIl19