Возможно только чтение источника из Vars, которые находятся на диске.
Итак, если вы оценили буфер, он загружается в REPL, и вы не можете просмотреть источник с помощью source
.
Один из способов сделать чтение источника путем размещения в другом файле (например, /my_other_clj_file.clj
):
(ns my-other-clj-file)
(defn my-fn
[]
1)
Не оценивать буфер.
Затем перейдите к /tests/my_clj_file.clj
и оценить:
(ns tests.my-clj-file
(:require [clojure.repl :as repl]
[other-file :refer [my-fn]))
(println (repl/source my-fn))
Это правильно напечатать источник.
(defn мой-ф
[]
1)
ноль
@Josh это в Clojure файл не РЕПЛ. –