objection
Version:
An SQL-friendly ORM for Node.js
29 lines (22 loc) • 481 B
JavaScript
;
const cache = new Map();
function inheritModel(modelClass) {
let inherit = cache.get(modelClass.name);
if (!inherit) {
inherit = createClassInheritor(modelClass.name);
cache.set(modelClass.name, inherit);
}
return inherit(modelClass);
}
function createClassInheritor(className) {
return new Function(
'BaseClass',
`
'use strict';
return class ${className} extends BaseClass {}
`,
);
}
module.exports = {
inheritModel,
};