UNPKG

planck-js

Version:

2D physics engine for JavaScript/HTML5 game development

25 lines (24 loc) 454 B
module.exports = function(create) { var memo = {}; function fn(key) { if (Array.isArray(key)) { return list(key); } else { return key in memo ? get(key) : neo(key); } } function neo(id) { return memo[id] = create(id); } function get(id) { return memo[id]; } function list(ids) { if (Array.isArray(ids)) { return ids.map(function(id) { return memo[id]; }); } } return fn; };