Commit graph

10378 commits

Author SHA1 Message Date
Mark Rousskov
a06baa56b9 Format the world 2019-12-22 17:42:47 -05:00
Mazdak Farrokhzad
ce6f0b0a1e
Rollup merge of #67519 - Mark-Simulacrum:any-unsafe, r=Centril
Document why Any is not an unsafe trait

The added documentation is not public (i.e., not in a doc comment) but that seems appropriate for this sort of low-level detail.

Fixes #62303
2019-12-22 19:46:16 +01:00
Mazdak Farrokhzad
7fd41b5a73
Rollup merge of #67506 - qnighy:remove-iter-private, r=Dylan-DPC
Remove iter_private.rs

The contents of this file have been moved in #56932 (520e8b0) and the file should have been removed as well.
2019-12-22 19:46:13 +01:00
Mark Rousskov
6878913096 Document why Any is not an unsafe trait 2019-12-22 08:12:55 -05:00
Mazdak Farrokhzad
eaeb1138c6
Rollup merge of #67480 - rossmacarthur:fix-41260-avoid-issue-0-part-2, r=Centril
Require issue = "none" over issue = "0" in unstable attributes

These changes make the use of `issue = "none"` required in unstable attributes throughout the compiler.

Notes:
- #66299 is now in beta so `issue = "none"` is accepted.
- The `tidy` tool now fails on `issue = "0"`.
- Tests that used `issue = "0"` were changed to use `issue = "none"`, except for _one_ that asserts `issue = "0"` can still be used.
- The compiler still allows `issue = "0"` because some submodules require it, this could be disallowed once these are updated.

Resolves #41260

r? @varkor
2019-12-22 02:40:04 +01:00
Mazdak Farrokhzad
5a0f17e849
Rollup merge of #67490 - Mark-Simulacrum:i-67371, r=Dylan-DPC
Document privacy of RangeInclusive fields

Fixes #67371
2019-12-21 19:07:42 +01:00
Mazdak Farrokhzad
9fa2046ed9
Rollup merge of #67420 - lzutao:_val, r=Centril
use _val to ignore parameter of any::type_name_of_val

mem::drop does the same thing too.
2019-12-21 19:07:37 +01:00
Lzu Tao
c93198f90e use _val to ignore parameter of any::type_name_of_val 2019-12-21 16:48:35 +00:00
Mark Rousskov
519fc84852 Document privacy of RangeInclusive fields 2019-12-21 11:27:51 -05:00
Mazdak Farrokhzad
466fdeaed5
Rollup merge of #67478 - brunobell:master, r=Centril
Fix src/libcore/str/mod.rs doc comments

Fix grammar in src/libcore/str/mod.rs doc comments. r? @steveklabnik
2019-12-21 15:29:50 +01:00
Mazdak Farrokhzad
f43ced3dbc
Rollup merge of #67462 - DutchGhost:const_slice_from_raw_parts, r=dtolnay
Make ptr::slice_from_raw_parts a const fn available under a feature flag

A first step in the direction of https://github.com/rust-lang/rust/issues/67456 .
This makes `ptr::slice_from_raw_parts` and `ptr::slice_from_raw_parts_mut` available as a const fn under a feature flag.
2019-12-21 15:29:47 +01:00
Ross MacArthur
f7256d28d1
Require issue = "none" over issue = "0" in unstable attributes 2019-12-21 13:16:18 +02:00
Broono Lu
16b7fd2272 Fix src/libcore/str/mod.rs doc comments 2019-12-21 18:12:46 +08:00
Masaki Hara
6903836398 Remove iter_private.rs
The contents of this file have been moved in #56932 (520e8b0) and the
file should have been removed as well.
2019-12-21 15:16:03 +09:00
Mazdak Farrokhzad
e613f9238f
Rollup merge of #67163 - TheSamsa:split-up-ptr-mod, r=Mark-Simulacrum
Split up ptr/mod.rs in libcore...

