Commit Graph

1091 Commits

Author SHA1 Message Date
Brian Anderson
82f190355b Remove uses of log 2013-03-11 23:19:42 -07:00
Patrick Walton
08c840205e librustc: Lint the old drop destructor notation off 2013-03-11 09:36:00 -07:00
Patrick Walton
1fcb0443cf doc: Remove documentation on newtype enums. 2013-03-11 09:35:59 -07:00
Patrick Walton
d7e74b5e91 librustc: Convert all uses of assert over to fail_unless! 2013-03-07 22:37:57 -08:00
Niko Matsakis
3168fe06ff Add manual &self/ and &static/ and /&self declarations that
are currently inferred.  New rules are coming that will require
them to be explicit.  All add some explicit self declarations.
2013-03-06 15:12:57 -05:00
Patrick Walton
30bb09c0e7 test: Remove fn@, fn~, and fn& from the test suite. rs=defun 2013-03-02 18:47:47 -08:00
Patrick Walton
a3f728238b librustc: Forbid chained imports and fix the logic for one-level renaming imports 2013-03-02 16:49:30 -08:00
bors
5aca7d6aef auto merge of #5137 : yjh0502/rust/empty_struct, r=nikomatsakis
The fix is straight-forward, but there are several changes
while fixing the issue.

1) disallow `mut` keyword when making a new struct

In code base, there are following code,

```rust
struct Foo { mut a: int };
let a = Foo { mut a: 1 };
```

This is because of structural record, which is
deprecated corrently (see issue #3089) In structural
record, `mut` keyword should be allowd to control
mutability. But without structural record, we don't
need to allow `mut` keyword while constructing struct.

2) disallow structural records in parser level
This is related to 1). With structural records, there
is an ambiguity between empty block and empty struct
To solve the problem, I change parser to stop parsing
structural records. I think this is not a problem,
because structural records are not compiled already.

Misc. issues

There is an ambiguity between empty struct vs. empty match stmt.
with following code,

```rust
match x{} {}
```

Two interpretation is possible, which is listed blow

```rust
match (x{}) {} //  matching with newly-constructed empty struct
(match x{}) {}  //  matching with empty enum(or struct) x
                //  and then empty block
```

It seems that there is no such code in rust code base, but
there is one test which uses empty match statement:
https://github.com/mozilla/rust/blob/incoming/src/test/run-pass/issue-3037.rs

All other cases could be distinguished with look-ahead,
but this can't be. One possible solution is wrapping with
parentheses when matching with an uninhabited type.

```rust
enum what { }
fn match_with_empty(x: what) -> ~str {
    match (x) { //use parentheses to remove the ambiguity
    }
}
```
2013-03-02 04:21:38 -08:00
bors
10faa521ae auto merge of #5188 : ben0x539/rust/doc-call-generic-fn, r=catamorphism
I have seen a few people confused on how to explicitly instantiate generic functions, since the syntax differs from C++'s and C#'s, which is probably where most people asking questions about generic functions are coming from. The only use of the `::<T>` syntax in the reference right now is in the section on paths, which is possibly not where someone trying to find out about generic functions is going to start looking. The tutorial doesn't mention it at all, but I think it's all right to make the reference a tiny bit more redundant and avoid stuffing the tutorial with syntax details.

----

The "Generic functions" subsection mentions that generic functions are instantiated based on context, so let's also mention right away (with a link to the #paths section) that an explicit form is available.

This also adds an example that explicitly instantiates a generic function to the function call expression section.
2013-03-02 01:00:41 -08:00
Jihyun Yu
95bc9ea26d Remove REC, change related tests/docs 2013-03-02 12:57:05 +09:00
Benjamin Herr
382143abd8 doc/rust.md: Demonstrate the f::<T>() syntax more often
The "Generic functions" subsection mentions that generic functions are
instantiated based on context, so let's also mention right away (with a
link to the #paths section) that an explicit form is available.

This also adds an example to the function call expression section that
explicitly instantiates a generic function.
2013-03-02 01:07:01 +01:00
Benjamin Herr
332c046029 docs/rust.md: Mention unit-like structs along with other struct types 2013-03-02 00:25:44 +01:00
Patrick Walton
2859c1ac6d librustc: Enforce cross-crate method privacy 2013-02-28 11:32:26 -08:00
bors
292e946163 auto merge of #5106 : pnkfelix/rust/fix-docs, r=graydon
...s.  I freely admit I have not run a "make check" on this (trivial) change.
2013-02-27 19:03:41 -08:00
Patrick Walton
8d7e6ef772 libsyntax: Forbid ~mut and ~const. rs=demuting 2013-02-27 09:40:15 -08:00
Alex Crichton
df481473da Fix unused imports in the tutorials 2013-02-26 17:52:16 -05:00
bors
0e6d895ed8 auto merge of #5119 : Kimundi/rust/incoming, r=catamorphism
Removed deprecated `str()` functions in int-template.rs and uint-template.rs
2013-02-26 10:54:39 -08:00
Patrick Walton
c9dd917fad doc: Remove references to mut fields. rs=demuting 2013-02-26 10:02:36 -08:00
Marvin Löbel
42b0bacd76 Removed deprecated str() functions in int-template.rs and uint-template.rs 2013-02-26 16:38:30 +01:00
Felix S. Klock II
b8dd2d8c67 Fix typo in grammar: underscore, not minus, can appear amongst hex digits. 2013-02-25 17:30:02 +01:00
Brian Anderson
dab6a85230 core: Extract comm from pipes. #4742 2013-02-21 17:36:54 -08:00
Patrick Walton
c0defda499 librustc: Separate the rest of the trait bounds with + and stop parsing space-separated ones. rs=plussing 2013-02-21 08:29:48 -08:00
Marvin Löbel
34c39bb1c4 Rewrited section about rust tool 2013-02-19 22:19:19 +01:00
Marvin Löbel
8ee2d58683 Give the rust tool an own section in the tutorial. 2013-02-19 20:57:23 +01:00
Marvin Löbel
f684a8a56b Mention rust tool in the tutorial 2013-02-19 18:10:31 +01:00
bors
67ee95e943 auto merge of #5029 : mcpherrinm/rust/master, r=catamorphism
Added a newline to make header be a header.

