Commit Graph

673 Commits

Author SHA1 Message Date
bors
aae7901a78 auto merge of #16285 : alexcrichton/rust/rename-share, r=huonw
This leaves the `Share` trait at `std::kinds` via a `#[deprecated]` `pub use`
statement, but the `NoShare` struct is no longer part of `std::kinds::marker`
due to #12660 (the build cannot bootstrap otherwise).

All code referencing the `Share` trait should now reference the `Sync` trait,
and all code referencing the `NoShare` type should now reference the `NoSync`
type. The functionality and meaning of this trait have not changed, only the
naming.

Closes #16281
[breaking-change]
2014-08-08 03:51:15 +00:00
bors
87d2bf400c auto merge of #16273 : steveklabnik/rust/guide_generics, r=brson 2014-08-08 02:01:16 +00:00
bors
8888d7c8e9 auto merge of #16206 : steveklabnik/rust/guide_lambdas, r=brson 2014-08-07 23:36:17 +00:00
Steve Klabnik
dac73ad3c1 Guide: Traits 2014-08-07 18:12:36 -04:00
Steve Klabnik
e0fa999891 Guide: strings 2014-08-07 16:37:39 -04:00
Steve Klabnik
b1435ed593 Guide: tasks 2014-08-07 15:21:57 -04:00
Steve Klabnik
aa8602e20a Guide: closures 2014-08-07 14:11:14 -04:00
Alex Crichton
1f760d5d1a Rename Share to Sync
This leaves the `Share` trait at `std::kinds` via a `#[deprecated]` `pub use`
statement, but the `NoShare` struct is no longer part of `std::kinds::marker`
due to #12660 (the build cannot bootstrap otherwise).

All code referencing the `Share` trait should now reference the `Sync` trait,
and all code referencing the `NoShare` type should now reference the `NoSync`
type. The functionality and meaning of this trait have not changed, only the
naming.

Closes #16281
[breaking-change]
2014-08-07 08:54:38 -07:00
Adrien Brault
c186b4be6b Fix typo in the tutorial 2014-08-06 23:09:08 -07:00
Daniel Hofstetter
c6c3f47f7c Guide: Fix imports (times_four instead of add_four) 2014-08-06 09:51:02 +02:00
bors
f5ac41185a auto merge of #16247 : TimDumol/rust/patch-1, r=alexcrichton
The 30-minute intro had a comment mentioning that `+=` will be included in the future. It's already included, and this fixes it to use `+=`.
2014-08-05 19:06:23 +00:00
Steve Klabnik
057c9ae30a Guide: generics 2014-08-05 13:47:32 -04:00
bors
ce83301f8c auto merge of #16246 : ruud-v-a/rust/patch-1, r=brson 2014-08-05 15:36:23 +00:00
bors
cbdae97689 auto merge of #16234 : cakebaker/rust/rename_guessing_game_rs_to_main_rs, r=steveklabnik
Follow-up to #16215
2014-08-05 11:31:22 +00:00
bors
157459be59 auto merge of #16216 : omasanori/rust/nfkc, r=brson
The reference manual said that code is interpreted as UTF-8 text and a implementation will normalize it to NFKC. However, rustc doesn't do any normalization now.

We may want to do any normalization for symbols, but normalizing whole text seems harmful because doing so loses some sort of information even if we choose a non-K variant of normalization.

I'd suggest removing "normalized to Unicode normalization form NFKC" phrase for the present so that the manual represents the current state properly. When we address the problem (with a RFC?), then the manual should be updated.

Closes #12388.

Reference: https://github.com/rust-lang/rust/issues/2253
2014-08-05 08:06:25 +00:00
Tim Joseph Dumol
a9979ada47 doc: Fix the 30-minute intro to use += operator.
The 30-minute intro had a comment mentioning that `+=` will be included in the future. It's already included, and this fixes it to use `+=`.
2014-08-05 02:02:41 +08:00
Ruud van Asseldonk
662f58f5a3 docs: Fix typo in tutorial. 2014-08-04 18:01:54 +02:00
Daniel Hofstetter
d0bd10b891 Rename guessing_game.rs to main.rs in guide 2014-08-04 16:41:37 +02:00
Daniel Hofstetter
c586bf21aa Rename modules.rs to main.rs in guide 2014-08-04 16:23:46 +02:00
OGINO Masanori
bf2d98e190 Remove the "NFKC clause" in the reference manual.
The reference manual said that code is interpreted as UTF-8 text and a
implementation will normalize it to NFKC. However, rustc doesn't do
any normalization now.

