ecclesia
Version:
Framework for political and electoral simulations
29 lines • 848 B
JavaScript
class BaseScores extends Map {
get(key) {
const value = super.get(key);
if (value === undefined) {
return Array(this.ngrades).fill(0);
}
return value;
}
}
export var Scores;
(function (Scores) {
function fromEntries(elements) {
if (elements.length === 0) {
throw new Error("Use the fromGrades method to create an empty Scores instance");
}
const ths = new BaseScores(elements);
ths.ngrades = elements[0][1].length;
return ths;
}
Scores.fromEntries = fromEntries;
function fromGrades(ngrades) {
const ths = new Map();
ths.ngrades = ngrades;
ths.get = () => Array(ngrades).fill(0);
return ths;
}
Scores.fromGrades = fromGrades;
})(Scores || (Scores = {}));
//# sourceMappingURL=tally.js.map