Commit graph

1473 commits

Author SHA1 Message Date
Lukas Kalbertodt
d425f8d226 Copy AsciiExt methods to char directly
This is done in order to deprecate AsciiExt eventually.
2017-11-03 21:27:40 +01:00
kennytm
07df45d363 Rollup merge of #45450 - GuillaumeGomez:overlap-link, r=QuietMisdreavus
Fix title heading overlap in rust doc

Fixes #45158.

To be noted that this margin only appears when a title is the first element.

<img width="1440" alt="screen shot 2017-10-22 at 16 08 44" src="https://user-images.githubusercontent.com/3050060/31862746-6411070e-b743-11e7-9a75-4159e1f7f1d6.png">

r? @rust-lang/docs
2017-11-01 13:32:08 +08:00
bors
fc3e12a03c Auto merge of #45187 - GuillaumeGomez:doc-ui-improvement, r=QuietMisdreavus
Improve sidebar rendering and add methods list

I suppose it can be reviewed as is, but this is just the first step of a more global plan.

cc @rust-lang/docs @nical

And a screenshot of course:

<img width="1440" alt="screen shot 2017-10-10 at 23 38 45" src="https://user-images.githubusercontent.com/3050060/31412170-657beaf6-ae14-11e7-9f01-1e562a034595.png">
2017-11-01 01:45:58 +00:00
Guillaume Gomez
6fa521c491 Fix weird bugs 2017-10-28 17:24:09 +02:00
bors
dce604a8fe Auto merge of #44295 - plietar:extern-types, r=arielb1
Implement RFC 1861: Extern types

A few notes :

- Type parameters are not supported. This was an unresolved question from the RFC. It is not clear how useful this feature is, and how variance should be treated. This can be added in a future PR.

- `size_of_val` / `align_of_val` can be called with extern types, and respectively return 0 and 1. This differs from the RFC, which specified that they should panic, but after discussion with @eddyb on IRC this seems like a better solution.
If/when a `DynSized` trait is added, this will be disallowed statically.

- Auto traits are not implemented by default, since the contents of extern types is unknown. This means extern types are `!Sync`, `!Send` and `!Freeze`. This seems like the correct behaviour to me.
Manual `unsafe impl Sync for Foo` is still possible.

- This PR allows extern type to be used as the tail of a struct, as described by the RFC :
```rust
extern {
    type OpaqueTail;
}

#[repr(C)]
struct FfiStruct {
    data: u8,
    more_data: u32,
    tail: OpaqueTail,
}
```

However this is undesirable, as the alignment of `tail` is unknown (the current PR assumes an alignment of 1). Unfortunately we can't prevent it in the general case as the tail could be a type parameter :
```rust
#[repr(C)]
struct FfiStruct<T: ?Sized> {
    data: u8,
    more_data: u32,
    tail: T,
}
```

Adding a `DynSized` trait would solve this as well, by requiring tail fields to be bound by it.

- Despite being unsized, pointers to extern types are thin and can be casted from/to integers. However it is not possible to write a `null<T>() -> *const T` function which works with extern types, as I've explained here : https://github.com/rust-lang/rust/issues/43467#issuecomment-321678621

- Trait objects cannot be built from extern types. I intend to support it eventually, although how this interacts with `DynSized`/`size_of_val` is still unclear.

- The definition of `c_void` is unmodified
2017-10-28 13:34:12 +00:00
kennytm
b644339a16 Rollup merge of #45421 - QuietMisdreavus:update-pulldown, r=steveklabnik
rustdoc: update pulldown + fix spurious rendering difference around footnotes

fixes #45420
2017-10-28 15:56:19 +08:00
Guillaume Gomez
3dafd2c690 Encode urls 2017-10-27 23:09:18 +02:00
Guillaume Gomez
7bde591327 Change sidebar items order 2017-10-27 23:09:18 +02:00
Guillaume Gomez
8fb1250aba Improve sidebar rendering and add methods list 2017-10-27 23:09:18 +02:00
Paul Lietar
77f7e85d7f Implement RFC 1861: Extern types 2017-10-27 23:01:34 +02:00
kennytm
fc48893845 Rollup merge of #45212 - GuillaumeGomez:sidebar-fixed, r=QuietMisdreavus
Limit the sidebar height

The sidebar is now fixed, which means its scrolling is independent of the main page now.

r? @rust-lang/docs
2017-10-26 03:02:49 +08:00
Guillaume Gomez
deef11dd26 Show src button and function version on mobile version 2017-10-24 22:34:59 +02:00
Guillaume Gomez
9ce41f2544 Fix the sidebar height 2017-10-24 21:16:43 +02:00
Guillaume Gomez
237ad82f3c Remove useless top margin on first heading 2017-10-22 16:11:07 +02:00
Guillaume Gomez
becd45be80 Fix title heading overlap in rust doc 2017-10-22 16:08:31 +02:00
QuietMisdreavus
af09ba82e0 change footnote anchor formats to fix spurious rendering differences 2017-10-21 15:00:26 -05:00
bors
95272a07f1 Auto merge of #45324 - GuillaumeGomez:switch-default-markdown-renderer, r=steveklabnik
Print rustdoc rendering warnings all the time

