diff options
| author | Aleksey Kladov <aleksey.kladov@gmail.com> | 2020-08-21 16:38:35 +0200 |
|---|---|---|
| committer | Aleksey Kladov <aleksey.kladov@gmail.com> | 2020-08-27 17:43:15 +0200 |
| commit | 1f95a91c24d114637131a635fe71dfd1d457fe30 (patch) | |
| tree | ab3fbe97a67ac50e81de6fca71fd50dcaf0109fa /src/librustdoc/html/highlight/tests.rs | |
| parent | f7cbb7a594658099ebb9d0008779511fe2fbe9ab (diff) | |
| download | rust-1f95a91c24d114637131a635fe71dfd1d457fe30.tar.gz rust-1f95a91c24d114637131a635fe71dfd1d457fe30.zip | |
Remove dependency on StringReader from rustdoc highlighter
rustc_lexer is the lossless lexer, which is a better fit for approximate syntax highlighting. As a side-effect, we can now syntax-highlight even broken code.
Diffstat (limited to 'src/librustdoc/html/highlight/tests.rs')
| -rw-r--r-- | src/librustdoc/html/highlight/tests.rs | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/src/librustdoc/html/highlight/tests.rs b/src/librustdoc/html/highlight/tests.rs index 21e476cbe06..756751e47e8 100644 --- a/src/librustdoc/html/highlight/tests.rs +++ b/src/librustdoc/html/highlight/tests.rs @@ -1,25 +1,9 @@ -use rustc_session::parse::ParseSess; -use rustc_span::edition::Edition; -use rustc_span::with_session_globals; -use rustc_span::FileName; - -use super::Classifier; +use super::write_code; fn highlight(src: &str) -> String { - let mut out = vec![]; - - with_session_globals(Edition::Edition2018, || { - let sess = ParseSess::with_silent_emitter(); - let source_file = sess.source_map().new_source_file( - FileName::Custom(String::from("rustdoc-highlighting")), - src.to_owned(), - ); - - let mut classifier = Classifier::new(&sess, source_file); - classifier.write_source(&mut out).unwrap(); - }); - - String::from_utf8(out).unwrap() + let mut out = String::new(); + write_code(&mut out, src); + out } #[test] |
