1774 Commits

Author SHA1 Message Date
bors
2b01a37ec3 Auto merge of #21959 - dhuseby:bitrig-support, r=brson
This patch adds the necessary pieces to support rust on Bitrig https://bitrig.org
2015-02-21 09:20:48 +00:00
Brian Anderson
fcc21b36a3 docs: Explain static dispatch advantage more clearly 2015-02-20 11:41:39 -08:00
Brian Anderson
96be55376e book: Minor clarifications about strings 2015-02-19 18:39:38 -08:00
Steven Crockett
e0067f9852 docs: correct guessing game to mention old_io module instead of io
The text is referring to the io module despite the code using the old_io module.
2015-02-19 05:13:49 +00:00
Adam Jacob
cec404a066 Add documentation for else if to trpl
Adds an example of `else if` to the If section of The Rust Programming
Language.

r? @steveklabnik
2015-02-18 16:26:39 -08:00
Alex Crichton
1506b34e0c rollup merge of #22286: nikomatsakis/variance-4b
Conflicts:
	src/librustc/middle/infer/combine.rs
	src/librustc_typeck/check/wf.rs
2015-02-18 15:52:01 -08:00
Alex Crichton
231eeaa35b rollup merge of #22502: nikomatsakis/deprecate-bracket-bracket
Conflicts:
	src/libcollections/slice.rs
	src/libcollections/str.rs
	src/librustc/middle/lang_items.rs
	src/librustc_back/rpath.rs
	src/librustc_typeck/check/regionck.rs
	src/libstd/ffi/os_str.rs
	src/libsyntax/diagnostic.rs
	src/libsyntax/parse/parser.rs
	src/libsyntax/util/interner.rs
	src/test/run-pass/regions-refcell.rs
2015-02-18 15:48:40 -08:00
Niko Matsakis
9ea84aeed4 Replace all uses of &foo[] with &foo[..] en masse. 2015-02-18 17:36:03 -05:00
Alex Crichton
5250a82f79 rollup merge of #22497: nikomatsakis/suffixes
Conflicts:
	src/librustc_trans/trans/tvec.rs
2015-02-18 14:35:01 -08:00
Alex Crichton
b90e40718f rollup merge of #22484: riginding/master 2015-02-18 14:32:12 -08:00
Alex Crichton
1860ee521a std: Implement CString-related RFCs
This commit is an implementation of [RFC 592][r592] and [RFC 840][r840]. These
two RFCs tweak the behavior of `CString` and add a new `CStr` unsized slice type
to the module.

[r592]: https://github.com/rust-lang/rfcs/blob/master/text/0592-c-str-deref.md
[r840]: https://github.com/rust-lang/rfcs/blob/master/text/0840-no-panic-in-c-string.md

The new `CStr` type is only constructable via two methods:

1. By `deref`'ing from a `CString`
2. Unsafely via `CStr::from_ptr`

The purpose of `CStr` is to be an unsized type which is a thin pointer to a
`libc::c_char` (currently it is a fat pointer slice due to implementation
limitations). Strings from C can be safely represented with a `CStr` and an
appropriate lifetime as well. Consumers of `&CString` should now consume `&CStr`
instead to allow producers to pass in C-originating strings instead of just
Rust-allocated strings.

A new constructor was added to `CString`, `new`, which takes `T: IntoBytes`
instead of separate `from_slice` and `from_vec` methods (both have been
deprecated in favor of `new`). The `new` method returns a `Result` instead of
panicking.  The error variant contains the relevant information about where the
error happened and bytes (if present). Conversions are provided to the
`io::Error` and `old_io::IoError` types via the `FromError` trait which
translate to `InvalidInput`.

This is a breaking change due to the modification of existing `#[unstable]` APIs
and new deprecation, and more detailed information can be found in the two RFCs.
Notable breakage includes:

* All construction of `CString` now needs to use `new` and handle the outgoing
  `Result`.
