Commit Graph

1010 Commits

Author SHA1 Message Date
boats 81d0ecef2c Pin and PinBox are fundamental. 2018-03-15 16:16:11 -07:00
boats 2f1c24a60d CoerceUnsized for PinBox 2018-03-15 16:10:18 -07:00
boats e3c5f6958f Add liballoc APIs. 2018-03-15 13:01:28 -07:00
Jonathan Behrens 370df40dab Don't have Vec<T> delegate to [T]'s bounds for indexing 2018-03-02 23:25:52 -05:00
Jonathan Behrens 45bdf9cbee Update comments 2018-03-02 23:25:52 -05:00
Jonathan Behrens 46fef766b0 Have Vec use slice's implementations of Index<I> and IndexMut<I> 2018-03-02 23:25:52 -05:00
kennytm ef44e63da6 Rollup merge of #48450 - frewsxcv:frewsxcxv-stabilize-slice-rotatee, r=alexcrichton
Stabilize [T]::rotate_{left,right}

https://github.com/rust-lang/rust/issues/41891
2018-02-28 19:15:32 +08:00
kennytm b443e57ce6 Rollup merge of #48166 - hedgehog1024:hedgehog1024-stabilize-entry_and_modify, r=alexcrichton
Stabilize 'entry_and_modify' feature

Stabilize `entry_and_modify` feature introduced by #44734.

Closes #44733
2018-02-25 15:54:42 +08:00
Manish Goregaokar 0aa753ba30 1.25.0 -> 1.26.- 2018-02-25 14:24:24 +08:00
Manish Goregaokar dd890d80a0 Rollup merge of #48110 - Centril:stabilize/box_leak, r=alexcrichton
Stabilize Box::leak

Stabilizes the following:
+ `Box::leak` (`box_leak`, in nightly since 2017-11-23)

cc #46179

 r? @rust-lang/libs
2018-02-24 15:52:04 -08:00
Manish Goregaokar f2cbb764b8 Rollup merge of #48438 - mbrubeck:docs, r=TimNN
[docs] Minor wording changes to drain_filter docs

The docs currently say, "If the closure returns false, it will try again, and call the closure on the next element."  But this happens regardless of whether the closure returns true or false.
2018-02-23 10:24:56 -08:00
Corey Farwell b1a6c8bdd3 Stabilize [T]::rotate_{left,right}
https://github.com/rust-lang/rust/issues/41891
2018-02-22 20:12:38 -05:00
Matt Brubeck 311fbc9265 [docs] Minor wording changes to drain_filter docs
The docs currently say, "If the closure returns false, it will try
again, and call the closure on the next element."  But this happens
regardless of whether the closure returns true or false.
2018-02-22 12:05:30 -08:00
Anthony Deschamps e88fe1d519 Small grammar fix to docs for String::new(). 2018-02-22 14:21:54 -05:00
bors 1ad094d81c Auto merge of #47687 - SimonSapin:panic-impl, r=sfackler
RFC 2070 part 1: PanicInfo and Location API changes

This implements part of https://rust-lang.github.io/rfcs/2070-panic-implementation.html
Tracking issue: https://github.com/rust-lang/rust/issues/44489

* Move `std::panic::PanicInfo` and `std::panic::Location` to a new `core::panic` module. The two types and the `std` module were already `#[stable]` and stay that way, the new `core` module is `#[unstable]`.
* Add a new `PanicInfo::message(&self) -> Option<&fmt::Arguments>` method, which is `#[unstable]`.
* Implement `Display` for `PanicInfo` and `Location`
2018-02-18 06:02:35 +00:00
Sergio Benitez 22aecb9c6e Clarify contiguity of Vec's elements. 2018-02-16 17:08:08 -08:00
Jacob Kiesel fbad3b2468 Switch to retain calling drain_filter. 2018-02-13 08:48:25 -07:00
hedgehog1024 770fdeddb4 Stabilize 'entry_and_modify' feature for BTreeMap 2018-02-12 22:19:37 +03:00
Mazdak Farrokhzad 486160335c stabilize Box::leak: remove #![feature(box_leak)] in docs 2018-02-10 01:39:22 +01:00
Mazdak Farrokhzad 467b5cfcb7 stabilize (version: 1.26.0) Box::leak, cc #46179 2018-02-10 01:26:19 +01:00
Jacob Kiesel a67749ae87 Swap ptr::read for ptr::drop_in_place 2018-02-08 08:27:53 -07:00
Jacob Kiesel 2a4c018518 Apply optimization from #44355 to retain 2018-02-07 21:23:16 -07:00
Corey Farwell 7b4cbbd12d Document that Index ops can panic on HashMap & BTreeMap.
Fixes https://github.com/rust-lang/rust/issues/47011.
2018-01-28 21:51:33 -05:00
bors a0a9007f8d Auto merge of #47006 - bitshifter:stabilize-repr-align, r=eddyb
Stabilized `#[repr(align(x))]` attribute (RFC 1358)

Stabilzed `#[repr(align(x))]` with attr_literal syntax as proposed by @eddyb https://github.com/rust-lang/rust/issues/33626#issuecomment-348467804
2018-01-25 00:26:17 +00:00
Simon Sapin 399dcd1127 Add missing micro version number component in stability attributes. 2018-01-24 22:25:42 +01:00
bors 9758ff9c0b Auto merge of #47299 - cramertj:unsafe-placer, r=alexcrichton
Make core::ops::Place an unsafe trait

