Commit Graph

1514 Commits

Author SHA1 Message Date
Alex Crichton
7be39b0c03 rollup merge of #21164: richo/doc/servo-link
Tiny docfix to make the urls point to the canonical endpoint.
2015-01-15 14:11:59 -08:00
Alex Crichton
8c81800170 rollup merge of #21148: bombless/patch-1 2015-01-15 14:11:55 -08:00
Alex Crichton
b86a84867a rollup merge of #21141: tcard/master
Really small correction.

This anti-example in the Closures section is supposed to fail because of a borrow, but it was failing at the type inference because of insufficient type information.

This makes it fail for the expected reason.
2015-01-15 14:11:54 -08:00
Alex Crichton
7e2ef2cbc6 rollup merge of #21133: iKevinY/mobile-rustdoc
Just a couple of tweaks to improve the appearance of pages like [The Rust Reference](http://doc.rust-lang.org/reference.html) on mobile to advance the progress of #20850. Changing the viewport wasn't quite good enough to make it mobile-friendly, as large tables forced the page to become wider than the screen width. Using `overflow-x`, tables that are too large become horizontally scrollable instead of forcing the *entire page* to become horizontally scrollable.

Also, there was at least one case where an extremely long piece of inline code was wider than the actual width of the screen (`std::ptr::copy_nonoverlapping_memory`), so I changed `word-wrap` to allow inline code to break in the middle of words instead of only text within `pre` tags.

This isn't a change included in this PR, but rather something up for discussion. Currently, code blocks that contain long lines simply wrap onto the next line. What if rather than wrapping, they were horizontally scrollable instead? I'm not sure what the general preference is regarding this.

r? @steveklabnik
2015-01-15 14:11:53 -08:00
Alex Crichton
68c3f8c0c3 rollup merge of #21124: steveklabnik/fix_redirect
Why redirect Tutorial -> Guide -> Book when you can just Tutorial -> Book?

Suggested here: http://www.reddit.com/r/rust/comments/2schav/is_it_possible_to_automatically_redirect/
2015-01-15 14:11:52 -08:00
Alex Crichton
65b286d834 rollup merge of #21109: steveklabnik/gh17224
Fixes #17224
2015-01-15 14:11:48 -08:00
Alex Crichton
d7009e6f31 rollup merge of #21105: csouth3/kill-box-import
Closes #21093.
r? @steveklabnik
cc @alexcrichton

I tested with `make check-docs` and this passes that.  Hope that was enough.
2015-01-15 14:11:46 -08:00
Alex Crichton
46a490f42b rollup merge of #21075: iKevinY/intro-changes
- Make punctuation/formatting consistent with the changes made to *The Rust Programming Language* in #20782.
- Use title casing for "Safety and Speed" section.
- Reword some phrases to improve clarity.
2015-01-15 14:11:41 -08:00
Alex Crichton
2890266b27 rollup merge of #21041: steveklabnik/gh17554
Fixes #17554
2015-01-15 14:11:37 -08:00
Alex Crichton
7aa7707af9 rollup merge of #21040: steveklabnik/gh20037
Fixes #20037.
2015-01-15 14:11:37 -08:00
Alex Crichton
9d6e1f921b rollup merge of #21038: steveklabnik/gh20471
Fixes #20471.
2015-01-15 14:11:36 -08:00
Alex Crichton
21effeb611 rollup merge of #21031: steveklabnik/gh19067
Fixes #19067
2015-01-15 14:11:35 -08:00
Alex Crichton
8d0b937964 rollup merge of #21029: steveklabnik/gh19924
Fixes #19924
2015-01-15 14:11:35 -08:00
Alex Crichton
b8751b8410 rollup merge of #21028: steveklabnik/gh17368
Fixes #17368
2015-01-15 14:11:35 -08:00
Alex Crichton
cfbf313282 rollup merge of #21023: steveklabnik/gh20840
Fixes #20840
2015-01-15 14:11:34 -08:00
Alex Crichton
6155ce53b6 rollup merge of #21020: steveklabnik/gh20844
Thank you @bluss for the suggested implementation.

Fixes #20844
2015-01-15 14:11:34 -08:00
Alex Crichton
e06863ef64 rollup merge of #21015: steveklabnik/gh20852
Fixes #20852
2015-01-15 14:11:33 -08:00
Alex Crichton
ff9ae8815b rollup merge of #21014: steveklabnik/gh20876
Fixes #20876
2015-01-15 14:11:33 -08:00
Alex Crichton
c6a9877039 rollup merge of #21013: steveklabnik/gh20914
Fixes #20914
2015-01-15 14:11:33 -08:00
Alex Crichton
73660a11c9 rollup merge of #21011: steveklabnik/gh20993
Fixes #20993
2015-01-15 14:11:32 -08:00
Alex Crichton
dbbe506c10 rollup merge of #21001: camjackson/master
With the code samples as they are, the compiler says:
`feature has been added to Rust, directive not necessary`
2015-01-15 14:11:31 -08:00
Alex Crichton
c478c6ac91 rollup merge of #20988: ciphergoth/task-to-thread
"Tasks" are no longer a thing in Rust; refer to threads instead. Work is still needed on [threads.md](threads.md).
2015-01-15 14:11:30 -08:00
Alex Crichton
37d20f256a rollup merge of #20986: alkor/doc-fixes
Corrections in TRPL macros guide
2015-01-15 14:11:29 -08:00
Alex Crichton
eb94c357d0 rollup merge of #20929: laurilehmijoki/master
The sentence is easier to read once we move the word "again" away from the last position.
2015-01-15 14:11:28 -08:00
Alex Crichton
d3c5cf1b35 rollup merge of #20892: CarVac/master
`uint` was recently deprecated, so in following the use of `i32` in the first parts, replace all copies of `uint` with `u32`.
2015-01-15 14:11:28 -08:00
Alex Crichton
855c3e5af5 rollup merge of #20632: gchp/reference
I noticed that the `deriving` keyword is deprecated and that `derive` is the replacement. This updates the reference (and other docs) to remove the use `deriving`.
2015-01-15 14:11:27 -08:00
Steve Klabnik
fd603cd263 Clarify function return style.
Suggested here: http://stackoverflow.com/a/27962076/24817
2015-01-15 14:47:21 -05:00
Steve Klabnik
462dd64716 Add explanation of main to rustdoc docs
Fixes #17554
2015-01-15 09:58:58 -05:00
NODA, Kai
195fd9a2b4 reference.md: change "mod" to "self" in "use" declaration.
This should have been done together with 56dcbd17fd
for rust-lang/rust#20361

Signed-off-by: NODA, Kai <nodakai@gmail.com>
2015-01-15 13:57:02 +08:00
bors
0c96037ec1 auto merge of #20980 : richo/rust/final-power, r=alexcrichton
Originally, this was going to be discussed and revisted, however I've been working on this for months, and a rebase on top of master was about 1 flight's worth of work so I just went ahead and did it.

This gets you as far as being able to target powerpc with, eg:

    LD_LIBRARY_PATH=./x86_64-unknown-linux-gnu/stage2/lib/ x86_64-unknown-linux-gnu/stage2/bin/rustc -C linker=powerpc-linux-gnu-gcc --target powerpc-unknown-linux-gnu hello.rs

Would really love to get this out before 1.0. r? @alexcrichton
2015-01-15 05:12:30 +00:00
Richo Healey
5e646755f4 doc: fix links to servo 2015-01-14 16:13:58 -08:00
York Xiang
bf899e997e fix wrong link 2015-01-15 01:11:28 +08:00
Toni Cárdenas
428da78de1 TRPL: Anti-example failing for the wrong reason.
Really small correction.

This anti-example in the Closures section is supposed to fail because of a borrow, but it was failing at the type inference because of insufficient type information.

This makes it fail for the expected reason.
2015-01-14 15:24:41 +01:00
Kevin Yap
5a16ceb291 Improve Rust Documentation & Reference on mobile
- Tables that are too wide for the screen scroll horizontally.
- Inline code that would force the page to become wider than the width
  of the screen is broken in the middle of the word.
2015-01-13 22:39:52 -08:00
Steve Klabnik
40219249cf Re-direct to the right place.
Why redirect Tutorial -> Guide -> Book when you can just Tutorial -> Book?

Suggested here: http://www.reddit.com/r/rust/comments/2schav/is_it_possible_to_automatically_redirect/
2015-01-13 21:11:47 -05:00
Steve Klabnik
ad0ce88c6c Provide example of generic inverse()
Fixes #17224
2015-01-13 15:42:38 -05:00
Chase Southwood
07f723f19b Remove unneeded box import in examples 2015-01-13 12:56:10 -06:00
Greg Chapple
4b14f67df3 Replace usage of deriving with derive in docs 2015-01-13 13:57:09 +00:00
JONNALAGADDA Srinivas
ac110df0ff Expand the section on closures in TRPL.
* Include an illustration of a function that accepts two closures.
2015-01-13 10:14:18 +05:30
Kevin Yap
31ac1fb93d Various changes to Rust Introduction
- Make punctuation/formatting consistent with the changes made to "The
  Rust Programming Language" in #20782.
- Use title casing for "Safety and Speed" section.
- Reword some phrases to improve clarity.
2015-01-12 19:25:17 -08:00
Adam Roben
1c0acb9d91 Match prose with code when discussing Ordering values
Now both the enum values and the prose describing them mention the values in the same order.
2015-01-12 16:18:02 -05:00
Steve Klabnik
16a8c4d238 Don't use 'synonym' with regards to newtypes
Fixes #20037.
2015-01-12 15:30:11 -05:00
Steve Klabnik
2297b0cb00 Elaborate on destructuring let
Fixes #20471.
2015-01-12 15:28:09 -05:00
Steve Klabnik
e485d297ea Improve example in the intro.
Thank you @bluss for the suggested implementation.

Fixes #20844
2015-01-12 15:14:17 -05:00
Steve Klabnik
b704983ee9 Improve the ownership guide a tad
Fixes #19924
2015-01-12 15:12:51 -05:00
Steve Klabnik
db7de969cf Improve clarity of paragraph in the pointer guide
Fixes #19067
2015-01-12 13:57:09 -05:00
Steve Klabnik
425f449fda Remove PDF link on 404 page
Fixes #17368
2015-01-12 13:16:07 -05:00
Lauri Lehmijoki
eabf208285 Ease parsing of an English sentence 2015-01-12 19:42:52 +02:00
Steve Klabnik
95f9e309f7 Clean up wording around uninitialized values.
Fixes #20840
2015-01-12 11:49:54 -05:00
Steve Klabnik
be407180d7 Link to sections in the book's README.md
Fixes #20852
2015-01-12 10:59:21 -05:00
Steve Klabnik
285277dd80 Clean up unary operators in the reference
Fixes #20876
2015-01-12 10:52:34 -05:00
Steve Klabnik
c403794310 Small fix in the book
Fixes #20914
2015-01-12 10:47:56 -05:00
Steve Klabnik
ba9e223c57 Small grammar fix in the book
Fixes #20993
2015-01-12 10:45:32 -05:00
Alexander Korolkov
a3d87fa448 Fix text in TRPL macros guide to match the example
Also, update description of macro invocation syntax:
after https://github.com/rust-lang/rust/pull/20563 there is
a number of additional limitations on macro syntax.
2015-01-12 17:39:18 +03:00
Cam Jackson
e1ff480e43 Remove usage and reference of feature(globs) from the book 2015-01-12 23:06:03 +11:00
Paul Crowley
8eba032f52 Purge references to Rust tasks from TRPL. 2015-01-12 09:15:33 +00:00
Richo Healey
194ed4f5a0 powerpc: Document the existance of powerpc 2015-01-11 21:14:30 -08:00
bors
0aec4db1c0 auto merge of #20889 : Manishearth/rust/trait-error, r=nikomatsakis
fixes #20783

r? @nikomatsakis
2015-01-12 04:45:18 +00:00
CarVac
9302dc5d9e Replace uint with u32 in trpl/guessing-game.md
uint was recently deprecated, so in following the use of i32 at first,
replace all references to uint with u32.

Also change literals from e.g. 100u to 100, so that they are no longer
usize.
2015-01-11 21:00:42 -05:00
bors
8d88ac12c1 Merge pull request #20966 from Valloric/ownership-fix
Fixing integer usage in ownership doc

Reviewed-by: steveklabnik
2015-01-12 00:21:31 +00:00
bors
8c824c5b65 Merge pull request #20956 from angst7/docfixes1
replace deprecated uint references with u32 in trpl/looping.md

Reviewed-by: Gankro
2015-01-12 00:21:31 +00:00
bors
352c81bb4b Merge pull request #20933 from gifnksm/patch-1
TRPL: `cargo build` doesn't run executables

Reviewed-by: alexcrichton
2015-01-12 00:21:30 +00:00
bors
f72c719b71 Merge pull request #20930 from charmeleon/master
Switching out range(0,10) example to 0..10. Tests fine

Reviewed-by: brson
2015-01-12 00:21:29 +00:00
bors
268e2bff97 Merge pull request #20926 from xnil/patch-1
Hepburn romanization of さようなら

Reviewed-by: huonw
2015-01-12 00:21:29 +00:00
bors
668325190d Merge pull request #20902 from stevencrockett/master
reference: Small grammar fixes for correctness/consistency and updates for language changes.

Reviewed-by: steveklabnik
2015-01-12 00:21:26 +00:00
bors
10305fcfdc Merge pull request #20898 from sebras/trpl
Cosmetic updates to TRPL text

Reviewed-by: steveklabnik
2015-01-12 00:21:25 +00:00
bors
50b0f5c550 Merge pull request #20895 from adregan/master
Updates fixed-size suffix in 30 minute introduction

Reviewed-by: steveklabnik
2015-01-12 00:21:25 +00:00
bors
654877c75f Merge pull request #20883 from apreiml/master
Update 7.2.9 Array expressions

Reviewed-by: steveklabnik
2015-01-12 00:21:24 +00:00
bors
3e215200f6 Merge pull request #20877 from killercup/patch-4
Error Guide: Add Line Break to Robert Burns Quote

Reviewed-by: steveklabnik
2015-01-12 00:21:23 +00:00
bors
8e0bb03841 Merge pull request #20820 from sellibitze/closure-doc
Closure documentation: Fix boxed closure left-over

Reviewed-by: steveklabnik
2015-01-12 00:21:23 +00:00
Strahinja Val Markovic
d355da6e6f Fixing integer usage in ownership doc
`int` doesn't exist anymore. Usage of its equivalent `isize` is
discouraged since its size is platform-dependent. `i32` is used instead
in the examples. Also, integer suffixes aren't needed in the examples
anymore so we can just write `5` instead of `5i`.
2015-01-11 12:42:03 -08:00
Manish Goregaokar
02d0a8bbcf docs 2015-01-12 01:44:28 +05:30
Matt Roche
c989bd4ab7 replace deprecated uint references with u32
Replaced uint references with u32 to prevent compiler warnings.
2015-01-11 13:55:23 -05:00
NAKASHIMA, Makoto
add9225038 cargo build doesn't run the executables 2015-01-11 17:40:42 +09:00
Erick Rivas
8e42f1e6c3 Switching out range(0,10) example to 0..10. Tests fine 2015-01-11 02:15:29 -06:00
Carter Hinsley
da15417b9d Correct romanization of さようなら 2015-01-11 01:53:34 -05:00
Steven Crockett
e7e308f447 reference: Made a number of small gramatical fixes changes for correctness/consistency. Small updates to text and code where the language has since changed. 2015-01-10 23:58:38 +00:00
Sebastian Rasmussen
64b1a0da98 Cosmetic updates to TRPL text
* Make messages match rustc's error messages
* Use correct function name in example
* Rewording to match previously presented material
2015-01-10 23:11:26 +01:00
Duncan Regan
c871773f32 Updates fixed-size suffix
Compiler gives the following warning:
`warning: the `u` suffix on integers is deprecated; use `us` or one of the fixed-sized suffixes`
And also the errror:
`error: mismatched types: expected `u64`, found `usize` (expected u64, found usize)`

Changing the suffix to `u64` results in a successful `cargo run` outputting the desired `Versions compared successfully!`
2015-01-10 16:19:11 -05:00
Armin Preiml
e4a2de7ed1 Update 7.2.9 Array expressions 2015-01-10 19:08:07 +01:00
Pascal Hertleif
6ff5ab1d01 Add Line Break to Robert Burns Quote 2015-01-10 15:47:52 +01:00
bors
3b03c20c6d Merge pull request #20851 from englishm/patch-1
Docs: Should be `assert_eq!` not `assert_eq`

Reviewed-by: sfackler
2015-01-10 14:15:12 +00:00
bors
52e5ae786d Merge pull request #20849 from scode/scode/fix-book-typo
Fix typo in documentation.

Reviewed-by: sfackler
2015-01-10 14:15:12 +00:00
bors
1ca581d440 Merge pull request #20833 from nstoddard/master
Fix a couple wording issues in TRPL book

Reviewed-by: Gankro
2015-01-10 14:15:11 +00:00
bors
507d9575bd Merge pull request #20819 from GuillaumeGomez/master
Fixes typo

Reviewed-by: alexcrichton
2015-01-10 14:15:11 +00:00
bors
2bb9b3f0be Merge pull request #20818 from rgs1/fix-guide
Remove extra dangling period

Reviewed-by: alexcrichton
2015-01-10 14:15:10 +00:00
bors
e912f13a94 Merge pull request #20817 from killercup/patch-2
Update Conclusion of The Rust Programming Language

Reviewed-by: steveklabnik
2015-01-10 14:15:10 +00:00
Mike English
68ecfe0b61 Should be assert_eq! not assert_eq 2015-01-10 01:52:51 -05:00
Peter Schuller
d873aeeb92 Fix typo in documentation. 2015-01-09 22:35:18 -08:00
bors
391e0106ef auto merge of #20802 : huonw/rust/book-css, r=steveklabnik
There is likely to be new users with the alpha release, and there are a lot of documents on the internet (StackOverflow, reddit, blogs) that refer to these guides, so emitting a more helpful error than "404" is nice. Hence, I've temporarily reinstated stub documents for each of the old guides, referring to as relevant a part of the book as possible.

Also, rustbook was silently ignoring some errors, which lead to an inconsistency with directory creation/file writing. This meant the CSS file was not being written if no `doc` directory existed in the users build dir (e.g. the buildbots). This should mean that the CSS will appear automatically in later builds.
2015-01-10 05:55:07 +00:00
bors
9205d74fe0 auto merge of #20782 : iKevinY/rust/trpl-formatting, r=steveklabnik
Here's my PR for the changes discussed in #19823. I decided to leave `_these_` types of italics the way there were because it differentiates the use of italics for emphasis from `*key term*` italics. Otherwise, bolded terms have been changed to italics, and single and double quotes have been changed appropriately, depending on their context (my judgement may not be the best, though).

r? @steveklabnik (congratulations on #19897 being finalized and merged, by the way!)
2015-01-10 03:45:11 +00:00
Nathan Stoddard
2a29296ea3 Fix a couple wording issues in trpl book 2015-01-09 17:21:30 -05:00
Sebastian Gesemann
d4b70fe6c6 documentation: Fix boxed closure left-over and add some words on why we use a type parameter for closures. 2015-01-09 20:10:14 +01:00
Guillaume Gomez
ba462b88e9 Update advanced.md 2015-01-09 20:08:30 +01:00
Keegan McAllister
a96a8b2b25 Update macro scope intro 2015-01-09 11:06:17 -08:00
Raul Gutierrez S
28723048a5 Remove extra dangling period
Signed-off-by: Raul Gutierrez S <rgs@itevenworks.net>
2015-01-09 10:54:00 -08:00
Pascal Hertleif
1a602c1779 Update Conclusion of The Rust Programming Language
This replaces a obsolete conclusion (based on the original, basic Guide) with
links to further documentation sources.
2015-01-09 19:48:27 +01:00
Huon Wilson
4247a30bdd Add stub deprecation files for each of the old guides.
There are hundreds of stackoverflow answers, reddit posts and blog
articles that link to these documents, so it's a nicer user experience
if they're not plain 404s.

The intention is to let these hang around only for relatively short
while. The alpha is likely to bring in many new users and they will be
reading the documents mentioned above.
2015-01-09 19:47:09 +11:00
Kevin Yap
8f61814641 Standardize punctuation & formatting of TRPL
This commit is an attempt to standardize the use of punctuation and
formatting in "The Rust Programming Language" as discussed in #19823.

- Convert bold text to italicized textcwhen referring to terminology.
- Convert single-quoted text to italicized or double-quoted text,
  depending on context.
- Use double quotes only in the case of scare quotes or quotations.
2015-01-08 17:15:26 -08:00
Alex Crichton
7541f82fab Fix dead links in the guide and reorganize 2015-01-08 10:27:03 -08:00
Steve Klabnik
16a6ebd1f6 "The Rust Programming Language"
This pulls all of our long-form documentation into a single document,
nicknamed "the book" and formally titled "The Rust Programming
Language."

A few things motivated this change:

* People knew of The Guide, but not the individual Guides. This merges
  them together, helping discoverability.
* You can get all of Rust's longform documentation in one place, which
  is nice.
* We now have rustbook in-tree, which can generate this kind of
  documentation. While its style is basic, the general idea is much
  better: a table of contents on the left-hand side.
* Rather than a almost 10,000-line guide.md, there are now smaller files
  per section.
2015-01-08 12:02:11 -05:00
Alex Crichton
0dc48b47a8 Test fixes and rebase conflicts 2015-01-07 19:27:27 -08:00
Alex Crichton
5d342acba2 rollup merge of #20709: thiagopnts/ownership-guide-typo
I was reading the ownership guide and found this small typo :bowtie:
2015-01-07 17:18:05 -08:00
Alex Crichton
cedaf4696f rollup merge of #20695: frewsxcv/patch-2
This should be rollup
2015-01-07 17:17:29 -08:00
Alex Crichton
5b1a285b73 rollup merge of #20693: EchoAce/intro-oboe
Issue #20686, proposed by nstoddard.
2015-01-07 17:17:27 -08:00
Thiago Pontes
9fcf097648 fix typo in the ownership guide 2015-01-07 18:42:15 -02:00
bors
c0216c8945 Merge pull request #20674 from jbcrail/fix-misspelled-comments
Fix misspelled comments.

Reviewed-by: steveklabnik
2015-01-07 15:35:30 +00:00
bors
7377c0b1a9 Merge pull request #20672 from vrana/patch-3
Fix a typo in guide

Reviewed-by: steveklabnik
2015-01-07 15:35:28 +00:00
bors
5064c8d9dc Merge pull request #20670 from vrana/patch-2
Fix type annotation in guide

Reviewed-by: steveklabnik
2015-01-07 15:35:27 +00:00
bors
2e2a2cdb59 Merge pull request #20669 from vrana/patch-1
Use a better word in the guide

Reviewed-by: steveklabnik
2015-01-07 15:35:26 +00:00
Corey Farwell
4f801c433f Bump copyright year in doc footer 2015-01-07 09:23:31 -05:00
FakeKane
da83e4d98a oboe removed 2015-01-07 09:09:37 -05:00
bors
a3a16e9610 auto merge of #20620 : brson/rust/relnotes, r=huonw
A whole lot happened this cycle. I tried to highlight the best stuff. Please review and note important stuff I'm missing or foolish mistakes.
2015-01-07 08:32:46 +00:00
Alex Crichton
a64000820f More test fixes 2015-01-06 21:26:48 -08:00
Joseph Crail
e3b7fedc20 Fix misspelled comments.
I cleaned up comments prior to the 1.0 alpha release.
2015-01-06 20:53:18 -05:00
Jakub Vrána
83d01cc5ae Fix a typo in guide 2015-01-06 16:53:45 -08:00
Brian Anderson
93190b364b Bump some version numbers 2015-01-06 15:58:23 -08:00
Alex Crichton
26cd8eae48 rollup merge of #20563: cmr/macro-input-future-proofing 2015-01-06 15:49:15 -08:00
Alex Crichton
36f5d122b8 rollup merge of #20615: aturon/stab-2-thread
This commit takes a first pass at stabilizing `std::thread`:

* It removes the `detach` method in favor of two constructors -- `spawn`
  for detached threads, `scoped` for "scoped" (i.e., must-join)
  threads. This addresses some of the surprise/frustrating debug
  sessions with the previous API, in which `spawn` produced a guard that
  on destruction joined the thread (unless `detach` was called).

  The reason to have the division in part is that `Send` will soon not
  imply `'static`, which means that `scoped` thread creation can take a
  closure over *shared stack data* of the parent thread. On the other
  hand, this means that the parent must not pop the relevant stack
  frames while the child thread is running. The `JoinGuard` is used to
  prevent this from happening by joining on drop (if you have not
  already explicitly `join`ed.) The APIs around `scoped` are
  future-proofed for the `Send` changes by taking an additional lifetime
  parameter. With the current definition of `Send`, this is forced to be
  `'static`, but when `Send` changes these APIs will gain their full
  flexibility immediately.

  Threads that are `spawn`ed, on the other hand, are detached from the
  start and do not yield an RAII guard.

  The hope is that, by making `scoped` an explicit opt-in with a very
  suggestive name, it will be drastically less likely to be caught by a
  surprising deadlock due to an implicit join at the end of a scope.

* The module itself is marked stable.

* Existing methods other than `spawn` and `scoped` are marked stable.

The migration path is:

```rust
Thread::spawn(f).detached()
```

becomes

```rust
Thread::spawn(f)
```

while

```rust
let res = Thread::spawn(f);
res.join()
```

becomes

```rust
let res = Thread::scoped(f);
res.join()
```

[breaking-change]
2015-01-06 15:38:38 -08:00
Alex Crichton
0631b466c2 rollup merge of #19430: pczarn/interp_tt-cleanup
Conflicts:
	src/libsyntax/parse/parser.rs
2015-01-06 15:38:10 -08:00
Jakub Vrána
94c170e366 Fix type annotation in guide 2015-01-06 15:30:22 -08:00
Piotr Czarnecki
d85c017f92 Cleanup and followup to PR #17830: parsing changes
Prevents breaking down `$name` tokens into separate `$` and `name`.
Reports unknown macro variables.

Fixes #18775
Fixes #18839
Fixes #15640
2015-01-07 00:24:48 +01:00
Jakub Vrána
7846eb6aaa Use a better word in the guide 2015-01-06 15:13:47 -08:00
Aaron Turon
caca9b2e71 Fallout from stabilization 2015-01-06 14:57:52 -08:00
Nick Cameron
503709708c Change std::kinds to std::markers; flatten std::kinds::marker
[breaking-change]
2015-01-07 09:45:28 +13:00
Corey Richardson
e0b4287df6 Fix fallout 2015-01-06 12:04:41 -05:00
Alex Crichton
7975fd9cee rollup merge of #20482: kmcallister/macro-reform
Conflicts:
	src/libflate/lib.rs
	src/libstd/lib.rs
	src/libstd/macros.rs
	src/libsyntax/feature_gate.rs
	src/libsyntax/parse/parser.rs
	src/libsyntax/show_span.rs
	src/test/auxiliary/macro_crate_test.rs
	src/test/compile-fail/lint-stability.rs
	src/test/run-pass/intrinsics-math.rs
	src/test/run-pass/tcp-connect-timeouts.rs
2015-01-05 19:01:17 -08:00
Alex Crichton
bb5e16b4b8 rollup merge of #20554: huonw/mut-pattern
Conflicts:
	src/librustc_typeck/check/_match.rs
2015-01-05 18:38:51 -08:00
Alex Crichton
25d5a3a194 rollup merge of #20507: alexcrichton/issue-20444
This commit is an implementation of [RFC 494][rfc] which removes the entire
`std::c_vec` module and redesigns the `std::c_str` module as `std::ffi`.

[rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0494-c_str-and-c_vec-stability.md

The interface of the new `CString` is outlined in the linked RFC, the primary
changes being:

* The `ToCStr` trait is gone, meaning the `with_c_str` and `to_c_str` methods
  are now gone. These two methods are replaced with a `CString::from_slice`
  method.
* The `CString` type is now just a wrapper around `Vec<u8>` with a static
  guarantee that there is a trailing nul byte with no internal nul bytes. This
  means that `CString` now implements `Deref<Target = [c_char]>`, which is where
  it gains most of its methods from. A few helper methods are added to acquire a
  slice of `u8` instead of `c_char`, as well as including a slice with the
  trailing nul byte if necessary.
* All usage of non-owned `CString` values is now done via two functions inside
  of `std::ffi`, called `c_str_to_bytes` and `c_str_to_bytes_with_nul`. These
  functions are now the one method used to convert a `*const c_char` to a Rust
  slice of `u8`.

Many more details, including newly deprecated methods, can be found linked in
the RFC. This is a:

[breaking-change]
Closes #20444
2015-01-05 18:37:22 -08:00
Alex Crichton
38d81baec8 rollup merge of #20478: SeanTAllen/master
Number of rustc calls would depending on various circumstances. Two is misleading.
2015-01-05 18:36:38 -08:00
Alex Crichton
e918a589ae rollup merge of #20092: barosl/rustdoc-line-number-clickable
While talking on IRC, someone wanted to post a link to the Rust source code, but while the lines of the rendered source code do have anchors (`<span id="[line number]">`), there is no convenient way to make links as they are not clickable. This PR makes them clickable.

Also, a minor fix of the FAQ is included.
2015-01-05 18:36:21 -08:00
Alex Crichton
b8e404f289 rollup merge of #19998: th0114nd/unicode-bottom
In the HTML version of the documentation, it isn't rendered so might as well use the unicode representation.
2015-01-05 18:36:20 -08:00
Alex Crichton
199ebc7bf7 rollup merge of #19888: steveklabnik/gh19861
Fixes #19861

/cc @huonw
2015-01-05 18:36:18 -08:00
Alex Crichton
6f7faa0b75 rollup merge of #19736: steveklabnik/gh19662
Fixes #19662.
2015-01-05 18:36:17 -08:00
Alex Crichton
d46b8f1fce rollup merge of #19235: bjz/reference
cc. @steveklabnik
2015-01-05 18:36:16 -08:00
Keegan McAllister
78e841d8b1 Update docs 2015-01-05 18:21:14 -08:00
Keegan McAllister
c9f0ff3813 Reserve the keyword 'macro' 2015-01-05 18:21:14 -08:00
Jorge Aparicio
97f870a1fc unignore and fix doctests in guide and reference 2015-01-05 17:22:18 -05:00
Jorge Aparicio
ab0c7af376 ignore boxed closure doctests in the guide/reference 2015-01-05 17:22:17 -05:00
Steve Klabnik
a56e7aee81 Add lifetime elision information to the ownership guide.
Fixes #19662.
2015-01-05 11:51:52 -05:00
Alex Crichton
ec7a50d20d std: Redesign c_str and c_vec
This commit is an implementation of [RFC 494][rfc] which removes the entire
`std::c_vec` module and redesigns the `std::c_str` module as `std::ffi`.

[rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0494-c_str-and-c_vec-stability.md

The interface of the new `CString` is outlined in the linked RFC, the primary
changes being:

* The `ToCStr` trait is gone, meaning the `with_c_str` and `to_c_str` methods
  are now gone. These two methods are replaced with a `CString::from_slice`
  method.
* The `CString` type is now just a wrapper around `Vec<u8>` with a static
  guarantee that there is a trailing nul byte with no internal nul bytes. This
  means that `CString` now implements `Deref<Target = [c_char]>`, which is where
  it gains most of its methods from. A few helper methods are added to acquire a
  slice of `u8` instead of `c_char`, as well as including a slice with the
  trailing nul byte if necessary.
* All usage of non-owned `CString` values is now done via two functions inside
  of `std::ffi`, called `c_str_to_bytes` and `c_str_to_bytes_with_nul`. These
  functions are now the one method used to convert a `*const c_char` to a Rust
  slice of `u8`.

Many more details, including newly deprecated methods, can be found linked in
the RFC. This is a:

[breaking-change]
Closes #20444
2015-01-05 08:00:13 -08:00
Huon Wilson
bf6c007760 Change & pat to only work with &T, and &mut with &mut T.
This implements RFC 179 by making the pattern `&<pat>` require matching
against a variable of type `&T`, and introducing the pattern `&mut
<pat>` which only works with variables of type `&mut T`.

The pattern `&mut x` currently parses as `&(mut x)` i.e. a pattern match
through a `&T` or a `&mut T` that binds the variable `x` to have type
`T` and to be mutable. This should be rewritten as follows, for example,

    for &mut x in slice.iter() {

becomes

    for &x in slice.iter() {
        let mut x = x;

Due to this, this is a

[breaking-change]

Closes #20496.
2015-01-05 16:14:17 +11:00
bors
5773bdefff Merge pull request #20520 from nhowell/patch-1
doc: Add missing `$`s in the Installing Rust guide

Reviewed-by: steveklabnik, steveklabnik
2015-01-04 21:36:41 +00:00
bors
eb6f340d2a Merge pull request #20505 from estsauver/doc_20504
Update guide index to point to the task page

Reviewed-by: alexcrichton
2015-01-04 21:36:39 +00:00
bors
05164ba1e0 Merge pull request #20495 from brson/cargo
Update guide for Cargo installation

Reviewed-by: steveklabnik
2015-01-04 21:36:38 +00:00
bors
0b28a7990f Merge pull request #20487 from trapp/doc-namespace-typo
Fix typo in documentation.

Reviewed-by: alexcrichton
2015-01-04 21:36:38 +00:00
bors
69479e2ba6 Merge pull request #20428 from tbu-/pr_guide_int_to_i32_2nd_take
Make all integers in the guide `i32`, implicitely

Reviewed-by: steveklabnik
2015-01-04 21:36:34 +00:00
bors
1436b92898 Merge pull request #19963 from tshepang/patch-3
doc: mailing list is deprecated

Reviewed-by: brson
2015-01-04 21:36:33 +00:00
Nick Howell
36bed41c1f doc: Add missing $s in the Installing Rust guide 2015-01-04 10:23:00 -05:00
Alex Crichton
7d8d06f86b Remove deprecated functionality
This removes a large array of deprecated functionality, regardless of how
recently it was deprecated. The purpose of this commit is to clean out the
standard libraries and compiler for the upcoming alpha release.

Some notable compiler changes were to enable warnings for all now-deprecated
command line arguments (previously the deprecated versions were silently
accepted) as well as removing deriving(Zero) entirely (the trait was removed).

The distribution no longer contains the libtime or libregex_macros crates. Both
of these have been deprecated for some time and are available externally.
2015-01-03 23:43:57 -08:00