* Usage of `CString` as a byte slice now explicitly needs a `.as_bytes()` call.
* The `as_slice*` methods have been removed in favor of just having the
  `as_bytes*` methods.

Closes #22469
Closes #22470
[breaking-change]
2015-02-18 14:15:43 -08:00
Junseok Lee
8e0e87fc32 revised pointer example 2015-02-18 13:22:59 -08:00
Niko Matsakis
ef42c2befd Fallout: docs, elided examples often elided too much. 2015-02-18 10:25:13 -05:00
Niko Matsakis
8c34b26606 Update docs by dropping suffixes except where they served to instruct. 2015-02-18 09:09:14 -05:00
Ryan Riginding
b8527c07dc Fixed link in ffi documentation 2015-02-18 09:16:22 +01:00
Alex Crichton
665ea963d3 Test fixes and rebase conflicts 2015-02-17 19:42:28 -08:00
Alex Crichton
6ac3799b75 Test fixes and rebase conflicts 2015-02-17 17:27:46 -08:00
Alex Crichton
25ccf3c0da rollup merge of #22331: steveklabnik/guidelines
Fixes #19315

r? @aturon
2015-02-17 17:26:43 -08:00
Alex Crichton
311fc36a57 rollup merge of #22123: steveklabnik/doc_where_clauses
Closes #21859.
2015-02-17 15:13:42 -08:00
Steve Klabnik
01c520818c remove .gitignore 2015-02-17 12:30:07 -05:00
Manish Goregaokar
096b1052d0 fix doctest 2015-02-17 21:28:54 +05:30
Manish Goregaokar
09eb965903 Rollup merge of #22393 - kmcallister:macros-chapter , r=steveklabnik
This is a more introductory document, suitable for Part II. The arcane details move to an "Advanced macros" chapter in Part III.

Conflicts:
	src/doc/trpl/macros.md
2015-02-17 17:33:53 +05:30
Manish Goregaokar
4647d89205 Rollup merge of #22364 - Manishearth:rfc-572-forbid-attr, r=nikomatsakis
fixes #22203

r? @nikomatsakis

This breaks code that might be using attributes randomly, so it's technically a

[breaking-change]
2015-02-17 17:33:19 +05:30
Manish Goregaokar
9eed8b1c27 Rollup merge of #22410 - Reignbeaux:master, r=steveklabnik
I just stumbled on a typo and fixed it.
2015-02-17 17:33:19 +05:30
Manish Goregaokar
4a7eed1e01 Rollup merge of #22333 - caipre:patch-1, r=steveklabnik
The `Circle::grow` method multiplies the radius by a factor of 10, not 2.
2015-02-17 17:33:17 +05:30
Manish Goregaokar
2aa31827ed Rollup merge of #22296 - steveklabnik:gh21577, r=Gankro
Fixes #21577.
2015-02-17 17:33:17 +05:30
Manish Goregaokar
edac2a07c5 Rollup merge of #22282 - steveklabnik:gh5831, r=brson
This redux of CONTRIBUTING.md adds in more information, including
subsuming both compliment-bugreport.md and Note-development-policy
in the wiki.

I only glanced at the broad TOC of Note-development-policy, and did
not use the text as the basis for the re-write. This will then address
the last outstanding part of #5831.
2015-02-17 17:33:16 +05:30
Manish Goregaokar
2d94c4482d Rollup merge of #22027 - iblech:patch-1, r=steveklabnik
The first commit adds a short note which I believe will reduce worries in people who work with closures very often and read the Rust book for their first time.

The second commit consists solely of tiny typo fixes. In some cases, I changed "logical" quotations like

    She said, "I like programming".

to

    She said, "I like programming."

