Commit Graph

3310 Commits

Author SHA1 Message Date
Bastien Dejean
5b41488f3a TRPL: Fix typo 2015-09-21 12:37:58 +02:00
bors
f859507de8 Auto merge of #28548 - steveklabnik:gh28545, r=alexcrichton
so say so in the FAQ

Fixes #28545
2015-09-21 06:07:03 +00:00
bors
0418a43fa3 Auto merge of #28541 - baskerville:trpl-two-typos, r=steveklabnik
r? @steveklabnik
2015-09-21 00:58:03 +00:00
Steve Klabnik
8355d3a60f We are production ready
so say so in the FAQ

Fixes #28545
2015-09-20 15:53:47 -04:00
Bastien Dejean
856f97a15e TRPL: Fix two typos 2015-09-20 19:13:43 +02:00
bors
f5a64a678f Auto merge of #28499 - semmaz:doc-anchor-fix, r=steveklabnik
This changes how rustic generate `id` and `href` attributes for section header anchor. Now they are more github-like.

Also fixes breakage in docs caused by this and broken links in "Error Handling" section of book.

r? @steveklabnik
cc @alexcrichton
2015-09-20 16:21:43 +00:00
Simon Mazur
970b86b1bb doc: Fix broken links 2015-09-20 13:24:47 +03:00
Manish Goregaokar
8f8fe8194d Rollup merge of #28525 - Wallacoloo:book-4.8-double-more, r=steveklabnik
This is a simple grammar fix in which the previous author accidentally repeated a word when (s)he shouldn't have.
2015-09-20 11:16:27 +05:30
Manish Goregaokar
d007eb628a Rollup merge of #28463 - critiqjo:book-concurrency, r=steveklabnik
Fixes #28458

Details about `Arc` may be too soon to be described together with `Sync`... Tell me what you think.

r? @steveklabnik
2015-09-20 11:16:26 +05:30
Colin Wallace
a35f1b29d7 Fix "more more" typo 2015-09-19 17:19:29 -07:00
critiqjo
a0f214e257 trpl: Improve clarity in Concurrency 2015-09-19 21:11:17 +05:30
Steve Klabnik
b2c7e7791a Rollup merge of #28496 - davidszotten:fix_error_anchors, r=steveklabnik 2015-09-19 11:15:48 -04:00
Steve Klabnik
d557f4a60f Rollup merge of #28485 - Wallacoloo:clarify-let-lhs, r=alexcrichton
In code like `let x = 5`, I am initially confused as to the meaning of "let doesn't take a name on the left hand side, it actually accepts a pattern." - I interpret that as the pattern being located as: `<pattern> let [...]`.

I think what is meant is that the name/pattern is on the left hand side *of the assignment*, rather than to the left of the *let* statement. This change clarifies that.
2015-09-19 11:15:48 -04:00
David Szotten
5ab3058569 change back to anchors; divs break md 2015-09-19 12:06:36 +01:00
David Szotten
f7d8b41814 missing punctuation 2015-09-19 11:45:30 +01:00
David Szotten
436e8d69bf its vs it's 2015-09-19 11:45:09 +01:00
David Szotten
3a5e9a3f99 wrap more referenced code blocks in divs 2015-09-19 11:44:55 +01:00
David Szotten
30c91cd7f7 angle brackets get mis-parsed. bug? 2015-09-19 11:43:57 +01:00
David Szotten
4e42fcd92a link needs puncuation 2015-09-19 11:43:32 +01:00
David Szotten
634ffe5624 remove preceeding blank line 2015-09-18 22:16:31 +01:00
David Szotten
9d3deb4766 fix anchor link 2015-09-18 22:12:16 +01:00
bors
dc1c7975b0 Auto merge of #28336 - petrochenkov:empstr, r=pnkfelix
Closes https://github.com/rust-lang/rust/issues/24266
Closes https://github.com/rust-lang/rust/issues/16819
2015-09-18 16:57:21 +00:00
Ms2ger
1a3b422207 Use divs with ids rather than as with names.
The id attribute has been an official part of HTML since 1997. There is no
reason not to use it.
2015-09-18 15:52:19 +02:00
Vadim Petrochenkov
1eb42f1c78 Add feature gate 2015-09-18 15:28:01 +03:00
Vadim Petrochenkov
605a472948 Add some more tests 2015-09-18 15:26:09 +03:00
Colin Wallace
cbc9517b02 Clarify where let accepts a pattern, spatially 2015-09-17 21:39:19 -07:00
Steve Klabnik
7a5cd3c274 Rollup merge of #28473 - tshepang:lowercase, r=steveklabnik 2015-09-17 17:06:56 -04:00
Steve Klabnik
cd5870f3a3 Rollup merge of #28471 - tshepang:markup, r=steveklabnik 2015-09-17 17:06:56 -04:00
Steve Klabnik
fcfcee1363 Rollup merge of #28470 - tshepang:idiom, r=steveklabnik 2015-09-17 17:06:56 -04:00
Steve Klabnik
36190ef91d Rollup merge of #28466 - baskerville:trpl-heap-highest-addr, r=steveklabnik
r? @steveklabnik
2015-09-17 17:06:55 -04:00
Steve Klabnik
cc664f1f44 Rollup merge of #28451 - dagnir:osx-req-wording, r=steveklabnik
Using "later" in this context makes more sense than "greater" so it's been changed to match the Linux requirement above it rather than the other way around.
2015-09-17 17:06:55 -04:00
Steve Klabnik
40c45ac86a Rollup merge of #28422 - christopherdumas:label_code, r=steveklabnik 2015-09-17 17:06:54 -04:00
Steve Klabnik
54063e330a Rollup merge of #28276 - jackwilsonv:patch-5, r=Manishearth 2015-09-17 17:06:54 -04:00
Tshepang Lekhonkhobe
a3305f87c1 reference: actual keywords feel more appropriate 2015-09-17 22:55:40 +02:00
Tshepang Lekhonkhobe
22fc5f480d reference: mark that up to make it more clear it is a keyword 2015-09-17 22:52:39 +02:00
Tshepang Lekhonkhobe
553a2f1ead doc: follow idiom in code snippet 2015-09-17 22:13:05 +02:00
Bastien Dejean
6d2cb6c688 trpl: Fix off-by-one highest memory address 2015-09-17 18:53:01 +02:00
Dongie Agnir
dfe88c09b8 Change OSX version req wording to match Linux. 2015-09-16 18:56:56 -04:00
christopherdumas
e66a1dcde9 Fixe heading 2015-09-15 10:37:52 -07:00
christopherdumas
0b7e048378 Fix option link and anchor links. 2015-09-15 10:37:02 -07:00
christopherdumas
b69a51164d Added anchors for the code snippets. 2015-09-15 10:34:57 -07:00
christopherdumas
320880eed5 Fix option link and anchor links. 2015-09-15 10:34:57 -07:00
Aidan Hobson Sayers
1a6bdba05e Update musl build in light of llvm 3.7 release 2015-09-13 14:57:54 +01:00
bors
4d20369998 Auto merge of #28371 - killercup:docs/trpl-markup-fixes, r=steveklabnik
- Headlines begin at 1st level now like the rest of the book
- All Headlines a blank line above and below
- Fix links in this chapter's TOC

r? @steveklabnik
2015-09-12 16:31:10 +00:00
Pascal Hertleif
4828c88af6 Nomicon: Fix Links
The style `[name][]` does not work with Pandoc, whereas `[name]` does.
I hope hoedown accepts this as well.
2015-09-12 12:13:24 +02:00
Pascal Hertleif
39f97cfcf8 TRPL: Fix Headlines, Links in "Error Handling"
- Headlines begin at 1st level now like the rest of the book
- All Headlines a blank line above and below
- Fix links in this chapter's TOC
2015-09-12 12:09:59 +02:00
bors
c8ded9a14f Auto merge of #28306 - alexcrichton:less-rt, r=brson
This commit does some refactoring to make almost all of the `std::rt` private.
Specifically, the following items are no longer part of its API:

* DEFAULT_ERROR_CODE
* backtrace
* unwind
* args
* at_exit
* cleanup
* heap (this is just alloc::heap)
* min_stack
* util

The module is now tagged as `#[doc(hidden)]` as the only purpose it's serve is
an entry point for the `panic!` macro via the `begin_unwind` and
`begin_unwind_fmt` reexports.
2015-09-11 19:42:19 +00:00
Alex Crichton
f4be2026df std: Internalize almost all of std::rt
This commit does some refactoring to make almost all of the `std::rt` private.
Specifically, the following items are no longer part of its API:

* DEFAULT_ERROR_CODE
* backtrace
* unwind
* args
* at_exit
* cleanup
* heap (this is just alloc::heap)
* min_stack
* util

