802 Commits

Author SHA1 Message Date
Alex Crichton
b3aa1a6d4a std: Deprecate a number of unstable features
Many of these have long since reached their stage of being obsolete, so this
commit starts the removal process for all of them. The unstable features that
were deprecated are:

* cmp_partial
* fs_time
* hash_default
* int_slice
* iter_min_max
* iter_reset_fuse
* iter_to_vec
* map_in_place
* move_from
* owned_ascii_ext
* page_size
* read_and_zero
* scan_state
* slice_chars
* slice_position_elem
* subslice_offset
2015-07-27 16:38:25 -07:00
bors
238765e1eb Auto merge of #27103 - wthrowe:doc_format, r=alexcrichton
This fixes a couple of bugs visible on https://doc.rust-lang.org/nightly/std/marker/trait.Sync.html .  For example:
* `impl<T> Sync for *const T` should read `impl<T> !Sync for *const T`
* `impl<T> !Sync for Weak<T>` should read `impl<T> !Sync for Weak<T> where T: ?Sized`

This does change a struct in librustdoc and it seems that almost everything there is marked public, so if librustdoc has stability guarantees that could be a problem.  If it is, I'll find a way to rework the change to avoid modifying public structures.
2015-07-21 01:41:22 +00:00
Andreas Tolfsen
6b64826469 librustdoc: blur page when help dialogue is present
Blurs the document's background when the help dialogue is present,
making the contents of the dialogue stand out more.
2015-07-20 11:36:47 +01:00
William Throwe
456770472b Fix rustdoc formatting of impls
Some cases displayed negative impls as positive, and some were missing
where clauses.  This factors all the impl formatting into one
function so the different cases can't get out of sync again.
2015-07-18 02:26:58 -04:00
Tamir Duberstein
b3a9cd3a69 DRY 2015-07-17 14:35:09 -04:00
Steve Klabnik
c9e6d9a323 Merge branch 'fix-26673' of https://github.com/nhowell/rust into rollup_central 2015-07-16 17:55:19 -04:00
Manish Goregaokar
3a5bc736ae Rollup merge of #26977 - brson:stddoc, r=Gankro
Yet another attempt to make the prose on the std crate page
clearer and more informative.

This does a lot of things: tightens up the opening, adds useful links
(including a link to the search bar), offers guidance on how to use
the docs, and expands the prelude docs as a useful newbie entrypoint.

r? @steveklabnik cc @aturon
2015-07-16 10:48:47 +05:30
Brian Anderson
3a180d15f8 Address feedback 2015-07-13 18:38:00 -07:00
Ivan Ukhov
71e7fee803 Set zero padding for pre tags 2015-07-12 19:42:42 -04:00
bors
05d8767289 Auto merge of #26957 - wesleywiser:rename_connect_to_join, r=alexcrichton
Fixes #26900
2015-07-12 22:05:59 +00:00
Manish Goregaokar
1cf7b1e938 Rollup merge of #26967 - tsurai:master, r=steveklabnik
The very first code fragment off every struct and trait documentation page generates wrong playground code. This pull request adjusts ```playpen.js``` to only create a link for real examples.

Documentation:
```rust
pub struct String {
    // some fields omitted
}
```

Playground:
```rust
Struct std::String
            
                [−]
            
        [src]
```

r? @steveklabnik
2015-07-12 18:35:54 +05:30
Manish Goregaokar
ad930f4145 Rollup merge of #26881 - andreastt:international_keyboard, r=alexcrichton
Avoids some code duplication and relies less on deprecated properties on `KeyboardEvent`.  The code is still looking quite bad, but that’s primarily because interop in this area is a disaster zone.
2015-07-12 18:35:54 +05:30
bors
b8bb908d88 Auto merge of #26882 - andreastt:style_improvements, r=alexcrichton
Sharpens the help dialogues edges by removing border-padding, which
matches better with the rest of the document.

Also increases somewhat the rounded edges of the key symbols to
make it clear they are symbols.

Also introduces closing apostrophes and ellipsis for search field
placeholder.
2015-07-11 21:48:44 +00:00
Cristian Kubis
9e9698213c doc: remove playground links for structs and traits 2015-07-11 13:48:10 +02:00
Wesley Wiser
93ddee6cee Change some instances of .connect() to .join() 2015-07-10 19:40:46 -04:00
Cristian Kubis
682a007d24 doc: set playground to nightly for unstable code 2015-07-10 09:40:44 +02:00
Ulrik Sverdrup
836f32e769 Use vec![elt; n] where possible
The common pattern `iter::repeat(elt).take(n).collect::<Vec<_>>()` is
exactly equivalent to `vec![elt; n]`, do this replacement in the whole
tree.