because the latter seems to be the prevalent style in the book.
2015-02-17 15:41:30 +05:30
Manish Goregaokar
a97ffa24d5 Rollup merge of #22413 - steveklabnik:gh22386, r=alexcrichton
Fixes #22386
2015-02-17 06:24:34 +05:30
Manish Goregaokar
901d2c7b0d Rollup merge of #22241 - kmcallister:macro-plugin-cleanup, r=sfackler 2015-02-17 06:23:41 +05:30
Manish Goregaokar
47803212e8 Rollup merge of #22392 - laijs:fix-reference-md-plugin-link, r=steveklabnik
book/syntax-extensions.html was renamed to book/plugins.html,
the link should be also updated.

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
2015-02-17 06:23:39 +05:30
Manish Goregaokar
adea99c5d9 Rollup merge of #22378 - jxcl:master, r=steveklabnik
The Rust Programming Language book has no explanation of what `i32` actually means. I have added an explanation for the first time the reader encounters this type.
2015-02-17 06:23:39 +05:30
Manish Goregaokar
47814a4b29 Rollup merge of #22377 - thiagooak:book-glossary, r=steveklabnik
@steveklabnik Trying out the Glossary idea.

Added the paragraph about 'complicated words' because I think it would be useful to those contributing to the book. Maybe this should not be here
2015-02-17 06:23:38 +05:30
Manish Goregaokar
fe3b6a1662 Rollup merge of #22368 - thiagooak:book-arity, r=steveklabnik
#21568
2015-02-17 06:23:37 +05:30
Manish Goregaokar
e0477fa7f9 Rollup merge of #22365 - serejkus:configs-link, r=steveklabnik
The book in "hello-world" tells that there are configs for some programs and gives a link to main repo's src/etc. Actually, these configs moved to separate repos some days ago. This PR adds a markdown file with links and moves "hello-world" link about editors to point directly to this new file.
2015-02-17 06:23:37 +05:30
Steve Klabnik
93633c9c5f fix up style guide .gitignore 2015-02-16 17:33:10 -05:00
Steve Klabnik
3f9b0999d1 clean up README 2015-02-16 17:32:12 -05:00
Ingo Blechschmidt
918d097c8e Tiny typo changes (per discussion in pull request #22027) 2015-02-16 23:13:58 +01:00
Steve Klabnik
96bea5eb72 Import rust-guidlines
at 16fa41b3b0

Fixes #19315
2015-02-16 17:04:16 -05:00
Manish Goregaokar
f64d71b6ed Add custom_attribute and rustc_attrs to reference.md 2015-02-17 02:26:57 +05:30
Keegan McAllister
6cef0e5dae Rewrite the macros chapter
This is a more introductory document, suitable for Part II.  The arcane details
move to an "Advanced macros" chapter in Part III.
2015-02-16 10:59:40 -08:00
Steve Klabnik
5ebf4c4bd5 remove 'crate files' sentence
Fixes #22386
2015-02-16 13:36:18 -05:00
Henrik Schopmans
ad827af11c Fixed typo and removed unfitting 'can' 2015-02-16 17:58:17 +00:00
Steve Klabnik
faf0f5b196 Document where clauses.
Closes #21859.
2015-02-16 05:31:26 -05:00
Steve Klabnik
817f3a4d37 Remove use of range() in iterator docs.
Fixes #21577.
2015-02-16 04:53:21 -05:00
Steve Klabnik
f645cad3a1 CONTRIBUTING.md redux
This redux of CONTRIBUTING.md adds in more information, including
subsuming both compliment-bugreport.md and Note-development-policy
in the wiki.

I only glanced at the broad TOC of Note-development-policy, and did
not use the text as the basis for the re-write. This will then address
the last outstanding part of #5831.
2015-02-16 04:46:40 -05:00
Lai Jiangshan
428733dea0 reference: fix outdated link for Compiler plugins
book/syntax-extensions.html was renamed to book/plugins.html,
the link should be also updated.

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
2015-02-16 11:18:00 +08:00
Manish Goregaokar
cea2bbfe27 Fix grammar 2015-02-16 03:56:52 +05:30
Thiago Carvalho
9783cc2822 improve text 2015-02-15 20:41:44 +01:00
Alexander Bliskovsky
74ba529701 Added explanation to trpl of integer types. 2015-02-15 13:51:36 -05:00