(re-did pull request because I screwed up the last one)
2013-02-19 00:08:31 -08:00
Matthew McPherrin
b29476374b Missing newline causing title to not be a title 2013-02-18 23:22:36 -05:00
Armin Ronacher
99c4de7300 Fixed a typo in the documentation that points to the wrong macro (ident_to_str -> stringify) 2013-02-18 22:40:01 +00:00
Luqman Aden
178882c98f tests/tutorials: Get rid of move. 2013-02-15 02:49:55 -08:00
Nick Desaulniers
13fe167dbb remove die definition and use in doc tests 2013-02-14 17:33:16 -08:00
Chris Peterson
5a4695d407 update tutorial and manual to use new impl Trait for Type syntax 2013-02-13 23:19:27 -08:00
John Clements
6d09fc2cd8 removed reference to crate file keywords 2013-02-13 15:08:26 -08:00
Olivier Saut
4dec0d5192 Typo s/recusive/recursive/ 2013-02-08 11:45:47 +01:00
Brian Anderson
e08a805b30 Merge remote-tracking branch 'bstrie/rimov' into incoming
Conflicts:
	src/libsyntax/parse/parser.rs
	src/test/bench/graph500-bfs.rs
	src/test/bench/sudoku.rs
	src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs
	src/test/run-pass/empty-mutable-vec.rs
	src/test/run-pass/foreach-nested.rs
	src/test/run-pass/swap-2.rs
2013-02-04 11:58:30 -08:00
Brian Anderson
3b396d17d6 Merge remote-tracking branch 'thestinger/old_map' into incoming
Conflicts:
	src/test/bench/core-map.rs
2013-02-03 17:56:49 -08:00
Marvin Löbel
af4972f3ce Fixed fmt!, tests, doc-tests. 2013-02-03 15:37:25 -08:00
Daniel Micay
319eeb1c79 rename map -> oldmap and mark it as deprecated
LinearMap is quite a bit faster, and is fully owned/sendable without
requiring copies. The older std::map also doesn't use explicit self and
relies on mutable fields.
2013-02-03 15:55:10 -05:00
Brian Anderson
9dc6938292 Merge remote-tracking branch 'nickdesaulniers/issue4524' into nocomm1 2013-02-01 11:18:58 -08:00
Nick Desaulniers
7868b6bf55 Remove fail keyword from lexer & parser and clean up remaining calls to
fail

Fix merge conflicts - Issue 4524
2013-02-01 00:15:42 -08:00
John Clements
53688addaa test cases, cleanup 2013-01-31 23:05:12 -08:00
Brian Anderson
f0c9927c26 Merge pull request #4708 from dforsyth/add_if
add if to borrowed ptr tutorial
2013-01-31 17:01:32 -08:00
Niko Matsakis
0682ad0eb9 Finalize moves-based-on-type implementation.
Changes:

- Refactor move mode computation
- Removes move mode arguments, unary move, capture clauses
  (though they still parse for backwards compatibility)
- Simplify how moves are handled in trans
- Fix a number of illegal copies that cropped up
- Workaround for bug involving def-ids in params
  (see details below)

