Skip to content

Commit 7dcc38e

Browse files
committed
---
yaml --- r: 11678 b: refs/heads/master c: cf8f5b7 h: refs/heads/master v: v3
1 parent 21fd0c9 commit 7dcc38e

File tree

4 files changed

+27
-1
lines changed

4 files changed

+27
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: 29ac3c811d0235b51e17519d7b212287ca27e626
2+
refs/heads/master: cf8f5b7606b87c26901abc0f6e271f48828bcf5b
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 4a81779abd786ff22d71434c6d9a5917ea4cdfff
55
refs/heads/try: 2898dcc5d97da9427ac367542382b6239d9c0bbf

trunk/src/rustdoc/html_escape_pass.rs

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#[doc = "Escapes characters that are not valid in HTML"];
2+
3+
export mk_pass;
4+
5+
fn mk_pass() -> pass {
6+
desc_pass::mk_pass("html_escape", escape)
7+
}
8+
9+
fn escape(s: str) -> str {
10+
let s = str::replace(s, "&", "&");
11+
let s = str::replace(s, "<", "&lt;");
12+
let s = str::replace(s, ">", "&gt;");
13+
let s = str::replace(s, "\"", "&quot;");
14+
ret s;
15+
}
16+
17+
#[test]
18+
fn test() {
19+
assert escape("<") == "&lt;";
20+
assert escape(">") == "&gt;";
21+
assert escape("&") == "&amp;";
22+
assert escape("\"") == "&quot;";
23+
assert escape("<>&\"") == "&lt;&gt;&amp;&quot;";
24+
}

trunk/src/rustdoc/rustdoc.rc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ mod sort_item_type_pass;
3939
mod reexport_pass;
4040
mod par;
4141
mod page_pass;
42+
mod html_escape_pass;

trunk/src/rustdoc/rustdoc.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@ fn run(config: config::config) {
149149
desc_to_brief_pass::mk_pass(),
150150
trim_pass::mk_pass(),
151151
unindent_pass::mk_pass(),
152+
html_escape_pass::mk_pass(),
152153
sort_item_name_pass::mk_pass(),
153154
sort_item_type_pass::mk_pass(),
154155
markdown_index_pass::mk_pass(config),

0 commit comments

Comments
 (0)