The module is now tagged as `#[doc(hidden)]` as the only purpose it's serve is
an entry point for the `panic!` macro via the `begin_unwind` and
`begin_unwind_fmt` reexports.
2015-09-11 11:19:20 -07:00
bors
eda85fede0 Auto merge of #28348 - petrochenkov:novirt, r=alexcrichton
Noticed these yesterday while reading libsyntax
2015-09-11 17:58:59 +00:00
Vadim Petrochenkov
9f1f4c16aa Remove some remains of virtual structs from the parser 2015-09-11 10:09:22 +03:00
bors
01024c9f61 Auto merge of #28328 - tshepang:unusual, r=brson 2015-09-11 06:28:17 +00:00
bors
98eeded587 Auto merge of #28301 - christopherdumas:intergrate_error_burnstushi, r=steveklabnik
This was @steveklabnik's idea. Thanks @BurntSushi for the awesome blog post!
r? @steveklabnik
2015-09-10 20:03:30 +00:00
christopherdumas
e18122682b Adapted @BurtSushi's blog post for the error handling chapter, rewrite the case study. 2015-09-10 09:48:04 -07:00
bors
9577e42682 Auto merge of #28329 - tshepang:comfort, r=steveklabnik 2015-09-10 13:44:48 +00:00
bors
5f9f0b7cc3 Auto merge of #28266 - jackwilsonv:patch-4, r=steveklabnik
r? @steveklabnik
2015-09-10 07:39:50 +00:00
Tshepang Lekhonkhobe
c5a76c692b reference: not comfortable seeing a paragraph starting with a lowercase letter 2015-09-10 06:03:32 +02:00
bors
e3fd444dc9 Auto merge of #28323 - tshepang:idiom, r=steveklabnik 2015-09-10 03:48:30 +00:00
Tshepang Lekhonkhobe
dc6c11816c reference: using periods here is unusual 2015-09-10 05:48:08 +02:00
bors
c48b8f17a0 Auto merge of #28232 - brson:tprl, r=steveklabnik
r? @steveklabnik 

The phrase 'academic research' rubs me the wrong way. I have some concern about the role of this page and think it could be expanded to more than just academic papers and cleaned up a lot.
2015-09-10 00:37:55 +00:00
bors
3cda3c96e3 Auto merge of #28250 - durka:patch-7, r=steveklabnik
I took a stab at fixing #28064. Not sure if this all-features-in-one-example approach is the right one. Also I completely made up the terms "star globbing" and "brace expansion globbing" -- they are just called "glob-like syntax" in the reference.
2015-09-09 22:41:23 +00:00
Tshepang Lekhonkhobe
3860f974a7 reference: format code snippets in an idiomatic manner 2015-09-09 22:35:49 +02:00
bors
5d9dc1d7a1 Auto merge of #28313 - rutsky:patch-4, r=alexcrichton
Follow-up fix for PR #28283.
2015-09-09 16:44:43 +00:00
Manish Goregaokar
ee00780b98 Rollup merge of #28295 - steveklabnik:language_fix, r=alexcrichton
Thanks Eric, reported via email
2015-09-09 18:36:11 +05:30
Manish Goregaokar
b33b121e95 Rollup merge of #28294 - midinastasurazz:patch-3, r=steveklabnik
The link address is defined below the paragraph so no need to have it inline.
2015-09-09 18:36:11 +05:30
Manish Goregaokar
4fc09d3a15 Rollup merge of #28283 - rutsky:patch-3, r=steveklabnik
r? @steveklabnik
2015-09-09 18:36:11 +05:30
Manish Goregaokar
eb2e00a0fd Rollup merge of #28281 - rutsky:patch-2, r=steveklabnik
r? @steveklabnik
2015-09-09 18:36:10 +05:30
Vladimir Rutsky
a1758aea18 fix capitalization inside sentense 2015-09-09 12:54:31 +03:00
Steve Klabnik
ca1a81df23 Fix small sentence about references
Thanks Eric, reported via email
2015-09-08 09:33:53 -04:00
midinastasurazz
3e8038bcab Fix link to hygienic macros on Wikipedia 2015-09-08 14:06:35 +02:00
Vladimir Rutsky
b5b94037c4 fix punctuation in list (again) 2015-09-07 11:03:53 +03:00
Vladimir Rutsky
b1e8007999 fix capitalization inside sentense 2015-09-07 11:01:01 +03:00
Vladimir Rutsky
0d5cae2d45 fix punctuation in list
r? @steveklabnik
2015-09-07 09:41:02 +03:00
Jack Wilson
5c5cca58f7 Small syntax and formatting changes 2015-09-06 16:23:44 -07:00
Hunan Rostomyan
b4afa8e2e5 Fix a typo 2015-09-06 14:38:12 -07:00
bors
01b9cc58ba Auto merge of #28269 - petrochenkov:docorder, r=steveklabnik
This is what I was talking about in https://github.com/rust-lang/rust/pull/26462#issuecomment-113883744

r? @steveklabnik
2015-09-06 19:43:06 +00:00
bors
a269e31a30 Auto merge of #28265 - boblehest:master, r=bluss
In the last code snippet on the following page there is a bug in the
implementation of Vec::drain().

https://doc.rust-lang.org/nightly/nomicon/vec-drain.html

```rust
pub fn drain(&mut self) -> Drain<T> {
    // Oops, setting it to 0 while we still need the old value!
    self.len = 0;

    unsafe {
        Drain {
            // len is used to create a &[T] from &self here,
            // so we end up always creating an empty slice.
            iter: RawValIter::new(&self),
            vec: PhantomData,
        }
    }
}
```

A simple test to verify that Drain is broken can be found here:
https://play.rust-lang.org/?gist=30f579565e4bbf4836ce&version=nightly

And here's one with a fixed implementation:
https://play.rust-lang.org/?gist=2ec0c1a6dcf5defd7a53&version=nightly
2015-09-06 17:55:04 +00:00
Jørn Lode
97dd25094c Rustonomicon: Reword potentially confusing comment in Vec::drain. 2015-09-06 18:21:57 +02:00
Vadim Petrochenkov
c34f350664 Further tweaks to doc/index.md 2015-09-06 16:07:55 +03:00
Vadim Petrochenkov
201bfbe55e Reorder sections in doc/index.md 2015-09-06 15:25:01 +03:00
Jack Wilson
3ccc253dae Small formatting/syntax tweaks 2015-09-05 19:54:52 -07:00
Jørn Lode
c08deef982 Rustonomicon: Fix bug in implementation of Vec::drain()
In the last code snippet on the following page there is a bug in the
implementation of Vec::drain().

https://doc.rust-lang.org/nightly/nomicon/vec-drain.html

```rust
pub fn drain(&mut self) -> Drain<T> {
    // Oops, setting it to 0 while we still need the old value!
    self.len = 0;

    unsafe {
        Drain {
            // len is used to create a &[T] from &self here,
            // so we end up always creating an empty slice.
            iter: RawValIter::new(&self),
            vec: PhantomData,
        }
    }
}
```

A simple test to verify that Drain is broken can be found here:
https://play.rust-lang.org/?gist=30f579565e4bbf4836ce&version=nightly

And here's one with a fixed implementation:
https://play.rust-lang.org/?gist=2ec0c1a6dcf5defd7a53&version=nightly
2015-09-06 03:44:13 +02:00
bors
f84d53ca0a Auto merge of #28259 - christopherdumas:fix_empty_link, r=Manishearth 2015-09-06 01:01:38 +00:00
Alex Burka
a506b7c532 mention dash-to-underscore behavior 2015-09-05 16:42:46 -04:00
christopherdumas
3fa1ee4677 Added link for hygenic macro system in macros.md 2015-09-05 06:04:15 -07:00
Manish Goregaokar
3610c731f3 Rollup merge of #28225 - jackwilsonv:patch-3, r=steveklabnik
r? @steveklabnik
2015-09-05 16:16:01 +05:30
Alex Burka
2cebf3666a document advance extern crate/use syntax
I took a stab at fixing #28064. Not sure if this all-features-in-one-example approach is the right one. Also I completely made up the terms "star globbing" and "brace expansion globbing" -- they are just called "glob-like syntax" in the reference.
2015-09-05 03:08:53 +00:00
Brian Anderson
2218b594bc trpl: Rename 'academic research' to 'bibliography'. Add some new links. 2015-09-04 09:37:15 -07:00
Jack Wilson
f44fbf08f9 Capitalize circle reference 2015-09-03 20:51:08 -07:00
Jack Wilson
2548e2ee58 Fixes minor formatting inconsistencies 2015-09-03 20:48:26 -07:00
Steve Klabnik
6c9549dd20 Rollup merge of #28216 - christopherdumas:fix_28196, r=steveklabnik
This is a docs change suggested in #28196.
r? @steveklabnik
2015-09-03 20:10:10 -04:00
Steve Klabnik
79ea0eed5b Rollup merge of #28215 - matklad:grammar-extern-block-item, r=steveklabnik
extern_block should be extern_block_item.

extern_block_item is `extern { bunch of fns }`, extern_block is just `bunch of fns`

