Skip to content

Commit 4fc5b82

Browse files
committed
rustdoc: Simplify the relation between the brief and long description
Brief is just used for indexes now
1 parent e8c7b53 commit 4fc5b82

File tree

2 files changed

+32
-184
lines changed

2 files changed

+32
-184
lines changed

src/rustdoc/desc_to_brief_pass.rs

Lines changed: 18 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,9 @@ fn run(
3131

3232
fn fold_item(fold: fold::fold<()>, doc: doc::itemdoc) -> doc::itemdoc {
3333
let doc = fold::default_seq_fold_item(fold, doc);
34-
let (brief, desc) = modify(doc.brief, doc.desc);
3534

3635
{
37-
brief: brief,
38-
desc: desc
36+
brief: extract(doc.desc)
3937
with doc
4038
}
4139
}
@@ -45,11 +43,8 @@ fn fold_iface(fold: fold::fold<()>, doc: doc::ifacedoc) -> doc::ifacedoc {
4543

4644
{
4745
methods: par::anymap(doc.methods) {|doc|
48-
let (brief, desc) = modify(doc.brief, doc.desc);
49-
5046
{
51-
brief: brief,
52-
desc: desc
47+
brief: extract(doc.desc)
5348
with doc
5449
}
5550
}
@@ -62,11 +57,8 @@ fn fold_impl(fold: fold::fold<()>, doc: doc::impldoc) -> doc::impldoc {
6257

6358
{
6459
methods: par::anymap(doc.methods) {|doc|
65-
let (brief, desc) = modify(doc.brief, doc.desc);
66-
6760
{
68-
brief: brief,
69-
desc: desc
61+
brief: extract(doc.desc)
7062
with doc
7163
}
7264
}
@@ -75,76 +67,22 @@ fn fold_impl(fold: fold::fold<()>, doc: doc::impldoc) -> doc::impldoc {
7567
}
7668

7769
#[test]
78-
fn should_promote_mod_desc() {
79-
let doc = test::mk_doc("#[doc(desc = \"desc\")] mod m { }");
70+
fn should_promote_desc() {
71+
let doc = test::mk_doc("#[doc = \"desc\"] mod m { }");
8072
assert doc.cratemod().mods()[0].brief() == some("desc");
81-
assert doc.cratemod().mods()[0].desc() == none;
82-
}
83-
84-
#[test]
85-
fn should_promote_const_desc() {
86-
let doc = test::mk_doc("#[doc(desc = \"desc\")] const a: bool = true;");
87-
assert doc.cratemod().consts()[0].brief() == some("desc");
88-
assert doc.cratemod().consts()[0].desc() == none;
89-
}
90-
91-
#[test]
92-
fn should_promote_fn_desc() {
93-
let doc = test::mk_doc("#[doc(desc = \"desc\")] fn a() { }");
94-
assert doc.cratemod().fns()[0].brief() == some("desc");
95-
assert doc.cratemod().fns()[0].desc() == none;
96-
}
97-
98-
#[test]
99-
fn should_promote_enum_desc() {
100-
let doc = test::mk_doc("#[doc(desc = \"desc\")] enum a { b }");
101-
assert doc.cratemod().enums()[0].brief() == some("desc");
102-
assert doc.cratemod().enums()[0].desc() == none;
103-
}
104-
105-
#[test]
106-
fn should_promote_resource_desc() {
107-
let doc = test::mk_doc(
108-
"#[doc(desc = \"desc\")] resource r(a: bool) { }");
109-
assert doc.cratemod().resources()[0].brief() == some("desc");
110-
assert doc.cratemod().resources()[0].desc() == none;
111-
}
112-
113-
#[test]
114-
fn should_promote_iface_desc() {
115-
let doc = test::mk_doc("#[doc(desc = \"desc\")] iface i { fn a(); }");
116-
assert doc.cratemod().ifaces()[0].brief() == some("desc");
117-
assert doc.cratemod().ifaces()[0].desc() == none;
11873
}
11974

12075
#[test]
12176
fn should_promote_iface_method_desc() {
122-
let doc = test::mk_doc("iface i { #[doc(desc = \"desc\")] fn a(); }");
77+
let doc = test::mk_doc("iface i { #[doc = \"desc\"] fn a(); }");
12378
assert doc.cratemod().ifaces()[0].methods[0].brief == some("desc");
124-
assert doc.cratemod().ifaces()[0].methods[0].desc == none;
125-
}
126-
127-
#[test]
128-
fn should_promote_impl_desc() {
129-
let doc = test::mk_doc(
130-
"#[doc(desc = \"desc\")] impl i for int { fn a() { } }");
131-
assert doc.cratemod().impls()[0].brief() == some("desc");
132-
assert doc.cratemod().impls()[0].desc() == none;
13379
}
13480

13581
#[test]
13682
fn should_promote_impl_method_desc() {
13783
let doc = test::mk_doc(
138-
"impl i for int { #[doc(desc = \"desc\")] fn a() { } }");
84+
"impl i for int { #[doc = \"desc\"] fn a() { } }");
13985
assert doc.cratemod().impls()[0].methods[0].brief == some("desc");
140-
assert doc.cratemod().impls()[0].methods[0].desc == none;
141-
}
142-
143-
#[test]
144-
fn should_promote_type_desc() {
145-
let doc = test::mk_doc("#[doc(desc = \"desc\")] type t = int;");
146-
assert doc.cratemod().types()[0].brief() == some("desc");
147-
assert doc.cratemod().types()[0].desc() == none;
14886
}
14987

15088
#[cfg(test)]
@@ -158,19 +96,15 @@ mod test {
15896
}
15997
}
16098

161-
fn modify(
162-
brief: option<str>,
163-
desc: option<str>
164-
) -> (option<str>, option<str>) {
165-
166-
if option::is_some(brief) || option::is_none(desc) {
167-
ret (brief, desc);
99+
fn extract(desc: option<str>) -> option<str> {
100+
if option::is_none(desc) {
101+
ret none
168102
}
169103

170104
parse_desc(option::get(desc))
171105
}
172106

173-
fn parse_desc(desc: str) -> (option<str>, option<str>) {
107+
fn parse_desc(desc: str) -> option<str> {
174108

175109
const max_brief_len: uint = 120u;
176110

@@ -179,18 +113,12 @@ fn parse_desc(desc: str) -> (option<str>, option<str>) {
179113
if check vec::is_not_empty(paras) {
180114
let maybe_brief = vec::head(paras);
181115
if str::len(maybe_brief) <= max_brief_len {
182-
let desc_paras = vec::tail(paras);
183-
let desc = if vec::is_not_empty(desc_paras) {
184-
some(str::connect(desc_paras, "\n\n"))
185-
} else {
186-
none
187-
};
188-
(some(maybe_brief), desc)
116+
some(maybe_brief)
189117
} else {
190-
(none, some(desc))
118+
none
191119
}
192120
} else {
193-
(none, none)
121+
none
194122
}
195123
}
196124

@@ -244,16 +172,13 @@ fn test_paragraphs_2() {
244172

245173
#[test]
246174
fn should_promote_short_descs() {
247-
let brief = none;
248175
let desc = some("desc");
249-
let (newbrief, newdesc) = modify(brief, desc);
250-
assert newbrief == desc;
251-
assert newdesc == none;
176+
let brief = extract(desc);
177+
assert brief == desc;
252178
}
253179

254180
#[test]
255181
fn should_not_promote_long_descs() {
256-
let brief = none;
257182
let desc = some("Warkworth Castle is a ruined medieval building
258183
in the town of the same name in the English county of Northumberland.
259184
The town and castle occupy a loop of the River Coquet, less than a mile
@@ -262,24 +187,6 @@ but traditionally its construction has been ascribed to Prince Henry of
262187
Scotland in the mid 12th century, although it may have been built by
263188
King Henry II of England when he took control of England'snorthern
264189
counties.");
265-
let (newbrief, _) = modify(brief, desc);
266-
assert newbrief == none;
267-
}
268-
269-
#[test]
270-
fn should_not_promote_descs_over_brief() {
271-
let brief = some("brief");
272-
let desc = some("desc");
273-
let (newbrief, newdesc) = modify(brief, desc);
274-
assert newbrief == brief;
275-
assert newdesc == desc;
276-
}
277-
278-
#[test]
279-
fn should_extract_brief_from_desc() {
280-
let brief = none;
281-
let desc = some("brief\n\ndesc");
282-
let (newbrief, newdesc) = modify(brief, desc);
283-
assert newbrief == some("brief");
284-
assert newdesc == some("desc");
190+
let brief = extract(desc);
191+
assert brief == none;
285192
}

0 commit comments

Comments
 (0)