We may want to do any normalization for symbols, but normalizing whole
text seems harmful because doing so loses some sort of information even
if we choose a non-K variant of normalization.

I'd suggest removing "normalized to Unicode normalization form NFKC"
phrase for the present so that the manual represents the current state
properly. When we address the problem (with a RFC?), then the manual
should be updated.

Closes #12388.

Reference: https://github.com/rust-lang/rust/issues/2253

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2014-08-03 23:41:05 +09:00
Daniel Hofstetter
7ba9c44b94 Remove "bin" section from Cargo.toml 2014-08-03 14:19:05 +02:00
bors
ed264286dd auto merge of #16198 : cakebaker/rust/remove_unused_tuple_struct, r=steveklabnik 2014-08-03 08:11:10 +00:00
bors
12306da80c auto merge of #16189 : steveklabnik/rust/gh15494, r=alexcrichton
Fixes #15494.
2014-08-03 01:21:08 +00:00
bors
4d4eb10230 auto merge of #16186 : steveklabnik/rust/guide_cargo_new, r=alexcrichton
Two commits here: one to add `cargo new` to the guide, and a second to mention the lockfile that Cargo now generates.
2014-08-02 23:36:09 +00:00
bors
432042ac14 auto merge of #16183 : brson/rust/doctitles, r=alexcrichton 2014-08-02 17:21:09 +00:00
Daniel Hofstetter
867d8e6356 Remove unused tuple struct 2014-08-02 17:28:42 +02:00
bors
5bad333fec auto merge of #16175 : EduardoBautista/rust/fix-guessing-game-appearing-early, r=steveklabnik
Solves: https://github.com/rust-lang/rust/issues/16162
2014-08-02 12:06:09 +00:00
bors
1b44c5b0eb auto merge of #16165 : tinaun/rust/newcss, r=alexcrichton
remove unneeded `pre.rust a' selector

move transform into `.test-arrow`

fixes #16138
2014-08-02 10:21:11 +00:00
bors
71a42807ad auto merge of #16160 : EduardoBautista/rust/use-bang-at-end-of-hello-world, r=alexcrichton
Further into the guide "Hello, world!" is used instead of "Hello, world".
2014-08-02 05:06:11 +00:00
Steve Klabnik
cf279105d5 Fix manual regarding attribute placement.
Fixes #15494.
2014-08-01 23:12:14 -04:00
Steve Klabnik
2b9c5d2f74 Add note about Cargo.lock 2014-08-01 22:58:16 -04:00
Steve Klabnik
1a80dcbd56 Use cargo new.
Now that this feature exists, we should use it.

Fixes #16078
2014-08-01 22:58:01 -04:00
bors
06727d4720 auto merge of #16128 : steveklabnik/rust/speed_faq, r=brson
Fixes #11174.

I'm open to revising this text, but I figured it gets across the basics.
2014-08-02 02:16:02 +00:00
Brian Anderson
fe13a9fb59 doc: Make sure all doc titles say 'Rust'. #12466 2014-08-01 17:32:24 -07:00
bors
d7cfc34a22 auto merge of #16119 : steveklabnik/rust/guide_pointers, r=brson
This is the next section of the guide, and it's on pointers. It's not done yet, as I need to write the section on ownership and borrowing, but I figured I'd share the rest now, to get feedback on the rest of it while I take some time to get that right.
2014-08-02 00:31:03 +00:00
bors
55b24051be auto merge of #15992 : steveklabnik/rust/guide_testing, r=brson
The start of a testing guide. This PR relies on the crates and modules one because I shuffled some stuff around, so sorry about that.

I got stuck with how to import this name with cargo. @wycats and @alexcrichton , any ideas?
2014-08-01 20:21:01 +00:00
Eduardo Bautista
69267b1e1d Move caret under the 'x' variabe 2014-08-01 14:34:18 -05:00
Eduardo Bautista
ea92a5e90a Use hello_world instead of the guessing_game 2014-08-01 14:30:52 -05:00
Patrick Walton
5b85c8cbe7 librustc: Forbid pattern bindings after @s, for memory safety.
This is an alternative to upgrading the way rvalues are handled in the
borrow check. Making rvalues handled more like lvalues in the borrow
check caused numerous problems related to double mutable borrows and
rvalue scopes. Rather than come up with more borrow check rules to try
to solve these problems, I decided to just forbid pattern bindings after
`@`. This affected fewer than 10 lines of code in the compiler and
libraries.

This breaks code like:

    match x {
        y @ z => { ... }
    }

    match a {
        b @ Some(c) => { ... }
    }

Change this code to use nested `match` or `let` expressions. For
example:

    match x {
        y => {
            let z = y;
            ...
        }
    }

    match a {
        Some(c) => {
            let b = Some(c);
            ...
        }
    }

Closes #14587.

[breaking-change]
2014-08-01 08:45:22 -07:00
tinaun
42b2dc06b6 Fix API docs css reversing elements that it shouldn't
remove unneeded `pre.rust a' selector

