prevent top-level export
authorGary King <gwking@metabang.com>
Sun, 16 Mar 2008 16:49:39 +0000 (12:49 -0400)
committerGary King <gwking@metabang.com>
Sun, 16 Mar 2008 16:49:39 +0000 (12:49 -0400)
darcs-hash:20080316164939-3cc5d-f889d41b451b36f8efb9cb5a2f39ee07cb7b0e0f.gz

dev/examples/class-hierarchy-to-dot.lisp
dev/graphviz/graphviz-support.lisp

index 0cc5f32..0b586fa 100644 (file)
                         containers::transforming-iterator-mixin
                         containers::basic-filtered-iterator-mixin
                         containers::circular-iterator-mixin)
-                      "thousand-parsers:iterators.dot")
\ No newline at end of file
+                      "thousand-parsers:iterators.dot")
+
+#+(or)
+;; very sucky
+(let ((op (make-instance 'asdf:load-op)))
+  (graph->dot
+   (roots-and-child-function->graph 
+    (list (asdf:find-system 'cl-graph))
+    (lambda (node)
+      (print node)
+      (typecase node
+       (asdf:component
+        (asdf:component-depends-on op node))
+       (cons
+        (let ((op (car node)))
+          (loop for name in (rest node) 
+             when (asdf:find-system name nil) append
+            (asdf:component-depends-on op (asdf:find-system name)))))))
+    4)
+   #p"/tmp/out.dot"
+   :vertex-labeler (lambda (v s)
+                    (princ (or (ignore-errors 
+                                 (asdf:component-name (element v)))
+                               (element v)) s))
+   :edge-labeler (lambda (e s)
+                  (declare (ignore e s)))))
\ No newline at end of file
index df13254..f9fa261 100644 (file)
@@ -354,7 +354,7 @@ B--D []
 (defmacro defpixel-inch-accessors (name attr type)
   (bind ((actual-name (form-symbol name "-IN-PIXELS")))
     `(progn
-      (export ',actual-name)
+       (eval-always (export ',actual-name))
       (defmethod ,actual-name ((thing ,type))
         "Return the attribute in pixels assuming 72 dpi"
         (awhen (dot-attribute-value ,attr thing)