...one with implementation detail for const ptr and the other with mut ptr

I am not sure if the "stable since 1.0.0" flags are the correct choice for the two additional mods.
Also, is it necessary for them to be "pub"? If so, there should be a good description for them.

Closes #66891
2019-12-20 22:05:30 +01:00
Dodo
382d370c4f Make ptr::slice_from_raw_parts a const fn available under a feature flag 2019-12-20 21:42:03 +01:00
Mark Rousskov
5f64777e63
Rollup merge of #67436 - NieDzejkob:todo-stabilization-fix, r=alexcrichton
Correct the todo! stabilization version

None
2019-12-19 17:53:58 -05:00
Mark Rousskov
939beb58d3
Rollup merge of #67253 - elichai:2019-12-fmt, r=Dylan-DPC
Add more delegations to the fmt docs and add doctests

HI,
this is a continuation to #67021
I replaced the `Debug` example with one that use the `Debug*` helpers so that padding etc will work too.
I also added asserts for the doctests as @RalfJung asked :)

The only thing I left with the `write!` macro is the `Display` example as I didn't know if there's a better way to do that.

r? @QuietMisdreavus
2019-12-19 17:53:52 -05:00
Jakub Kądziołka
df93bab135
Correct the todo! stabilization version 2019-12-19 19:09:20 +01:00
Christoph Schmidler
12d65c28a6 Split up ptr/mod.rs in libcore, one with implementation detail for const ptr and the other with mut ptr 2019-12-19 09:01:26 +01:00
Mark Rousskov
82184440ec Propagate cfg bootstrap 2019-12-18 12:16:19 -05:00
Mazdak Farrokhzad
733559b0c2
Rollup merge of #67349 - petertodd:2019-unsize-docs, r=Centril
Minor: update Unsize docs for dyn syntax
2019-12-16 17:33:16 +01:00
Mazdak Farrokhzad
5609683fab
Rollup merge of #67322 - lzutao:nonzero-use-self, r=joshtriplett
use Self alias in place of macros
2019-12-16 17:33:10 +01:00
Mazdak Farrokhzad
a6f817f429
Rollup merge of #67249 - ranma42:improve-starts-with-literal-char, r=BurntSushi
Improve code generated for `starts_with(<literal char>)`

This PR includes two minor improvements to the code generated when checking for string prefix/suffix.

The first commit simplifies the str/str operation, by taking advantage of the raw UTF-8 representation.

The second commit replaces the current str/char matching logic with a char->str encoding and then the previous method.

The resulting code should be equivalent in the generic case (one char is being encoded versus one char being decoded), but it becomes easy to optimize in the case of a literal char, which in most cases a developer might expect to be at least as simple as that of a literal string.

This PR should fix #41993
2019-12-16 17:33:01 +01:00
Andrea Canciani
3de1923d5d Add benchmarks for start_with and ends_with 2019-12-16 15:33:16 +01:00
Peter Todd
d16b088d09
Minor: update Unsize docs for dyn syntax 2019-12-16 07:22:40 -05:00
Mazdak Farrokhzad
d18239755a
Rollup merge of #67317 - lcnr:type_name_docs, r=jonas-schievink
fix type_name_of_val doc comment

.
2019-12-16 05:23:36 +01:00
Mazdak Farrokhzad
6b9bb745fa
Rollup merge of #66771 - SimonSapin:panic-stability, r=KodrAus
Stabilize the `core::panic` module

`std::panic` is already stable.

`core::panic::PanicInfo` and `core::panic::Location` are stable and can be used through that path because of a bug in stability checking: #15702
2019-12-16 05:23:35 +01:00
Mazdak Farrokhzad
1c12dc8cdf
Rollup merge of #66735 - SOF3:feature/str_strip, r=KodrAus
Add str::strip_prefix and str::strip_suffix

Introduces a counterpart for `Path::strip_prefix` on `str`.