move transform into `.test-arrow`

fixes #16138
2014-08-01 04:01:29 -04:00
Eduardo Bautista
c0048dec4a Be more consistent with "Hello, world!" 2014-07-31 23:02:22 -05:00
bors
b495933a7f auto merge of #16141 : alexcrichton/rust/rollup, r=alexcrichton 2014-08-01 01:56:32 +00:00
Steve Klabnik
fd08d5fb2e Add note about production deployments.
Fixes #11511.
2014-07-31 11:50:24 -07:00
Steve Klabnik
daaa20e565 Remove incorrect example
This now works because of elision.

Fixes #16117
2014-07-31 11:50:24 -07:00
Steve Klabnik
a74197e3f1 Guide: pointers
Not the pointer guide, but the guide section on pointers.

Adding a section about patterns for after this, as well.
2014-07-31 14:39:16 -04:00
bors
9826e801be auto merge of #16073 : mneumann/rust/dragonfly2, r=alexcrichton
Not included are two required patches:

* LLVM: segmented stack support for DragonFly [1]

* jemalloc: simple configure patches

[1]: http://reviews.llvm.org/D4705
2014-07-31 14:41:34 +00:00
Steve Klabnik
20658f7ec5 Fix heading levels in pointer guide 2014-07-31 07:30:52 -07:00
Steve Klabnik
ea1b637654 fix formatting in pointer guide table 2014-07-31 07:30:48 -07:00
DJUrsus
571f6cf29a fix variable name in tutorial 2014-07-31 07:30:14 -07:00
Steve Klabnik
d4c3500ec6 Add comment about speed in FAQ.
Fixes #11174.
2014-07-30 19:14:06 -04:00
Steve Klabnik
6121d82d47 Guide: testing 2014-07-30 09:36:32 -04:00
bors
1b0dc6a3fc auto merge of #16092 : alexcrichton/rust/rollup, r=alexcrichton 2014-07-30 05:06:41 +00:00
Alexis Beingessner
56f957f463 adding discuss.rust-lang to community 2014-07-29 15:44:08 -07:00
Corey Richardson
2a3c0d91cf manual: update list of feature gates, add phase attribute 2014-07-29 15:43:57 -07:00
Hugo Jobling
26ca10d2d7 Update disclaimer to improve clarity and intent 2014-07-29 15:43:02 -07:00
Steve Klabnik
456c4494b8 New Guide: crates and modules 2014-07-29 12:50:25 -04:00
Michael Neumann
2e2f53fad2 Port Rust to DragonFlyBSD
Not included are two required patches:

* LLVM: segmented stack support for DragonFly [1]

* jemalloc: simple configure patches

[1]: http://reviews.llvm.org/D4705
2014-07-29 16:44:39 +02:00
Ruud van Asseldonk
d7993153a4 docs: Fix typo in container guide. 2014-07-27 10:14:44 +02:00
Michael Matuzak
ca18c12243 fix small typo in guide-lifetimes 2014-07-25 21:13:39 -07:00
bors
cf1381c1d0 auto merge of #15789 : steveklabnik/rust/guide_pointers, r=cmr
This is super, super WIP, but I'm going to go get lunch for a while, and figured I'd toss my work up here in case anyone wants to see my work as I do it.

This contains a new introductory section explaining the basics of pointers, and some pitfalls that Rust attempts to solve. I'd be interested in hearing how my explanation is, as well as if this belongs here. Pointers are such a crucial concept, I don't mind having a beginners' section on them in the main docs, even though our main audience is supposed to understand them already. Reasonable people may disagree, however.
2014-07-26 00:46:16 +00:00
bors
4e388859a2 auto merge of #15959 : omasanori/rust/cleanup-ja, r=alexcrichton
The translation is based on an early version of tutorial.md, thus most
of entries have been marked as fuzzy and actually they are incorrect.
Now tutorial.md is planed to be replaced with guide.md, so I'd suggest
removing translation files for a while.

