Clar Charr
f8d5f90ade
Move Drop to module.
2017-06-09 19:07:27 -04:00
Clar Charr
b099e0e786
Move CoerceUnsized to module.
2017-06-09 19:07:27 -04:00
Clar Charr
6693b4d505
Move Index to module.
2017-06-09 19:07:27 -04:00
Clar Charr
fefa521e50
Move Deref to module.
2017-06-09 19:07:27 -04:00
Clar Charr
bc9dc0ab3e
Move Try to module.
2017-06-09 19:07:27 -04:00
Clar Charr
f774cddcf2
Move placement new operators to module.
2017-06-09 19:07:26 -04:00
Clar Charr
d460aca720
Move bit ops to module.
2017-06-09 19:07:26 -04:00
Clar Charr
75677e0646
Move arithmetic ops to module.
2017-06-09 19:07:26 -04:00
Clar Charr
b9c8e99955
Move Fn to module.
2017-06-09 19:07:25 -04:00
Georg Brandl
496bd63f33
Simplify FromIterator example of Result
2017-06-09 22:20:32 +02:00
Djzin
83f1f118e5
hack around bug in emscripten
2017-06-09 07:07:58 +01:00
Scott McMurray
6d86f0c018
Use ctlz_nonzero to improve ASM from next_power_of_two
2017-06-08 23:01:39 -07:00
Scott McMurray
13e2400347
Add ctlz_nonzero & cttz_nonzero intrinsics
...
LLVM currently doesn't remove the "bypass if argument is zero" assembly inside branches where the value is known to be non-zero, pessimizing code that uses uN::leading_zeros
2017-06-08 23:01:39 -07:00
Tshepang Lekhonkhobe
c288864ed0
doc: a more complete explanation, and a better example
2017-06-08 22:52:54 +02:00
Squirrel
de8bbd2b16
Assert failure message easier to read
...
By having the left and right strings above and below on the same line it helps spot the difference between the two. E.g.
thread 'tests::test_safe_filename' panicked at 'assertion failed: `(left == right)`
left: `"-aandb--S123.html"`
right: `"-aandb-S123.html"`',
When the strings are both on the same line it take a lot longer to spot the difference. It is a small change but the small time savings add up with repetition. This helps Rust be an excellent language to write tests in.
2017-06-08 18:38:49 +01:00
bors
e1fa8de0fb
Auto merge of #42522 - frewsxcv:rollup, r=frewsxcv
...
Rollup of 5 pull requests
- Successful merges: #42470 , #42490 , #42497 , #42510 , #42512
- Failed merges:
2017-06-08 03:46:16 +00:00
Clar Charr
cee5a2dd20
Move Range to module.
2017-06-07 21:53:33 -04:00
Clar Charr
6f5987b05b
Move ops.rs to folder.
2017-06-07 21:40:25 -04:00
bors
d8d5592596
Auto merge of #40706 - irfanhudda:doc-next-power-of-two, r=alexcrichton
...
Improve documentation of next_power_of_two
Clarify overflow behavior of `next_power_of_two`.
Related Issue: #18604
2017-06-08 01:07:08 +00:00
Sean McArthur
f51771939b
core: allow messages in unimplemented!() macro
2017-06-07 17:06:55 -07:00
Matt Brubeck
b6193f3c00
Update docs to say iterator instead of range
2017-06-07 09:24:35 -07:00
Nick Whitney
a32ffc6797
Alias std::cmp::max/min to Ord::max/min
2017-06-06 23:00:09 -04:00
Nick Whitney
2cadc32b66
Add max and min default fns to Ord trait
...
Pursuant to issue #25663 , this commit adds the max and min functions to the Ord trait, enabling items that implement Ord to use UFCS (ex. 1.max(2)) instead of the longer std::cmp::max(1,2) format.
2017-06-06 22:42:48 -04:00
Corey Farwell
7f8467eaaf
Rollup merge of #42469 - citizen428:document-assert-macros, r=steveklabnik
...
Doc changes for assert macros
See #29381
2017-06-06 22:36:36 -04:00
Michael Kohl
867ed2e17d
Doc changes for assert macros
...
See #29381
2017-06-05 16:46:12 +07:00
king6cong
018722e485
doc rewording
2017-06-05 11:02:38 +08:00
Scott McMurray
808a08a363
Add overflow checking for str::get with inclusive ranges
...
Fixes #42401
2017-06-04 11:08:25 -07:00
Scott McMurray
18612b21d0
Delegate str:Index(Mut) to SliceIndex<str>
...
Move any extra logic that the former had into the latter, so they're consistent.
2017-06-04 01:47:21 -07:00
bors
0b17b4c084
Auto merge of #42265 - Zoxc:for-sugar, r=eddyb
...
Change for-loop desugar to not borrow the iterator during the loop
This is enables the use of suspend points inside for-loops in movable generators. This is illegal in the current desugaring as `iter` is borrowed across the body.
2017-06-04 05:44:39 +00:00
Mark Simulacrum
1316281f2d
Rollup merge of #42310 - scottmcm:deprecate-range-stepby, r=alexcrichton
...
Deprecate range-specific `step_by`
Deprecation attributes and test updates only.
Was replaced by an any-iterator version in https://github.com/rust-lang/rust/pull/41439
Last follow-up (this release) to https://github.com/rust-lang/rust/pull/42110#issuecomment-303210138
r? @alexcrichton
2017-06-02 09:10:42 -06:00
bors
558cd1e393
Auto merge of #41670 - scottmcm:slice-rotate, r=alexcrichton
...
Add an in-place rotate method for slices to libcore
A helpful primitive for moving chunks of data around inside a slice.
For example, if you have a range selected and are drag-and-dropping it somewhere else (Example from [Sean Parent's talk](https://youtu.be/qH6sSOr-yk8?t=560 )).
(If this should be an RFC instead of a PR, please let me know.)
Edit: changed example
2017-06-02 07:51:20 +00:00
bors
668e698bba
Auto merge of #41418 - hirschenberger:prefetch-intrinsic, r=nagisa
...
Adding support for the llvm `prefetch` intrinsic
Optimize `slice::binary_search` by using prefetching.
2017-06-02 04:58:09 +00:00
John Kåre Alsaker
cfdbff7c12
Change for-loop desugar to not borrow the iterator during the loop
2017-06-01 18:33:47 +02:00
Falco Hirschenberger
f83901bb89
Adding support for the llvm prefetch intrinsic
...
Related to #37251
2017-06-01 08:34:16 +02:00
Scott McMurray
15dff84dc3
Avoid range::step_by in another test
2017-05-31 22:35:35 -07:00
Scott McMurray
1723e063c9
Deprecate iter::range::StepBy
...
Only exposed as DeprecatedStepBy (as of PR 41439)
2017-05-31 22:35:34 -07:00
Scott McMurray
0967e2495d
Deprecate Range*::step_by
...
Changed all the tests except test_range_step to use Iterator::step_by.
2017-05-31 22:35:34 -07:00
Corey Farwell
dbc9d71b17
Rollup merge of #42275 - scottmcm:try-trait, r=nikomatsakis
...
Lower `?` to `Try` instead of `Carrier`
The easy parts of https://github.com/rust-lang/rfcs/pull/1859 , whose FCP completed without further comments.
Just the trait and the lowering -- neither the error message improvements nor the insta-stable impl for Option nor exhaustive docs.
Based on a [github search](https://github.com/search?l=rust&p=1&q=question_mark_carrier&type=Code&utf8=%E2%9C%93 ), this will break the following:
- 00206e34c6/src/serialize.rs (L38)
- b1325898f4/src/result.rs (L50)
The other results appear to be files from libcore or its tests. I could also leave Carrier around after stage0 and `impl<T:Carrier> Try for T` if that would be better.
r? @nikomatsakis
Edit: Oh, and it might accidentally improve perf, based on https://github.com/rust-lang/rust/issues/37939#issuecomment-265803670 , since `Try::into_result` for `Result` is an obvious no-op, unlike `Carrier::translate`.
2017-06-01 00:09:20 -04:00
Irfan Hudda
18fadb61c4
Simplify helper functions
...
Based on @scottmcm 's suggestion
2017-05-31 22:25:15 +05:30
Mark Simulacrum
0c339ffbc0
Rollup merge of #42329 - rap2hpoutre:patch-6, r=steveklabnik
...
fix links to "module-level documentation"
see https://github.com/rust-lang/rust/issues/42267
2017-05-31 10:52:49 -06:00
Mark Simulacrum
b62eb7fed8
Rollup merge of #42315 - scottmcm:rangefrom-sizehint, r=alexcrichton
...
RangeFrom should have an infinite size_hint
Before,
```rust
(0..).take(4).size_hint() == (0, Some(4))
```
With this change,
```rust
(0..).take(4).size_hint() == (4, Some(4))
```
2017-05-31 10:52:48 -06:00
Mark Simulacrum
c0df1d4e80
Rollup merge of #42252 - stjepang:clarify-alignof-docs, r=nikomatsakis
...
Clarify the docs for align_of and its variants
It's okay to have unaligned raw pointers and then use `ptr::write_unaligned` and `ptr::read_unaligned`.
However, using unaligned `&T` and `&mut T` would be undefined behavior.
The current documentation seems to indicate that everything has to be aligned, but in reality only references do. This PR changes the text of docs accordingly.
r? @sfackler
2017-05-31 10:52:46 -06:00
Mark Simulacrum
d5a7fd585f
Rollup merge of #42126 - clarcharr:into_docs, r=steveklabnik
...
Clarify docs on implementing Into.
This was suggested by @dtolnay in #40380 .
This explicitly clarifies in what circumstances you should implement `Into` instead of `From`.
2017-05-31 10:52:44 -06:00
Raphaël Huchet
69f822524f
fix links to "module-level documentation"
2017-05-31 11:38:19 +02:00
Scott McMurray
7a87469af7
Give the try_trait feature its own tracking issue
2017-05-31 01:30:13 -07:00
Stjepan Glavina
c25e271858
Add 'the'
2017-05-30 21:34:50 +02:00
Scott McMurray
265dce66b6
RangeFrom should have an infinite size_hint
...
This makes the size_hint from things like `take` more precise.
2017-05-30 09:15:25 -07:00
Clar Charr
54bbe23b2e
Clarify docs on implementing Into.
2017-05-28 16:13:56 -04:00
Djzin
b795b7b43b
restore old behaviour
2017-05-28 18:10:12 +01:00
Djzin
8a973dfa24
restore old behaviour for sizes < 128
2017-05-28 15:39:47 +01:00