]> git.lizzy.rs Git - rust.git/log
rust.git
9 years agoUpdate docs
Keegan McAllister [Sat, 3 Jan 2015 04:05:30 +0000 (20:05 -0800)]
Update docs

9 years agoAdd a test case for accidental macro re-export
Keegan McAllister [Sat, 3 Jan 2015 19:04:46 +0000 (11:04 -0800)]
Add a test case for accidental macro re-export

9 years agoForbid '#[macro_use] extern crate' outside the crate root
Keegan McAllister [Sat, 3 Jan 2015 06:21:28 +0000 (22:21 -0800)]
Forbid '#[macro_use] extern crate' outside the crate root

9 years agoUn-gate macro_rules
Keegan McAllister [Sat, 3 Jan 2015 03:41:40 +0000 (19:41 -0800)]
Un-gate macro_rules

9 years agoPass the #[plugin(...)] meta item to the registrar
Keegan McAllister [Sat, 3 Jan 2015 02:26:00 +0000 (18:26 -0800)]
Pass the #[plugin(...)] meta item to the registrar

9 years agoModernize macro_rules! invocations
Keegan McAllister [Fri, 2 Jan 2015 22:44:21 +0000 (14:44 -0800)]
Modernize macro_rules! invocations

macro_rules! is like an item that defines a macro.  Other items don't have a
trailing semicolon, or use a paren-delimited body.

If there's an argument for matching the invocation syntax, e.g. parentheses for
an expr macro, then I think that applies more strongly to the *inner*
delimiters on the LHS, wrapping the individual argument patterns.

9 years agoReserve the keyword 'macro'
Keegan McAllister [Fri, 2 Jan 2015 21:39:05 +0000 (13:39 -0800)]
Reserve the keyword 'macro'

9 years agoAllow selective macro import
Keegan McAllister [Fri, 2 Jan 2015 20:50:45 +0000 (12:50 -0800)]
Allow selective macro import

9 years agoMove #[macro_reexport] to extern crate
Keegan McAllister [Fri, 2 Jan 2015 00:37:47 +0000 (16:37 -0800)]
Move #[macro_reexport] to extern crate

9 years agoReplace #[phase] with #[plugin] / #[macro_use] / #[no_link]
Keegan McAllister [Thu, 1 Jan 2015 04:43:46 +0000 (20:43 -0800)]
Replace #[phase] with #[plugin] / #[macro_use] / #[no_link]

9 years agocreader: Load parts of plugin metadata on demand
Keegan McAllister [Thu, 1 Jan 2015 03:48:39 +0000 (19:48 -0800)]
creader: Load parts of plugin metadata on demand

9 years agoReformat metadata for exported macros
Keegan McAllister [Wed, 31 Dec 2014 03:10:46 +0000 (19:10 -0800)]
Reformat metadata for exported macros

Instead of copy-pasting the whole macro_rules! item from the original .rs file,
we serialize a separate name, attributes list, and body, the latter as
pretty-printed TTs.  The compilation of macro_rules! macros is decoupled
somewhat from the expansion of macros in item position.

This filters out comments, and facilitates selective imports.

9 years agocreader: Use a single struct
Keegan McAllister [Sun, 21 Dec 2014 07:02:38 +0000 (23:02 -0800)]
creader: Use a single struct

9 years agocreader: Convert free functions to Env methods
Keegan McAllister [Sun, 21 Dec 2014 06:36:50 +0000 (22:36 -0800)]
creader: Convert free functions to Env methods

9 years agoRename macro_escape to macro_use
Keegan McAllister [Fri, 19 Dec 2014 04:48:26 +0000 (20:48 -0800)]
Rename macro_escape to macro_use

In the future we want to support

    #[macro_use(foo, bar)]
    mod macros;

but it's not an essential part of macro reform.  Reserve the syntax for now.

