singulure
Version:
A tiny JavaScript utility to ensure a function can only be called a single time — forever.
19 lines (13 loc) • 429 B
JavaScript
import { singulure } from './index.js';
let count = 0;
const increment = singulure(() => {
count++;
return count;
});
function assert(condition, message) {
if (!condition) throw new Error(message);
}
assert(increment() === 1, 'First call should return 1');
assert(increment() === 1, 'Second call should still return 1');
assert(increment() === 1, 'Third call should still return 1');
console.log('All tests passed!');