1
Fork 0
Commit graph

466 commits

Author SHA1 Message Date
mitaa
f1cf2a6fcb rustdoc: correct src-link url 2016-03-08 08:07:57 +01:00
mitaa
938c8c18c4 This doesn't seem necessary? 2016-03-04 19:40:01 +01:00
mitaa
d78f19ebbd Use const instead of function 2016-03-04 19:40:00 +01:00
mitaa
032156210d Use Item::is_* methods consistently 2016-03-04 19:40:00 +01:00
mitaa
2a28b69948 Refactor rustdocs attribute handling 2016-03-04 19:39:52 +01:00
mitaa
8f6e09a956 Simplify if let/match expressions 2016-03-04 19:07:35 +01:00
mitaa
62267470f6 Refactor src-link creation for local sources
Since we emit the sources beforhand we actually **know** whether we
can safely create src-links to these files and where they are stored.
2016-03-03 16:11:10 +01:00
mitaa
0b3bc9b5e2 Correct plain-summary-line
For plaintext we don't actually need to render the Markdown before
shortening the string. (and this may have led to wrong output)
2016-02-27 06:42:30 +01:00
Manish Goregaokar
e584a492f3 Rollup merge of #31837 - mitaa:rdoc-inherent-assoc, r=alexcrichton
This effectively only records associated items from either inherent impls or trait definitions in the search-index.

fixes #31808

r? @alexcrichton
2016-02-25 15:06:07 +05:30
Manish Goregaokar
6078a86e2d Rollup merge of #31835 - mitaa:rdoc-global-src, r=alexcrichton
fixes #26995

r? @alexcrichton
2016-02-25 15:06:07 +05:30
mitaa
cf76fcf30d Fix source-links for files with absolute-paths
`clean_srcpath` tries to make the source-path relative to `src_root`,
but this didn't work since `src_root` itself wasn't absolute.
2016-02-24 19:43:02 +01:00
mitaa
27ca2507de Allow creation of src-links for device files 2016-02-24 19:41:56 +01:00
mitaa
f5df7e0865 Show associated types in inherent impls 2016-02-23 21:47:18 +01:00
mitaa
b38a856e38 Don't show associated consts from trait impls 2016-02-23 21:47:13 +01:00
mitaa
9d3bce38b4 Don't record self parameter for static methods 2016-02-23 12:17:12 +01:00
mitaa
81f673d3bc Simplify search-index serialization 2016-02-22 20:07:09 +01:00
mitaa
810a514029 Add crates to search-index 2016-02-16 20:00:57 +01:00
bors
f3619ce026 Auto merge of #31626 - mitaa:rdoc-srch-escape, r=alexcrichton
Maybe they should be Markdown rendered instead, though that doesn't really seem to work all that well.

fixes #31059

r? @alexcrichton
2016-02-14 12:13:58 +00:00
bors
083dc5b12d Auto merge of #31614 - mitaa:rdoc_locitem_extmac, r=alexcrichton
fixes #26606

r? @alexcrichton
2016-02-14 10:10:50 +00:00
bors
6e446532e8 Auto merge of #31602 - mitaa:rdoc_doc_shorter, r=alexcrichton
fixes #25787
fixes #30366

r? @alexcrichton
2016-02-13 21:43:28 +00:00
mitaa
dcb352647b Escape search-index item descriptions
The item descriptions are included verbatim in search results
causing certain character sequences to misbehave.
2016-02-13 11:27:53 +01:00
mitaa
a31d63320f Omit src-links for items from extern macros
If the span of a local item points into an external macro
its source-file will be bogus.
2016-02-12 22:45:17 +01:00
mitaa
5c98ae34a6 Shorten docstrings after Markdown rendering 2016-02-12 14:12:27 +01:00
mitaa
938202c81f Fix associated item identifiers
Search results use the mapping found in `ItemType::to_static_str` for
the identifier, which could not be found on the page in the case of
associated items.
2016-02-12 10:26:46 +01:00
Wesley Wiser
75acee2bde Rustdoc - display since version for stable items
Fixes #27607
2016-02-09 21:20:41 -05:00
Brandon W Maister
d59372b7aa Decide to hide constness only in fn/method renders
ConstnessSpace has no knowledge of the type of item it's modifying, so
hide the constness a level up.
2016-02-01 13:05:37 -05:00
Alex Crichton
9a4f43b9b6 std: Stabilize APIs for the 1.7 release
This commit stabilizes and deprecates the FCP (final comment period) APIs for
the upcoming 1.7 beta release. The specific APIs which changed were:

