Get the value stored at key t
or return null if no value.
Duplicate an entry if possible.
Duplicate an entry if possible. If t1
has a memoised value associated
with it, set the value associated with t2
to the same value. If there
is no value associated with t1
, do nothing.
Return the value stored at key t
as an option.
Return the value stored at key t
if there is one, otherwise
return u
.
Return the value stored at key t
if there is one, otherwise
return u
. u
is only evaluated if necessary.
Has the value at t
already been computed or not? By default, does
the memo table contain a value for t
?
Get the value stored at key t
or return null if no value.
A view of the set of keys that are currently in this memo table.
Store the value u
under the key t
.
Store the value u
under the key t
if t
does not already have an
associated value.
Immediately reset the memo table.
Immediately reset the memo table at t
.
The number of entries in the memo table.
Update the value associated with t
by applying f
to it.
Update the value associated with t
by applying f
to it. If there
is no value currently associated with t
, associate it with u
. u
is only evaluated if necessary.
A view of the set of values that are currently in this memo table.
A memoiser that can store arbitrary values of type
U
under keys of typeT
. The behaviour of the memoiser can be adjusted by selecting an appropriate type.