File: cider-xref-tree.el.html

SLIME-style call-graph browsers, presented as interactive trees (see cider-tree-view). cider-who-calls shows who calls a var; cider-who-is-called shows what a var calls. Either node can be expanded to reveal the next level, so the call graph is walked a level at a time rather than computed whole.

Both are powered by the runtime fn-refs/fn-deps ops, so - like the flat cider-xref-fn-refs - they see loaded Clojure-on-the-JVM code only. The lazy, on-demand expansion is what keeps that bearable: each level is one round trip, taken only when the user asks for it.

Defined variables (4)

cider-who-mapCIDER relationship-query ("who calls") keymap.
cider-xref-tree--implements-codeClojure form (with a ‘%s’ for the var) classifying it and listing its impls.
cider-xref-tree--protocols-with-method-codeClojure form (with a ‘%s’ for a method name) listing protocols declaring it.
cider-xref-tree--type-protocols-codeClojure form (with a ‘%s’ for the type) listing the protocols it implements.

Defined functions (22)

cider-protocols-with-method(&optional METHOD)
cider-references-menu()
cider-type-protocols(&optional SYMBOL)
cider-who-calls(&optional SYMBOL)
cider-who-implements(&optional SYMBOL)
cider-who-is-called(&optional SYMBOL)
cider-xref-tree--browse(SYMBOL OP BUFFER-NAME TITLE-FMT NOUN)
cider-xref-tree--children(VAR OP NS ANCESTORS)
cider-xref-tree--defmethod-node(SITE)
cider-xref-tree--implements(VAR)
cider-xref-tree--implements-eval-plan(VAR)
cider-xref-tree--implements-op-plan(VAR)
cider-xref-tree--jump-to-file(FILE LINE)
cider-xref-tree--leaf-node(LABEL)
cider-xref-tree--method-protocol-nodes(METHOD)
cider-xref-tree--multimethod-nodes(VAR DISPATCH-VALUES)
cider-xref-tree--name-node(NAME)
cider-xref-tree--node(VAR OP NS ANCESTORS)
cider-xref-tree--protocol-names(CODE ARG)
cider-xref-tree--show-implements(VAR PLAN)
cider-xref-tree--show-protocols(ROOT-LABEL TITLE NODES EMPTY-MSG)
cider-xref-tree--type-protocol-nodes(SYMBOL)

Defined faces (0)