0.1.1 • Published 5 years ago
@overlook/util-memoize v0.1.1
Overlook framework memoize utility function
Usage
Memoize a class extension function.
This prevents multiple subclasses being created, where extend()
is called multiple times to extend the same class.
// Define Route class extension
const memoize = require('@overlook/util-memoize');
const extend = memoize(function(Route) {
return class MyExtendedRouteClass extends Route {
/* ... */
};
});
// Use it
const {Route} = require('@overlook/framework');
const RouteSubclass = extend(Route);
const RouteSubclass2 = extend(Route);
// RouteSubclass2 === RouteSubclass
Tests
Use npm test
to run the tests. Use npm run cover
to check coverage.
Changelog
See changelog.md
Issues
If you discover a bug, please raise an issue on Github. https://github.com/overlookjs/util-memoize/issues
Contribution
Pull requests are very welcome. Please:
- ensure all tests pass before submitting PR
- add tests for new features
- document new functionality/API additions in README
- do not add an entry to Changelog (Changelog is created when cutting releases)