(Actually, vec![] is smart enough to only call clone n - 1 times, while
the former solution would call clone n times, and this fact is
virtually irrelevant in practice.)
2015-07-09 11:05:32 +02:00
Andreas Tolfsen
8792c5c040 librustdoc: generalise handling of keyboard shortcuts 2015-07-08 13:12:18 +01:00
Andreas Tolfsen
885e701f0b librustdoc: sharpen help dialogue edges
Sharpens the help dialogues edges by removing border-padding, which
matches better with the rest of the document.

Also increases somewhat the rounded edges of the key symbols to
make it clear they are symbols.

Also introduces closing apostrophes and ellipsis for search field
placeholder.
2015-07-08 13:10:39 +01:00
Nick Howell
b51aea3256 rustdoc: Update jQuery from 2.1.0 to 2.1.4 2015-07-01 23:54:55 -04:00
Nick Howell
36882a0007 rustdoc: Reset the title when pressing the back button
Fixes #26673
2015-07-01 23:28:54 -04:00
Mathieu David
49b73e46d6 In js from the docs, change keyboard eventlistener to be compatible with non-english keyboard layouts. Fixes #26016 Fixes #16572 2015-07-01 10:11:23 +02:00
bors
2287b4b628 Auto merge of #26037 - nhowell:plain_js_playpen, r=steveklabnik
Since the "Book" already avoids jQuery in its inline script tags and playpen.js is tiny, I figured I would convert it to plain old JS as well.

Side note: This is a separate issue, but another thing I noticed in my testing is that the "⇱" character doesn't display correctly in Chrome on Windows 7. (Firefox and IE work fine; other browsers not tested)

r? @steveklabnik

Edit: Github didn't like the "script" tag above
Edit 2: Actually, now IE seems to render "⇱" fine for me. Odd.
2015-06-22 05:23:50 +00:00
Johannes Oertel
d234b0bb5f rustdoc: Update document title when displaying search results
Fixes #26360.
2015-06-18 18:39:31 +02:00
Mihnea Dobrescu-Balaur
434684bc9e Find type of orphan methods for rustdoc search. 2015-06-14 14:35:44 +03:00
Nick Howell
95dc32dde6 Convert playpen.js to plain JS.
It is still compatible with IE9+.

This removes the jQuery dependency from the "Book" entirely.
2015-06-12 16:26:07 -04:00
Joshua Landau
d7f5fa4636 Conver reborrows to .iter() calls where appropriate 2015-06-11 13:56:07 +01:00
Joshua Landau
ca7418b846 Removed many pointless calls to *iter() and iter_mut() 2015-06-10 21:14:03 +01:00
bors
02c33b690b Auto merge of #26077 - SimonSapin:patch-6, r=alexcrichton
With the latter is provided by the `From` conversion trait, the former is now completely redundant. Their code is identical. Let’s deprecate now and plan to remove in the next cycle. (It’s `#[unstable]`.)

r? @alexcrichton 
CC @nagisa
2015-06-08 20:52:33 +00:00
bors
4a397dd33d Auto merge of #25989 - jooert:implement_rfc839, r=Gankro
I had to use `impl<'a, V: Copy> Extend<(usize, &'a V)> for VecMap<V>` instead of `impl<'a, V: Copy> Extend<(&'a usize, &'a V)> for VecMap<V>` as that's what is needed for doing

```rust
let mut a = VecMap::new();
let b = VecMap::new();
b.insert(1, "foo");

a.extend(&b)
```

I can squash the commits after review.

r? @Gankro
2015-06-08 16:09:56 +00:00
Simon Sapin
c160192f5f Replace usage of String::from_str with String:from 2015-06-08 16:55:35 +02:00
Johannes Oertel
b36ed7d2ed Implement RFC 839
Closes #25976.
2015-06-08 12:05:33 +02:00
Steven Allen
4c5029a600 Fix order of rustdoc arguments.
rust-example-rendered should be a class, not an id.

fixes #26013
2015-06-04 18:03:51 -04:00
Ulrik Sverdrup
0ac24d6bff rustdoc: Tweak css of function where clauses
Method where clauses are put indented on a new line, do the same tweak
to free functions, which makes it cleaner and easier to read.
2015-05-31 22:46:19 +02:00
bors
cccc137b88 Auto merge of #25675 - bluss:rustdoc-assoc-types-index, r=alexcrichton
rustdoc: Associated type fixes

The first commit fixes a bug with "dud" items in the search index from
misrepresented `type` items in trait impl blocks.

For a trait *implementation* there are typedefs which are the types for
that particular trait and implementor. Skip these in the search index.