r? @rust-lang/dev-tools
2017-10-20 10:31:20 +00:00
bors
a651106ad0 Auto merge of #45288 - GuillaumeGomez:tab-key-binding, r=QuietMisdreavus
Save the highlighted item when switching tab

To be merged after #45281.

r? @rust-lang/docs
2017-10-19 23:55:20 +00:00
kennytm
6b505d6a3f Rollup merge of #45354 - cuviper:unit_doc, r=QuietMisdreavus
rustdoc: add a primitive page for "unit"

In `src/libstd/primitive_docs.rs`, a `#[doc(primitive = "unit")]`
section has sat long neglected.  This patch teaches rustdoc to recognize
"unit", and steals its trait implementations away from the tuple page.
2017-10-19 01:59:54 +08:00
kennytm
4913b92ff5 Rollup merge of #45281 - GuillaumeGomez:tab-selection, r=QuietMisdreavus
Save selected search tab

Fixes #45278.

r? @rust-lang/docs
2017-10-19 01:59:50 +08:00
Josh Stone
9fda05c0bc rustdoc: add a primitive page for "unit"
In `src/libstd/primitive_docs.rs`, a `#[doc(primitive = "unit")]`
section has sat long neglected.  This patch teaches rustdoc to recognize
"unit", and steals its trait implementations away from the tuple page.
2017-10-17 23:03:50 -07:00
bors
0be6863a15 Auto merge of #45290 - GuillaumeGomez:fix-help, r=QuietMisdreavus
Hide help when search bar is focused

Fixes #45286

r? @rust-lang/docs
2017-10-17 12:18:25 +00:00
Guillaume Gomez
11b2b08ba9 Display rustdoc pulldown switch warnings everytime 2017-10-16 21:41:10 +02:00
bors
c4f489af91 Auto merge of #44613 - QuietMisdreavus:rustdoc-perf, r=michaelwoerister
some low-hanging rustdoc optimizations

There were a few discussions earlier today in #rust-internals about the syscall usage and overall performance of rustdoc. This PR is intended to pick some low-hanging fruit and try to rein in some of the performance issues of rustdoc.
2017-10-15 17:48:12 +00:00
kennytm
5ebad25b08 Rollup merge of #45289 - GuillaumeGomez:fix-doc-help, r=kennytm
Fix arrow display

Before:

<img width="1440" alt="screen shot 2017-10-14 at 18 36 18" src="https://user-images.githubusercontent.com/3050060/31577437-a81510e8-b10e-11e7-8249-cf074bb0f59a.png">

After:

<img width="1440" alt="screen shot 2017-10-14 at 18 36 12" src="https://user-images.githubusercontent.com/3050060/31577436-a7fc0eea-b10e-11e7-96d7-6dc2916ef72f.png">

r? @rust-lang/docs
2017-10-15 14:21:59 +08:00
Guillaume Gomez
c6ce067216 Hide help when search bar is focused 2017-10-14 18:46:29 +02:00
Guillaume Gomez
5acc185cee Fix arrow display 2017-10-14 18:35:54 +02:00
Guillaume Gomez
f44232688e Save current highlighted item in search tab 2017-10-14 18:24:27 +02:00
Guillaume Gomez
45bb03f60c Save selected search tab 2017-10-14 18:15:20 +02:00
Guillaume Gomez
c729e4dca7 Remove terribly useless and problematic margin when searching on mobile 2017-10-14 15:55:33 +02:00
QuietMisdreavus
2c9d452a29 rustdoc: wrap redirect page writers in a BufWriter 2017-10-13 15:26:38 -05:00
QuietMisdreavus
9e1c577b71 rustdoc: don't create directories more than once 2017-10-13 15:26:13 -05:00
kennytm
fb98e3e434 Rollup merge of #45245 - stjepang:more-padding-between-impls, r=QuietMisdreavus
Rustdoc: Increase padding between consecutive impls

