about summary refs log tree commit diff
path: root/src/librustdoc/html
AgeCommit message (Collapse)AuthorLines
2016-12-23Fix rustdoc highlighting of `&` and `*`.Chris Morgan-3/+5
Whitespace tokens were included, so the span check used with `&` was incorrect, and it was never highlighted as kw-2. The `*` in `*foo` and `*const T` should also be highlighted kw-2, so I added them. Note that this *will* cause mishighlighting of code like `1*2`, but that should have been written `1 * 2`. Same deal with `1&2`.
2016-12-22Auto merge of #38330 - ollie27:rustdoc_short_summaries, r=steveklabnikbors-19/+8
rustdoc: Fix short summaries in search results They should be run through a Markdown renderer in rustdoc to remove links. This also fixes the mouse over text for the Crates list on the sidebar. [before](https://doc.rust-lang.org/nightly/std/index.html?search=ord) [after](https://ollie27.github.io/rust_doc_test/std/index.html?search=ord)
2016-12-21use &str instead of Stringbluss-6/+5
2016-12-20rustdoc: properly calculate line length for impl where clausesQuietMisdreavus-1/+1
2016-12-19Don't @import normalize.css.Clar Charr-2/+1
2016-12-19remove O(n^2) to O(n) behaviorEsteban Küber-14/+17
2016-12-15Rustdoc: disambiguate Implementors when the type name is not uniqueEsteban Küber-166/+196
2016-12-14Add `MarkdownHmtl` escape structEsteban Küber-11/+27
`MarkdownHtml` structs escape HTML tags from its text.
2016-12-13rustdoc: Fix invalid HTML in stability noticesOliver Middleton-15/+16
`em` tags cannot contain `p` tags so just use a `div` instead.
2016-12-12rustdoc: escape the deprecated and unstable reason textEsteban Küber-3/+3
2016-12-12Rollup merge of #38264 - ollie27:rustdoc_src_macro, r=brsonCorey Farwell-0/+7
rustdoc: Remove broken src links from reexported items from macros When an item is defined in an external macro it doesn't get a real filename so we need to filter out these when generating src links for reexported items.
2016-12-12Rollup merge of #38164 - sourcefrog:fonts, r=GuillaumeGomezCorey Farwell-2/+4
Avoid using locally installed Source Code Pro font (fixes #24355). In some versions of this font the ampersands are drawn badly. A doc tree built with this change is at https://storage.googleapis.com/mbp-rust-builds/fonts/doc/std/index.html I'm not seeing this problem locally so I'm not sure this fixes it, but based on the diagnosis in the bug it should. I've made this a minimal change by only removing the one problematic font but maybe for consistency every font should be read from the Rust docs tree?
2016-12-12rustdoc: Fix short summaries in search resultsOliver Middleton-19/+8
They should be run through a Markdown renderer in rustdoc to remove links. This also fixes the mouse over text for the Crates list on the sidebar.
2016-12-09rustdoc: Remove broken src links from reexported items from macrosOliver Middleton-0/+7
When an item is defined in an external macro it doesn't get a real filename so we need to filter out these when generating src links for reexported items.
2016-12-07Auto merge of #38105 - ollie27:rustdoc_deterministic_js, r=GuillaumeGomezbors-24/+26
rustdoc: Sort lines in search index and implementors js This means the files are generated deterministically even with rustdoc running in parallel. Fixes the first part of #30220.
2016-12-04Avoid using locally installed Source Code Pro font (fixes #24355).Martin Pool-2/+4
In some versions of this font the ampersands are drawn badly.
2016-12-01rustdoc: Sort lines in search index and implementors jsOliver Middleton-24/+26
This means the files are generated deterministically even with rustdoc running in parallel.
2016-12-01Auto merge of #37911 - liigo:rustdoc-playground, r=alexcrichtonbors-0/+8
rustdoc: get back missing crate-name when --playground-url is used follow up PR #37763 r? @alexcrichton (since you r+ed to #37763 ) ---- Edit: When `#![doc(html_playground_url="")]` is used, the current crate name is saved to `PLAYGROUND`, so rustdoc may generate `extern crate NAME;` into code snips automatically. But when `--playground-url` was introduced in PR #37763, I forgot saving crate name to `PLAYGROUND`. This PR fix that. ---- Update: - add test - unstable `--playground-url`
2016-11-30rustdoc: link to cross-crate sources directly.Eduard-Mihai Burtescu-115/+82
2016-11-30rustdoc: fix up --playground-urlLiigo Zhuang-5/+5
2016-11-30rustdoc: get back missing crate-name when --playground-url is usedLiigo Zhuang-0/+8
follow up PR #37763
2016-11-28rustc: desugar `use a::{b,c};` into `use a::b; use a::c;` in HIR.Eduard-Mihai Burtescu-27/+0
2016-11-24rustdoc: use libsyntax ast::Attribute instead of "cleaning" them.Eduard-Mihai Burtescu-53/+50
2016-11-20Rollup merge of #37881 - ollie27:rustdoc_stab_enum_macro, r=alexcrichtonGuillaume Gomez-2/+0
rustdoc: Remove unnecessary stability versions For some reason only on enum and macro pages, the stability version is rendered after the summary unlike all other pages. As it is already displayed at the top of the page for all items, this removes it for consistency and to prevent it from overlapping the summary text. Fixes #36093
2016-11-19rustdoc: Remove unnecessary stability versionsOliver Middleton-2/+0
For some reason only on enum and macro pages, the stability version is rendered after the summary unlike all other pages. As it is already displayed at the top of the page for all items, this removes it for consistency and to prevent it from overlapping the summary text.
2016-11-18Auto merge of #37763 - liigo:rustdoc-playground, r=alexcrichtonbors-4/+2
rustdoc: add cli argument `--playground-url` Add a new cli argument `--playground-url` for rustdoc: `rustdoc lib.rs --playground-url="https://play.rust-lang.org/"` `rustdoc book.md --playground-url="https://play.rust-lang.org/"` This makes it possible for tools like https://docs.rs to generate crate docs that can submit samples code to run at https://play.rust-lang.org, even if the crate's author *forgot* putting `#![doc(html_playground_url = "https://play.rust-lang.org/")]` to crate root. By the way, I'd like to say, many crate authors are not aware of existing of `#![doc(html_playground_url = "https://play.rust-lang.org/")]`. `--playground-url` may be reset by `--markdown-playground-url` or `#![doc(html_playground_url=...)]`, so it's backward compatible. @alexcrichton since you implemented playground-url related features.
2016-11-17doc: nits and typos on commentsTshepang Lekhonkhobe-17/+17
2016-11-16Auto merge of #37773 - ollie27:rustdoc_inline_glob, r=brsonbors-35/+17
rustdoc: Fix some local inlining issues * Only inline public items when inlining glob imports. * Never inline while in a private module or a child of a private module. * Never inline impls. This allowed the removal of a workaround in the rendering code.
2016-11-14rustdoc: Fix some local inlining issuesOliver Middleton-35/+17
* Only inline public items when inlining glob imports. * Never inline while in a private module or a child of a private module. * Never inline impls. This allowed the removal of a workaround in the rendering code.
2016-11-14rustdoc: add cli argument `--playground-url`Liigo-4/+2
2016-11-13do not use deprecated text for unstable docsAndy Russell-4/+9
2016-11-12Auto merge of #37728 - QuietMisdreavus:rustdoc-enum-struct, r=GuillaumeGomezbors-3/+32
rustdoc: fold fields for enum struct variants into a docblock Per discussion in #37500, this PR updates the enum rendering code to wrap variants with named struct fields in a `docblock` span that is hidden automatically upon load of the page. This gives struct variant fields a clean separation from other enum variants, giving a boost to the readability of such documentation. Preview output is available [on the issue page](https://github.com/rust-lang/rust/issues/37500#issuecomment-260069269), but for the sake of completeness I'll include the images here again. ![rustdoc struct enum variant 4 part 1](https://cloud.githubusercontent.com/assets/5217170/20231925/96160b7e-a82a-11e6-945b-bbba95c5e4bc.PNG) When you initially load the page, there's a line under variants with struct fields letting you know you can click to expand the listing. ![rustdoc struct enum variant 4 part 2](https://cloud.githubusercontent.com/assets/3050060/20232067/1dc63266-a866-11e6-9555-8fb1c8afdcec.png) If you click to expand, the header and table unfold into a nicely-indented listing. If you want to take a look in your own browser and screen size, [I've got this version hosted on my server](https://shiva.icesoldier.me/doctest/doctest/enum.OldTopicRemoval.html). Fixes #37500 r? @GuillaumeGomez
2016-11-12rustdoc: fold fields for enum struct variants into a docblockQuietMisdreavus-3/+32
2016-11-12Rollup merge of #37190 - QuietMisdreavus:rustdoc-where-newline, r=GuillaumeGomezEduard-Mihai Burtescu-52/+137
rustdoc: add line breaks to where clauses a la rustfmt Much like my last PR for rustdoc (#36679), this adds line breaks to certain statements based on their line length. Here the focus was on where clauses. Some examples: - [Where clause in a trait function](https://shiva.icesoldier.me/custom-std/std/iter/trait.Iterator.html?search=#method.unzip) (also in the trait header block at the top of the page) - [Where clause on a bare function](https://shiva.icesoldier.me/doc-custom2/petgraph/visit/fn.depth_first_search.html) - [Where clauses in trait impls on a struct](https://shiva.icesoldier.me/custom-std/std/collections/struct.HashMap.html) (scroll to the bottom) These are regularly not on their own line, but will be given their own line now if their "prefix text" doesn't give them enough room to sensibly print their constraints. HashMap's trait impls provide some examples of both behaviors. The libstd links above are the whole docs rendered with this, and the "bare function" link above is in another set that pulls some notable crates together. `petgraph` was the one that brought this request up, and that collection also includes [itertools](https://shiva.icesoldier.me/doc-custom2/itertools/trait.Itertools.html) which provided an easy sample to test with. r? @GuillaumeGomez
2016-11-09Rollup merge of #37250 - liigo:rustdoc-unsafe-fns, r=steveklabnikEduard-Mihai Burtescu-1/+10
rustdoc: mark unsafe fns in module page with superscript icons Note: I'v changed the mark style. Now use superscript ⚠(U+26A0) (the old one is '[Unsafe]' literal). Basically per https://botbot.me/mozilla/rust-docs/2016-10-19/?msg=75112017&page=1 ![unsafe-fn-icon](https://cloud.githubusercontent.com/assets/346530/19633650/7f6e1eea-99e6-11e6-8d09-31aec83e46a5.png) ![unsafe-fn](https://cloud.githubusercontent.com/assets/346530/19472050/39daded2-9558-11e6-9148-3cb12afd1c9a.png)
2016-11-09Rollup merge of #37229 - nnethercote:FxHasher, r=nikomatsakisEduard-Mihai Burtescu-28/+28
Replace FNV with a faster hash function. Hash table lookups are very hot in rustc profiles and the time taken within `FnvHash` itself is a big part of that. Although FNV is a simple hash, it processes its input one byte at a time. In contrast, Firefox has a homespun hash function that is also simple but works on multiple bytes at a time. So I tried it out and the results are compelling: ``` futures-rs-test 4.326s vs 4.212s --> 1.027x faster (variance: 1.001x, 1.007x) helloworld 0.233s vs 0.232s --> 1.004x faster (variance: 1.037x, 1.016x) html5ever-2016- 5.397s vs 5.210s --> 1.036x faster (variance: 1.009x, 1.006x) hyper.0.5.0 5.018s vs 4.905s --> 1.023x faster (variance: 1.007x, 1.006x) inflate-0.1.0 4.889s vs 4.872s --> 1.004x faster (variance: 1.012x, 1.007x) issue-32062-equ 0.347s vs 0.335s --> 1.035x faster (variance: 1.033x, 1.019x) issue-32278-big 1.717s vs 1.622s --> 1.059x faster (variance: 1.027x, 1.028x) jld-day15-parse 1.537s vs 1.459s --> 1.054x faster (variance: 1.005x, 1.003x) piston-image-0. 11.863s vs 11.482s --> 1.033x faster (variance: 1.060x, 1.002x) regex.0.1.30 2.517s vs 2.453s --> 1.026x faster (variance: 1.011x, 1.013x) rust-encoding-0 2.080s vs 2.047s --> 1.016x faster (variance: 1.005x, 1.005x) syntex-0.42.2 32.268s vs 31.275s --> 1.032x faster (variance: 1.014x, 1.022x) syntex-0.42.2-i 17.629s vs 16.559s --> 1.065x faster (variance: 1.013x, 1.021x) ``` (That's a stage1 compiler doing debug builds. Results for a stage2 compiler are similar.) The attached commit is not in a state suitable for landing because I changed the implementation of FnvHasher without changing its name (because that would have required touching many lines in the compiler). Nonetheless, it is a good place to start discussions. Profiles show very clearly that this new hash function is a lot faster to compute than FNV. The quality of the new hash function is less clear -- it seems to do better in some cases and worse in others (judging by the number of instructions executed in `Hash{Map,Set}::get`). CC @brson, @arthurprs
2016-11-08Replace FnvHasher use with FxHasher.Nicholas Nethercote-28/+28
This speeds up compilation by 3--6% across most of rustc-benchmarks.
2016-11-06Set attributes hidden by defaultGuillaume Gomez-8/+24
2016-11-06Improve attributes display and allow expansionGuillaume Gomez-373/+384
2016-11-06Set possibility to hide attributesGuillaume Gomez-11/+15
2016-11-06Print more tags in rustdocGuillaume Gomez-8/+40
2016-10-31Changed most vec! invocations to use square bracesiirelu-4/+4
Most of the Rust community agrees that the vec! macro is clearer when called using square brackets [] instead of regular brackets (). Most of these ocurrences are from before macros allowed using different types of brackets. There is one left unchanged in a pretty-print test, as the pretty printer still wants it to have regular brackets.
2016-10-25rustdoc: mark unsafe fns with iconsLiigo Zhuang-1/+10
2016-10-19Improve `$crate`.Jeffrey Seyfried-3/+2
2016-10-17rustdoc: make Method/WhereClause wrappers use usize for indentsQuietMisdreavus-40/+32
2016-10-15rustdoc: if a where clause gets any lines, it gets its own lineQuietMisdreavus-1/+3
2016-10-15rustdoc: Improve playground run buttonsOliver Middleton-95/+39
The main change is to stop using javascript to generate the URLs and use rustdoc instead. This also adds run buttons to the error index examples.
2016-10-15rustdoc: break where clauses onto their own line if they don't have enough roomQuietMisdreavus-3/+16
2016-10-15rustdoc: apply proper indent when where clauses aren't on their own lineQuietMisdreavus-30/+96
2016-10-14Rollup merge of #37102 - est31:rustdoc_question_mark, r=GuillaumeGomezJonathan Turner-2/+10
rustdoc: color the question mark operator The idea of coloring `?` specially was proposed by @eddyb in: https://github.com/rust-lang/rust/issues/31436#issuecomment-247426582