diff options
| author | Mark Rousskov <mark.simulacrum@gmail.com> | 2018-07-22 07:25:00 -0600 |
|---|---|---|
| committer | Mark Rousskov <mark.simulacrum@gmail.com> | 2018-07-31 17:55:12 -0600 |
| commit | 7bea518d3a792d9c8df508b0af83ceb857ce75b7 (patch) | |
| tree | 340f650dcce53231b9de42ffcba447189cb12b02 /src/librustdoc/externalfiles.rs | |
| parent | 2216db9de78f2da623bea80594f1d9a7b54ddb54 (diff) | |
| download | rust-7bea518d3a792d9c8df508b0af83ceb857ce75b7.tar.gz rust-7bea518d3a792d9c8df508b0af83ceb857ce75b7.zip | |
Remove global derive_id and reset_ids functions
Previously these functions relied on TLS but we can instead thread the relevant state through explicitly.
Diffstat (limited to 'src/librustdoc/externalfiles.rs')
| -rw-r--r-- | src/librustdoc/externalfiles.rs | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/librustdoc/externalfiles.rs b/src/librustdoc/externalfiles.rs index 67502ab8e15..9631ea059cc 100644 --- a/src/librustdoc/externalfiles.rs +++ b/src/librustdoc/externalfiles.rs @@ -13,7 +13,8 @@ use std::path::Path; use std::str; use errors; use syntax::feature_gate::UnstableFeatures; -use html::markdown::{ErrorCodes, Markdown}; +use html::markdown::{IdMap, ErrorCodes, Markdown}; +use std::cell::RefCell; #[derive(Clone)] pub struct ExternalHtml { @@ -30,7 +31,8 @@ pub struct ExternalHtml { impl ExternalHtml { pub fn load(in_header: &[String], before_content: &[String], after_content: &[String], - md_before_content: &[String], md_after_content: &[String], diag: &errors::Handler) + md_before_content: &[String], md_after_content: &[String], diag: &errors::Handler, + id_map: &mut IdMap) -> Option<ExternalHtml> { let codes = ErrorCodes::from(UnstableFeatures::from_environment().is_nightly_build()); load_external_files(in_header, diag) @@ -40,7 +42,8 @@ impl ExternalHtml { ) .and_then(|(ih, bc)| load_external_files(md_before_content, diag) - .map(|m_bc| (ih, format!("{}{}", bc, Markdown(&m_bc, &[], codes)))) + .map(|m_bc| (ih, + format!("{}{}", bc, Markdown(&m_bc, &[], RefCell::new(id_map), codes)))) ) .and_then(|(ih, bc)| load_external_files(after_content, diag) @@ -48,7 +51,8 @@ impl ExternalHtml { ) .and_then(|(ih, bc, ac)| load_external_files(md_after_content, diag) - .map(|m_ac| (ih, bc, format!("{}{}", ac, Markdown(&m_ac, &[], codes)))) + .map(|m_ac| (ih, bc, + format!("{}{}", ac, Markdown(&m_ac, &[], RefCell::new(id_map), codes)))) ) .map(|(ih, bc, ac)| ExternalHtml { |