/cc @gifnksm
2014-07-25 06:01:13 +00:00
OGINO Masanori
1e2456b988 Remove obsolete Japanese translation for a while.
The translation is based on an early version of tutorial.md, thus most
of entries have been marked as fuzzy and actually they are incorrect.
Now tutorial.md is planed to be replaced with guide.md, so I'd suggest
removing translation files for a while.

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2014-07-25 06:51:32 +09:00
Patrick Walton
bb165eb5c2 libsyntax: Remove ~self and mut ~self from the language.
This eliminates the last vestige of the `~` syntax.

Instead of `~self`, write `self: Box<TypeOfSelf>`; instead of `mut
~self`, write `mut self: Box<TypeOfSelf>`, replacing `TypeOfSelf` with
the self-type parameter as specified in the implementation.

Closes #13885.

[breaking-change]
2014-07-24 07:26:03 -07:00
bors
02464196ea auto merge of #15909 : colemickens/rust/patch-3, r=alexcrichton
Tested this on the playground, the range specifies range(0u, 3), so it should be okay to remove this cast.
2014-07-24 07:51:18 +00:00
bors
83a8a56473 auto merge of #15899 : aochagavia/rust/guide, r=kballard
The removed code caused confusion because it is not clear that the type of `y` is actually `()`
2014-07-23 06:31:11 +00:00
Cole Mickens
6bb22a9d6d Remove unnecessary cast from intro 2014-07-22 23:10:18 -07:00
Adolfo Ochagavía
2d1b87ce33 Remove misleading code example from The Guide
The removed code caused confusion because it is not clear that the type of `y` is actually `()`
2014-07-22 20:58:25 +02:00
Steve Klabnik
1e9f86b1dc Guide: fix headings 2014-07-21 19:39:16 -04:00
Steve Klabnik
377b2508f2 Guide Redux: Pointers 2014-07-21 19:34:55 -04:00
Steve Klabnik
e8c9d21130 Guessing game explanation
We now build the game at the end of the first section.

I wanted to do it as we went along, but it's too hard with these fundamentals
not in place. The rest will do the 'as we go' approach, but I think this is
better.
2014-07-21 09:54:03 -07:00
Steve Klabnik
fca79e4726 Guide: improve error handling 2014-07-21 09:53:58 -07:00
bors
8859df7fb5 auto merge of #15803 : omp/rust/master, r=alexcrichton
Fix small typo in guide.
2014-07-20 14:21:32 +00:00
bors
320dbc18d8 auto merge of #15745 : treeman/rust/tutorial-fixup, r=steveklabnik
Simplify example in 5.2 to remove hidden `#[deriving(Show)]`. Traits haven't been introduced yet and now it's easier to just type in the code and expect it to work. Add in some examples for constructing the enum types. Explicitly expose `#![feature(struct_variant)]` in the code to make it more transparent, this bit me when I worked through the tutorial.

Add references in chapter 8 to later chapters describing `Rc`, `Gc` and `Send`. This is a simple fix for #15293.

Simplify vector indexing example in chapter 13 and removed hidden, unnecessary, code. Gave an example usage of the derived `Rand` trait in chapter 17.

Removed references to removed 'extra' crate.
2014-07-20 06:11:32 +00:00
David Vazgenovich Shakaryan
69127f2f4e Fix typo. 2014-07-18 23:11:25 -07:00
Steve Klabnik
0c30e1faad Include Strings guide with the others.
Three small changes:

1. Re-organize headers in the Strings guide so they show up correctly.
2. build the strings guide with the other docs
3. include the strings guide in the list of guides
2014-07-18 10:48:24 -04:00
Steve Klabnik
226b7d1b72 Guide: strings 2014-07-17 20:50:14 -04:00
Patrick Walton
de70d76373 librustc: Remove cross-borrowing of Box<T> to &T from the language,
except where trait objects are involved.

Part of issue #15349, though I'm leaving it open for trait objects.
Cross borrowing for trait objects remains because it is needed until we
have DST.

This will break code like:

    fn foo(x: &int) { ... }

    let a = box 3i;
    foo(a);

Change this code to:

    fn foo(x: &int) { ... }

    let a = box 3i;
    foo(&*a);

