2

p関数に Timbre ステートメントを含めようとすると、エラーが発生します。

プロジェクト.clj

 (defproject sketch "0.1.0-SNAPSHOT"
      :description "FIXME: write description"
      :url "http://example.com/FIXME"
      :license {:name "Eclipse Public License"
                :url "http://www.eclipse.org/legal/epl-v10.html"}
      :dependencies [[org.clojure/clojure "1.5.1"]
                     [com.taoensso/timbre "3.1.1"]])

コア.clj

(ns user (:require [taoensso.timbre :as timbre])) 
(timbre/refer-timbre)

(defn tst [a]
  (p :tf (+ a a)))

出力(サイダー/nrepl)

 Unable to resolve symbol: p in this context, compiling:(NO_SOURCE_PATH:2:3)

しかし、他のTimbre機能/マクロは同様profileに機能しますspy

4

2 に答える 2

2

pプロファイリング マクロは refer-timbre で公開されていません。ドキュメントは古くなっているようです。

(require
   '[taoensso.timbre.profiling :as profiling :refer (pspy pspy* profile defnp)])

ご覧のとおり、pは単なるエイリアスですpspy

 (defmacro p [id & body] `(pspy ~id ~@body)) ; Alias

したがって、代わりに使用できますpspy

于 2014-03-07T02:42:14.083 に答える