Alexis Hunt
554dd3e350
Add missing '?' to format grammar.
2018-03-26 21:18:50 -04:00
Diggory Blake
04f6692aaf
Implement shrink_to method on collections
2018-03-27 01:39:11 +01:00
varkor
9c7b69e179
Remove mentions of unstable sort_by_cached key from stable documentation
2018-03-26 22:24:03 +01:00
bors
188e693b39
Auto merge of #49101 - mark-i-m:stabilize_i128, r=nagisa
...
Stabilize 128-bit integers 🎉
cc #35118
EDIT: This should be merged only after the following have been merged:
- [x] https://github.com/rust-lang-nursery/compiler-builtins/pull/236
- [x] https://github.com/rust-lang/book/pull/1230
2018-03-26 18:41:38 +00:00
Mark Mansi
7ce8191775
Stabilize i128_type
2018-03-26 08:36:50 -05:00
boats
1e2458e1ba
Add is_whitespace and is_alphanumeric to str.
...
The other methods from `UnicodeStr` are already stable inherent
methods on str, but these have not been included.
2018-03-26 06:25:31 -07:00
Diggory Blake
fbec3ec5a7
Implement get_key_value for HashMap, BTreeMap
2018-03-25 23:50:47 +01:00
kennytm
e2b89221f1
Rollup merge of #49194 - Zoxc:unsafe-generator, r=cramertj
...
Make resuming generators unsafe instead of the creation of immovable generators
cc @withoutboats
Fixes #47787
2018-03-25 01:26:34 +08:00
kennytm
adb7984f10
Rollup merge of #49121 - varkor:stabilise-from_utf8_error_as_bytes, r=bluss
...
Stabilise FromUtf8Error::as_bytes
Closes #40895 .
2018-03-25 01:26:29 +08:00
Alex Crichton
7cf4cb5a7b
Rollup merge of #48265 - SimonSapin:nonzero, r=KodrAus
...
Add 12 num::NonZero* types for primitive integers, deprecate core::nonzero
RFC: https://github.com/rust-lang/rfcs/pull/2307
Tracking issue: ~~https://github.com/rust-lang/rust/issues/27730~~ https://github.com/rust-lang/rust/issues/49137
Fixes https://github.com/rust-lang/rust/issues/27730
2018-03-23 09:27:06 -05:00
kennytm
8d3f3f0cac
Rollup merge of #49117 - nivkner:fixme_fixup3, r=estebank
...
address some FIXME whose associated issues were marked as closed
part of #44366
2018-03-22 22:43:37 +08:00
Murarth
7c442e5c9b
Stabilize method String::retain
2018-03-21 15:36:50 -07:00
John Kåre Alsaker
57896abc38
Make resuming generators unsafe instead of the creation of immovable generators. Fixes #47787
2018-03-21 00:09:58 +01:00
bors
75af15ee6c
Auto merge of #49190 - kennytm:rollup, r=kennytm
...
Rollup of 17 pull requests
- Successful merges: #46518 , #48810 , #48834 , #48902 , #49004 , #49092 , #49096 , #49099 , #49104 , #49125 , #49139 , #49152 , #49157 , #49161 , #49166 , #49176 , #49184
- Failed merges:
2018-03-20 10:18:34 +00:00
bors
b99172311c
Auto merge of #48516 - petrochenkov:stabsl, r=nikomatsakis
...
Stabilize slice patterns without `..`
And merge `feature(advanced_slice_patterns)` into `feature(slice_patterns)`.
The detailed description can be found in https://github.com/rust-lang/rust/issues/48836 .
Slice patterns were unstable for long time since before 1.0 due to many bugs in the implementation, now this stabilization is possible primarily due to work of @arielb1 who [wrote the new MIR-based implementation of slice patterns](https://github.com/rust-lang/rust/pull/32202 ) and @mikhail-m1 who [fixed one remaining class of codegen issues](https://github.com/rust-lang/rust/pull/47926 ).
Reference PR https://github.com/rust-lang-nursery/reference/pull/259
cc https://github.com/rust-lang/rust/issues/23121
fixes #48836
2018-03-20 07:42:19 +00:00
Vadim Petrochenkov
7c90189e13
Stabilize slice patterns without ..
...
Merge `feature(advanced_slice_patterns)` into `feature(slice_patterns)`
2018-03-20 02:27:40 +03:00
bors
6bfa7d02d6
Auto merge of #49058 - withoutboats:pin, r=cramertj
...
Pin, Unpin, PinBox
Implementing rust-lang/rfcs#2349 (do not merge until RFC is merged)
@bors r? @cramertj
2018-03-19 23:01:37 +00:00
Simon Sapin
741d7a5598
Docs: fix incorrect copy-paste for new X? in formatting strings
2018-03-19 07:37:59 +01:00
bors
152217d29c
Auto merge of #48978 - SimonSapin:debug-hex, r=KodrAus
...
Add hexadecimal formatting of integers with fmt::Debug
This can be used for integers within a larger types which implements Debug (possibly through derive) but not fmt::UpperHex or fmt::LowerHex.
```rust
assert!(format!("{:02x?}", b"Foo\0") == "[46, 6f, 6f, 00]");
assert!(format!("{:02X?}", b"Foo\0") == "[46, 6F, 6F, 00]");
```
RFC: https://github.com/rust-lang/rfcs/pull/2226
The new formatting string syntax (`x?` and `X?`) is insta-stable in this PR because I don’t know how to change a built-in proc macro’s behavior based of a feature gate. I can look into adding that, but I also strongly suspect that keeping this feature unstable for a time period would not be useful as possibly no-one would use it during that time.
This PR does not add the new (public) `fmt::Formatter` proposed in the API because:
* There was some skepticism on response to this part of the RFC
* It is not possible to implement as-is without larger changes to `fmt`, because `Formatter` at the moment has no easy way to tell apart for example `Octal` from `Binary`: it only has a function pointer for the relevant `fmt()` method.
If some integer-like type outside of `std` want to implement this behavior, another RFC will likely need to propose a different public API for `Formatter`.
2018-03-19 02:38:19 +00:00
varkor
eca1e18cd7
Add stability test for sort_by_cached_key
2018-03-19 00:11:47 +00:00
boats
2797aaca77
Update tracking issue.
2018-03-18 15:05:45 -07:00
varkor
785e3c38fe
Add lexicographic sorting benchmark
2018-03-18 12:50:58 +00:00
varkor
81edd1796b
Check that the size optimisation is not redundant
2018-03-18 12:50:58 +00:00
varkor
9896b38f01
Clarify time complexity
2018-03-18 12:50:56 +00:00
Simon Sapin
2d13ddb6e1
Use NonNull<_> instead of NonZero<*const _> in btree internals
2018-03-17 23:07:40 +01:00
varkor
b57ea56159
Stabilise FromUtf8Error::as_bytes
...
Closes #40895 .
2018-03-17 21:41:14 +00:00
varkor
ca3bed0c66
Improve and fix documentation for sort_by_cached_key
2018-03-17 20:18:08 +00:00
Niv Kaminer
3753e1a55a
update FIXME( #5244 ) to point to RFC 1109 (Non-Copy array creation ergonomics)
2018-03-17 20:24:49 +02:00
varkor
b430cba343
Fix use of unstable feature in test
2018-03-17 17:25:23 +00:00
varkor
f41a26f204
Add sort_by_cached_key method
2018-03-16 14:39:53 +00:00
varkor
bdcc6f939a
Index enumeration by minimally sized type
2018-03-16 13:57:08 +00:00
varkor
7dcfc07d2c
Cull the quadratic
2018-03-16 13:57:08 +00:00
varkor
21fde0903b
Update documentation
2018-03-16 13:57:07 +00:00
varkor
9fbee359d7
Add a test for sort_by_key
2018-03-16 13:57:07 +00:00
varkor
b8452cc326
Clarify behaviour of sort_unstable_by_key with respect to sort_by_key
2018-03-16 13:57:07 +00:00
varkor
670e69e207
Update documentation for sort_by_key
2018-03-16 13:57:07 +00:00
varkor
ea6a1bdf6b
Compute each key only one during slice::sort_by_key
2018-03-16 13:57:07 +00:00
Simon Sapin
f0ad533fe3
Remove deprecated unstable alloc::heap::EMPTY constant
2018-03-16 11:45:16 +01:00
bors
36b6687318
Auto merge of #49051 - kennytm:rollup, r=kennytm
...
Rollup of 17 pull requests
- Successful merges: #48706 , #48875 , #48892 , #48922 , #48957 , #48959 , #48961 , #48965 , #49007 , #49024 , #49042 , #49050 , #48853 , #48990 , #49037 , #49049 , #48972
- Failed merges:
2018-03-16 00:09:14 +00:00
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
snf
9e64946bde
setting ABORTING_MALLOC for asmjs backend
2018-03-15 17:43:05 +00:00
bors
3926453944
Auto merge of #47813 - kennytm:stable-incl-range, r=nrc
...
Stabilize inclusive range (`..=`)
Stabilize the followings:
* `inclusive_range` — The `std::ops::RangeInclusive` and `std::ops::RangeInclusiveTo` types, except its fields (tracked by #49022 separately).
* `inclusive_range_syntax` — The `a..=b` and `..=b` expression syntax
* `dotdoteq_in_patterns` — Using `a..=b` in a pattern
cc #28237
r? @rust-lang/lang
2018-03-15 16:00:40 +00:00
kennytm
939cfa251a
Keep the fields of RangeInclusive unstable.
2018-03-15 17:01:30 +08:00
kennytm
92d1f8d8e4
Stabilize inclusive_range_syntax language feature.
...
Stabilize the syntax `a..=b` and `..=b`.
2018-03-15 16:58:02 +08:00
kennytm
b5913f2e76
Stabilize inclusive_range library feature.
...
Stabilize std::ops::RangeInclusive and std::ops::RangeInclusiveTo.
2018-03-15 16:58:01 +08:00
snf
b08b5ae0ec
try_reserve: disabling tests for asmjs, blocked by #48968
2018-03-14 03:48:42 -07:00
snf
92bfcd2b19
implementing fallible allocation API (try_reserve) for Vec, String and HashMap
2018-03-14 03:48:42 -07:00
Simon Sapin
4897935e86
Add hexadecimal formatting of integers with fmt::Debug
...
This can be used for integers within a larger types which implements Debug
(possibly through derive) but not fmt::UpperHex or fmt::LowerHex.
```rust
assert!(format!("{:02x?}", b"Foo\0") == "[46, 6f, 6f, 00]");
assert!(format!("{:02X?}", b"Foo\0") == "[46, 6F, 6F, 00]");
```
RFC: https://github.com/rust-lang/rfcs/pull/2226
2018-03-13 14:53:06 +01:00