Commit Graph

2813 Commits

Author SHA1 Message Date
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
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