r? @steveklabnik
2015-09-03 20:10:09 -04:00
Steve Klabnik
fd10ded4ea Rollup merge of #28214 - tshepang:word-not-name, r=steveklabnik
Also, add missing comma
2015-09-03 20:10:09 -04:00
Steve Klabnik
ce20719717 Rollup merge of #28213 - tshepang:replace-comma, r=steveklabnik 2015-09-03 20:10:09 -04:00
Steve Klabnik
5b8241cea9 Rollup merge of #28212 - tshepang:rust-is-a-language, r=steveklabnik 2015-09-03 20:10:09 -04:00
Steve Klabnik
e903d9c9b9 Rollup merge of #28210 - tshepang:typo, r=steveklabnik 2015-09-03 20:10:08 -04:00
Steve Klabnik
ff7f5cd0c6 Rollup merge of #28208 - matklad:grammar-whitespace-cleanup, r=steveklabnik 2015-09-03 20:10:08 -04:00
Steve Klabnik
a10e87648f Rollup merge of #28207 - tshepang:flow, r=steveklabnik 2015-09-03 20:10:08 -04:00
Steve Klabnik
54279e0ced Rollup merge of #28205 - matklad:grammar-remove-proc, r=alexcrichton
As I understand, there are no proc closures in Rust any more. So this pr removes `procedure_type` production. It isn't used anywhere. The `proc` is still a keyword.

r? @steveklabnik
@bors: r+ rollup
2015-09-03 20:10:07 -04:00
Steve Klabnik
35019737cc Rollup merge of #28204 - matklad:grammar-duplicate-else-tail, r=steveklabnik
The rule `else_tail` was duplicated in `if` and `if_let` sections. I guess that this is a mistake.

r? @steveklabnik
2015-09-03 20:10:07 -04:00
Steve Klabnik
723ebc2471 Rollup merge of #28203 - benschulz:book-deref-coercion, r=brson
I have two issues with the section "Deref and method calls" of the book's chapter "Deref coercions".

 - (Minor) It says "In other words, these are the same two things in Rust:", followed by a code block in which no two things seem similar, much less the same. Presumably this sentence made more sense in a previous revision.

 - The next paragraph conflates two concepts which, imho, should kept separate. They are
    - deref coercion, i.e. inserting as many `*` as necessary and
    - implicitly referencing the receiver, i.e. inserting a single `&` to satisfy the method's `self` parameter type.

I appreciate that with the proposed changes the example becomes very contrived, even for a foo-bar-baz one. However, the current exmplanation is just wrong.
2015-09-03 20:10:07 -04:00
Steve Klabnik
b96618e18b Rollup merge of #28202 - matklad:grammar-loop-labels, r=steveklabnik
This adds missing `?` marks to productions for loops and break/continue.

It also adds missing option label to while let loop.


Note that '[' foo ']' means grouping in BNF, and '?' is used for possible missing items.

r? @steveklabnik
2015-09-03 20:10:07 -04:00
christopherdumas
17fde3a34d Removed incorrect reference from #28196 2015-09-03 14:39:34 -07:00
Aleksey Kladov
73a6199248 reference grammar: fix item definition
extern_block should extern_block_item
2015-09-04 00:29:47 +03:00
Aleksey Kladov
f7d5c25b3d reference grammar: whitespace cleanup 2015-09-03 23:42:33 +03:00
Tshepang Lekhonkhobe
6cdba4f766 book: it is RwLock, not RWLock 2015-09-03 22:14:28 +02:00
Manish Goregaokar
67616f7191 Rollup merge of #28186 - thomas07vt:thomas07vt-patch-trpl-rust-inside-other-languages.md, r=steveklabnik
The embed rust file that we compile prints out 'Thread finished..' messages along with a 'done!' r? @steveklabnik
2015-09-04 01:40:02 +05:30
Manish Goregaokar
0c2924386d Rollup merge of #28184 - xiaochuanyu:patch-1, r=alexcrichton
Originally in an example it reads as follows:
```rust
fn inverse<T>() -> T
        // this is using ConvertTo as if it were "ConvertFrom<i32>"
         where i32: ConvertTo<T> {
     42.convert()
 }
```
There was no mention of `ConvertFrom` elsewhere in the page other than in this comment. Is this supposed to be `ConvertTo<i64>` ?
I'm confused by this example.
2015-09-04 01:40:01 +05:30
Tshepang Lekhonkhobe
23956ae1f4 book: improve flow 2015-09-03 21:54:00 +02:00
Tshepang Lekhonkhobe
197cec6ed9 book: Rust is a language, so no need to mention that fact here 2015-09-03 21:40:19 +02:00
Aleksey Kladov
59f2343bdb reference grammar: remove procedure_type 2015-09-03 22:25:47 +03:00
Aleksey Kladov
000fe00726 reference grammar: remove duplicate else_tail rule 2015-09-03 22:19:56 +03:00
benshu
986f523b89 Take method invocation semantics out of chapter on deref coercion. 2015-09-03 21:17:59 +02:00
Tshepang Lekhonkhobe
3525a13fea book: "word" feels more suitable than "name"
Also, add missing comma
2015-09-03 21:14:03 +02:00
Aleksey Kladov
83aee74fce reference grammar: loop label should be optional
This adds missing `?` marks to productions for loops and break/continue.

It also adds missing option label to while let loop
2015-09-03 22:13:50 +03:00
Tshepang Lekhonkhobe
8b2b949830 book: replace comma with a more suitable character 2015-09-03 21:11:44 +02:00
Tshepang Lekhonkhobe
f6f31dd143 book: improve paragraph on stack de-allocation 2015-09-03 21:10:48 +02:00
John Thomas
6fcdead4ee Bash output fix to match real 'ruby embed.rb' call
The embed rust file that we compile prints out 'Thread finished..' messages along with a 'done!'
2015-09-02 23:13:56 -07:00
Xiao Chuan Yu
865d6c3b5b Fix mistake in trait.md 2015-09-03 01:36:22 -04:00
Jack Wilson
28bf68f3fe Makes formatting of struct keyword consistent 2015-09-02 18:58:18 -07:00
bors
cfd76b364c Auto merge of #28135 - jackwilsonv:patch-1, r=steveklabnik
Small formatting change