Stabilized

* `Path::strip_prefix` (renamed from `relative_from`)
* `path::StripPrefixError` (new error type returned from `strip_prefix`)
* `Ipv4Addr::is_loopback`
* `Ipv4Addr::is_private`
* `Ipv4Addr::is_link_local`
* `Ipv4Addr::is_multicast`
* `Ipv4Addr::is_broadcast`
* `Ipv4Addr::is_documentation`
* `Ipv6Addr::is_unspecified`
* `Ipv6Addr::is_loopback`
* `Ipv6Addr::is_unique_local`
* `Ipv6Addr::is_multicast`
* `Vec::as_slice`
* `Vec::as_mut_slice`
* `String::as_str`
* `String::as_mut_str`
* `<[T]>::clone_from_slice` - the `usize` return value is removed
* `<[T]>::sort_by_key`
* `i32::checked_rem` (and other signed types)
* `i32::checked_neg` (and other signed types)
* `i32::checked_shl` (and other signed types)
* `i32::checked_shr` (and other signed types)
* `i32::saturating_mul` (and other signed types)
* `i32::overflowing_add` (and other signed types)
* `i32::overflowing_sub` (and other signed types)
* `i32::overflowing_mul` (and other signed types)
* `i32::overflowing_div` (and other signed types)
* `i32::overflowing_rem` (and other signed types)
* `i32::overflowing_neg` (and other signed types)
* `i32::overflowing_shl` (and other signed types)
* `i32::overflowing_shr` (and other signed types)
* `u32::checked_rem` (and other unsigned types)
* `u32::checked_neg` (and other unsigned types)
* `u32::checked_shl` (and other unsigned types)
* `u32::saturating_mul` (and other unsigned types)
* `u32::overflowing_add` (and other unsigned types)
* `u32::overflowing_sub` (and other unsigned types)
* `u32::overflowing_mul` (and other unsigned types)
* `u32::overflowing_div` (and other unsigned types)
* `u32::overflowing_rem` (and other unsigned types)
* `u32::overflowing_neg` (and other unsigned types)
* `u32::overflowing_shl` (and other unsigned types)
* `u32::overflowing_shr` (and other unsigned types)
* `ffi::IntoStringError`
* `CString::into_string`
* `CString::into_bytes`
* `CString::into_bytes_with_nul`
* `From<CString> for Vec<u8>`
* `From<CString> for Vec<u8>`
* `IntoStringError::into_cstring`
* `IntoStringError::utf8_error`
* `Error for IntoStringError`

Deprecated

* `Path::relative_from` - renamed to `strip_prefix`
* `Path::prefix` - use `components().next()` instead
* `os::unix::fs` constants - moved to the `libc` crate
* `fmt::{radix, Radix, RadixFmt}` - not used enough to stabilize
* `IntoCow` - conflicts with `Into` and may come back later
* `i32::{BITS, BYTES}` (and other integers) - not pulling their weight
* `DebugTuple::formatter` - will be removed
* `sync::Semaphore` - not used enough and confused with system semaphores

Closes #23284
cc #27709 (still lots more methods though)
Closes #27712
Closes #27722
Closes #27728
Closes #27735
Closes #27729
Closes #27755
Closes #27782
Closes #27798
2016-01-16 11:03:10 -08:00
Shmuale Mark
30779d455d rustdoc: remove dead link from issue-less unstable entries. 2016-01-11 14:38:40 -05:00
mitaa
05780ace49 Don't record the root module in the search index 2015-12-22 19:10:08 +01:00
Vadim Petrochenkov
67a978411a Support #[deprecated] in rustdoc 2015-12-12 23:01:27 +03:00
bors
461c46052b Auto merge of #30036 - mitaa:doc_id, r=alexcrichton
This expands the code which generates unique IDs for Markdown headers within a single block to each rendered page.

