File tree Expand file tree Collapse file tree 1 file changed +19
-7
lines changed Expand file tree Collapse file tree 1 file changed +19
-7
lines changed Original file line number Diff line number Diff line change @@ -4,23 +4,34 @@ import std::io::writer_util;
4
4
export write_markdown;
5
5
6
6
type ctxt = {
7
- w : io:: writer
7
+ w : io:: writer ,
8
+ mutable depth: uint
8
9
} ;
9
10
10
11
fn write_markdown (
11
12
doc : doc:: cratedoc ,
12
13
writer : io:: writer
13
14
) {
14
15
let ctxt = {
15
- w: writer
16
+ w: writer,
17
+ mutable depth: 1 u
16
18
} ;
17
19
18
- write_header ( ctxt, doc. topmod . name ) ;
19
- write_top_module ( ctxt, doc. topmod ) ;
20
+ write_crate ( ctxt, doc) ;
21
+ }
22
+
23
+ fn write_header ( ctxt : ctxt , title : str ) {
24
+ let hashes = str:: from_chars ( vec:: init_elt ( '#' , ctxt. depth ) ) ;
25
+ ctxt. w . write_line ( #fmt ( "%s %s" , hashes, title) ) ;
20
26
}
21
27
22
- fn write_header ( ctxt : ctxt , name : str ) {
23
- ctxt. w . write_line ( "# Crate " + name) ;
28
+ fn write_crate (
29
+ ctxt : ctxt ,
30
+ doc : doc:: cratedoc
31
+ ) {
32
+ ctxt. depth = 1 u;
33
+ write_header ( ctxt, #fmt ( "Crate %s" , doc. topmod . name ) ) ;
34
+ write_top_module ( ctxt, doc. topmod ) ;
24
35
}
25
36
26
37
fn write_top_module (
@@ -54,7 +65,8 @@ fn write_fn(
54
65
ctxt : ctxt ,
55
66
doc : doc:: fndoc
56
67
) {
57
- ctxt. w . write_line ( "## Function `" + doc. name + "`" ) ;
68
+ ctxt. depth = 2 u;
69
+ write_header ( ctxt, #fmt ( "Function `%s`" , doc. name ) ) ;
58
70
alt doc. brief {
59
71
some ( brief) {
60
72
ctxt. w . write_line ( brief) ;
You can’t perform that action at this time.
0 commit comments