[breaking-change]
2014-07-17 14:05:36 -07:00
bors
c4b1077dfb auto merge of #15706 : phi-gamma/rust/master, r=huonw
I kept changes to each file in a separate commit. Please let me know if you prefer them
squashed!
2014-07-17 17:16:23 +00:00
Jonas Hietala
89e28d3df9 Small fixes for tutorial.
5.2 Simplify example to remove hidden #[deriving(Show)].
    Add example for constructing the enums.

8   Reference later sections describing rc, gc and send.
    Fix for #15293.

13  Simplify BananaMania example to remove hidden code.

17  Gave an example using the derived Rand trait.

Removed references to removed 'extra' crate.
2014-07-17 16:21:33 +02:00
Nick Cameron
aa760a849e deprecate Vec::get 2014-07-17 12:08:31 +12:00
Philipp Gesang
a1def0856e
complement-lang-faq.md: fix typos 2014-07-16 08:01:59 +02:00
Steve Klabnik
167533972f Fix cargo install instructions
Cargo now comes with Rust
2014-07-15 16:26:22 -04:00
bors
1704ebb798 auto merge of #15421 : catharsis/rust/doc-ffi-minor-fixes, r=alexcrichton
Signed-off-by: Anton Lofgren <alofgren@op5.com>
2014-07-15 14:26:11 +00:00
bors
b74562b0ae auto merge of #15534 : steveklabnik/rust/guide_stdin, r=brson 2014-07-15 07:36:17 +00:00
bors
5cef16e9b3 auto merge of #15531 : steveklabnik/rust/guide_looping, r=brson 2014-07-15 05:56:19 +00:00
bors
b1ae09e52a auto merge of #15434 : steveklabnik/rust/guide_match, r=brson 2014-07-15 01:21:22 +00:00
Yazhong Liu
7a199ba9f1 doc: missing quote in keyword Send 2014-07-15 01:26:41 +08:00
Brian Anderson
a9cf3233f7 Bump version to 0.12.0-pre 2014-07-11 11:26:58 -07:00
Steve Klabnik
6d9334d570 Remove car analogy.
This was super silly anyway.

Fixes #15539.
2014-07-09 13:04:52 -04:00
bors
b53f3e7ddb auto merge of #15530 : adrientetar/rust/proper-fonts, r=alexcrichton
- Treat WOFF as binary files so that git does not perform newline normalization.
- Replace corrupt Heuristica files with Source Serif Pro &mdash; italics are [almost in production](https://github.com/adobe/source-serif-pro/issues/2) so I left Heuristica Italic which makes a good pair with SSP. Overall, Source Serif Pro is I think a better fit for rustdoc (cc @TheHydroImpulse). This ought to fix #15527.
- Store Source Code Pro locally in order to make offline docs freestanding. Fixes #14778.

Preview: http://adrientetar.legtux.org/cached/rust-docs/core.html

r? @alexcrichton
2014-07-09 10:36:31 +00:00
bors
ec3efa8055 auto merge of #15422 : steveklabnik/rust/guide_compound_data_types, r=brson
I'm not happy about the hand-waving around `cmp`, but I'm not sure how to get around it.
2014-07-09 02:21:37 +00:00
bors
1c711db551 auto merge of #15374 : steveklabnik/rust/comments, r=brson
I'm leaving off `rustdoc` usage because it won't work unless this is a `pub fn`, and I want to talk about public/private in the context of modules. I'm also not mentioning `//!` because it is exclusively used to provide the overview of a module.
2014-07-09 00:36:40 +00:00
Steve Klabnik
17bb4af8fe Guide: Standard input 2014-07-08 17:49:19 -04:00
Richo Healey
12c334a77b std: Rename the ToStr trait to ToString, and to_str to to_string.
[breaking-change]
2014-07-08 13:01:43 -07:00
Steve Klabnik
636aff144a Guide: looping 2014-07-08 15:25:27 -04:00
Adrien Tétar
3b0b7b6b91 webfonts: serve Source Code Pro locally
So that we have freestanding docs.
2014-07-08 20:31:26 +02:00
Adrien Tétar
4d5f4ff5e9 webfonts: proper fix 2014-07-08 20:29:36 +02:00
Steve Klabnik
daea9f4ad9 Guide: match 2014-07-08 12:16:58 -04:00
Steve Klabnik
654a19b091 Guide: comments 2014-07-08 12:07:11 -04:00
Steve Klabnik
11c64f162f Guide: complex data types 2014-07-08 12:00:47 -04:00