diff options
Diffstat (limited to 'src/librustdoc/markdown.rs')
| -rw-r--r-- | src/librustdoc/markdown.rs | 62 |
1 files changed, 11 insertions, 51 deletions
diff --git a/src/librustdoc/markdown.rs b/src/librustdoc/markdown.rs index 9af2ebf0661..0f107457d2b 100644 --- a/src/librustdoc/markdown.rs +++ b/src/librustdoc/markdown.rs @@ -17,20 +17,14 @@ use getopts; use testing; use rustc::session::search_paths::SearchPaths; use rustc::session::config::Externs; -use syntax::codemap::{DUMMY_SP, FileName}; - -use clean::Span; +use syntax::codemap::DUMMY_SP; use externalfiles::{ExternalHtml, LoadStringError, load_string}; -use html_diff; - -use html::render::{render_text, reset_ids}; +use html::render::reset_ids; use html::escape::Escape; -use html::render::render_difference; use html::markdown; -use html::markdown::{Markdown, MarkdownWithToc, find_testable_code, old_find_testable_code}; -use html::markdown::RenderType; +use html::markdown::{Markdown, MarkdownWithToc, find_testable_code}; use test::{TestOptions, Collector}; /// Separate any lines at the start of the file that begin with `# ` or `%`. @@ -55,12 +49,7 @@ fn extract_leading_metadata<'a>(s: &'a str) -> (Vec<&'a str>, &'a str) { /// Render `input` (e.g. "foo.md") into an HTML file in `output` /// (e.g. output = "bar" => "bar/foo.html"). pub fn render(input: &Path, mut output: PathBuf, matches: &getopts::Matches, - external_html: &ExternalHtml, include_toc: bool, - render_type: RenderType) -> isize { - // Span used for markdown hoedown/pulldown differences. - let mut span = Span::empty(); - span.filename = FileName::Real(input.to_owned()); - + external_html: &ExternalHtml, include_toc: bool) -> isize { output.push(input.file_stem().unwrap()); output.set_extension("html"); @@ -97,36 +86,12 @@ pub fn render(input: &Path, mut output: PathBuf, matches: &getopts::Matches, reset_ids(false); - let (hoedown_output, pulldown_output) = if include_toc { - // Save the state of USED_ID_MAP so it only gets updated once even - // though we're rendering twice. - render_text(|ty| format!("{}", MarkdownWithToc(text, ty))) + let text = if include_toc { + format!("{}", MarkdownWithToc(text)) } else { - // Save the state of USED_ID_MAP so it only gets updated once even - // though we're rendering twice. - render_text(|ty| format!("{}", Markdown(text, &[], ty))) + format!("{}", Markdown(text, &[])) }; - let mut differences = html_diff::get_differences(&pulldown_output, &hoedown_output); - differences.retain(|s| { - match *s { - html_diff::Difference::NodeText { ref elem_text, - ref opposite_elem_text, - .. } - if elem_text.split_whitespace().eq(opposite_elem_text.split_whitespace()) => { - false - } - _ => true, - } - }); - - if !differences.is_empty() { - let mut intro_msg = false; - for diff in differences { - render_difference(&diff, &mut intro_msg, &span, text); - } - } - let err = write!( &mut out, r#"<!DOCTYPE html> @@ -158,7 +123,7 @@ pub fn render(input: &Path, mut output: PathBuf, matches: &getopts::Matches, css = css, in_header = external_html.in_header, before_content = external_html.before_content, - text = if render_type == RenderType::Pulldown { pulldown_output } else { hoedown_output }, + text = text, after_content = external_html.after_content, ); @@ -174,7 +139,7 @@ pub fn render(input: &Path, mut output: PathBuf, matches: &getopts::Matches, /// Run any tests/code examples in the markdown file `input`. pub fn test(input: &str, cfgs: Vec<String>, libs: SearchPaths, externs: Externs, mut test_args: Vec<String>, maybe_sysroot: Option<PathBuf>, - render_type: RenderType, display_warnings: bool, linker: Option<PathBuf>) -> isize { + display_warnings: bool, linker: Option<PathBuf>) -> isize { let input_str = match load_string(input) { Ok(s) => s, Err(LoadStringError::ReadFail) => return 1, @@ -186,13 +151,8 @@ pub fn test(input: &str, cfgs: Vec<String>, libs: SearchPaths, externs: Externs, let mut collector = Collector::new(input.to_owned(), cfgs, libs, externs, true, opts, maybe_sysroot, None, Some(PathBuf::from(input)), - render_type, linker); - if render_type == RenderType::Pulldown { - old_find_testable_code(&input_str, &mut collector, DUMMY_SP); - find_testable_code(&input_str, &mut collector, DUMMY_SP); - } else { - old_find_testable_code(&input_str, &mut collector, DUMMY_SP); - } + linker); + find_testable_code(&input_str, &mut collector, DUMMY_SP); test_args.insert(0, "rustdoctest".to_string()); testing::test_main(&test_args, collector.tests, testing::Options::new().display_output(display_warnings)); |
