jsketcher/modules/lstream/memoize.js
2018-07-02 00:12:57 -07:00

13 lines
No EOL
236 B
JavaScript

import {NOT_INITIALIZED} from './utils';
export function memoize(fn) {
let value;
let lastArg = NOT_INITIALIZED;
return arg => {
if (arg !== lastArg) {
lastArg = arg;
value = fn(arg);
}
return value;
}
}