r? @steveklabnik
2015-09-02 19:08:18 +00:00
bors
cb40b8a2ab Auto merge of #28155 - vchimishuk:doc-rust-inside-other-languages-tab, r=alexcrichton
Fixed x variable identation. How it was displayed in Firefox before: http://s16.postimg.org/c9448tn0k/Screenshot_from_2015_09_01_17_35_43.jpg
2015-09-02 04:55:37 +00:00
bors
e758946f96 Auto merge of #28149 - jakerr:atomic, r=alexcrichton
Makes the code agree with the comment: 'value answers "am I locked?"'.
2015-09-02 03:13:43 +00:00
Viacheslav Chimishuk
5ae8a0d38f Source code style fixed: tab replaced with whitespaces. 2015-09-01 17:49:08 +03:00
Jake Kerr
8213f01a76 Reverse AtomicBool value in nomicon example to agree with its comment.
Makes the code agree with the comment: 'value answers "am I locked?"'.
2015-09-01 17:32:22 +09:00
Jack Wilson
7665a7f016 Makes formatting of i32 consistent 2015-08-31 15:52:02 -07:00
AlexDenisov
b03b0d4c10 Fix typo 2015-08-31 06:44:27 +02:00
bors
477561de4e Auto merge of #28078 - apasel422:patch-1, r=alexcrichton 2015-08-29 04:58:45 +00:00
bors
e9111e6a0e Auto merge of #28070 - mdchoate:patch-1, r=alexcrichton 2015-08-29 03:20:37 +00:00
Andrew Paseltiner
010b7f3621 Remove superfluous line from Nomicon 2015-08-28 22:07:02 -04:00
Michael Choate
645d7ae739 Fix typo in loops.md 2015-08-28 14:34:15 -04:00
Steve Klabnik
1c44722375 Be explicit about using crates.io's libc crate
Fixes #28053
2015-08-28 11:43:23 -04:00
Manish Goregaokar
ab3dc54bcf Rollup merge of #28022 - steveklabnik:gh27936, r=alexcrichton
Fixes #27936
2015-08-28 03:38:37 +05:30
Steve Klabnik
af58e5cfea Add Windows-specific comments to testing guide
Fixes #27936
2015-08-27 13:43:43 -04:00
Nikolay Kondratyev
424d9c2778 Fix docs typo 2015-08-26 05:06:00 +05:00
Matt Brubeck
93616af42f Document the recursion_limit crate attribute 2015-08-25 10:02:58 -07:00
Steve Klabnik
d9de182fa5 Rollup merge of #27982 - frewsxcv:patch-25, r=steveklabnik 2015-08-25 09:43:07 -04:00
Steve Klabnik
c15d0cf270 Rollup merge of #27978 - mgrabovsky:doc-fix, r=steveklabnik 2015-08-25 09:43:07 -04:00
Adam Crume
574deb73ba book: Mention that --ignored is a test binary argument 2015-08-24 21:53:02 -07:00
Adam Crume
f56a478377 book: Fix spacing in testing section 2015-08-24 21:52:33 -07:00
Corey Farwell
1629dce494 Use correct indefinite article in reference.md 2015-08-24 17:26:26 -04:00
Matěj Grabovský
82bed0a760 Clarify a sentence in the Book 2015-08-24 20:14:39 +02:00
Adam Crume
30fc4b765c book: Talk about ignore attribute in testing guide 2015-08-23 13:53:52 -07:00
bors
d530379df6 Auto merge of #27922 - tshepang:dst-definition, r=alexcrichton
I am not sure this would work... I didn't test.
2015-08-23 06:06:52 +00:00
Steve Klabnik
17c1d0ce04 Rollup merge of #27935 - mbrubeck:cfg-test, r=steveklabnik
r? @steveklabnik
2015-08-22 19:15:44 -04:00
Steve Klabnik
1b130326b0 Rollup merge of #27934 - MatejLach:spacing_fix, r=steveklabnik
r @steveklabnik ?
2015-08-22 19:15:44 -04:00
Steve Klabnik
fb58dcdbd2 Rollup merge of #27926 - durka:emphasize-no-bin-doctest, r=steveklabnik
It came up twice in quick succession on IRC that rustdoc doesn't run tests in bin crates, and doesn't give any explanation/warning either as to why. I thought it couldn't hurt to emphasize that in the Book.
2015-08-22 19:15:43 -04:00
Steve Klabnik
3677a1feca Rollup merge of #27924 - pornel:bookthreadjoin, r=steveklabnik
The chapter on concurrency has two examples that both start with:

     let something = thread::spawn(…

but the returned values have different types, because the second example has `.join()` at the end of the expression.

I haven't noticed that join at first, and was wondering how is that possible that the result can have `.is_err()` and `.join()` methods.

I've changed the second example to have the same structure as the first, so they're easy to compare.
2015-08-22 19:15:43 -04:00
Steve Klabnik
b3e9615ed4 Rollup merge of #27921 - tshepang:missing-words, r=steveklabnik 2015-08-22 19:15:43 -04:00
Matt Brubeck
59b69d4ae7 Include cfg(test) in the reference 2015-08-21 09:54:58 -07:00
Matej Ľach
bbe10c5c4f fix spacing issue in trpl/documentation doc 2015-08-21 17:10:46 +01:00
Alex Burka
8e6b9b8e93 emphasize that doctests don't run in bin crates 2015-08-20 18:41:24 -04:00
Kornel Lesiński
d112274fcb Use handle the same way in similarly structured examples 2015-08-20 22:12:41 +01:00
Tshepang Lekhonkhobe
9ea001d8e9 book: add DST to glossary 2015-08-20 22:05:39 +02:00
Tshepang Lekhonkhobe
71d654a641 nomicon: insert missing words 2015-08-20 21:37:12 +02:00
Tshepang Lekhonkhobe
a274a64669 nomicon: use current syntax 2015-08-20 21:17:20 +02:00
Steve Klabnik
945603c85b Rollup merge of #27883 - steveklabnik:gh27587, r=alexcrichton
Fixes #27587
2015-08-18 15:03:11 -04:00
Steve Klabnik
572526be27 Rollup merge of #27882 - steveklabnik:gh27428, r=alexcrichton
This is where panic!() is introduced.
2015-08-18 15:03:11 -04:00
Steve Klabnik
288edec968 add cfg(target_env) to the reference
Fixes #27587
2015-08-18 14:24:25 -04:00
Steve Klabnik
dbbcb434b1 Add note about backtraces to TRPL
This is where panic!() is introduced.

Fixes #27428
2015-08-18 14:22:18 -04:00
bors
dc9b74f38d Auto merge of #27536 - steveklabnik:doc_object_safety, r=alexcrichton
Fixes #26938
2015-08-18 16:28:13 +00:00
Steve Klabnik
ce1bdc7293 Add object safety to TRPL
Fixes #26938
2015-08-18 11:27:02 -04:00
Steve Klabnik
e4266803cb Fix broken link to Wilson
reported by @chris-code here: https://github.com/rust-lang/rust/issues/24486#issuecomment-130812460
2015-08-13 15:42:14 -04:00
bors
b2aef9d58b Auto merge of #27789 - chriskrycho:remove_pandoc_references, r=steveklabnik
Per @steveklabnik's comment [here](https://github.com/rust-lang/cargo/issues/739#issuecomment-130085860), the Pandoc components of the Makefile are no longer used, and as such the corresponding components of the documentation are out of date.

  - I've removed the Pandoc (and therefore also LaTeX) elements of the makefile and confirmed that the build proceeds correctly.
  - I updated the documentation to reference `rustdoc` and  of Pandoc.

r? @steveklabnik
2015-08-13 03:52:10 +00:00
Chris Krycho
75f7a68ffa doc/readme: replace references to Pandoc with rustdoc. 2015-08-12 22:29:05 -04:00
Alex Crichton
fe3ab21054 rollup merge of #27682: neurons/np.27681
PR for [Issue #27681] (https://github.com/rust-lang/rust/issues/27681). A simple update to the latest version of rust when typing the command rustc --version.
2015-08-11 22:42:22 -07:00
Alex Crichton
1757837228 rollup merge of #27659: goyox86/goyox86/update-spanish-book-link
This PR just updates the link of my translation of the book to the final rendered version of it.

/cc @steveklabnik
2015-08-11 22:42:20 -07:00
Alex Crichton
737397c584 rollup merge of #27622: eefriedman/https-url
Also fixes a few outdated links.
2015-08-11 22:11:25 -07:00
Niranjan Padmanabhan
d73d22b8cc Update version number response for new version of rust 2015-08-11 18:45:53 -07:00
Manish Goregaokar
a917f61569 Rollup merge of #27611 - vincentbernat:fix/doc/chars-iterator, r=steveklabnik
The previous wording was confusing. While would we need to go through
the whole list just to find the first code point? `chars()` being an
iterator, we only need to walk from the beginning of the list.

Note that I am not a native English speaker and I have still difficulties to spot if a "the" is needed somewhere. Feel free to take this PR as a mere suggestion.

r? @steveklabnik
2015-08-11 16:48:02 +05:30
Manish Goregaokar
e40516bcb4 Rollup merge of #27542 - steveklabnik:gh27303, r=alexcrichton
Fixes #27303
2015-08-11 16:48:01 +05:30
Jose Narvaez
b7a88d8702 Updated the link with rendered version of the Spanish trpl translation. 2015-08-11 11:02:38 +01:00
Alex Crichton
18607149fb syntax: Add a new unstable #[linked_from] attribute
To correctly reexport statically included libraries from a DLL on Windows, the
compiler will soon need to have knowledge about what symbols are statically
included and which are not. To solve this problem a new unstable
`#[linked_from]` attribute is being added and recognized on `extern` blocks to
indicate which native library the symbols are coming from.

The compiler then keeps track of what the set of FFI symbols are that are
included statically. This information will be used in a future commit to
configure how we invoke the linker on Windows.
2015-08-10 18:20:00 -07:00
bors
5aca49c693 Auto merge of #27338 - alexcrichton:remove-morestack, r=brson
This commit removes all morestack support from the compiler which entails:

* Segmented stacks are no longer emitted in codegen.
* We no longer build or distribute libmorestack.a
* The `stack_exhausted` lang item is no longer required

The only current use of the segmented stack support in LLVM is to detect stack
overflow. This is no longer really required, however, because we already have
guard pages for all threads and registered signal handlers watching for a
segfault on those pages (to print out a stack overflow message). Additionally,
major platforms (aka Windows) already don't use morestack.

This means that Rust is by default less likely to catch stack overflows because
if a function takes up more than one page of stack space it won't hit the guard
page. This is what the purpose of morestack was (to catch this case), but it's
better served with stack probes which have more cross platform support and no
runtime support necessary. Until LLVM supports this for all platform it looks
like morestack isn't really buying us much.

cc #16012 (still need stack probes)
Closes #26458 (a drive-by fix to help diagnostics on stack overflow)

r? @brson
2015-08-10 23:40:54 +00:00
Alex Crichton
7a3fdfbf67 Remove morestack support
This commit removes all morestack support from the compiler which entails:

* Segmented stacks are no longer emitted in codegen.
* We no longer build or distribute libmorestack.a
* The `stack_exhausted` lang item is no longer required

The only current use of the segmented stack support in LLVM is to detect stack
overflow. This is no longer really required, however, because we already have
guard pages for all threads and registered signal handlers watching for a
segfault on those pages (to print out a stack overflow message). Additionally,
major platforms (aka Windows) already don't use morestack.

This means that Rust is by default less likely to catch stack overflows because
if a function takes up more than one page of stack space it won't hit the guard
page. This is what the purpose of morestack was (to catch this case), but it's
better served with stack probes which have more cross platform support and no
runtime support necessary. Until LLVM supports this for all platform it looks
like morestack isn't really buying us much.

cc #16012 (still need stack probes)
Closes #26458 (a drive-by fix to help diagnostics on stack overflow)
2015-08-10 16:35:44 -07:00
Eli Friedman
7d3c4bd72a Tweak style guide to avoid referencing the removed ascii::Ascii. 2015-08-09 18:56:48 -07:00
Eli Friedman
bbbfed2f93 Use https URLs to refer to rust-lang.org where appropriate.
Also fixes a few outdated links.
2015-08-09 14:28:46 -07:00
Vincent Bernat
b67adbed5a TRPL: minor correction on how chars().nth() work
The previous wording was confusing. While would we need to go through
the whole list just to find the first code point? `chars()` being an
iterator, we only need to walk from the beginning of the list.
2015-08-09 00:56:38 +02:00
Mike Marcacci
bcf3921a2a Added arrows to references in tables
Keeping integer values and integer references in the "value" columns made the examples quite difficult for me to follow. I've added unicode arrows to make references more obvious, without using a character with actual meaning in the rust language (like `&` or previously `~`).
2015-08-07 23:13:08 -07:00
bors
9bba711063 Auto merge of #27576 - rust-lang:steveklabnik-patch-1, r=Gankro
1. this isn't actually true about diabetes
2. people with diabetes will get *real sad* when reading this
3. it isn't actually necessary.

r? @Gankro
2015-08-07 05:57:24 +00:00
bors
b77d2f5ac7 Auto merge of #27558 - mlalic:patch-1, r=brson
r? @steveklabnik
2015-08-07 04:21:47 +00:00
bors
871fd5eb73 Auto merge of #27552 - tshepang:misc, r=brson 2015-08-07 02:46:43 +00:00
Steve Klabnik
ad9a0713fd Remove reference to diabetes
1. this isn't actually true about diabetes
2. people with diabetes will get *real sad* when reading this
3. it isn't actually necessary.
2015-08-06 20:18:49 -04:00
bors
68f79288bf Auto merge of #27566 - rubymeow:master, r=steveklabnik
I got a bit confused reading the guide over why all of a sudden there was an asterisk in the code. I was explained what it was there for in the IRC, and I think it should added it to the docs to prevent any further confusion!
2015-08-06 20:45:39 +00:00
Ruby
d3e089f08b fixed the few nits! 2015-08-06 19:55:53 +01:00
Ruby
855f1ff321 Explained asterisk on & and &mut reference 2015-08-06 19:29:03 +01:00
Steve Klabnik
8c4dc18d2a Add opaque structs to TRPL:FFI
Fixes #27303
2015-08-06 13:51:52 -04:00
bors
fb92de75c1 Auto merge of #27556 - taliesinb:tarpl-clarity-2, r=Gankro
* Some clarifying rephrasing.
* Rename B.x back to B.a.
* Make null pointer optimization section bit more concrete.

r? @Gankro
2015-08-06 17:36:21 +00:00
bors
83f2667fa2 Auto merge of #27434 - jeehoonkang:master, r=Gankro
In Section 3.2, TARPL says that "standard allocators (including jemalloc, the one used by default in Rust) generally consider passing in 0 for the size of an allocation as Undefined Behaviour."
However, the C standard and jemalloc manual says allocating zero bytes
should succeed:

- C11 7.22.3 paragraph 1: "If the size of the space requested is zero, the behavior is implementation-defined: either a null pointer is returned, or the behavior is as if the size were some nonzero value, except that the returned pointer shall not be used to access an object."
- [jemalloc manual](http://www.freebsd.org/cgi/man.cgi?query=jemalloc&sektion=3): "The malloc and calloc functions return a	pointer	to the allocated memory if successful; otherwise a NULL pointer is returned and errno is set to ENOMEM."
    + Note that the description for `allocm` says "Behavior	is undefined if	size is 0," but it is an experimental API.

r? @Gankro
2015-08-06 15:01:35 +00:00
Marko Lalic
607c70e50f TRPL/lifetimes.md: Fix typo lifteimes -> lifetimes 2015-08-06 11:57:55 +02:00
Jeehoon Kang
9bfb8d3add Revise TARPL's description for allocating 0 bytes
In Section 3.2, TARPL says that "standard allocators (including jemalloc, the one used by default in Rust) generally consider passing in 0 for the size of an allocation as Undefined Behaviour."
However, the C standard and jemalloc manual says allocating zero bytes
should succeed:

- C11 7.22.3 paragraph 1: "If the size of the space requested is zero, the behavior is implementation-defined: either a null pointer is returned, or the behavior is as if the size were some nonzero value, except that the returned pointer shall not be used to access an object."
- [jemalloc manual](http://www.freebsd.org/cgi/man.cgi?query=jemalloc&sektion=3): "The malloc and calloc functions return a	pointer	to the allocated memory if successful; otherwise a NULL pointer is returned and errno is set to ENOMEM."
    + Note that the description for `allocm` says "Behavior	is undefined if	size is 0," but it is an experimental API.
2015-08-06 15:40:41 +09:00
Manish Goregaokar
1daad87893 Rollup merge of #27546 - steveklabnik:gh26115, r=brson
Fixes #26115
2015-08-06 11:42:56 +05:30
Taliesin Beynon
2ca3dda3c4 Some rerp-rust improvements.
* Some clarifying rephrasing.
* Rename B.x back to B.a.
* Make null pointer optimization section bit more concrete.
2015-08-06 02:04:11 -04:00
Tshepang Lekhonkhobe
3653cd9555 book: some improvements to Advanced Linking 2015-08-06 02:32:27 +02:00
Steve Klabnik
de98a0b8fe Add an example to Trait section of reference
Fixes #26115
2015-08-05 15:31:19 -04:00
Steve Klabnik
428050712f Rollup merge of #27539 - steveklabnik:gh26746, r=brson
1. mention them in the function chapter
2. mention their coercion to closures in the closures chapter

Fixes #26746
2015-08-05 15:09:50 -04:00
Steve Klabnik
43451bc4ee Rollup merge of #27538 - steveklabnik:gh26917, r=Gankro
We haven't discussed this syntax yet, so provide a basic explanation
and link up to later chapters.

Fixes #26917
2015-08-05 15:09:50 -04:00
Steve Klabnik
3a2af87363 Rollup merge of #27535 - steveklabnik:for_jhun, r=alexcrichton
'work' can refer to the game itself, ie, 'this compiles but the game isn't finished,'
so 'compile' is a more clear way to describe the problem.

Thanks jhun on irc
2015-08-05 15:09:50 -04:00
Steve Klabnik
1fb78b19ce Rollup merge of #27285 - lastorset:trait-operator-impl, r=steveklabnik
I also included some smaller trait-related changes.

Fixes #26991.

r? @shepmaster 
r? @steveklabnik
2015-08-05 15:09:49 -04:00
Steve Klabnik
e4c229b9fd Add more infor about function pointers to TRPL
1. mention them in the function chapter
2. mention their coercion to closures in the closures chapter

Fixes #26746
2015-08-05 13:44:54 -04:00
Steve Klabnik
8f828a3a9d Expand further on <> syntax in TRPL.
We haven't discussed this syntax yet, so provide a basic explanation
and link up to later chapters.

Fixes #26917
2015-08-05 13:23:22 -04:00
Steve Klabnik
db1f17a64b work -> compile in Guessing Game
'work' can refer to the game itself, ie, 'this compiles but the game isn't finished,'
so 'compile' is a more clear way to describe the problem.

Thanks jhun on irc
2015-08-05 12:30:00 -04:00
bors
6210dcdddb Auto merge of #27530 - Manishearth:rollup, r=Manishearth
- Successful merges: #27519, #27521, #27525, #27527, #27528
- Failed merges:
2015-08-05 08:52:06 +00:00
Manish Goregaokar
eee286dfdd Rollup merge of #27528 - friedm:doc_meta_designator, r=huonw
For #27471
2015-08-05 13:45:39 +05:30
Manish Goregaokar
8effc61816 Rollup merge of #27527 - aij:tarpl, r=Gankro
Just some grammar fixes and an assumed missing word.

r? @Gankro
2015-08-05 13:45:38 +05:30
Manish Goregaokar
a497c6722e Rollup merge of #27525 - Gankro:nomvar, r=aturon
I thought this was actually a huge error and I'd have to rewrite a bunch but
it looks like everything else was correct.

Closes #27457

r? @aturon
2015-08-05 13:45:38 +05:30
Manish Goregaokar
b1dc2c5094 Rollup merge of #27519 - JanLikar:rearrange-patterns, r=steveklabnik
- Move "Destructuring" after "Multiple patterns", because some of
    later sections include examples which make use of destructuring.

  - Move "Ignoring bindings" after "Destructoring", because the former
    features Result<T,E> destructuring. Some of examples in later
    sections use "_" and "..", so "Ignoring bindings" must be
    positioned before them.

  - Fix #27347 by moving "Ref and mut ref" before "Ranges" and
    "Bindings", because "Bindings" section includes a somewhat
    difficult example, which also makes use of "ref" and "mut ref"
    operators.
2015-08-05 13:45:38 +05:30
Matt Friedman
eaf27799bb add meta designator to macro reference 2015-08-04 20:04:11 -05:00
Ivan Jager
2accd295c6 Fix some grammar in The Advanced Rust Programming Language 2015-08-04 18:40:13 -05:00
Alexis Beingessner
67455e29a1 Fix variance ordering
I thought this was actually a huge error and I'd have to rewrite a bunch but
it looks like everything else was correct.

Closes #27457
2015-08-04 15:25:37 -07:00
Chris Nixon
d5b522e20e Tweaked concurrency.md 2015-08-04 20:36:28 +01:00
Jan Likar
c1f938d7b8 Rearrange sections in "Patterns"
- Move "Destructuring" after "Multiple patterns", because some of
    later sections include examples which make use of destructuring.

  - Move "Ignoring bindings" after "Destructoring", because the former
    features Result<T,E> destructuring. Some of examples in later
    sections use "_" and "..", so "Ignoring bindings" must be
    positioned before them.

  - Fix #27347 by moving "Ref and mut ref" before "Ranges" and
    "Bindings", because "Bindings" section includes a somewhat
    difficult example, which also makes use of "ref" and "mut ref"
    operators.
2015-08-04 20:22:42 +02:00
bors
c980aba9a8 Auto merge of #27508 - friedm:remove_integer_suffixes, r=alexcrichton
For #27501  

r? @steveklabnik
2015-08-04 16:31:16 +00:00
Manish Goregaokar
5f841eb824 Rollup merge of #27460 - JanLikar:master, r=steveklabnik
- Fix #26968 by noting the difference between ".." and "_" more explicitly

  - Change one of the examples to show the match-all behaviour of ".."

  - Merge "Ignoring variants" and "Ignoring bindings" sections into the latter

r? @steveklabnik
2015-08-04 18:00:52 +05:30
Manish Goregaokar
3e3a9b4eec Rollup merge of #27397 - Dangthrimble:master, r=steveklabnik
Clarifications for those new to Rust and Cargo:
* It's a good idea to get rid of the original `main.exe` in project root
* Slight clarification on the use of `main.rs` vs `lib.rs`
* Clarify that the TOML file needs to be in project root
2015-08-04 18:00:52 +05:30
bors
7a7789df11 Auto merge of #27444 - Gankro:nomicon, r=brson
Closes #27412 

r? @brson
2015-08-04 06:27:22 +00:00
Matt Friedman
f53ba18f43 remove unneeded integer suffixes from concurrency chapter 2015-08-03 19:48:14 -05:00
bors
ceded6adb3 Auto merge of #27210 - vadimcn:win64-eh-pers, r=alexcrichton
After this change, the only remaining symbol we are pulling from libgcc on Win64 is `__chkstk_ms` - the stack probing routine.
2015-08-03 22:12:46 +00:00
Jonathan Hansford
c54df0e454 required -> used; you -> we 2015-08-03 21:37:15 +01:00
Alexis Beingessner
ca902dd8cb rename TARPL to The Rustinomicon 2015-08-03 11:22:08 -07:00
Tshepang Lekhonkhobe
8d331ba8c3 reference: follow idiom in this tiny snippet 2015-08-03 16:07:36 +02:00
Jonathan Hansford
d9b1882248 Updated in response to review 2015-08-03 10:22:03 +01:00
Manish Goregaokar
0860b29b6a Rollup merge of #27464 - killercup:patch-16, r=Gankro
Because Markdown.
2015-08-03 02:33:52 +05:30
bors
504eaa5929 Auto merge of #27305 - KieranHunt:master, r=steveklabnik
I found that the book had little information for `loop`s and `loop` label so I've added some.
2015-08-02 19:08:21 +00:00
Pascal Hertleif
6e61783dce TRPL: Add Newline Before Headline
Because Markdown.
2015-08-02 12:32:14 +02:00
Jan Likar
91972ba5a6 Fix "Ignoring variants" in "Patterns" chapter
- Fix #26968 by noting the difference between ".." and "_" more explicitly

  - Change one of the examples to show the match-all behaviour of ".."

  - Merge "Ignoring variants" and "Ignoring bindings" sections into the latter
2015-08-01 22:04:23 +02:00
Kieran Hunt
a989ed8880 Adding an ignore annotation to an infinite loop so that it wont hang the tester. 2015-08-01 22:02:00 +02:00
Daniel Albert
3dfab40bbc Fix off-by-one error 2015-08-01 20:53:19 +02:00
Manish Goregaokar
548d552c7e Rollup merge of #27423 - oli-obk:patch-1, r=Gankro 2015-08-01 14:05:52 +05:30
Manish Goregaokar
ae9abdf705 Rollup merge of #27419 - cpjreynolds:master, r=Gankro
Corrects formatting of bullet-ed sentences and changes 'pervasive use raw pointers' to 'pervasive use of raw pointers'.
2015-08-01 14:05:52 +05:30
bors
89bc9fa8be Auto merge of #27418 - taliesinb:tarpl-typo, r=alexcrichton
this makes the second code block consistent with the first code block -- other than being in reversed order, the first code block claims b is u16 and c is u32, whereas the second code block claims the opposite. seems to be an obvious typo.
2015-07-31 17:55:22 +00:00
bors
0919f4ad86 Auto merge of #27414 - Gankro:tarpl-fixes, r=alexcrichton
This is *mostly* reducing *my* use of *italics* but there's some other misc changes interspersed as I went along.

This updates the italicizing alphabetically from `a` to `ra`.

r? @steveklabnik
2015-07-31 15:28:54 +00:00
Alexis Beingessner
554efc0134 last of the emphasis cleanup 2015-07-31 07:11:35 -07:00
Oliver Schneider
6a86a0c89c fix code and error to match the surronding text 2015-07-31 09:32:53 +02:00
Cole Reynolds
d10953e5a2 Minor grammatical changes to send-and-sync.
Corrects formatting of bullet-ed sentences and changes 'pervasive use raw pointers' to 'pervasive use of raw pointers'
2015-07-30 23:40:04 -04:00
Taliesin Beynon
b36890b069 fix switched-round 'b' and 'c' 2015-07-30 23:18:09 -04:00
Alexis Beingessner
7b33a1e2de frob emphasis 2015-07-30 18:47:02 -07:00
Alexis Beingessner
66ba6924cb make the intro less scary 2015-07-30 16:51:22 -07:00
Alexis Beingessner
b52f6187d5 fix title-casing 2015-07-30 16:39:46 -07:00
Alex Crichton
127e63c63b tarpl: Change norun to no_run
Needs the underscore for rustdoc to not actually run it.
2015-07-30 14:32:02 -07:00
Leif Arne Storset
427736931b Copyedit generics.md and traits.md
Squashed at reviewer's request:

Add heading at the end of the introductory material
Spice up introductory paragraphs a bit
Use quotes instead of <code> for phrase
Remove "other" in "other restrictions" (it's not obvious that any other
restrictions have been mentioned)
"Default methods" is a second-level heading, but is not a subsection of
"Where clause"
Reword "Default methods" introduction: it's not the "last feature" on
this page
2015-07-30 21:49:14 +02:00
Leif Arne Storset
556b0815d7 Using operator traits in generic structs 2015-07-30 21:49:13 +02:00
Leif Arne Storset
0e92165eaf Show impl<T>
This includes a new example with Rectangle, instead of reusing HasArea,
because fn area would require the Mul trait, and the added complexity of
that would be better left for the Operators and Overloading chapter.

Squashed at reviewer's request: Move teaser for trait bounds to bottom
2015-07-30 21:48:25 +02:00
Vadim Chugunov
6112b22078 Implement Win64 eh_personality natively. 2015-07-30 11:35:16 -07:00
Alexis Beingessner
d1cf449034 Maybe ignore the explicit examples of a race condition 2015-07-30 08:53:46 -07:00
Jonathan Hansford
c2b564557d By default
Guessing Game states that "Rust only imports a few things into every
program, the ‘prelude’". That isn't strictly true.  That is all it
imports by default and the change clarifies that point.
2015-07-30 11:58:13 +01:00
Jonathan Hansford
a4aae4552e Merge branch 'master' of https://github.com/Dangthrimble/rust 2015-07-30 09:20:24 +01:00
Jonathan Hansford
bc3c41be9f Clarifications for Hello, Cargo!
Just a few minor changes to clarify a few things for someone new to Rust
and Cargo.
2015-07-30 09:20:13 +01:00
Kieran Hunt
4a5194a6d5 Removing infinite loops file 2015-07-30 07:22:21 +02:00
bors
4d52d7c857 Auto merge of #27032 - Gankro:tarpl, r=aturon,acrichto,arielb,pnkfelix,nrc,nmatsakis,huonw
I've been baking this out of tree for long enough. This is currently about ~2/5ths the size of TRPL. Time to get it in tree so it can be more widely maintained and scrutinized. I've preserved the whole gruesome history including various rewrites. I can definitely squash these a fair amount if desired. Some random people submitted minor fixes though, so they're mixed in.

Edit: forgot to link to rendered http://cglab.ca/~abeinges/blah/turpl/_book/

Edit2:

To streamline the review process, I'm going to break this into sections that need official "domain expert" approval:

# Summary

* [ ] references.md -- very important, needs work

* [x] Meet Safe and Unsafe: reviewed by @aturon
* [x] Data Layout: reviewed by @arielb1 
* [x] Ownership: reviewed by @aturon ( and sorta @nikomatsakis ) -- significantly updated, may need re-r
* [x] Coversions:  reviewed by @nrc 
* [x] Uninitialized Memory: reviewed by @pnkfelix 
* [x] Ownership-Oriented Resource Management: reviewed by @aturon
* [x] Unwinding: reviewed by @alexcrichton 
* [x] Concurrency: reviewed by @aturon
* [x] Implementing Vec:  r? @huonw
2015-07-30 00:56:01 +00:00
Alexis Beingessner
ddb029034b fix example code 2015-07-29 17:19:42 -07:00
Alexis Beingessner
4c48ffa53e add warning about reference section 2015-07-29 15:55:19 -07:00
Kieran Hunt
a3872a3685 Consolidating loop information to a single page. Per PR #27305 2015-07-29 22:38:43 +02:00
Manish Goregaokar
6b564a663b Rollup merge of #27232 - Dangthrimble:master, r=steveklabnik
Added definitions for 'Expression', 'Expression-Oriented Language' and 'Statement' to glossary.
Sorted the definitions alphabetically.

r? @steveklabnik
2015-07-30 01:43:53 +05:30
Steve Klabnik
5aa76509da Rollup merge of #27355 - krumelmonster:patch-1, r=alexcrichton
Minor change in the book
2015-07-29 10:30:36 -04:00
Steve Klabnik
8b82470456 Rollup merge of #27343 - steveklabnik:fix_module, r=alexcrichton 2015-07-29 10:30:35 -04:00
Steve Klabnik
a368adf8e5 Rollup merge of #27326 - steveklabnik:doc_show_use, r=Gankro
In spirit with https://internals.rust-lang.org/t/should-we-keep-including-obvious-imports-in-code-examples/2217, show the feature flags we're using in examples.

(also one instance of 'use')
2015-07-29 10:30:34 -04:00
Steve Klabnik
6fec7b7854 Rollup merge of #27325 - midinastasurazz:patch-2, r=alexcrichton 2015-07-29 10:30:33 -04:00
Steve Klabnik
10387d6839 Rollup merge of #27286 - lastorset:pub, r=steveklabnik
The reader could probably infer this from the current text, but for C++ programmers it's not obvious that struct fields don't automatically become public.

Apparently I wasn't the only one to be confused:

http://stackoverflow.com/questions/29157300/field-of-struct-is-private-when-importing-module

I don't think an example is necessary, but can add one if desired.

r? @steveklabnik
2015-07-29 10:30:33 -04:00
Alexis Beingessner
b539906de1 clarify subtyping 2015-07-28 15:41:58 -07:00
Alexis Beingessner
9123bb02ca fix borrow-splitting 2015-07-28 15:38:39 -07:00
Alexis Beingessner
b93438f648 fix incorrect name 2015-07-28 15:16:59 -07:00
Alexis Beingessner
0d37e78977 lots more felix fixes 2015-07-28 15:13:54 -07:00
Alexis Beingessner
5789106737 many many pnkfelix fixes 2015-07-28 13:20:36 -07:00
krumelmonster
9699119c57 more precise for inclusive range 2015-07-28 19:22:20 +02:00
Oliver Schneider
00a5e66f81 remove get_ident and get_name, make as_str sound 2015-07-28 18:07:20 +02:00
Steve Klabnik
02c1351fa3 remove incorrect statement from TRPL: crates and modules 2015-07-27 23:04:42 -04:00
Alexis Beingessner
05bb1dbc43 OBRM for aturon 2015-07-27 16:01:22 -07:00
Alexis Beingessner
fd13bdf626 vec fixes for huonw 2015-07-27 15:03:38 -07:00
Alexis Beingessner
b53406f824 fixups for aturon 2015-07-27 14:42:04 -07:00
bors
8988043da7 Auto merge of #27284 - lastorset:default-methods, r=Gankro
Instead of bar/baz, use valid/invalid as default methods. This
illustrates why you might want default methods, and shows that you can
call other trait methods from a default method.

r? @steveklabnik
2015-07-27 16:34:40 +00:00
Steve Klabnik
ba5fcb726f Show appropriate feature flags in docs 2015-07-27 12:28:13 -04:00
midinastasurazz
2449823268 Fix misrendered HTML character entities 2015-07-27 16:18:50 +02:00
midinastasurazz
6e377fe5f3 Fix typo: yur -> your 2015-07-27 07:20:54 +02:00
bors
184267cac6 Auto merge of #27274 - tshepang:not-needed-word, r=steveklabnik
Also, join the 2 sentences to improve flow
2015-07-27 02:45:35 +00:00
Alexis Beingessner
8c7111da07 fixup atomics 2015-07-26 18:19:50 -07:00
Alexis Beingessner
36a8b94464 expand lifetime splitting to show IterMut is totally safe 2015-07-26 18:12:36 -07:00
Kieran Hunt
b36551b0e2 Adding docs for loops and loop labels. 2015-07-26 19:39:32 +02:00
Jared Roesch
55621b6199 Add feature gate 2015-07-25 20:05:42 -07:00
Leif Arne Storset
95c7f306c7 Mention pub for structs and fields 2015-07-25 21:20:27 +02:00
Leif Arne Storset
7bec320e6e Default methods example: Show "(in)valid" case
Instead of bar/baz, use valid/invalid as default methods. This
illustrates why you might want default methods, and shows that you can
call other trait methods from a default method.
2015-07-25 20:53:57 +02:00
Jonathan Hansford
8fee56777c Commas added, as requested. 2015-07-25 10:42:46 +01:00
bors
f0b7ede78a Auto merge of #26960 - Manishearth:wrapper-types, r=steveklabnik
@steveklabnik had suggested I do this.

This needs much review -- I tried reducing the informal tone but there's room for improvement.


r? @steveklabnik
2015-07-25 07:54:48 +00:00
Manish Goregaokar
8484aca046 Move wrapper types blog post into trpl 2015-07-25 11:02:41 +05:30
Tshepang Lekhonkhobe
89c302eb6c reference: "those" feels misplaced there
Also, join the 2 sentences to improve flow
2015-07-25 06:56:26 +02:00
Tshepang Lekhonkhobe
36582daebc reference: it is sometimes called "the compiler" in this document 2015-07-25 06:44:32 +02:00
Steve Klabnik
43edc1c35a Rollup merge of #27193 - aidanhs:aphs-advanced-linking-doc, r=steveklabnik
Continuation of #25685.
2015-07-24 14:56:02 -04:00
Steve Klabnik
e490ba9a40 Rollup merge of #27177 - echochamber:master, r=steveklabnik
Was browsing somebody else's code and came across a snippet using labels. Looking around, it seems like there was an example for this in [rustbyexample](http://rustbyexample.com/flow_control/loop/nested.html) but none in trpl.
2015-07-24 14:56:01 -04:00
Alexis Beingessner
f54c5ad566 fix accident 2015-07-24 10:02:16 -07:00
Jonathan Hansford
bcee0a83b8 Added link in glossary to expression-oriented language
Tidied up glossary.md and added link from hello-world.md to
'expression-oriented language' in glossary.md
2015-07-24 12:12:11 +01:00
Jonathan Hansford
30584b06ef Additional information on Expression-Oriented Languages
Added the fact that expression statements can form part of larger
expressions.
2015-07-24 09:01:34 +01:00
Jonathan Hansford
1f80880467 Added entries to explain expression-oriented languages
Added definitions for 'Expression', 'Expression-Oriented Language' and
'Statement'.
Sorted the definitions alphabetically.
2015-07-23 12:24:55 +01:00
Jason Schein
c80bff0186 Added how to use labels to break nested loops to trpl. 2015-07-22 13:00:51 -07:00
Aidan Hobson Sayers
b6a0d9e178 Additional notes to link-args 2015-07-22 18:15:23 +01:00
Aidan Hobson Sayers
a8a49fbfc9 musl static linking not glibc 2015-07-22 18:15:16 +01:00
Steve Klabnik
5665efd60e Rollup merge of #27201 - Ticki:master, r=steveklabnik
Just some small changes.
2015-07-22 12:56:52 -04:00
Steve Klabnik
7cacf83009 Rollup merge of #27183 - Dangthrimble:master, r=steveklabnik
Updated "Installing Rust" and "After installation" to provide additional guidance to Windows users on including Rust in the Path system variable.

r? @steveklabnik
2015-07-22 12:56:52 -04:00
Jonathan Hansford
f2c73459ac Path changed to %PATH%
The two references to the "Path system variable" have changed to the
"%PATH% system variable".
2015-07-22 08:26:40 +01:00
Aidan Hobson Sayers
7af865b333 Static linking 2015-07-21 21:11:52 +01:00
Ticki
cf1e078bf6 Klabnik nit-picks ;) 2015-07-21 22:09:29 +02:00
Ticki
48870d4f05 rust -> Rust 2015-07-21 21:40:11 +02:00
Ticki
a5c7b96426 Add info about usage of 'unsafe' keyword in bindings to foreign interfaces. 2015-07-21 21:36:29 +02:00
Aidan Hobson Sayers
e5c1884c26 Note possiblities of empty extern blocks (based on #12575) 2015-07-21 19:07:21 +01:00
Aidan Hobson Sayers
e6c058e18c Rename 'link-args' to 'advanced-linking', add intro 2015-07-21 19:07:19 +01:00
Jonathan Hansford
99572284dc Guidance on Windows install re "Add to PATH"
Updated "Installing Rust" and "After installation" to provide additional
guidance to Windows users on including Rust in the Path system variable.
2015-07-21 12:31:06 +01:00
Steve Klabnik
a29c8347f2 Add travis config to TRPL: release channels
This should help people configure travis to test all three channels.
2015-07-20 20:14:23 -04:00
Alexis Beingessner
3f8e029bed remove subtyping from coercions, it's something else 2015-07-20 16:18:52 -07:00
Alexis Beingessner
5f02de3c22 clarify casts are checked at compile time 2015-07-20 15:50:47 -07:00
Alexis Beingessner
14bc454770 remove redundant explanation 2015-07-20 15:36:50 -07:00
Alexis Beingessner
06ded9c04e explain phantom 2015-07-20 15:35:33 -07:00
Alexis Beingessner
0a36ea7db1 get into the weeds over GEP and allocations 2015-07-20 15:32:52 -07:00
Alexis Beingessner
7a47ffcbc7 UB is src bzns 2015-07-20 11:37:15 -07:00
Alexis Beingessner
99043dde9d mention void pointers 2015-07-20 11:36:26 -07:00
Alexis Beingessner
5f6e0abe27 clean up vec chapter of tarpl 2015-07-20 11:31:29 -07:00
Alexis Beingessner
42c2f107c1 flesh out void types 2015-07-20 11:02:45 -07:00
Alexis Beingessner
94a89e561a some conversions cleanup 2015-07-19 21:43:17 -07:00
Alexis Beingessner
13b2605ed9 fixup and cool example for checked-uninit 2015-07-19 20:48:51 -07:00
Alexis Beingessner
c97673c7b0 fix up lifetimes 2015-07-18 11:44:41 -07:00
Alexis Beingessner
b79d279418 fix typo 2015-07-18 09:10:01 -07:00
Alexis Beingessner
fc2d29450e no really I deleted you 2015-07-17 22:20:44 -07:00
Alexis Beingessner
eba459a5c2 shard out misc section on lifetimes properly 2015-07-17 22:20:11 -07:00
Alexis Beingessner
d1b899e57a update subtyping to be a bit clearer about reference variance 2015-07-17 11:46:02 -07:00
Steve Klabnik
d0e1b06fc0 Clean up some wording around globs.
Globs used to be a feature you'd turn on, but now they're not, so this sounds
a bit odd.
2015-07-17 13:15:06 -04:00
Steve Klabnik
d354d41fd5 Merge branch 'more-ref-fixes' of https://github.com/tshepang/rust into rollup_central 2015-07-16 17:55:07 -04:00
Steve Klabnik
72722e3c2b Merge branch 'coercions' of https://github.com/tshepang/rust into rollup_central 2015-07-16 17:54:57 -04:00
Steve Klabnik
c451bb81ee Merge branch 'nopacked' of https://github.com/Stebalien/rust into rollup_central 2015-07-16 17:53:49 -04:00
Manish Goregaokar
a4060d02cb Rollup merge of #27020 - goyox86:goyox86/fix-error-handling-snippet, r=steveklabnik
This PR fixes a snippet of code on the error handling chapter of \"The Rust Programming Language\".

//cc @steveklabnik

The docs state that trying to compile the snippet will yield the following error:

```bash
anon>:13:5: 20:6 error: non-exhaustive patterns: `_` not covered [E0004]
```

But instead the error received is:

```bash
<anon>:22:46: 22:56 error: unresolved name `NewRelease`
<anon>:22     std::io::println(descriptive_probability(NewRelease));
                                                       ^~~~~~~~~~
<anon>:22:5: 22:21 error: unresolved name `std::io::println`
<anon>:22     std::io::println(descriptive_probability(NewRelease));
              ^~~~~~~~~~~~~~~~
error: aborting due to 2 previous errors
playpen: application terminated with error code 101
```

After applying this PR the expected error is returned:

```bash
anon>:13:5: 20:6 error: non-exhaustive patterns: `_` not covered [E0004]
<anon>:13     match probability(&event) {
<anon>:14         1.00 => \"certain\",
<anon>:15         0.00 => \"impossible\",
<anon>:16         0.00 ... 0.25 => \"very unlikely\",
<anon>:17         0.25 ... 0.50 => \"unlikely\",
<anon>:18         0.50 ... 0.75 => \"likely\",
          ...
<anon>:13:5: 20:6 help: see the detailed explanation for E0004
error: aborting due to previous error
```
2015-07-16 10:49:08 +05:30
Manish Goregaokar
9ac3f42771 Rollup merge of #26695 - rutsky:patch-2, r=Manishearth
r? @steveklabnik
2015-07-16 10:48:36 +05:30
Alexis Beingessner
c5a1b87c6f properly remove moved text 2015-07-14 17:59:28 -07:00
Alexis Beingessner
700895fdd7 split out vec-zsts correctly 2015-07-14 14:41:53 -07:00
Alexis Beingessner
7aee8448ea fix all the doc tests 2015-07-14 11:07:00 -07:00
Steven Allen
833e88db52 Don't mention packed attribute in reference.md 2015-07-14 14:04:21 -04:00
Alexis Beingessner
58f6f2d57a nits and realigning 2015-07-14 09:56:10 -07:00
bors
5708b1a18a Auto merge of #27016 - alexcrichton:inline-asm-docs, r=steveklabnik
Hot off the press, we've now got some nice documentation to link to in LLVM
officially!
2015-07-14 07:51:04 +00:00
Alexis Beingessner
dba548d363 fix via mdinger 2015-07-14 00:26:08 -07:00
Alexis Beingessner
e2b5f4fac4 move everything into the Rust tree 2015-07-13 23:16:33 -07:00
Alexis Beingessner
a54e64b3c4 move everything to tarpl 2015-07-13 23:14:57 -07:00
Jose Narvaez
2e1f75acc4 Fixed snippet to return the proper error. 2015-07-13 20:54:33 +01:00
Alex Crichton
07132b499f doc: Add a link to LLVM's new inline assembly docs
Hot off the press, we've now got some nice documentation to link to in LLVM
officially!
2015-07-13 10:08:09 -07:00
Frank McSherry
d673bdef0f minor grammatical update
Grammatical update (and passive -> active, but I'm not sure if "Rust" is often used as a subject in the book; feel free to revert that part for style, but keep the subject-verb agreement)
2015-07-13 17:22:08 +02:00
Pavel Pravosud
49e45833f8 Clean up trailing whitespaces 2015-07-12 11:23:09 -07:00
Pavel Pravosud
6e1d01f79e Fix multi-threading example in dining-philosophers 2015-07-12 11:22:52 -07:00
Steve Klabnik
6bc1264329 Rollup merge of #26892 - steveklabnik:gh26482, r=alexcrichton
We weren't explicit enough about Cargo's default version behavior.

For rust-lang/rust at least,

Fixes #26482
2015-07-08 10:34:27 -04:00
Steve Klabnik
1ae7702681 TRPL: make version constraits explicit
We weren't explicit enough about Cargo's default version behavior.

For rust-lang/rust at least,

Fixes #26482
2015-07-08 13:09:22 -04:00
Steve Klabnik
19d8bfff15 Rollup merge of #26687 - christianweinz:patch-1, r=huonw
The ‘_‘ wildcard does exactly not handle specific cases but all not specified ones.
2015-07-08 10:34:26 -04:00
Tshepang Lekhonkhobe
4ee7047034 reference: miscellaneous fixes 2015-07-08 00:44:50 +02:00
Steve Klabnik
b6c7dff728 Rollup merge of #26855 - steveklabnik:gh26344, r=alexcrichton
Fixes #26344
2015-07-07 09:49:56 -04:00
Steve Klabnik
743a9e6cae Rollup merge of #26854 - steveklabnik:gh26345, r=alexcrichton
I am not mentioning #[unsafe_drop_flag] because it should go away
eventually, and also because it's just an attribute, it's not
really a use of the `unsafe` keyword.

Fixes #26345
2015-07-07 09:49:56 -04:00
Steve Klabnik
10c795a6ea Rollup merge of #26853 - steveklabnik:gh26346, r=Gankro
This incorrectly implied that doing things is fine in unsafe code

Fixes #26346
2015-07-07 09:49:55 -04:00
Steve Klabnik
bc28e64fb3 Re-word UB in unsafe guide
This incorrectly implied that doing things is fine in unsafe code

Fixes #26346
2015-07-07 12:52:20 -04:00
Steve Klabnik
4b19be3631 Not literally all of concurrency is a library
Fixes #26344
2015-07-07 09:29:04 -04:00