Future work (I'll open bugs for these...):

- Improve error messages for moves that are due
  to bindings
- Add support for moving owned content like a.b.c
  to borrow check, test in trans (but I think it'll
  "just work")
- Proper fix for def-ids in params

Def ids in params:

Move captures into a map instead of recomputing.

This is a workaround for a larger bug having to do with the def-ids associated
with ty_params, which are not always properly preserved when inlining.  I am
not sure of my preferred fix for the larger bug yet.  This current fix removes
the only code in trans that I know of which relies on ty_param def-ids, but
feels fragile.
2013-01-31 12:09:00 -08:00
David Forsythe
72454f401e add if to borrowed ptr tutorial 2013-01-31 09:10:15 -08:00
Ben Striegel
aa9c28ef47 Repair RIMOV damage to doc tests 2013-01-31 00:21:36 -05:00
Ben Striegel
743c1c37e8 RIMOV, round 11
Last bit of mut removal, manually cleaning up outliers
2013-01-30 23:19:40 -05:00
Patrick Walton
366812a5c3 librustc: Change self as a type to Self everywhere. r=brson 2013-01-30 19:52:45 -08:00
Felix S. Klock II
20af4d7361 Add expected failure annotation on "fixed" example to placate 'make check'. 2013-01-29 13:18:40 +01:00
Felix S. Klock II
2dda6d6f5d Formatting cleanup.
I had put a line break in to try to stress the binding of mycircle,
but generated document looks cleaner without newline.
2013-01-29 11:28:52 +01:00
Felix S. Klock II
6cabe2b902 Fixed two examples of erroneous code so their errors match expectation.
1. In the first case, the previous code was failing during type inference
   due to mismatched structure.  Fix is to use the X structure at both
   points in the code.

2. In the second case, a naive transcription that subsitutes *nothing*
   in for the omitted statements signified by "..." will actually
   compile without an error.  Furthermore, any pure code could also be
   substituted for the ellipsis and the code would compile (as the
   text already states).  So to make the example more illustrative, it
   would be better to include an impure callback, which makes the
   potential for aliasing immediately obvious to the reader.
2013-01-29 11:28:52 +01:00
Felix S. Klock II
88bec09e63 Fix two code examples in main rust tutorial.
1. The section on trait definitions of static methods should include
   a trait with a static method in the generated document.

2. The section on trait inheritance had a expression that appears
   nonsensical ("let mycircle = @mycircle") in the generated document.
   The text would be clearer (IMO) if we continued with the running
   example of CircleStruct.
2013-01-29 11:28:52 +01:00
John Clements
18f1dba510 doc typo 2013-01-25 11:58:33 -08:00
Tim Chevalier
f3ec278e46 Merge pull request #4609 from sonwow/keyword-super
Make `super` a keyword
2013-01-24 11:17:52 -08:00
Graydon Hoare
e8f4da78e7 doc: fix tutorial unsafe blocks, r=burningtree. 2013-01-23 23:21:47 -08:00
Youngsoo Son
4b2aa286d8 Make super a keyword 2013-01-24 16:07:04 +09:00
Tim Chevalier
1d1b81143b Merge pull request #4589 from sanxiyn/doc-vec-match
doc: Document pattern matching on vectors
2013-01-23 14:38:34 -08:00
Seo Sanghyeon
92e52bc95e doc: Document pattern matching on vectors 2013-01-23 22:26:47 +09:00
Seo Sanghyeon
c379d96c67 doc: Document mutable function arguments 2013-01-23 17:20:36 +09:00
Tim Chevalier
e856606c0d Merge pull request #4562 from lbonn/loglevel
doc: fix log level ids
2013-01-21 19:53:24 -08:00
Tim Chevalier
3fac6f8b54 Revert "doc: Fix tutorial-ffi xfail-tests and update SHA1() to use size_t"
This reverts commit 50c8cbb25a.
2013-01-21 19:39:45 -08:00
Chris Peterson
50c8cbb25a doc: Fix tutorial-ffi xfail-tests and update SHA1() to use size_t 2013-01-20 22:56:45 -08:00
Chris Peterson
0b6487cf2c doc: Fix tutorial typo and remove unnecessary xfail-test 2013-01-20 22:56:45 -08:00
Chris Peterson
49e466f1e1 doc: Fix manual's link attributes example code 2013-01-20 22:56:45 -08:00
Laurent Bonnans
c3c90d2e4c doc: fix log level ids 2013-01-21 15:49:46 +09:00
Patrick Walton
9c24c6221e Merge pull request #4440 from pcwalton/tutorial
doc: Fold information from the memory model interlude in the tutorial elsewhere
2013-01-16 12:30:14 -08:00
Peter Williams
e4571446f9 doc: Fix spelling error in macro tutorial 2013-01-12 18:36:46 -05:00
Patrick Walton
f0fa67d6bf doc: Fold information from the memory model interlude in the tutorial elsewhere 2013-01-10 21:24:55 -08:00
John Clements
08275826ca corrected imprecision in description of mutable fields 2013-01-10 20:48:49 -08:00
Brian Anderson
22ed202b61 tutorial: Remove memory model section 2013-01-10 15:22:22 -08:00
Patrick Walton
2db3abddcd librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc 2013-01-08 22:02:35 -08:00
Patrick Walton
44ab00ee37 Revert "librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc"
This reverts commit a8d37af247.
2013-01-08 19:29:16 -08:00
Patrick Walton
a8d37af247 librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc 2013-01-08 19:27:57 -08:00
Brian Anderson
62c7ca64f0 Merge remote-tracking branch 'superoptimizer/master' into HEAD
Conflicts:
	doc/tutorial.md
2013-01-04 17:31:12 -08:00
Mark Lacey
d94e9c0b04 Fix two minor issues in the tutorial.
Remove an extraneous 'then', and replace 'second' with 'first'.
2013-01-03 22:36:35 -08:00
Chris Peterson
16797fd525 doc: Fix some typos in the tutorial and reference manual 2012-12-31 13:46:52 -08:00
Tim Chevalier
cfb33fc23c Merge pull request #4311 from FranklinChen/fix-macro-tutorial
Remove semicolons at the end of macro_rules! definitions that cause compile failure
2012-12-30 15:53:18 -08:00
Andrew Paseltiner
4cb9247e3b doc: make small corrections to tutorial 2012-12-30 16:09:34 -05:00
Patrick Walton
4be7310be0 doc: Fix explanation and example of struct-like enum variants. rs=busted 2012-12-30 07:09:14 -08:00
Patrick Walton
4b3dd4b920 doc: Fix some broken tutorial examples. rs=bustage 2012-12-29 21:52:51 -08:00
Franklin Chen
6e7cf87101 Remove spurious semicolons at the end of macro_rules! definitions. 2012-12-29 01:37:00 -05:00
Tim Chevalier
09bb07bed9 Unfortunately, we can't embed cross-crate tests in the tutorial...
...as far as I know, anyway, so I xfailed this tutorial test.
2012-12-24 18:29:02 -08:00
Eric J. Holmes
8223a1278d Fix example. 2012-12-24 18:29:02 -08:00
Eric J. Holmes
40a3e20bbb Fix example. 2012-12-24 18:29:02 -08:00
Graydon Hoare
329316ce15 bump 0.5 => 0.6, redirect some URLs in docs. 2012-12-24 18:29:01 -08:00
Tim Chevalier
3cc0fbca5d doc: mention struct-like enum variants /cc #4217 2012-12-24 15:59:37 -08:00
Tim Chevalier
cf768ce1f4 Unfortunately, we can't embed cross-crate tests in the tutorial...
...as far as I know, anyway, so I xfailed this tutorial test.
2012-12-24 14:07:37 -08:00
Tim Chevalier
b1b0c297a4 Merge pull request #4249 from graydon/0.6-bump
bump 0.5 => 0.6, redirect some URLs in docs.
2012-12-23 13:47:11 -08:00
Tim Chevalier
50bb838389 Merge pull request #4272 from ejholmes/crates-minimal-example
Fix example in 13.3.
2012-12-23 13:38:48 -08:00
Eric J. Holmes
889e560ca5 Fix example. 2012-12-23 13:30:23 -08:00
Eric J. Holmes
0100b02b3a Fix example. 2012-12-23 13:26:12 -08:00
Graydon Hoare
dbd36111fe bump 0.5 => 0.6, redirect some URLs in docs. 2012-12-21 15:35:49 -08:00
Brian Anderson
8b98e5a296 doc: Mention argument bindings in manual 2012-12-20 17:01:38 -08:00
Brian Anderson
45e62d0a14 tutorial: Discuss argument patterns 2012-12-20 16:51:37 -08:00
Brian Anderson
d098faa855 tutorial: Clarify description of trait inheritance 2012-12-20 16:36:13 -08:00
Brian Anderson
21c9d0858b tutorial: Fix broken examples 2012-12-20 16:32:44 -08:00
Brian Anderson
f26df46a12 tutorial: Re-remove core:: prefix from some examples 2012-12-20 16:32:44 -08:00
Brian Anderson
d38f784da6 tutorial: Typo 2012-12-20 16:32:44 -08:00
Brian Anderson
b7354f114d tutorial: Clean up language about syntax extensions 2012-12-20 16:32:43 -08:00
Brian Anderson
30fac74bf3 tutorial: Try to fit the early discussion of :: in better 2012-12-20 16:32:43 -08:00
Brian Anderson
cbddd5ed34 tutorial: Remove some trivia about operators 2012-12-20 16:32:43 -08:00
Brian Anderson
2f615dc965 tutorial: Editing 2012-12-20 16:32:43 -08:00
Brian Anderson
e4b3915393 tutorial: Fix example in syntax basics section 2012-12-20 16:32:43 -08:00
Brian Anderson
1983e540e6 tutorial: Update scope 2012-12-20 16:32:43 -08:00
Brian Anderson
072017e5ef tutorial: Mention rusti with other tools 2012-12-20 16:32:43 -08:00
Brian Anderson
201039cf0d tutorial: Discuss the primitive types along with their literals 2012-12-20 16:32:43 -08:00
Brian Anderson
107b2e5348 tutorial: It doesn't matter that Rust identifiers are the same as C 2012-12-20 16:32:43 -08:00
Brian Anderson
36e2c100bf tutorial: Integrate constants into main intro text 2012-12-20 16:32:43 -08:00
Brian Anderson
e06ca65244 tutorial: Remove the section on constants
We can mention that constants are declared with 'const' in one line.
Don't need an entire section.
2012-12-20 16:32:42 -08:00
Brian Anderson
0b0b50aaae tutorial: Remove the entire 'Types' section
It's not interesting

/cc: #4217
2012-12-20 16:32:42 -08:00
Brian Anderson
64681213af tutorial: Remove mutable vector syntax 2012-12-20 16:32:42 -08:00
Brian Anderson
e0f9f89c65 tutorial: Remove confusing discussion about semicolons
This takes up a lot of words and isn't very clear. The previous
discussion gets they idea across.

/cc: #4217
2012-12-20 16:32:42 -08:00
Brian Anderson
9cbc0fd0d9 tutorial: Fix formatting 2012-12-20 16:32:42 -08:00
Brian Anderson
a24b9e038a tutorial: update intro 2012-12-20 16:32:42 -08:00
Brian Anderson
f15ccc06f0 tutorial: Update for moves based on type
/cc: #4217
2012-12-20 16:32:42 -08:00
Brian Anderson
41870da5ad tutorial: Typos 2012-12-20 16:32:42 -08:00
Brian Anderson
191b328f31 tutorial: Move method discussion after closures, before generics
/cc: #4217
2012-12-20 16:32:42 -08:00
Brian Anderson
af5cd341d3 Move mast static method to the section on methods
/cc: #4217
2012-12-20 16:32:42 -08:00
Brian Anderson
42ab33e572 Use explicit self in rest of tutorial
/cc: #4217
2012-12-20 16:32:42 -08:00
Brian Anderson
171e6a16f7 tutorial: Rewrite method section to deal with explicit self
Has to be moved until after the pointer discussion.

/cc: #4217
2012-12-20 16:32:41 -08:00
Brian Anderson
7d2c2dbf4b tutorial: Reorder sections on traits
/cc: #4217
2012-12-20 16:32:41 -08:00
Brian Anderson
850050b7df doc: 'trait constraints' -> 'inheritance'. Expand
/cc: #4217
2012-12-20 16:32:41 -08:00
Graydon Hoare
66aadecfee doc: describe the Drop trait. cc: #4217 2012-12-20 16:26:11 -08:00
Tim Chevalier
8554d5e710 doc: Mention tuple structs
/cc: #4217
2012-12-19 21:52:03 -07:00
Tim Chevalier
b99a2542f3 docs: mention static methods
/cc #4217
2012-12-19 21:32:19 -07:00
Tim Chevalier
2d313fe501 Update docs to mention trait constraints; also fix failing doc tests
/cc #4217
2012-12-19 20:38:28 -07:00
Brian Anderson
6742c982a4 Bump version numbers in docs 2012-12-19 18:03:03 -08:00
Graydon Hoare
e0072e39a7 doc: structure expressions. cc: #4217 2012-12-19 17:24:19 -08:00
Graydon Hoare
46766974c7 doc: mention moved and copied types. cc: #4217 2012-12-19 16:55:34 -08:00
Isaac Aggrey
63232d6cf1 Fix doc typo 2012-12-19 12:46:24 -06:00
Brian Anderson
263136d389 'trait instance' -> 'object' 2012-12-18 17:03:56 -08:00
Brian Anderson
80a4769318 Update tutorial on generics. #4217 2012-12-18 16:28:40 -08:00
Graydon Hoare
6d4621d85f doc: a little more material on object types, part of #4217. 2012-12-18 14:37:18 -08:00
Paul Stansifer
7c103f2da9 Add a section to the macro tutorial about recursive macros. 2012-12-16 18:45:54 -05:00
Paul Stansifer
2b5e81c464 Reword some things in the macro tutorial. 2012-12-16 18:45:54 -05:00
Brian Anderson
d4daa78aa3 Update docs for crate file changes 2012-12-15 19:55:25 -08:00
Brian Anderson
e67190a0d2 Display the full TOC in the manual. Closes #4194 2012-12-14 18:06:21 -08:00
Brian Anderson
b0fc222fda Fix broken tests 2012-12-14 16:36:32 -08:00
Tim Chevalier
47faeb9228 [docs] Note that types and modules share the same namespace 2012-12-14 15:42:34 -08:00
Brian Anderson
80ef7243ea Remove spawn_listener, spawn_conversation
These are not needed in a pipe-based Rustiverse
2012-12-14 14:59:32 -08:00
Brian Anderson
55c9cf72e3 Merge pull request #4181 from andrew-d/andrew-doc-fix1
Fix example in docs
2012-12-13 17:28:23 -08:00
Andrew Dunham
08b1c841da Rename "to_str" to "make_string" in the docs
There's already a "to_str" impl for string, so it fails here.
2012-12-13 20:07:58 -05:00
Brian Anderson
fa4fbd51f6 Update docs for kind name changes 2012-12-13 15:52:50 -08:00
Tim Chevalier
0138d87f8f Document pub use foo::* in the reference manual
r=brson

Closes #3788
2012-12-12 16:38:36 -08:00
Tim Chevalier
213773ccb2 Fix tasks tutorial tests 2012-12-12 13:38:19 -08:00
Graydon Hoare
645bd98b60 doc: add missing decls to example, r=burningtree. 2012-12-11 13:43:14 -08:00
Tim Chevalier
eb21ced467 Discuss module syntax earlier in the tutorial
as per #3578
2012-12-11 11:23:20 -08:00
Tim Chevalier
65a1287f53 Discuss the Option type a bit in the tutorial
as per #3577
2012-12-11 11:23:20 -08:00
Lindsey Kuper
1ba9419e6c Tutorial typo fixes 2012-12-10 15:59:18 -05:00
Patrick Walton
eba4dadc54 doc: Fix broken doc test. rs=bustage 2012-12-08 11:47:03 -08:00
Tim Chevalier
2c2398ca0d Xfail broken tests 2012-12-07 23:42:58 -08:00
Graydon Hoare
bbc04dbb24 doc: fix busted doctest, r=burningtree. 2012-12-07 14:40:56 -08:00
Tim Chevalier
b4501f4c64 Document pattern ranges a little more
Patches for further documentation of them welcome, but this
is good enough for now.

Closes #1107
2012-12-06 21:52:50 -08:00
Paul Stansifer
3af757631e Be a bit more explicit about the nature of macro RHSes. 2012-12-06 15:01:40 -08:00
Paul Stansifer
d0c2d6c54e Update macro tutorial to recognize item/statement macros and be clearer
about invocation location vs. interpolation location.
2012-12-06 15:01:17 -08:00
Brian Anderson
946427b562 manual: Clarify that Drop types cannot be Copy 2012-11-30 11:23:22 -08:00
Brian Anderson
d1c558394f Fix tutorial's use of Drop 2012-11-29 16:23:24 -08:00
Paul Stansifer
a88f9ac732 Macros can now also be stmts and items. 2012-11-29 12:09:11 -08:00
Damien Grassart
9f290b5669 Fix sample code in the tutorial 2012-11-26 14:41:29 -08:00
Tim Chevalier
e454a47bf2 [tutorial] Use a less confusing closure example
Closes #3996
2012-11-24 09:28:34 -08:00
Brian Anderson
8f22582e9f Fix breakage. Expand const examples in manual 2012-11-19 23:20:37 -08:00
Jesse Jones
ca332a68fa Added optional pub to use_decl EBNF. 2012-11-18 18:28:05 -08:00
Jesse Jones
76712476c2 Slightly better description of macro designators.
Closes #3378
2012-11-18 18:25:06 -08:00
Jesse Jones
a24da7e254 Discuss the types that may be used with const items.
Also removed vector example that doesn't compile. IMO closes #3341.
2012-11-18 17:05:24 -08:00
Jesse Jones
a1bf759783 Added brief discussion of static trait methods.
Closes #3339
2012-11-18 15:49:53 -08:00
Jesse Jones
57c203ef7f Documented copy, ref, move in patterns.
Closes #3337
2012-11-18 15:26:12 -08:00
Jesse Jones
e46de5381b Moved the matching structs example next to the prose talking about struct matching 2012-11-18 15:15:12 -08:00
Jesse Jones
67d421d62d Document [0, ..8] vector syntax.
Closes #3336
2012-11-18 11:36:09 -08:00
Jesse Jones
d106ef88e6 Improved attribute section, mostly by mentioning lint attributes.
Closes #2769
2012-11-18 09:23:09 -08:00
Jesse Jones
d701fcd8a5 Added a readme explaining how to generate html from markdown docs w/o node 2012-11-18 09:08:31 -08:00
Tim Chevalier
12a4130749 Typo 2012-11-15 19:36:48 -08:00
Cat's Eye Technologies
7c35f7ed04 Minor grammatical edits; use preferred nomenclature consistently. 2012-11-11 16:19:40 +00:00
Patrick Walton
2904095570 rustc: Implement the Drop trait. r=brson 2012-11-07 12:34:32 -08:00
Brian Anderson
ed48e76e77 Fix typo in borrowed pointer tutorial. Closes #3876 2012-10-29 13:52:05 -07:00
Tim Chevalier
2ab614f356 Document labeled break and continue in the reference manual
r=brson
2012-10-26 15:00:55 -07:00
Tim Chevalier
0ef75a6965 Document how the compiler disambiguates variable patterns from variant patterns
r=brson
Closes #3851
2012-10-25 15:03:33 -07:00
Tim Chevalier
19dae8dae1 Remove remaining mentions of <- from docs 2012-10-23 12:13:09 -07:00
Tim Chevalier
804c608f01 Remove binary move from the docs 2012-10-23 12:10:03 -07:00
Brian Anderson
5fc4e51ab7 docs: Remove unfinished sentence in manual. Closes #3806 2012-10-22 13:12:16 -07:00
Paul Stansifer
4edb881124 Talk about ends, rather than means, in macro tutorial introduction. 2012-10-20 21:54:25 -04:00
Paul Stansifer
0f2fc71d79 Add examples to the parsing limitations section of the macro tutorial.
(Thanks to bstrie for pointing them out!)
2012-10-17 21:40:39 -04:00
Ben Striegel
f7ce3dc55f Extraneous sigil patrol: turn &[] literals into [] 2012-10-17 11:19:38 -07:00
Ben Striegel
5e1d0bab80 Sigil patrol: change fn@ fn& fn~ to @fn &fn ~fn
This also involves removing references to the old long-form closure
syntax, which pcwalton alleges is deprecated and which was never updated
for the new forms, e.g. `@fn() {}` is illegal.
2012-10-17 11:19:38 -07:00
Ben Striegel
e94e82cb8e Extraneous sigil patrol: ~"string literals" 2012-10-17 11:19:38 -07:00
Niko Matsakis
a92c3db0b3 add missing pub from multifile example in sec 12.3 2012-10-16 20:20:18 -07:00
Tim Chevalier
ea5e3d21ff Make moves explicit in doc examples
Had to remove the buffalo example. It was awkward to update for
explicit moves.
2012-10-12 20:43:37 -07:00
Tim Chevalier
45d1cd83ab Copyedit "Items and attributes" section in docs
Most notably, I removed the "foldl" example in the section on pure functions,
as IIRC this is no longer something you need an unsafe block for
(pure functions are as pure as their arguments). Feel free to add
an example where an unsafe block really is needed.
2012-10-12 12:02:08 -07:00
Brian Anderson
39c0d3591e Merge pull request #3734 from dbp/tutorial-fixes
tutorial: add note about mutability of vectors
2012-10-11 21:01:16 -07:00
Daniel Patterson
c33bff9557 tutorial: add note about mutability of vectors 2012-10-11 23:13:04 -04:00
Tim Chevalier
91315c3c2f manual: Lightly copyedit the crates section 2012-10-11 20:09:41 -07:00
Tim Chevalier
bb4dd06307 manual: Lightly copyedit the macros section 2012-10-11 20:03:24 -07:00
Tim Chevalier
140d16ac58 Fix tutorial-ffi tests 2012-10-11 19:45:04 -07:00
Graydon Hoare
5bca5f7c54 manual: fix one more nit. 2012-10-11 19:39:21 -07:00
Graydon Hoare
588d97d80e manual: fix accidentally broken test. 2012-10-11 19:30:43 -07:00
Graydon Hoare
13ea16152d manual: remove as many ~[] literals as possible. 2012-10-11 19:25:09 -07:00
Graydon Hoare
d81d4f1f3c manual: remove as many ~"" literals as possible. 2012-10-11 19:22:53 -07:00
Graydon Hoare
0b1a401bb7 manual: fix bullet list. 2012-10-11 19:15:40 -07:00
Graydon Hoare
d471e24214 manual: remove description of references (modes) from memory-slots section. 2012-10-11 19:12:35 -07:00
Graydon Hoare
70909533f0 manual: rewrite the section on type kinds. 2012-10-11 19:07:38 -07:00
Graydon Hoare
9bbff50c14 manual: fix various examples. 2012-10-11 18:18:53 -07:00
Graydon Hoare
089e257769 manual: capitalize more examples properly. 2012-10-11 18:18:53 -07:00
Graydon Hoare
9ea5e6a3b2 manual: fix vec and str types to discuss definite / indefinite size. 2012-10-11 18:18:53 -07:00
Graydon Hoare
45dc69d887 manual: example fixup. 2012-10-11 18:18:53 -07:00
Graydon Hoare
196cc0265c manual: add 'item', remove statement that built-in types are keywords. 2012-10-11 18:18:53 -07:00
Graydon Hoare
a1c831be25 manual: avoid describing 'assert' as 'like check', note future removal. 2012-10-11 18:18:53 -07:00
Graydon Hoare
73d4417dc7 manual: remove 'analogy' between return and return. meaningless. 2012-10-11 18:18:53 -07:00
Graydon Hoare
544d36bc4d manual: fixes to match expression examples and explanation. 2012-10-11 18:18:53 -07:00
Graydon Hoare
533cce8050 manual: remove unusual production name in match-expr grammar. 2012-10-11 18:18:53 -07:00
Graydon Hoare
1d69b81eef manual: "to" -> ".." 2012-10-11 18:18:53 -07:00
Graydon Hoare
515f88f1c1 manual: rewrite for-expression section to reflect this year's definition. 2012-10-11 18:18:53 -07:00
Graydon Hoare
fd85a0000a manual: add section on do-expressions. 2012-10-11 18:18:53 -07:00
Graydon Hoare
1a885f6be1 manual: add section on lambda expressions. 2012-10-11 14:42:11 -07:00
Graydon Hoare
2bb141c1f9 manual: remove mention of do-while loops. 2012-10-11 14:20:40 -07:00
Graydon Hoare
04e6b09c58 manual: remove mention of >>>. 2012-10-11 14:19:48 -07:00
Graydon Hoare
44f8a8ec5a manual: remove 'trivial cast', it's an unused definition. 2012-10-11 14:18:52 -07:00
Graydon Hoare
1d47c0a830 manual: note overloading and traits for comparison ops. 2012-10-11 14:18:52 -07:00
Graydon Hoare
eff4a36b3e manual: mention overloading, traits on the arithmetic and bitwise operators. 2012-10-11 14:18:52 -07:00
Graydon Hoare
edf493f07b manual: fix exponents on number types. 2012-10-11 14:18:52 -07:00
Graydon Hoare
3a2e9e404a manual: s/unique/owned/, s/shared/managed/, fix rval/lval more. 2012-10-11 14:18:52 -07:00
Tim Chevalier
41bce91cb8 Fix tutorial link to tasks
Closes #3715
2012-10-11 14:17:59 -07:00
Graydon Hoare
c87ff5e29e manual: remove box-specific language. 2012-10-11 13:13:58 -07:00
Graydon Hoare
382e85c14f manual: "with" -> ".." for FRU. 2012-10-11 13:12:29 -07:00
Graydon Hoare
2c34ffa26f manual: link to expressions in lval/rval section. 2012-10-11 13:11:21 -07:00
Graydon Hoare
c46706fffd manual: add borrow operator to symbolic unary operator list; mention copy and move. 2012-10-11 13:11:07 -07:00
Graydon Hoare
e257f390e1 manual: add section for unary move expressions. 2012-10-11 13:10:43 -07:00
Graydon Hoare
009cf535a4 manual: add section for path expressions. 2012-10-11 13:10:20 -07:00
Graydon Hoare
43fd84a607 Fix doctest. 2012-10-11 12:49:52 -07:00
Graydon Hoare
25d8ca153e manual: pluralize; decls can introduce multiple names. 2012-10-11 12:25:25 -07:00
Graydon Hoare
78f29f2b14 manual: remove vestigial mention of tasking from definition of statement (long story, been there since first public release). 2012-10-11 12:21:32 -07:00
Graydon Hoare
c2fd04f66a manual: s/Self type/Self types/. 2012-10-11 12:12:31 -07:00
Graydon Hoare
a8e1d83103 manual: remove all mention of constraints. 2012-10-11 12:10:01 -07:00
Graydon Hoare
c4237db60e manual: capitalize examples, remove mention of named impls, change RC -> managed, clarify language. 2012-10-11 12:07:02 -07:00
Graydon Hoare
06a17a7ce5 manual: disambiguate field expressions from method-call expressions. 2012-10-11 11:57:12 -07:00
Graydon Hoare
d81196ce96 manual: improve description of traits. 2012-10-11 11:47:46 -07:00
Graydon Hoare
9cba4af243 manual: describe structs, split out handling of recursion from enums, deprecate records. 2012-10-11 11:47:27 -07:00
Graydon Hoare
0673b49b05 manual: remove mention of tags, now very obsolete. 2012-10-11 10:43:18 -07:00
Graydon Hoare
dfd00ec8a8 manual: link to kinds, remove kind-list. 2012-10-11 10:42:46 -07:00
Graydon Hoare
bc68a88593 manual: improve description of unsafe functions. 2012-10-11 10:41:24 -07:00
Graydon Hoare
9e6df28277 manual: capitalize 'Copy'. 2012-10-11 10:38:07 -07:00
Graydon Hoare
a2cace473b manual: remove a mode. 2012-10-11 10:36:37 -07:00
Graydon Hoare
c9cee7c2af Reorder function sections. 2012-10-11 10:33:32 -07:00
Graydon Hoare
860573e3e0 Reword para on diverging functions. 2012-10-11 10:31:57 -07:00
Graydon Hoare
012bb7de5b Typo: an -> a. 2012-10-11 10:23:24 -07:00
Tim Chevalier
39acb06503 Copyedit sections 11-13 of the tutorial. That's all, folks! 2012-10-10 21:29:25 -07:00
Tim Chevalier
6d250517ed Copyedit sections 9 and 10 of the tutorial 2012-10-10 21:06:22 -07:00
Tim Chevalier
7582a482c6 Copyedit sections 7 and 8 of the tutorial 2012-10-10 20:52:20 -07:00
Tim Chevalier
1a8b00a03a Copyedit sections 5 and 6 of the tutorial 2012-10-10 20:35:33 -07:00
Tim Chevalier
d7b8512eae Copyedit section 4 of tutorial 2012-10-10 20:08:08 -07:00
Tim Chevalier
6627ac6623 Copyedit section 3 of tutorial 2012-10-10 19:32:11 -07:00
Tim Chevalier
38ccaed4ce Copyedit sections 1 and 2 of tutorial 2012-10-10 19:05:13 -07:00
Brian Anderson
b7b2217976 Update tutorial install instructions 2012-10-10 17:56:23 -07:00
Graydon Hoare
3d31a6b899 Remove several references to resources; add section for Constants. 2012-10-10 17:18:12 -07:00
Graydon Hoare
cad6733db5 Remove mention of res_item, add const_item. Reword a bit. 2012-10-10 17:18:12 -07:00
Graydon Hoare
ff37c65f5c Remove mention of argv. 2012-10-10 17:18:12 -07:00
Graydon Hoare
304a2455c0 Mention deprecation of crate files. 2012-10-10 17:18:12 -07:00
Graydon Hoare
c639f44adb Tidy up macro_rules grammar. 2012-10-10 17:18:12 -07:00
Graydon Hoare
58807b0500 Mention doc comments. 2012-10-10 17:18:12 -07:00
Graydon Hoare
19f1c3174f Remove mention of block-comment nesting. 2012-10-10 17:18:12 -07:00
Graydon Hoare
8f9bb5d203 Fix markings about future in manual, remove out-of-date marker. 2012-10-10 17:18:12 -07:00
Graydon Hoare
d81a7aba3c Minor fixes to the runtime and scheduling part of manual. 2012-10-10 17:18:12 -07:00
Graydon Hoare
056fc13e10 Mention other languages. 2012-10-10 17:18:12 -07:00
Tim Chevalier
de4687c378 Copyedit sections 9-11 of the borrowed pointer tutorial (last edits from me) 2012-10-10 15:04:42 -07:00
Tim Chevalier
448c349234 Copyedit sections 7 and 8 of the borrowed pointer tutorial 2012-10-10 14:49:07 -07:00
Tim Chevalier
ae861f0288 Copyedit sections 5 and 6 of the borrowed pointer tutorial 2012-10-10 14:29:16 -07:00
Tim Chevalier
f4a6b84a65 Copyedit sections 3 and 4 of the borrowed pointer tutorial 2012-10-10 13:56:42 -07:00
Patrick Walton
d9317a174e doc: Tweak the wording of the memory model goals 2012-10-09 21:39:18 -07:00
Patrick Walton
6da09c3b43 doc: Fix some inaccuracies in the tutorial.
* Pointers can refer to stack objects as well as heap objects.

* Non-managed types can be cyclic if an arena is used.
2012-10-09 21:24:28 -07:00
Graydon Hoare
f016fd43f8 Remove section on 'note' expressions, they won't exist. 2012-10-09 20:05:41 -07:00
Graydon Hoare
fe1165f561 Tighten up language surrounding declarations, assignments, inits, lvals. 2012-10-09 20:05:41 -07:00
Tim Chevalier
a46db484ab Copyedit first two sections of borrowed pointer tutorial 2012-10-09 17:12:34 -07:00
Tim Chevalier
cd6f24f9d1 Copyedit FFI tutorial 2012-10-09 16:46:16 -07:00
Tim Chevalier
4b3be853af Copyedit tasks tutorial 2012-10-09 16:14:55 -07:00
Graydon Hoare
28cf16a304 Fix tutorial breakage. 2012-10-09 15:33:24 -07:00
Tim Chevalier
0aa42bc91e Copyedit the macro tutorial
I hope I haven't introduced any grievous errors :-)
2012-10-09 14:40:23 -07:00
tav
4c968f47e0 doc: Remove duplicate word typo in the tutorial. 2012-10-09 01:30:46 +01:00
Brian Anderson
f5c3af1c1a Clean up unfinished portions of task tutorial 2012-10-07 21:29:47 -07:00
Brian Anderson
2a41abb9ef Work on the tutorial section on 'do' 2012-10-07 01:52:06 -07:00
Brian Anderson
07fb35227b Tutorial 2012-10-07 01:06:07 -07:00
Brian Anderson
f0c4140dd0 More tutorial tweaking 2012-10-06 22:57:40 -07:00
Brian Anderson
c6330036a4 'The' Rust Language Tutorial 2012-10-06 22:47:26 -07:00
Brian Anderson
b6443519c8 Remove some redundant info from tutorial 2012-10-06 22:45:48 -07:00
Brian Anderson
fe5526f49c docs: Fix capitalization of section title 2012-10-06 22:40:12 -07:00
Brian Anderson
ba26dc50ce docs: Remove more uses of records 2012-10-06 22:35:08 -07:00
Jacob Harris Cryer Kragh
0b2ffa5692 tutorial: Add missing struct name 2012-10-06 22:33:09 -07:00
Brian Anderson
d5d7741247 Overhaul mods and crates section of tutorial 2012-10-06 22:24:15 -07:00
Brian Anderson
f5c95de212 docs: Edit the into bullets 2012-10-06 20:23:38 -07:00
Brian Anderson
035cfcbe72 docs: Clean up trait and module examples 2012-10-06 15:48:06 -07:00
Tim Chevalier
f96a2a2ca1 Remove by-mutable-ref mode from the compiler
and test cases. Closes #3513
2012-10-05 22:45:50 -07:00
Brian Anderson
e90425999e docs: Remove some 'extern mod std's from tutorial 2012-10-05 19:51:59 -07:00
Brian Anderson
95d9c8699c docs: Simplify a tutorial example 2012-10-05 19:51:59 -07:00
Graydon Hoare
0dd4b42a00 Fix nits in logging section. 2012-10-05 19:06:25 -07:00
Graydon Hoare
2f50607d88 Reword memory-ownership section. 2012-10-05 19:06:25 -07:00
Graydon Hoare
df98cb8e88 Replace box types section with pointer types section. 2012-10-05 19:06:24 -07:00
Graydon Hoare
e513bc9875 Minor reformatting. 2012-10-05 19:06:23 -07:00
Graydon Hoare
5947141aef Add section on unsafe functions, reword explanation on unsafe-overriding-purity. 2012-10-05 19:06:22 -07:00
Graydon Hoare
cb4c747e9f Add section on lvals, rvals and temps. 2012-10-05 19:06:21 -07:00
Graydon Hoare
6c2c694725 Rewrite the communication-between-tasks section completely. 2012-10-05 19:06:20 -07:00
Graydon Hoare
46371e1076 Remove port/chan-specific lifecycle terminology. 2012-10-05 19:06:20 -07:00
Brian Anderson
02c33f8d31 doc: Strings are vectors of u8, not [u8] 2012-10-05 18:42:48 -07:00
Brian Anderson
3077a2bfaf docs: Add a section on pointer dereferencing 2012-10-05 18:39:09 -07:00
Yasuhiro Fujii
cc51b6b576 fix escape 2012-10-05 12:41:00 -07:00
Brian Anderson
8b56287d60 docs: Fix example 2012-10-04 20:13:50 -07:00