Skip to content

Commit 98eedd2

Browse files
author
hswick
committed
Added generate-docs.pxi
1 parent d043be3 commit 98eedd2

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

generate-docs.pxi

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
(ns pixie.generate-docs
2+
(:require [pixie.io :as io]
3+
[pixie.string :as string]))
4+
5+
(let [[namespace] program-arguments]
6+
7+
(println "==============")
8+
(println (name namespace))
9+
(println "==============")
10+
11+
(load-ns (symbol namespace))
12+
(println)
13+
14+
;;Should be sorting the map
15+
;;Like so: (sort-by first map)
16+
;;However, I'm holding off until sort is properly supported
17+
(doseq [[k v] (ns-map (the-ns namespace))]
18+
(println (name k))
19+
(println "====================================")
20+
(println)
21+
22+
(if-let [m (meta @v)]
23+
(do
24+
;(println m)
25+
(if-let [doc (:doc m)];;
26+
(println doc)
27+
(println "No doc available :("))
28+
(println)
29+
30+
(when-let (examples (:examples m))
31+
(println "**Examples:**")
32+
(doseq [[code _ result] examples]
33+
(println)
34+
(println code)
35+
(println)
36+
(when (not (nil? result))
37+
(println "=> " result)))
38+
(println))
39+
40+
(when-let (signatures (:signatures m))
41+
(println "**Signatures:**")
42+
(println)
43+
(doseq [sig signatures]
44+
(println (str "- " sig)))
45+
(println))
46+
47+
(when (and (:line-number m) (:file m))
48+
(let [file (str "pixie/" (last (string/split (:file m) "/")))]
49+
(println (str "http://github.com/pixie-lang/pixie/blob/master/"
50+
file "#L" (:line-number m))))
51+
(println)))
52+
53+
(println "No meta data available :("))
54+
(println)))

0 commit comments

Comments
 (0)