clojure.repl
Utilities meant to be used interactively at the REPL
(apropos str-or-pattern)
Given a regular expression or stringable thing, return a seq of all
public definitions in all currently-loaded namespaces that match the
str-or-pattern.
(demunge fn-name)
Given a string representation of a fn class,
as in a stack trace element, returns a readable version.
(dir nsname)
Prints a sorted directory of public vars in a namespace
(dir-fn ns)
Returns a sorted seq of symbols naming public vars in
a namespace or namespace alias. Looks for aliases in *ns*
(doc name)
Prints documentation for a var or special form given its name,
or for a spec if given a keyword
(pst)
(pst e-or-depth)
(pst e depth)
Prints a stack trace of the exception, to the depth requested. If none supplied, uses the root cause of the
most recent repl exception (*e), and a depth of 12.
(root-cause t)
Returns the initial cause of an exception or error by peeling off all of
its wrappers
(set-break-handler!)
(set-break-handler! f)
Register INT signal handler. After calling this, Ctrl-C will cause
the given function f to be called with a single argument, the signal.
Uses thread-stopper if no function given.
(source n)
Prints the source code for the given symbol, if it can find it.
This requires that the symbol resolve to a Var defined in a
namespace for which the .clj is in the classpath.
Example: (source filter)
(source-fn x)
Returns a string of the source code for the given symbol, if it can
find it. This requires that the symbol resolve to a Var defined in
a namespace for which the .clj is in the classpath. Returns nil if
it can't find the source. For most REPL usage, 'source' is more
convenient.
Example: (source-fn 'filter)