- BREAKING The post-processing argument to
valuate!
(and by extensionrmap!
) now receives aclojure.lang.MapEntry
as its argument, instead of only the value. This way you have access to the key currently being valuated.
- An actual
ref
function has been added, such that it is clearer when it can be used: using it outside the evaluation of a recursive value will throw an unbound exception. In other words, you can only use it inside therval
orrmap
macro. - The
rmap
macro now takes existing (non-literal) maps and vectors.
- Now that the
rmap
macro also supports the role of->rmap
, the latter is deprecated.
- The
ref
function is not implicitly available anymore. You will have to use the actualrmap.core/ref
function. Updating your require to refer to the newref
function will make it work backwards compatible. Do note that theref
function is only bound during evaluation of an rval. If you want to use theref
function at a later point, you should bind it locally.
- The tagged literal
#rmap/ref
is now supported, for fully data driven recursive maps. - The function
->rmap
is added, to transforms an existing map to a recursive map. - The
valuate!
function now takes an optional post-evaluation wrapper function.
Completely revamped library after six years. See README for details.
For the changelog on former versions, see older commits.