9 years agoStop using macro_escape as an inner attribute
Keegan McAllister [Fri, 19 Dec 2014 04:09:57 +0000 (20:09 -0800)]
Stop using macro_escape as an inner attribute

In preparation for the rename.

9 years agoUse $crate and macro reexport to reduce duplicated code
Keegan McAllister [Tue, 16 Sep 2014 02:29:47 +0000 (19:29 -0700)]
Use $crate and macro reexport to reduce duplicated code

Many of libstd's macros are now re-exported from libcore and libcollections.
Their libstd definitions have moved to a macros_stage0 module and can disappear
after the next snapshot.

Where the two crates had already diverged, I took the libstd versions as
they're generally newer and better-tested. See e.g. d3c831b, which was a fix to
libstd's assert_eq!() that didn't make it into libcore's.

Fixes #16806.

9 years agoRemove unused if_ok! macro
Keegan McAllister [Wed, 10 Dec 2014 02:34:22 +0000 (18:34 -0800)]
Remove unused if_ok! macro

9 years agoImplement macro re-export
Keegan McAllister [Tue, 16 Sep 2014 02:02:14 +0000 (19:02 -0700)]
Implement macro re-export

Fixes #17103.

9 years agoAllow leading :: in use items
Keegan McAllister [Wed, 10 Dec 2014 06:53:12 +0000 (22:53 -0800)]
Allow leading :: in use items

9 years agoAdd a special macro nonterminal $crate
Keegan McAllister [Tue, 16 Sep 2014 01:27:28 +0000 (18:27 -0700)]
Add a special macro nonterminal $crate

9 years agoReplace LetSyntaxTT with MacroRulesTT
Keegan McAllister [Mon, 15 Sep 2014 23:09:09 +0000 (16:09 -0700)]
Replace LetSyntaxTT with MacroRulesTT

The implementation of LetSyntaxTT was specialized to macro_rules! in various
ways. This gets rid of the false generality and simplifies the code.

9 years agoDon't test codegen-units errors on stage1 (c.f. #20184)
Keegan McAllister [Thu, 1 Jan 2015 01:30:45 +0000 (17:30 -0800)]
Don't test codegen-units errors on stage1 (c.f. #20184)

9 years agoauto merge of #20514 : alexcrichton/rust/serialize-associated-type, r=aturon
bors [Mon, 5 Jan 2015 14:51:03 +0000 (14:51 +0000)]
auto merge of #20514 : alexcrichton/rust/serialize-associated-type, r=aturon

This commit moves the libserialize crate (and will force the hand of the
rustc-serialize crate) to not require the `old_orphan_check` feature gate as
well as using associated types wherever possible. Concretely, the following
changes were made:

* The error type of `Encoder` and `Decoder` is now an associated type, meaning
  that these traits have no type parameters.

* The `Encoder` and `Decoder` type parameters on the `Encodable` and `Decodable`
  traits have moved to the corresponding method of the trait. This movement
  alleviates the dependency on `old_orphan_check` but implies that
  implementations can no longer be specialized for the type of encoder/decoder
  being implemented.

Due to the trait definitions changing, this is a:

[breaking-change]

9 years agoauto merge of #20451 : brson/rust/installer, r=alexcrichton
bors [Mon, 5 Jan 2015 11:10:57 +0000 (11:10 +0000)]
auto merge of #20451 : brson/rust/installer, r=alexcrichton

This fixes a mostly harmless syntax error in the install script.

9 years agoserialize: Use assoc types + less old_orphan_check
Alex Crichton [Sun, 4 Jan 2015 06:24:50 +0000 (22:24 -0800)]
serialize: Use assoc types + less old_orphan_check

This commit moves the libserialize crate (and will force the hand of the
rustc-serialize crate) to not require the `old_orphan_check` feature gate as
well as using associated types wherever possible. Concretely, the following
changes were made:

* The error type of `Encoder` and `Decoder` is now an associated type, meaning
  that these traits have no type parameters.