Consumers of `Place` would reasonably expect that the `pointer` function returns a valid pointer to memory that can actually be written to.
2018-01-24 07:22:22 +00:00
Cameron Hart 651ea8ea44 Stabilized #[repr(align(x))] attribute (RFC 1358) 2018-01-23 08:36:13 +11:00
Guillaume Gomez 6e6ab1e994 Rollup merge of #47632 - sdroege:exact-chunks-docs-broken-links, r=kennytm
Fix broken links to other slice functions in chunks/chunks_mut/exact_…

…chunk/exact_chunks_mut docs

See https://github.com/rust-lang/rust/pull/47126#discussion_r162780492
2018-01-21 23:11:43 +01:00
Guillaume Gomez 50e3836502 Rollup merge of #47625 - astraw:btreeset-doctest-fix, r=kennytm
fix doctests for BTreeSet to use BTreeSet (not BTreeMap)

This fixes #47624
2018-01-21 23:11:42 +01:00
Guillaume Gomez c354bb8174 Rollup merge of #47595 - PieterPenninckx:master, r=shepmaster
Small improvements to the documentation of VecDeque.

Some small improvements to the documentation of `VecDeque`.
2018-01-21 23:11:41 +01:00
Pieter Penninckx ea814b8463 Revert change to docs in panic section of VecDeque::split_off 2018-01-21 15:05:53 +01:00
Sebastian Dröge 1756f680b0 Fix broken links to other slice functions in chunks/chunks_mut/exact_chunk/exact_chunks_mut docs
See https://github.com/rust-lang/rust/pull/47126#discussion_r162780492
2018-01-21 11:20:19 +02:00
Andrew Straw 4d08d054c7 fix doctests for BTreeSet to use BTreeSet (not BTreeMap)
This fixes #47624
2018-01-20 23:39:12 +01:00
bors 15a1e2844d Auto merge of #46980 - zackmdavis:and_the_case_of_the_needlessly_parenthesized_arguments, r=petrochenkov
in which the unused-parens lint comes to cover function and method args

Resolves #46137.
2018-01-20 15:06:41 +00:00
Simon Sapin 602a445b92 Assign its own tracking issue to Box::into_raw_non_null
https://github.com/rust-lang/rust/issues/47336
2018-01-20 11:09:23 +01:00
Simon Sapin 5aeeafff49 Revert Box::into_raw_non_null to unstable 2018-01-20 11:09:23 +01:00
Simon Sapin 12b3630f62 Rename Box::into_non_null_raw to Box::into_raw_non_null 2018-01-20 11:09:23 +01:00
Simon Sapin 8ef5e549c3 Remove Box::from_non_null_raw
Per https://github.com/rust-lang/rust/pull/46952#issuecomment-353956225
2018-01-20 11:09:23 +01:00
Simon Sapin 1772fa2aa1 Rename Box::*_nonnull_raw to *_non_null_raw 2018-01-20 11:09:23 +01:00
Simon Sapin 55c50cd8ac Stabilize std::ptr::NonNull 2018-01-20 11:09:23 +01:00
Simon Sapin c97c1f7dc3 Mark Unique as perma-unstable, with the feature renamed to ptr_internals. 2018-01-20 11:09:23 +01:00
Simon Sapin a2f878a084 Replace Box::{from,into}_unique with {from,into}_nonnull_raw
Thew `_raw` prefix is included because the fact that `Box`’s ownership
semantics are "dissolved" or recreated seem more important than the exact
parameter type or return type.
2018-01-20 11:09:22 +01:00
Simon Sapin fb03a49c25 Replace Unique<T> with NonZero<T> in Alloc trait 2018-01-20 10:55:16 +01:00
Simon Sapin f19baf0977 Rename std::ptr::Shared to NonNull
`Shared` is now a deprecated `type` alias.

CC https://github.com/rust-lang/rust/issues/27730#issuecomment-352800629
2018-01-20 10:55:16 +01:00
Pieter Penninckx 81e6840ff4 Small improvements to the documentation of VecDeque. 2018-01-19 16:51:46 +01:00
Zack M. Davis 14982db2d6 in which the unused-parens lint comes to cover function and method args
Resolves #46137.
2018-01-18 08:33:58 -08:00
Carol (Nichols || Goulding) e168aa385b Reexport -> re-export in prose and documentation comments 2018-01-15 13:36:53 -05:00
kennytm 5d0474ad73 Rollup merge of #47126 - sdroege:exact-chunks, r=bluss
Add slice::ExactChunks and ::ExactChunksMut iterators

These guarantee that always the requested slice size will be returned
and any leftoever elements at the end will be ignored. It allows llvm to
get rid of bounds checks in the code using the iterator.

This is inspired by the same iterators provided by ndarray.

Fixes https://github.com/rust-lang/rust/issues/47115

I'll add unit tests for all this if the general idea and behaviour makes sense for everybody.
Also see https://github.com/rust-lang/rust/issues/47115#issuecomment-354715511 for an example what this improves.
2018-01-15 18:49:31 +08:00
Sebastian Dröge 5f4fc82142 Add unit tests for exact_chunks/exact_chunks_mut
These are basically modified copies of the chunks/chunks_mut tests.
2018-01-13 12:19:01 +02:00
Sebastian Dröge baa81dc77f Use assert_eq!() instead of assert!(a == b) in slice chunks_mut() unit test
This way more useful information is printed if the test ever fails.
2018-01-13 12:18:59 +02:00