Currently, [implementors](https://doc.rust-lang.org/nightly/std/iter/trait.IntoIterator.html#implementors) list is a bit too condensed. More spacing makes the list easier to read.
Check out [this comment](https://github.com/rust-lang/rust/issues/41879#issuecomment-333121118) to see what's the effect of this change.

Closes #41879.

cc @QuietMisdreavus
2017-10-13 23:38:04 +08:00
kennytm
f43c54e1e3 Rollup merge of #45240 - GuillaumeGomez:mobile-sidebar-improvements, r=QuietMisdreavus
Mobile sidebar improvements

Very small changes, I just made the width of the sidebar of 100% and centered vertically both items a bit more:

<img width="1440" alt="screen shot 2017-10-12 at 20 00 47" src="https://user-images.githubusercontent.com/3050060/31511496-302bb474-af88-11e7-8dab-2c88799eafcc.png">

r? @rust-lang/docs
2017-10-13 23:38:03 +08:00
bors
d21c023964 Auto merge of #45055 - GuillaumeGomez:search-tabs, r=QuietMisdreavus
Add tabs for search for better information access

A few screenshots:

<img width="1440" alt="screen shot 2017-10-06 at 00 54 51" src="https://user-images.githubusercontent.com/3050060/31256148-032c1a06-aa31-11e7-8e4c-fec59786b8e6.png">
<img width="1440" alt="screen shot 2017-10-06 at 00 54 58" src="https://user-images.githubusercontent.com/3050060/31256150-03312cb2-aa31-11e7-86f7-8c9f0d8d6d4f.png">
<img width="1440" alt="screen shot 2017-10-06 at 00 55 00" src="https://user-images.githubusercontent.com/3050060/31256149-0330d456-aa31-11e7-8f89-3b3c824e30b4.png">

r? @rust-lang/docs

cc @killercup @QuietMisdreavus
2017-10-13 11:34:11 +00:00
Stjepan Glavina
16ec7b949f Increase padding between consecutive impls 2017-10-12 22:57:51 +02:00
Guillaume Gomez
9da9c3be62 Small improvement for the sidebar on mobile devices 2017-10-12 20:02:29 +02:00
kennytm
445bbde784
Rollup merge of #44989 - QuietMisdreavus:what-is-your-quest, r=GuillaumeGomez
let rustdoc print the crate version into docs

This PR adds a new unstable flag to rustdoc, `--crate-version`, which when present will add a new entry to the sidebar of the root module, printing the given version number:

![Screenshot of a test crate, showing "Version 1.3.37" under the crate name](https://user-images.githubusercontent.com/5217170/31104096-805e3f4c-a7a0-11e7-96fc-368b6fe063d6.png)

Closes #24336

(The WIP status is because i don't want to merge this until i can get the std docs to use it, which i need help from rustbuild people to make sure i get right.)
2017-10-13 01:58:36 +08:00
bors
fbb5054fa9 Auto merge of #44969 - QuietMisdreavus:impls-for-everyone, r=steveklabnik
document trait impls when the type appears in the trait's generics

Fixes #25264

![image](https://user-images.githubusercontent.com/5217170/31062309-4fc7c594-a6ef-11e7-892e-07f95bbc7976.png)
2017-10-12 01:00:15 +00:00
Guillaume Gomez
3a65d12df7 Add tabs for search for better information access
Make tabs work
2017-10-09 23:26:10 +02:00
QuietMisdreavus
fcee950660 let rustdoc print the crate version into docs 2017-10-09 09:56:17 -05:00
QuietMisdreavus
23f5fbee45 document trait impls when the type appears in the trait's generics 2017-10-01 21:25:48 -05:00
Vitaly _Vi Shukela
67c9af590d
rustdoc: Style of [src] link for trait implementors
A change suggested by @GuillaumeGomez and @QuietMisdreavus.

Also slight reindenting of the appropriate CSS section.
2017-10-01 16:20:56 +03:00
Vitaly _Vi Shukela
9f02e1a938
rustdoc: Render [src] links for trait implementors (#43893) 2017-09-29 14:33:02 +03:00
Vitaly _Vi Shukela
87d7520d0f
rustdoc: Extract converter from Impementor to Item to a fn 2017-09-29 14:32:57 +03:00
bors
0e6f4cf51c Auto merge of #44709 - Badel2:inclusive-range-dotdoteq, r=petrochenkov
Initial support for `..=` syntax

#28237

This PR adds `..=` as a synonym for `...` in patterns and expressions.
Since `...` in expressions was never stable, we now issue a warning.

cc @durka
r? @aturon
2017-09-27 16:04:31 +00:00
Guillaume Gomez
4e377081ca Rollup merge of #44789 - GuillaumeGomez:fix-rustdoc-display, r=QuietMisdreavus
Fix warning position in rustdoc code blocks

Before:

<img width="1440" alt="screen shot 2017-09-23 at 14 07 08" src="https://user-images.githubusercontent.com/3050060/30773382-b9649288-a06f-11e7-94ec-faa3c3ed999b.png">

After:

<img width="1440" alt="screen shot 2017-09-23 at 14 58 31" src="https://user-images.githubusercontent.com/3050060/30773384-bdfc9f3e-a06f-11e7-9030-9fb8a5308668.png">

r? @QuietMisdreavus
2017-09-24 14:01:51 +02:00
Guillaume Gomez
e30abfbfe7 Fix warning position in rustdoc code blocks 2017-09-23 14:06:35 +02:00
Corey Farwell
7d75781cc2 Rollup merge of #44554 - GuillaumeGomez:add-missing-pub, r=QuietMisdreavus
Add pub visibility for methods as well

Fixes #44527.

r? @QuietMisdreavus
2017-09-23 00:29:09 -04:00
Alex Burka
e64efc91f4 Add support for ..= syntax
Add ..= to the parser

Add ..= to libproc_macro

Add ..= to ICH

Highlight ..= in rustdoc

Update impl Debug for RangeInclusive to ..=

Replace `...` to `..=` in range docs

Make the dotdoteq warning point to the ...

Add warning for ... in expressions

Updated more tests to the ..= syntax

Updated even more tests to the ..= syntax

Updated the inclusive_range entry in unstable book
2017-09-22 22:05:18 +02:00