Sha256: f0f70736be68fb7a8c440706ebda3e8d74b284b9ae4d8c9b67b3cdb1883e9022
Contents?: true
Size: 856 Bytes
Versions: 14
Compression:
Stored size: 856 Bytes
Contents
'use strict'; require('../ext/dispose'); require('../ext/ref-counter'); module.exports = function (t, a) { var value = [], obj = {}, memoized, count = 0, x, y, z; memoized = t(function (arg, x, y) { a(arg, obj); return x + y; }, { refCounter: true, dispose: function (val) { value.push(val); } }); a(memoized(obj, 3, 7), 10); a(memoized(obj, 5, 8), 13); a(memoized(obj, 12, 4), 16); a.deep(value, [], "Pre"); a(memoized(obj, 5, 8), 13); memoized.deleteRef(obj, 5, 8); a.deep(value, [], "Pre"); memoized.deleteRef(obj, 5, 8); a.deep(value, [13], "#1"); value = []; memoized.deleteRef(obj, 12, 4); a.deep(value, [16], "#2"); value = []; memoized(obj, 77, 11); x = {}; y = {}; z = {}; memoized = t(function (arg) { return ++count; }); a(memoized(x), 1); a(memoized(y), 2); a(memoized(x), 1); a(memoized(z), 3); a(count, 3); };
Version data entries
14 entries across 7 versions & 1 rubygems