Decir que tengo el siguiente código:¿Cómo encuentro dinámicamente metadatos para una función de Clojure?
(defn ^{:graph-title "Function 1"} func-1 [x] (do-something-with x)) (defn get-graph-title [func] (str ((meta func) :graph-title)))
me esperaba esto para volver "Función 1", pero se vuelve nula. Creo que esto se debe a la siguiente diferencia, que yo no comprendo totalmente:
(meta func-1) => {:ns some-ns-info, :name func-1} (meta #'func-1) => {:ns some-ns-info, :name func-1, :graph-title "Function 1"}
Puede alguien explicar esto a mí?
O simplemente use la definición actual y do (get-graph-title # 'func-1) –