/[slime]/slime/contrib/slime-fancy-inspector.el
ViewVC logotype

Contents of /slime/contrib/slime-fancy-inspector.el

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.10 - (show annotations)
Sat Jan 5 11:38:52 2013 UTC (15 months, 1 week ago) by sboukarev
Branch: MAIN
CVS Tags: HEAD
Changes since 1.9: +0 -11 lines
Remove stray code.
1
2 (define-slime-contrib slime-fancy-inspector
3 "Fancy inspector for CLOS objects."
4 (:authors "Marco Baringer <mb@bese.it> and others")
5 (:license "GPL")
6 (:slime-dependencies slime-parse)
7 (:swank-dependencies swank-fancy-inspector)
8 (:on-load
9 (add-hook 'slime-edit-definition-hooks 'slime-edit-inspector-part))
10 (:on-unload
11 (remove-hook 'slime-edit-definition-hooks 'slime-edit-inspector-part)))
12
13 (defun slime-inspect-definition ()
14 "Inspect definition at point"
15 (interactive)
16 (slime-inspect (slime-definition-at-point)))
17
18 (defun slime-disassemble-definition ()
19 "Disassemble definition at point"
20 (interactive)
21 (slime-eval-describe `(swank:disassemble-form
22 ,(slime-definition-at-point t))))
23
24 (defun slime-edit-inspector-part (name &optional where)
25 (destructuring-bind (&optional property value)
26 (slime-inspector-property-at-point)
27 (when (eq property 'slime-part-number)
28 (let ((location (slime-eval `(swank:find-definition-for-thing
29 (swank:inspector-nth-part ,value))))
30 (name (format "Inspector part %s" value)))
31 (when (and (consp location)
32 (not (eq (car location) :error)))
33 (slime-edit-definition-cont
34 (list (make-slime-xref :dspec `(,name)
35 :location location))
36 name
37 where))))))
38
39 (provide 'slime-fancy-inspector)

  ViewVC Help
Powered by ViewVC 1.1.5