There were lots of dud items in the search index due to this (search for
Item, Iterator's associated type).

Add a boolean to clean::TypedefItem so that it tracks whether the it is
a type alias on its own, or if it's a `type` item in a trait impl.

The second commit fixes a bug that made signatures and where bounds
using associated types (if they were not on `Self`) incorrect.

The third commit fixes so that where clauses in type alias definititons
are shown.

Fixes #22442
Fixes #24417
Fixes #25769
2015-05-26 21:36:57 +00:00
Ulrik Sverdrup
06304ed522 rustdoc: Show where clauses in type aliases
Yes, it's allowed. Example:

    type MapFn<I, B> where I: Iterator = Map<I, fn(I::Item) -> B>;

Fixes #25769
2015-05-25 23:10:36 +02:00
Ulrik Sverdrup
d1cd689b48 rustdoc: Fix associated types in signatures
Functions such as `fn foo<I: Iterator>(x: I::Item)` would not
render correctly and displayed `I` instead of `I::Item`. Same thing
with `I::Item` appearing in where bounds.

This fixes the bug by using paths for generics.

Fixes #24417
2015-05-25 19:06:58 +02:00
Adolfo Ochagavía
87038831f1 Rustdoc: ignore deref-inherited static methods
Fixes #24575
2015-05-25 15:35:10 +02:00
bors
ba0e1cd814 Auto merge of #25609 - nikomatsakis:const-fn, r=pnkfelix
This is a port of @eddyb's `const-fn` branch. I rebased it, tweaked a few things, and added tests as well as a feature gate. The set of tests is still pretty rudimentary, I'd appreciate suggestions on new tests to write. Also, a double-check that the feature-gate covers all necessary cases.

One question: currently, the feature-gate allows the *use* of const functions from stable code, just not the definition. This seems to fit our usual strategy, and implies that we might (perhaps) allow some constant functions in libstd someday, even before stabilizing const-fn, if we were willing to commit to the existence of const fns but found some details of their impl unsatisfactory.

r? @pnkfelix
2015-05-24 11:12:34 +00:00
Pascal Hertleif
ec60d9f20c Rustdoc Search: Add Hint to Primitive Type Result
Closes #25167
2015-05-22 22:18:27 +02:00
Pascal Hertleif
94b6ddc37c Rustdoc Search: Increase Relevance of Primitives 2015-05-22 14:15:35 +02:00
Pascal Hertleif
a713867c74 Rustdoc: Clean Up Some JS
There are more possible optimizations left (cached length in loops) as
well as some possible bugs (shadowed variables) to fix. This is mostly
syntactic.
2015-05-22 14:14:28 +02:00
Niko Matsakis
df93deab10 Make various fixes:
- add feature gate
- add basic tests
- adjust parser to eliminate conflict between `const fn` and associated
constants
- allow `const fn` in traits/trait-impls, but forbid later in type check
- correct some merge conflicts
2015-05-21 11:47:30 -04:00
Eduard Burtescu
af3795721c syntax: parse const fn for free functions and inherent methods. 2015-05-21 11:47:30 -04:00
Ulrik Sverdrup
093e18d184 rustdoc: Skip types in impls in search index
For a trait *implementation* there are typedefs which are the types for
that particular trait and implementor. Skip these in the search index.

There were lots of dud items in the search index due to this (search for
Item, Iterator's associated type).

Add a boolean to clean::TypedefItem so that it tracks whether the it is
a type alias on its own, or if it's a `type` item in a trait impl.

Fixes #22442
2015-05-21 14:17:37 +02:00
Ulrik Sverdrup
24b1d2150d rustdoc: Fix left margin for type aliases
Fixes #24655

Margin for associated types was applied to type aliases (in return
value) by mistake.
2015-05-19 01:44:04 +02:00
Eduard Burtescu
6a59d1824d syntax: replace sess.span_diagnostic.cm with sess.codemap(). 2015-05-14 01:47:56 +03:00
Eduard Burtescu
f786437bd2 syntax: refactor (Span)Handler and ParseSess constructors to be methods. 2015-05-14 01:47:56 +03:00
bors
4b88e8f63e Auto merge of #25225 - bluss:doc-search-assoc-items, r=alexcrichton
Rustdoc fixes for associated items

This is related to isssue #22442 and solves it partly.

This solves the search index links of associated types and constants,
so that they link to the trait page.

Also add an Associated Constants section if constants are present.
2015-05-11 20:02:18 +00:00
Manish Goregaokar
ac478ecb50 Rollup merge of #25216 - barosl:no-more-task, r=Manishearth
I've found that there are still huge amounts of occurrences of `task`s in the documentation. This PR tries to eliminate all of them in favor of `thread`.
2015-05-09 18:40:19 +05:30