* The `Encoder` and `Decoder` type parameters on the `Encodable` and `Decodable`
  traits have moved to the corresponding method of the trait. This movement
  alleviates the dependency on `old_orphan_check` but implies that
  implementations can no longer be specialized for the type of encoder/decoder
  being implemented.

Due to the trait definitions changing, this is a:

[breaking-change]

9 years agoauto merge of #20395 : huonw/rust/char-stab-2, r=aturon
bors [Mon, 5 Jan 2015 06:45:39 +0000 (06:45 +0000)]
auto merge of #20395 : huonw/rust/char-stab-2, r=aturon

cc #19260

The casing transformations are left unstable (it is highly likely to be better to adopt the proper non-1-to-1 case mappings, per #20333) as are `is_xid_*`.

I've got a little todo list in the last commit of things I thought about/was told about that I haven't yet handled (I'd also like some feedback).

9 years agoauto merge of #20285 : FlaPer87/rust/oibit-send-and-friends, r=nikomatsakis
bors [Mon, 5 Jan 2015 04:20:46 +0000 (04:20 +0000)]
auto merge of #20285 : FlaPer87/rust/oibit-send-and-friends, r=nikomatsakis

This commit introduces the syntax for negative implementations of traits
as shown below:

`impl !Trait for Type {}`

cc #13231
Part of RFC rust-lang/rfcs#127

r? @nikomatsakis

9 years agochar: small tweak since `is_some` > equivalent `match`.
Huon Wilson [Sat, 3 Jan 2015 14:19:03 +0000 (01:19 +1100)]
char: small tweak since `is_some` > equivalent `match`.

9 years agoApply explicit stabilities to unicode parts of CharExt.
Huon Wilson [Tue, 30 Dec 2014 03:14:01 +0000 (14:14 +1100)]
Apply explicit stabilities to unicode parts of CharExt.

9 years agoMerge `UnicodeChar` and `CharExt`.
Huon Wilson [Tue, 30 Dec 2014 02:58:31 +0000 (13:58 +1100)]
Merge `UnicodeChar` and `CharExt`.

This "reexports" all the functionality of `core::char::CharExt` as
methods on `unicode::u_char::UnicodeChar` (renamed to `CharExt`).

Imports may need to be updated (one now just imports
`unicode::CharExt`, or `std::char::CharExt` rather than two traits from
either), so this is a

[breaking-change]

9 years agoRename `core::char::Char` to `CharExt` to match prelude guidelines.
Huon Wilson [Tue, 30 Dec 2014 02:53:20 +0000 (13:53 +1100)]
Rename `core::char::Char` to `CharExt` to match prelude guidelines.

Imports may need to be updated so this is a

[breaking-change]

9 years agoMark the contents of `char` stable.
Huon Wilson [Tue, 30 Dec 2014 02:36:24 +0000 (13:36 +1100)]
Mark the contents of `char` stable.

9 years agoSwitch encode_utf* to by-value self.
Huon Wilson [Tue, 30 Dec 2014 02:34:06 +0000 (13:34 +1100)]
Switch encode_utf* to by-value self.

9 years agoRemove deprecated functionality from `char`.
Huon Wilson [Tue, 30 Dec 2014 01:04:12 +0000 (12:04 +1100)]
Remove deprecated functionality from `char`.

9 years agoauto merge of #20163 : bfops/rust/master, r=Gankro
bors [Mon, 5 Jan 2015 00:26:28 +0000 (00:26 +0000)]
auto merge of #20163 : bfops/rust/master, r=Gankro

TODOs:
  - ~~Entry is still `<'a, K, V>` instead of `<'a, O, V>`~~
  - ~~BTreeMap is still outstanding~~.
  - ~~Transform appropriate things into `.entry(...).get().or_else(|e| ...)`~~

Things that make me frowny face:
  - I'm not happy about the fact that this `clone`s the key even when it's already owned.
  - With small keys (e.g. `int`s), taking a reference seems wasteful.

r? @Gankro
cc: @cgaebel

9 years agoPut negative trait implemtations behind a feature gate
Flavio Percoco [Mon, 29 Dec 2014 12:52:43 +0000 (13:52 +0100)]
Put negative trait implemtations behind a feature gate

9 years agoAdd syntax for negative implementations of traits
Flavio Percoco [Sun, 28 Dec 2014 22:33:18 +0000 (23:33 +0100)]
Add syntax for negative implementations of traits

This commit introduces the syntax for negative implmenetations of traits
as shown below:

`impl !Trait for Type {}`

cc #13231
Part of RFC #3

9 years agoMerge pull request #20520 from nhowell/patch-1
bors [Sun, 4 Jan 2015 21:36:41 +0000 (21:36 +0000)]
Merge pull request #20520 from nhowell/patch-1

doc: Add missing `$`s in the Installing Rust guide

Reviewed-by: steveklabnik, steveklabnik
9 years agoMerge pull request #20515 from tshepang/modernise-ping-pong-benchmark
bors [Sun, 4 Jan 2015 21:36:41 +0000 (21:36 +0000)]
Merge pull request #20515 from tshepang/modernise-ping-pong-benchmark

bench: remove warnings from rt-messaging-ping-pong.rs

Reviewed-by: alexcrichton
9 years agoMerge pull request #20512 from bjz/rustdoc
bors [Sun, 4 Jan 2015 21:36:40 +0000 (21:36 +0000)]
Merge pull request #20512 from bjz/rustdoc

Allow rustdoc to accept vector pattern arguments

Reviewed-by: alexcrichton, alexcrichton
9 years agoMerge pull request #20510 from tshepang/patch-6
bors [Sun, 4 Jan 2015 21:36:40 +0000 (21:36 +0000)]
Merge pull request #20510 from tshepang/patch-6

doc: remove incomplete sentence

Reviewed-by: steveklabnik, steveklabnik
9 years agoMerge pull request #20505 from estsauver/doc_20504
bors [Sun, 4 Jan 2015 21:36:39 +0000 (21:36 +0000)]
Merge pull request #20505 from estsauver/doc_20504

Update guide index to point to the task page

Reviewed-by: alexcrichton
9 years agoMerge pull request #20500 from globin/fix/range-sugar
bors [Sun, 4 Jan 2015 21:36:39 +0000 (21:36 +0000)]
Merge pull request #20500 from globin/fix/range-sugar

Fix range sugar

Reviewed-by: nick29581
9 years agoMerge pull request #20495 from brson/cargo
bors [Sun, 4 Jan 2015 21:36:38 +0000 (21:36 +0000)]
Merge pull request #20495 from brson/cargo

Update guide for Cargo installation

Reviewed-by: steveklabnik
9 years agoMerge pull request #20487 from trapp/doc-namespace-typo
bors [Sun, 4 Jan 2015 21:36:38 +0000 (21:36 +0000)]
Merge pull request #20487 from trapp/doc-namespace-typo

Fix typo in documentation.

Reviewed-by: alexcrichton
9 years agoMerge pull request #20485 from ipetkov/man-fix
bors [Sun, 4 Jan 2015 21:36:37 +0000 (21:36 +0000)]
Merge pull request #20485 from ipetkov/man-fix

Man page/--help dialog fix

Reviewed-by: alexcrichton
9 years agoMerge pull request #20464 from ranma42/improve-make-hash
bors [Sun, 4 Jan 2015 21:36:36 +0000 (21:36 +0000)]
Merge pull request #20464 from ranma42/improve-make-hash

Improve `make_hash` function

Reviewed-by: Gankro, Gankro
9 years agoMerge pull request #20457 from frewsxcv/rm-reexports
bors [Sun, 4 Jan 2015 21:36:36 +0000 (21:36 +0000)]
Merge pull request #20457 from frewsxcv/rm-reexports

Remove graphviz::LabelText::* public reexport

Reviewed-by: cmr
9 years agoMerge pull request #20452 from brson/rustup
bors [Sun, 4 Jan 2015 21:36:35 +0000 (21:36 +0000)]
Merge pull request #20452 from brson/rustup

Move rustup to the combined installer

Reviewed-by: brson
9 years agoMerge pull request #20449 from brson/contributing
bors [Sun, 4 Jan 2015 21:36:35 +0000 (21:36 +0000)]
Merge pull request #20449 from brson/contributing

Put links to discuss.rust-lang.org and #rust-internals in CONTRIBUTING.m...

Reviewed-by: cmr
9 years agoMerge pull request #20442 from csouth3/vim-syntax
bors [Sun, 4 Jan 2015 21:36:34 +0000 (21:36 +0000)]
Merge pull request #20442 from csouth3/vim-syntax

Fix vim syntax highlighting for `derive`

Reviewed-by: alexcrichton
9 years agoMerge pull request #20428 from tbu-/pr_guide_int_to_i32_2nd_take
bors [Sun, 4 Jan 2015 21:36:34 +0000 (21:36 +0000)]
Merge pull request #20428 from tbu-/pr_guide_int_to_i32_2nd_take

Make all integers in the guide `i32`, implicitely

Reviewed-by: steveklabnik
9 years agoMerge pull request #19963 from tshepang/patch-3
bors [Sun, 4 Jan 2015 21:36:33 +0000 (21:36 +0000)]
Merge pull request #19963 from tshepang/patch-3

doc: mailing list is deprecated

Reviewed-by: brson
9 years agoMerge pull request #20295 from eddyb/poly-const
bors [Sun, 4 Jan 2015 21:36:33 +0000 (21:36 +0000)]
Merge pull request #20295 from eddyb/poly-const

Allow paths in constants to refer to polymorphic items.

Reviewed-by: nikomatsakis
9 years ago[breaking change] Update entry API as part of RFC 509.
Ben Foppa [Sun, 4 Jan 2015 19:07:32 +0000 (14:07 -0500)]
[breaking change] Update entry API as part of RFC 509.

9 years agoauto merge of #20527 : nikomatsakis/rust/japaric-boxed-uc-ice-fix, r=aturon
bors [Sun, 4 Jan 2015 19:06:46 +0000 (19:06 +0000)]
auto merge of #20527 : nikomatsakis/rust/japaric-boxed-uc-ice-fix, r=aturon

This fixes an ICE that japaric was encountering in the wf checker.

r? @aturon

9 years agoConvert the TODO into a FIXME.
Niko Matsakis [Sun, 4 Jan 2015 17:00:13 +0000 (12:00 -0500)]
Convert the TODO into a FIXME.

9 years agoFix ICE in WF checker when we encounter bound regions in object types.
Niko Matsakis [Sun, 4 Jan 2015 11:07:36 +0000 (06:07 -0500)]
Fix ICE in WF checker when we encounter bound regions in object types.

9 years agorustc: allow paths in constants to refer to polymorphic items.
Eduard Burtescu [Sun, 4 Jan 2015 16:47:58 +0000 (18:47 +0200)]
rustc: allow paths in constants to refer to polymorphic items.

9 years agoauto merge of #20443 : nikomatsakis/rust/autoderef-overloaded-calls, r=pcwalton
bors [Sun, 4 Jan 2015 16:36:41 +0000 (16:36 +0000)]
auto merge of #20443 : nikomatsakis/rust/autoderef-overloaded-calls, r=pcwalton

Use autoderef for call notation. This is consistent in that we now autoderef all postfix operators (`.`, `[]`, and `()`). It also means you can call closures without writing `(*f)()`. Note that this is rebased atop the rollup, so only the final commit is relevant.

r? @pcwalton

9 years agorustc: check_const: avoid recursing into a block's tail expression twice.
Eduard Burtescu [Sat, 27 Dec 2014 21:54:53 +0000 (23:54 +0200)]
rustc: check_const: avoid recursing into a block's tail expression twice.

9 years agorustc: check_const: cleanup/simplify the code.
Eduard Burtescu [Sun, 4 Jan 2015 15:58:56 +0000 (17:58 +0200)]
rustc: check_const: cleanup/simplify the code.

9 years agorustc: check_const: remove ~str support in patterns.
Eduard Burtescu [Sun, 7 Dec 2014 03:55:37 +0000 (05:55 +0200)]
rustc: check_const: remove ~str support in patterns.

9 years agodoc: Add missing `$`s in the Installing Rust guide
Nick Howell [Sun, 4 Jan 2015 15:23:00 +0000 (10:23 -0500)]
doc: Add missing `$`s in the Installing Rust guide

9 years agoauto merge of #20437 : ranma42/rust/fix-make-install, r=alexcrichton
bors [Sun, 4 Jan 2015 14:21:08 +0000 (14:21 +0000)]
auto merge of #20437 : ranma42/rust/fix-make-install, r=alexcrichton

After 8b3c67690c4747b9fadfef407e6261524fb03f8a the `make install`
command fails if docs are not disabled through CFG_DISABLE_DOCS,
because now the `install` target uses
../../tmp/dist/$(DOC_PKG_NAME)-$(CFG_BUILD)/install.sh

Instead of explicitly depending on
dist/$(PKG_NAME)-$(CFG_BUILD).tar.gz, the `prepare_[un]install`
targets now depend on `dist-tar-bins`, which packages the appropriate
dist archives depending on the configuration.

9 years agofix range sugar
Robin Gloster [Sun, 4 Jan 2015 02:40:50 +0000 (03:40 +0100)]
fix range sugar

9 years agoauto merge of #20393 : japaric/rust/impl-any, r=aturon
bors [Sun, 4 Jan 2015 11:01:04 +0000 (11:01 +0000)]
auto merge of #20393 : japaric/rust/impl-any, r=aturon

Needs a snapshot that contains PR #20385

r? @aturon

9 years agobench: remove warnings from rt-messaging-ping-pong.rs
Tshepang Lekhonkhobe [Sun, 4 Jan 2015 09:45:22 +0000 (11:45 +0200)]
bench: remove warnings from rt-messaging-ping-pong.rs

9 years agoauto merge of #20462 : alexcrichton/rust/remove-deprecated, r=aturon
bors [Sun, 4 Jan 2015 07:51:06 +0000 (07:51 +0000)]
auto merge of #20462 : alexcrichton/rust/remove-deprecated, r=aturon

This removes a large array of deprecated functionality, regardless of how
recently it was deprecated. The purpose of this commit is to clean out the
standard libraries and compiler for the upcoming alpha release.

Some notable compiler changes were to enable warnings for all now-deprecated
command line arguments (previously the deprecated versions were silently
accepted) as well as removing deriving(Zero) entirely (the trait was removed).

The distribution no longer contains the libtime or libregex_macros crates. Both
of these have been deprecated for some time and are available externally.

9 years agoRemove deprecated functionality
Alex Crichton [Fri, 2 Jan 2015 07:53:35 +0000 (23:53 -0800)]
Remove deprecated functionality

This removes a large array of deprecated functionality, regardless of how
recently it was deprecated. The purpose of this commit is to clean out the
standard libraries and compiler for the upcoming alpha release.

Some notable compiler changes were to enable warnings for all now-deprecated
command line arguments (previously the deprecated versions were silently
accepted) as well as removing deriving(Zero) entirely (the trait was removed).

The distribution no longer contains the libtime or libregex_macros crates. Both
of these have been deprecated for some time and are available externally.

9 years agoAllow rustdoc to accept vector pattern arguments
Brendan Zabarauskas [Sun, 4 Jan 2015 06:52:08 +0000 (17:52 +1100)]
Allow rustdoc to accept vector pattern arguments

9 years agodoc: remove incomplete sentence
Tshepang Lekhonkhobe [Sun, 4 Jan 2015 06:44:31 +0000 (08:44 +0200)]
doc: remove incomplete sentence

9 years agoauto merge of #20504 : japaric/rust/derive-self, r=alexcrichton
bors [Sun, 4 Jan 2015 04:50:56 +0000 (04:50 +0000)]
auto merge of #20504 : japaric/rust/derive-self, r=alexcrichton

I put the sed scripts in the commits, in case this needs a "rebase".

9 years agoUpdate guide index to point to the task page
Earl St Sauver [Sun, 4 Jan 2015 04:16:04 +0000 (20:16 -0800)]
Update guide index to point to the task page

When the "threads" guides were renamed to be "tasks" guides, it looks
like this link was missed.

Here's the other relevant commit.

9 years agoremove `Any[Mut]RefExt` traits in favor of `impl Any`
Jorge Aparicio [Thu, 1 Jan 2015 06:13:08 +0000 (01:13 -0500)]
remove `Any[Mut]RefExt` traits in favor of `impl Any`

9 years agosed -i -s 's/#\[deriving(/#\[derive(/g' **/*.rs
Jorge Aparicio [Sun, 4 Jan 2015 03:54:18 +0000 (22:54 -0500)]
sed -i -s 's/#\[deriving(/#\[derive(/g' **/*.rs

9 years agosed -i -s 's/\bmod}/self}/g' **/*.rs
Jorge Aparicio [Sun, 4 Jan 2015 03:42:37 +0000 (22:42 -0500)]
sed -i -s 's/\bmod}/self}/g' **/*.rs

9 years agosed -i -s 's/\bmod,/self,/g' **/*.rs
Jorge Aparicio [Sun, 4 Jan 2015 03:42:21 +0000 (22:42 -0500)]
sed -i -s 's/\bmod,/self,/g' **/*.rs

9 years agoauto merge of #20490 : japaric/rust/assoc-types, r=aturon
bors [Sun, 4 Jan 2015 00:50:59 +0000 (00:50 +0000)]
auto merge of #20490 : japaric/rust/assoc-types, r=aturon

closes #20486
closes #20474
closes #20441

[breaking-change]

The `Index[Mut]` traits now have one less input parameter, as the return type of the indexing operation is an associated type. This breaks all existing implementations.

---

binop traits (`Add`, `Sub`, etc) now have an associated type for their return type. Also, the RHS input parameter now defaults to `Self` (except for the `Shl` and `Shr` traits). For example, the `Add` trait now looks like this:

``` rust
trait Add<Rhs=Self> {
    type Output;

    fn add(self, Rhs) -> Self::Output;
}
```

The `Neg` and `Not` traits now also have an associated type for their return type.

This breaks all existing implementations of these traits.

---
Affected traits:

- `Iterator { type Item }`
- `IteratorExt` no input/output types, uses `<Self as Iterator>::Item` in its methods
- `DoubleEndedIterator` no input/output types, uses `<Self as Iterator>::Item` in its methods
- `DoubleEndedIteratorExt` no input/output types, uses `<Self as Iterator>::Item` in its methods
- `RandomAccessIterator` no input/output types
- `ExactSizeIterator` no input/output types, uses `<Self as Iterator>::Item` in its methods

This breaks all the implementations of these traits.

9 years agoUpdate guide for Cargo installation
Brian Anderson [Sun, 4 Jan 2015 00:04:04 +0000 (16:04 -0800)]
Update guide for Cargo installation

9 years agoDownload from the combined installer
Brian Anderson [Sat, 3 Jan 2015 23:54:37 +0000 (15:54 -0800)]
Download from the combined installer

9 years agoadd feature gate to some benchmarks
Jorge Aparicio [Sat, 3 Jan 2015 22:29:27 +0000 (17:29 -0500)]
add feature gate to some benchmarks

9 years agoMake all integers in the guide `i32`, implicitely
Tobias Bucher [Fri, 2 Jan 2015 13:07:20 +0000 (14:07 +0100)]
Make all integers in the guide `i32`, implicitely

The guide still needs to talk about integer suffixes.

9 years agofix rpass/cfail tests
Jorge Aparicio [Sat, 3 Jan 2015 15:40:36 +0000 (10:40 -0500)]
fix rpass/cfail tests

9 years agoserialize: fix fallout
Jorge Aparicio [Sat, 3 Jan 2015 15:40:26 +0000 (10:40 -0500)]
serialize: fix fallout

9 years agostd: fix fallout
Jorge Aparicio [Sat, 3 Jan 2015 15:40:19 +0000 (10:40 -0500)]
std: fix fallout

9 years agocollections: fix fallout
Jorge Aparicio [Sat, 3 Jan 2015 15:40:10 +0000 (10:40 -0500)]
collections: fix fallout

9 years agocore: use assoc types in `Index[Mut]`
Jorge Aparicio [Sat, 3 Jan 2015 14:46:29 +0000 (09:46 -0500)]
core: use assoc types in `Index[Mut]`

9 years agotypeck: Index[Mut] traits now have *one* input parameter (not two)
Jorge Aparicio [Thu, 1 Jan 2015 02:36:03 +0000 (21:36 -0500)]
typeck: Index[Mut] traits now have *one* input parameter (not two)

9 years agouse assoc types in unop traits
Jorge Aparicio [Sat, 3 Jan 2015 03:56:24 +0000 (22:56 -0500)]
use assoc types in unop traits

9 years agouse assoc types in binop traits
Jorge Aparicio [Wed, 31 Dec 2014 20:45:13 +0000 (15:45 -0500)]
use assoc types in binop traits

9 years agoFix typo in documentation.
Timon Rapp [Sat, 3 Jan 2015 21:10:53 +0000 (22:10 +0100)]
Fix typo in documentation.

9 years agoUpdate rust-installer. Fixes #20479
Brian Anderson [Sat, 3 Jan 2015 20:34:48 +0000 (12:34 -0800)]
Update rust-installer. Fixes #20479

9 years agoauto merge of #19790 : akiss77/rust/aarch64-configure, r=alexcrichton
bors [Sat, 3 Jan 2015 20:20:48 +0000 (20:20 +0000)]
auto merge of #19790 : akiss77/rust/aarch64-configure, r=alexcrichton

Preparing AArch64 support, starting work at the build system.

9 years agoMan page/--help dialog fix
Ivan Petkov [Fri, 2 Jan 2015 04:50:14 +0000 (20:50 -0800)]
Man page/--help dialog fix

* Running rustc with the --print option will accept "file-names" but
  not "output-file-names"

9 years agorustup: Long lines
Brian Anderson [Sat, 3 Jan 2015 16:29:33 +0000 (08:29 -0800)]
rustup: Long lines

9 years agoInitial version of AArch64 support.
Akos Kiss [Fri, 12 Dec 2014 23:39:27 +0000 (23:39 +0000)]
Initial version of AArch64 support.

Adds AArch64 knowledge to:
* configure,
* make files,
* sources,
* tests, and
* documentation.

9 years agocore: merge IteratorPairExt into IteratorExt
Jorge Aparicio [Sat, 3 Jan 2015 13:19:51 +0000 (08:19 -0500)]
core: merge IteratorPairExt into IteratorExt

9 years agoRegister new snapshots
Jorge Aparicio [Sat, 3 Jan 2015 12:16:22 +0000 (07:16 -0500)]
Register new snapshots