Devuelve un objeto del mismo tipo y valor que el objeto original, pero con metadatos combinados.
Sintaxis
A continuación se muestra la sintaxis.
(vary-meta obj new-meta)
Parameters- 'obj' es el objeto que debe comprobarse si hay algún metadato asociado a él. 'new-meta' son los valores de metadatos que deben asociarse con el objeto.
Return Value - Devuelve un objeto del mismo tipo y valor que el objeto original, pero con metadatos combinados.
Ejemplo
En el siguiente programa se muestra un ejemplo de cómo se usa.
(ns clojure.examples.example
(:gen-class))
(defn Example []
(def my-map (with-meta [1 2 3] {:prop "values"}))
(println (meta my-map))
(def new-map (vary-meta my-map assoc :newprop "new values"))
(println (meta new-map)))
(Example)
Salida
El programa anterior produce la siguiente salida.
{:prop values}
{:prop values, :newprop new values}