fixes #25001
fixes #29449
2015-12-08 20:15:53 +00:00
mitaa
fb7008c0a0 Add tests 2015-12-05 23:11:07 +01:00
Guillaume Gomez
91cd93d2b1 Split rustdoc css to modify it more easily 2015-12-04 01:54:59 +01:00
mitaa
72d5675fef Address review comments 2015-12-04 00:48:59 +01:00
mitaa
5c01cf485f Initialize the ID map with known values 2015-12-03 02:19:23 +01:00
mitaa
fa0269dd35 Generate unique IDs for each rustdoc HTML page 2015-12-03 00:07:59 +01:00
mitaa
538689ddc7 Move ID generator to a more suited location 2015-12-03 00:07:59 +01:00
Ariel Ben-Yehuda
52dd2b4c35 fix tests & rustdoc 2015-11-26 18:22:40 +02:00
bors
6a6b97cf02 Auto merge of #29822 - petrochenkov:pubexport, r=alexcrichton
This patch implements the plan described in https://internals.rust-lang.org/t/privacy-and-its-interaction-with-docs-lints-and-stability/2880 with one deviation.

It turns out, that rustdoc needs the "directly public" set for its docs inlining logic, so the privacy pass have to produce three sets and not two. Three is arguably too many, so I merged them in one map:
`public_items/exported_items/reachable_items: NodeSet => access_levels: NodeMap<AccessLevel>`

r? @alexcrichton
2015-11-20 18:13:10 +00:00
mitaa
81b4c1342a Fix rustdocs unsafe const fn ordering 2015-11-19 22:01:49 +01:00
Vadim Petrochenkov
c1ad5af4a6 Changes to data produced by privacy pass 2015-11-19 14:16:35 +03:00
bors
20a6938c08 Auto merge of #28683 - GuillaumeGomez:rustdoc_error, r=alexcrichton
This PR solves the following issues (or at least help users to understand the problem):

```Rust
#![crate_name = "b"]
#![crate_type = "rlib"]

pub fn his_function_has_a_very_long_name_and_should_make_cargo_doc_explodes_because_it_will_want_to_make_a_filename_with_it_in_excess_of_the_max_filename_length_for_most_filesystem_this_is_not_yet_long_enough_i_need_moreis_function_has_a_very_long_name_and_should_make_cargo_doc_explodes_because_it_will_want_to_make_a_filename_with_it_in_excess_of_the_max_filename_length_for_most_filesystem_this_is_not_yet_long_enough_i_need_more_() {}
```

```Rust
#![crate_name = "b"]
#![crate_type = "rlib"]

pub struct his_function_has_a_very_long_name_and_should_make_cargo_doc_explodes_because_it_will_want_to_make_a_filename_with_it_in_excess_of_the_max_filename_length_for_most_filesystem_this_is_not_yet_long_enough_i_need_moreis_function_has_a_very_long_name_and_should_make_cargo_doc_explodes_because_it_will_want_to_make_a_filename_with_it_in_excess_of_the_max_filename_length_for_most_filesystem_this_is_not_yet_long_enough_i_need_more_;
```

For the maximum filename length chosen, @gkoz gave me [this link](http://unix.stackexchange.com/a/32834).
2015-10-16 23:28:14 +00:00
Guillaume Gomez
42c01d740b Improve error handling by providing Error struct with Path information 2015-10-17 00:20:00 +02:00
Vadim Petrochenkov
ab671552c3 Refactor attr::Stability
Stricter checking + enforcement of invariants at compile time
2015-10-13 06:01:31 +03:00
bors
11a612795a Auto merge of #28573 - ruud-v-a:rustdoc-license, r=brson
The output of rustdoc includes resources licensed under the SIL Open
Font License, the MIT license, and the Apache License 2.0. All of these
licenses permit redistribution provided that the license text is also
redistributed. Previously this was not the case, making rustdoc output
unsuitable for distribution by default. This resolves that problem by
including the license texts in rustdoc output.

See also: https://users.rust-lang.org/t/licensing-rustdoc-output/2880
2015-10-04 23:30:40 +00:00
Niko Matsakis
01f32ace03 Convert DefId to use DefIndex, which is an index into a list of
paths, and construct paths for all definitions. Also, stop rewriting
DefIds for closures, and instead just load the closure data from
the original def-id, which may be in another crate.
2015-10-01 10:43:07 -04:00
Niko Matsakis
5600c6282e move direct accesses of node to go through as_local_node_id, unless
they are being used as an opaque "position identifier"
2015-10-01 10:37:19 -04:00
Niko Matsakis
9ff4f57cd0 move job of creating local-def-ids to ast-map (with a few stragglers) 2015-10-01 10:28:28 -04:00
Niko Matsakis
dc4a4ada58 move LOCAL_CRATE to cstore 2015-10-01 09:44:28 -04:00
Ruud van Asseldonk
6c566524b6 Clarify rustdoc output licensing with a copyright file 2015-09-21 22:40:27 +01:00