(deftrace name & definition)
Use in place of defn; traces each call/return of this fn, including arguments. Nested calls to deftrace'd functions will print a tree-like structure. The first argument of the form definition can be a doc string
Use in place of defn; traces each call/return of this fn, including arguments. Nested calls to deftrace'd functions will print a tree-like structure. The first argument of the form definition can be a doc string
(dotrace fnames & exprs)
Given a sequence of function identifiers, evaluate the body expressions in an environment in which the identifiers are bound to the traced functions. Does not work on inlined functions, such as clojure.core/+
Given a sequence of function identifiers, evaluate the body expressions in an environment in which the identifiers are bound to the traced functions. Does not work on inlined functions, such as clojure.core/+
Protocol to isolate trace-form from convoluted throwables that do not have a constructor with a single string argument. clone-throwable attempts to clone a throwable with a human readable stack trace and message :) It must return a throwable of the same class. If not clonable, the original throwable should be returned. At least this will preserve the original throwable information. Cloning should be non-obtrusive hence internal exceptions should be silently swallowed and return the original throwable.
Protocol to isolate trace-form from convoluted throwables that do not have a constructor with a single string argument. clone-throwable attempts to clone a throwable with a human readable stack trace and message :) It must return a throwable of the same class. If not clonable, the original throwable should be returned. At least this will preserve the original throwable information. Cloning should be non-obtrusive hence internal exceptions should be silently swallowed and return the original throwable.
(clone-throwable this stack-trace args)
(trace-compose-throwable throwable message)
Re-create a new throwable with a composed message from the given throwable and the message to be added. The exception stack trace is kept at a minimum.
Re-create a new throwable with a composed message from the given throwable and the message to be added. The exception stack trace is kept at a minimum.
(trace-fn-call name f args)
Traces a single call to a function f with args. 'name' is the symbol name of the function.
Traces a single call to a function f with args. 'name' is the symbol name of the function.
(trace-form form)
Trace the given form avoiding try catch when recur is present in the form.
Trace the given form avoiding try catch when recur is present in the form.
(trace-forms & body)
Trace all the forms in the given body. Returns any underlying uncaught exceptions that may make the forms fail.
Trace all the forms in the given body. Returns any underlying uncaught exceptions that may make the forms fail.
(trace-ns n)
Trace all fns in the given name space. The given name space can be quoted, unquoted or stored in a var. We must try to resolve the expression passed to us partially to find out if it needs to be quoted or not when passed to trace-ns*
Trace all fns in the given name space. The given name space can be quoted, unquoted or stored in a var. We must try to resolve the expression passed to us partially to find out if it needs to be quoted or not when passed to trace-ns*
(trace-ns* ns)
Replaces each function from the given namespace with a version wrapped in a tracing call. Can be undone with untrace-ns. ns should be a namespace object or a symbol. No-op for clojure.core and clojure.tools.trace.
Replaces each function from the given namespace with a version wrapped in a tracing call. Can be undone with untrace-ns. ns should be a namespace object or a symbol. No-op for clojure.core and clojure.tools.trace.
(trace-var* v)
(trace-var* ns s)
If the specified Var holds an IFn and is not marked as a macro, its contents is replaced with a version wrapped in a tracing call; otherwise nothing happens. Can be undone with untrace-var. In the unary case, v should be a Var object or a symbol to be resolved in the current namespace. In the binary case, ns should be a namespace object or a symbol naming a namespace and s a symbol to be resolved in that namespace.
If the specified Var holds an IFn and is not marked as a macro, its contents is replaced with a version wrapped in a tracing call; otherwise nothing happens. Can be undone with untrace-var. In the unary case, v should be a Var object or a symbol to be resolved in the current namespace. In the binary case, ns should be a namespace object or a symbol naming a namespace and s a symbol to be resolved in that namespace.
(trace-vars & vs)
Trace each of the specified Vars. The arguments may be Var objects or symbols to be resolved in the current namespace.
Trace each of the specified Vars. The arguments may be Var objects or symbols to be resolved in the current namespace.
(traceable? v)
Returns true if the given var can be traced, false otherwise
Returns true if the given var can be traced, false otherwise
(traced? v)
Returns true if the given var is currently traced, false otherwise
Returns true if the given var is currently traced, false otherwise
(untrace-ns n)
Untrace all fns in the given name space. The given name space can be quoted, unquoted or stored in a var. We must try to resolve the expression passed to us partially to find out if it needs to be quoted or not when passed to untrace-ns*
Untrace all fns in the given name space. The given name space can be quoted, unquoted or stored in a var. We must try to resolve the expression passed to us partially to find out if it needs to be quoted or not when passed to untrace-ns*
(untrace-ns* ns)
Reverses the effect of trace-var / trace-vars / trace-ns for the Vars in the given namespace, replacing each traced function from the given namespace with the original, untraced version.
Reverses the effect of trace-var / trace-vars / trace-ns for the Vars in the given namespace, replacing each traced function from the given namespace with the original, untraced version.
(untrace-var* v)
(untrace-var* ns s)
Reverses the effect of trace-var / trace-vars / trace-ns for the given Var, replacing the traced function with the original, untraced version. No-op for non-traced Vars. Argument types are the same as those for trace-var.
Reverses the effect of trace-var / trace-vars / trace-ns for the given Var, replacing the traced function with the original, untraced version. No-op for non-traced Vars. Argument types are the same as those for trace-var.
(untrace-vars & vs)
Untrace each of the specified Vars. Reverses the effect of trace-var / trace-vars / trace-ns for each of the arguments, replacing the traced functions with the original, untraced versions.
Untrace each of the specified Vars. Reverses the effect of trace-var / trace-vars / trace-ns for each of the arguments, replacing the traced functions with the original, untraced versions.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close