Commit Graph

28610 Commits

Author SHA1 Message Date
bors
23262a8390 auto merge of #13812 : alxgnon/rust/master, r=alexcrichton
This is a quick fix for repeated documentation descriptions in certain modules.
Following is a list of the faulty modules I found. I ran `pcregrep -r -M "<p>(.+)\n\1" doc` on the html documentation to help identify them.

- [rustuv::uvio](http://static.rust-lang.org/doc/master/rustuv/uvio/index.html)
- [rustuv::uvll](http://static.rust-lang.org/doc/master/rustuv/uvll/index.html)
- [std::rt::backtrace](http://static.rust-lang.org/doc/master/std/rt/backtrace/index.html)
- [std::rt::env](http://static.rust-lang.org/doc/master/std/rt/env/index.html)
- [std::rt::global_heap](http://static.rust-lang.org/doc/master/std/rt/global_heap/index.html)
- [std::rt::local_heap](http://static.rust-lang.org/doc/master/std/rt/local_heap/index.html)
- [std::rt::rtio](http://static.rust-lang.org/doc/master/std/rt/rtio/index.html)
- [std::rt::task](http://static.rust-lang.org/doc/master/std/rt/task/index.html)
- [std::rt::thread](http://static.rust-lang.org/doc/master/std/rt/thread/index.html)
- [std::rt::unwind](http://static.rust-lang.org/doc/master/std/rt/unwind/index.html)
- [syntax::parse::classify](http://static.rust-lang.org/doc/master/syntax/parse/classify/index.html)
- [syntax::parse::common](http://static.rust-lang.org/doc/master/syntax/parse/common/index.html)

After a little testing, I discovered that moving the documentation inside (`//!`) instead of outside (`///`) modules fixed the immediate problem. I went through the trouble of moving the documentation, and with this commit there are no more repeated descriptions within those faulty modules.

This does not fix the underlying problem though. We should look into why having the documentation outside instead of inside caused the descriptions to be repeated. I will create a separate issue with my findings on the subject if necessary.
In the meantime, this simple fix should be enough.
2014-04-28 12:56:49 -07:00
Kang Seonghoon
3b5d6b4de5 rustdoc: Make strip_hidden use a dedicated hidden item if any.
fixes #13806.
2014-04-29 04:01:55 +09:00
bors
1f4278d650 auto merge of #13797 : lifthrasiir/rust/std-mem-replace-doc, r=alexcrichton
Inspired by @steveklabnik's [comment](http://www.reddit.com/r/rust/comments/240p9s/eli5_stdmemreplace/ch2gxw8), this PR adds the practical use cases to the documentation of `std::mem::replace`.

Caveat: We need a `compile-fail` equivalent for doctest. :p
2014-04-28 11:32:07 -07:00
Adrien Tétar
2bf25a7fff rustdoc: fix a few inconsistencies 2014-04-28 19:29:43 +02:00
bors
3e284eeb21 auto merge of #13821 : aochagavia/rust/pr3, r=alexcrichton 2014-04-28 10:01:57 -07:00
Adolfo Ochagavía
ac170b100e Fixed typo in std::vec 2014-04-28 15:39:11 +02:00
Kang Seonghoon
1be93e61da std: Add more docs to std::mem::replace. 2014-04-28 22:28:47 +09:00
Niko Matsakis
4b80ff901c Remove default method implementations 2014-04-28 08:50:50 -04:00
bors
a1ad41b93d auto merge of #13791 : lifthrasiir/rust/mod-inner-span, r=huonw
This PR is primarily motivated by (and fixes) #12926.

We currently only have a span for the individual item itself and not for the referred contents. This normally does not cause a problem since both are located in the same file; it *is* possible that the contained statement or item is located in the other file (the syntax extension can do that), but even in that case the syntax extension should be located in the same file as the item. The module item (i.e. `mod foo;`) is the only exception here, and thus warrants a special treatment.

Rustdoc would now distinguish `mod foo;` from `mod foo {...}` by checking if the span for the module item and module contents is in different files. If it's the case, we'd prefer module contents over module item. There are alternative strategies, but as noted above we will have some corner cases if we don't record the contents span explicitly.
2014-04-28 05:21:46 -07:00
Nick Cameron
c0ff3caae1 Refactor ty_str to use a ~(str) representation.
Similar to my recent changes to ~[T]/&[T], these changes remove the vstore abstraction and represent str types as ~(str) and &(str). The Option<uint> in ty_str is the length of the string, None if the string is dynamically sized.
2014-04-28 21:02:18 +12:00
bors
7a19a82d11 auto merge of #13811 : alexcrichton/rust/closed-issues, r=sfackler
Closes #5518
Closes #7320
Closes #8391
Closes #8827
Closes #8983
Closes #10683
Closes #10802
Closes #11515
2014-04-27 23:06:41 -07:00
Alex Crichton
35f295d2a9 test: Add tests for closed issues
Closes #5518
Closes #7320
Closes #8391
Closes #8827
Closes #8983
Closes #10683
Closes #10802
Closes #11515
2014-04-27 20:35:51 -07:00
bors
4e55bc7ac3 auto merge of #13795 : klutzy/rust/win-make-check, r=alexcrichton
Fixes #12303.

Also contains a partial fix for `make check` failure.
2014-04-27 20:31:37 -07:00
klutzy
405861ed0a test: Fix run-make on windows 2014-04-28 11:45:30 +09:00
Alexandre Gagnon
6c41253a47 Fix repeated module documentation 2014-04-27 22:17:49 -04:00
bors
ff25d62165 auto merge of #13809 : prattmic/rust/tutorial_debug, r=alexcrichton
As of cc6ec8df, the Owned closures example uses println! instead of
debug!, making a note about seeing debug seem out-of-place in this
section.

Since debug! is not used elsewhere in the tutorial, remove the note
entirely.
2014-04-27 19:06:38 -07:00
Brian Anderson
3525bd8959 std: Rewrite crate docs
Also move prelude explanation to the prelude module.
2014-04-27 18:43:56 -07:00
bors
c2b6ab94e2 auto merge of #13801 : ryantm/rust/master, r=alexcrichton
The previous error message using assert_eq! was quite cryptic. This should be more clear. I also added a test for the underflow case.
2014-04-27 17:26:37 -07:00
bors
8b24964012 auto merge of #13799 : m-r-r/rust/patch-std-io-standard_error, r=alexcrichton
Hello,

With the latest version of Rust, calling to the function [`std::io::standard_error()`](http://static.rust-lang.org/doc/master/std/io/fn.standard_error.html) succeeds only if the value of the argument is `EndOfFile`, `IoUnavailable` or `InvalidInput`. If the function is called with another value as argument, it fails without message.

Here is a piece of code that reproduces the problem:

```rust
use std::io::{standard_error,EndOfFile,FileNotFound,PermissionDenied};

fn main() {
     println!("Error 1: {}", standard_error(EndOfFile)); // does not fail
     println!("Error 2: {}", standard_error(FileNotFound)); // fails
     println!("Error 3: {}", standard_error(PermissionDenied)); //fails
}
```
This was because the `IoErrorKind` passed as argument wasn't matched against all the possible values.

I added the missing branches in the `match` statement inside the function, and i removed the call to the `fail!()` macro. I rebuilt the crate with the latest `rustc` version and it seems to works.
2014-04-27 16:01:39 -07:00
Michael Pratt
bc330063d8 doc: Remove out-of-place debug! note
As of cc6ec8df, the Owned closures example uses println! instead of
debug!, making a note about seeing debug seem out-of-place in this
section.

Since debug! is not used elsewhere in the tutorial, remove the note
entirely.
2014-04-27 18:27:40 -04:00
bors
479b8a812c auto merge of #13792 : jacob-hegna/rust/master, r=alexcrichton
Just modified the documentation for parse_bytes to make it more clear how the bytes were parsed (big endian) and to show an example of what it returned.  I also added documentation for the to_str_bytes which previously had no documentation (besides one stackoverflow post).
2014-04-27 14:36:41 -07:00
Nicolas Silva
02c45dece4 Fix test issue-4016.rs with the json API change 2014-04-27 23:09:57 +02:00
Nicolas Silva
a539b0d583 Update libworkcache with libserialize's json changes 2014-04-27 23:09:57 +02:00
Nicolas Silva
18bed22e5a Fix a code formatting issue in json.rs 2014-04-27 23:09:57 +02:00
Nicolas Silva
cd3b54a3f1 Add a streaming parser to serialize::json. 2014-04-27 23:09:56 +02:00
Jacob Hegna
b8f5090a9a Rewrote documentation for parse_bytes and to_str_bytes in {int, uint}_macros.rs 2014-04-27 15:49:47 -05:00
bors
02ba8e2754 auto merge of #13798 : aochagavia/rust/pr, r=alexcrichton 2014-04-27 13:11:43 -07:00
bors
1be19f9cc8 auto merge of #13796 : ema-fox/rust/patch-1, r=kballard 2014-04-27 11:46:46 -07:00
Ryan Mulligan
550c87e17d add BigUint subtraction underflow error message 2014-04-27 10:37:02 -07:00
Adolfo Ochagavía
af064c7bb0 Fixed typo in std::iter 2014-04-27 16:50:55 +02:00
m-r-r
a7b8a13e14 Added missing values in std::io::standard_error() 2014-04-27 14:45:28 +02:00
Emanuel Rylke
107da87996 Fix link to hashmap.rs and json.rs in sample code FAQ 2014-04-27 14:17:06 +02:00
Kang Seonghoon
c8a29c4c59 rustdoc: External module item links to the module contents. Fixes #12926.
the basic strategy is to distinguish `mod foo;` from `mod foo {...}`
by checking if the span for the module item and module contents is
in different files. if it's the case, we prefer module contents.

it is technically possible to fix #12926 without changing the AST,
probably by checking the individual items' span. this is not without
a problem though, since it is possible that some items inside
`mod foo {...}` may have originated from other file (e.g. `include!`).
therefore it is better to record both spans explicitly.
2014-04-27 19:54:31 +09:00
bors
b2a8fae84c auto merge of #13783 : wackywendell/rust/permfix, r=kballard
I filed bugs #13734 and #13759 recently, and then realized I could probably fix them myself. This does exactly that, with a couple additional modifications and additions to the test-suite to pick up on that.

I've never done this before, so please feel free to tell me all the things I'm doing wrong or could be doing better.
2014-04-26 23:41:31 -07:00
Adrien Tétar
076bbb38c7 rustdoc: style tweaks 2014-04-27 09:25:56 +03:00
klutzy
1efb668aaa test: Rename a test to bypass UAC on windows 2014-04-27 15:13:37 +09:00
Kang Seonghoon
dee21a67b8 syntax: Mod records the span for inner contents.
this is useful when the module item and module contents are defined
from different files (like rustdoc). in most cases the original span
for the module item would be used; in other cases, the span for
module contents is available separately at the `inner` field.
2014-04-27 14:52:30 +09:00
Adrien Tétar
b7dba3300e doc: perform some 80-chars wrappings 2014-04-27 11:56:29 +09:00
Wendell Smith
b7d0feb90c Fixing permutation of small lists, such that [], [x] -> [[]], [[x]], and updating size_hints.
Fixes #13734 and #13759.
2014-04-26 22:27:36 -04:00
bors
3ffe56ce38 auto merge of #13777 : lifthrasiir/rust/no-multi-viewitemuse, r=alexcrichton
It reflected the obsolete syntax `use a, b, c;` and did not make past the parser (though it was a non-fatal error so we can continue). This legacy affected many portions of rustc and rustdoc as well, so this PR cleans them up altogether.

As a side effect of cleanup, we now have `SCHEMA_VERSION` in `rustdoc::clean` (instead of the crate root), so it has a better chance to be updated when `rustdoc::clean` gets updated.
2014-04-26 17:01:28 -07:00
Alex Crichton
cf9dd7008e rustc: Don't die on 0-length pattern idents
These often crop up when using default methods that don't actually bind their
argument names.

Closes #13775
2014-04-26 10:24:47 -07:00
Alex Crichton
022a01d40c std: Add experimental networking methods
The underlying I/O objects implement a good deal of various options here and
there for tuning network sockets and how they perform. Most of this is a relic
of "whatever libuv provides", but these options are genuinely useful.

It is unclear at this time whether these options should be well supported or
not, or whether they have correct names or not. For now, I believe it's better
to expose the functionality than to not, but all new methods are added with
an #[experimental] annotation.
2014-04-26 10:22:37 -07:00
bors
ade02bb534 auto merge of #13769 : alexcrichton/rust/restrict-some-scopes, r=huonw
This addresses the ICE from #13763, but it does not allow the test to compile,
due to #13768. An alternate test was checked in in the meantime.

Closes #13763
2014-04-26 06:46:24 -07:00
Kang Seonghoon
bec77eb9c5 rustdoc: Moved SCHEMA_VERSION to clean.
it should be changed when the module gets updated, so it helps to
have the `SCHEMA_VERSION` with the definitions themselves.
2014-04-26 22:45:50 +09:00
Kang Seonghoon
b03547bac1 syntax: ViewItemUse no longer contains multiple view paths.
it reflected the obsolete syntax `use a, b, c;` and did not make
past the parser (though it was a non-fatal error so we can continue).
this legacy affected many portions of rustc and rustdoc as well,
so this commit cleans them up altogether.
2014-04-26 22:33:45 +09:00
Adrien Tétar
5371146107 rustdoc: refactor and unstyle inline section headers 2014-04-26 21:27:42 +09:00
bors
a692e9b123 auto merge of #13766 : BurntSushi/rust/regex-dynamic-tests, r=alexcrichton
Before, tests for dynamic regexes ran during stage1 and tests for
native regexes ran during stage2. But the buildbots don't test stage1,
so now both dynamic and native tests are run during stage2.

Closes #13740.
2014-04-26 01:16:23 -07:00
bors
a5d203579b auto merge of #13758 : sodaplayer/rust/patch-1, r=alexcrichton
Rustdoc doesn't seem like it's converting the old format to a table as we can see here:
http://static.rust-lang.org/doc/master/complement-cheatsheet.html#ffi-(foreign-function-interface)
This new format should fix that and it's also rendered by Github's markdown preview.
2014-04-25 23:31:25 -07:00
bors
cf3f9cf3f9 auto merge of #13750 : aturon/rust/issue-12583, r=alexcrichton
Clarifies the interaction of `is_dir`, `is_file` and `exists` with
symbolic links.  Adds a convenience `lstat` function alongside of
`stat`.  Removes references to conditions.

Closes issue #12583.
2014-04-25 21:51:27 -07:00
bors
35f3f7a74b auto merge of #13748 : hjr3/rust/guide-container-update, r=alexcrichton 2014-04-25 20:06:32 -07:00