This was also discussed in https://internals.rust-lang.org/t/pre-pr-path-strip-prefix-counterpart-in-str/11364/.
2019-12-16 05:23:33 +01:00
Mazdak Farrokhzad
84ef88975b
Rollup merge of #66570 - lzutao:stabilize-result-map_or, r=Dylan-DPC
stabilize Result::map_or

r? @SimonSapin
Closes #66293
2019-12-16 05:23:30 +01:00
Elichai Turkel
a9d6889e4d
Replace prints in fmt docs with asserts 2019-12-15 16:53:26 +02:00
Lzu Tao
7bf55f4aa5 use Self alias in place of macros 2019-12-15 13:55:10 +00:00
lcnr/Bastian Kauschke
e28153e7a6 fix doc comment 2019-12-15 12:59:02 +01:00
SOFe
6176051dd0
Set tracking issue for str_strip 2019-12-15 17:07:57 +08:00
Mazdak Farrokhzad
e5c34411f9
Rollup merge of #67305 - kappa:patch-1, r=jonas-schievink
Doc typo
2019-12-15 05:57:28 +01:00
Alex Kapranoff
d0008baebd
Doc typo 2019-12-14 17:12:40 -08:00
bors
6f829840f7 Auto merge of #67224 - nikomatsakis:revert-stabilization-of-never-type, r=centril
Revert stabilization of never type

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

I decided to keep the separate `never-type-fallback` feature gate, but tried to otherwise revert https://github.com/rust-lang/rust/pull/65355. Seemed pretty clean.

( cc @Centril, author of #65355, you may want to check this over briefly )
2019-12-14 22:02:59 +00:00
Niko Matsakis
d286113024 Revert "Stabilize the never_type, written !."
This reverts commit 15c30ddd69.
2019-12-14 09:01:09 -05:00
Niko Matsakis
ca8154861e Revert "Redefine core::convert::Infallible as !."
This reverts commit 089229a193.
2019-12-14 09:00:49 -05:00
bors
c8ea4ace92 Auto merge of #67136 - oli-obk:const_stability, r=Centril
Require stable/unstable annotations for the constness of all stable fns with a const modifier

r? @RalfJung @Centril

Every `#[stable]` const fn now needs either a `#[rustc_const_unstable]` attribute or a `#[rustc_const_stable]` attribute. You can't silently stabilize the constness of a function anymore.
2019-12-14 10:21:32 +00:00
Mazdak Farrokhzad
d0cc289ec0
Rollup merge of #67280 - shalzz:patch-1, r=jonas-schievink
docs: std::convert::From: Fix typo

Fix a minor typo
2019-12-13 20:35:37 +01:00
Shaleen Jain
9abde64a4e
docs: std::convert::From: Fix typo
Fix a minor typo
2019-12-13 23:20:02 +05:30
Oliver Scherer
0b47ba7019 The constness of 128 bit atomics will be stabilized together with the atomics 2019-12-13 13:28:55 +01:00
Ralf Jung
216b9ae878 be explicit that mem::uninitialized is the same as MaybeUninit::uninit().assume_init() 2019-12-13 13:13:37 +01:00
Oliver Scherer
f12affef12 Address review comments 2019-12-13 11:27:02 +01:00
Oliver Scherer
5e17e39881 Require stable/unstable annotations for the constness of all stable functions with a const modifier 2019-12-13 11:27:02 +01:00
Oliver Scherer
d75c7530f3 Reuse the staged_api feature for rustc_const_unstable 2019-12-13 11:27:01 +01:00
Andrea Canciani
de7fefa04c Minor cleanup in Pattern::{is_prefix_of,is_suffix_of} for char 2019-12-12 21:09:17 +01:00
Elichai Turkel
0cc8fe5d43
Change fmt docs for more delegations 2019-12-12 16:03:23 +02:00
Andrea Canciani
1f6d0234db Prefer encoding the char when checking for string prefix/suffix
This enables constant folding when matching a literal char.

Fixes #41993.
2019-12-12 03:33:46 +01:00