rust/src/libcore
Tyler Mandry 76fb91be84
Rollup merge of #64885 - andjo403:iter, r=scottmcm
use try_fold instead of try_for_each to reduce compile time

as it was stated in #64572 that the biggest gain was due to less code was generated I tried to reduce the number of functions to inline by using try_fold direct instead of calling try_for_each that calls try_fold.

as there is some gains with using the try_fold function this is maybe a way forward.
when I tried to compile the clap-rs benchmark I get times gains only some % from #64572

there is more function that use eg. fold that calls try_fold that also can be changed but the question is how mush "duplication" that is tolerated in std to give faster compile times

can someone start a perf run?

cc @nnethercote @scottmcm @bluss
r? @ghost
2019-10-01 23:06:17 -07:00
..
benches Improve ptr_rotate performance, tests, and benchmarks 2019-08-06 10:42:48 -05:00
char Remove unneeded fn main blocks from docs 2019-10-01 11:55:46 +00:00
fmt Remove unneeded fn main blocks from docs 2019-10-01 11:55:46 +00:00
future Use associated_type_bounds where applicable - closes #61738 2019-08-08 22:39:15 +02:00
hash Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
iter replace try_for_each with try_fold to generate less code 2019-10-01 07:56:18 +02:00
mem Add missing links for mem::needs_drop 2019-09-30 16:12:01 +00:00
num Add lower bound doctests for saturating_{add,sub} signed ints 2019-10-01 05:46:50 +00:00
ops Added an extra line to make the formatting conform to the rest of the document. 2019-08-24 13:38:09 +02:00
prelude Remove __rust_unstable_column 2019-08-15 22:58:57 +03:00
ptr Remove unneeded fn main blocks from docs 2019-10-01 11:55:46 +00:00
slice Auto merge of #64600 - scottmcm:no-slice-tryfold-unroll, r=bluss 2019-09-30 09:52:29 +00:00
str Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
sync Rollup merge of #64348 - arnohaase:pr_documentation_spin_loop_hint, r=alexcrichton 2019-09-18 10:58:05 -07:00
task Provide map_ok and map_err method for Poll<Option<Result<T, E>>> 2019-08-13 15:15:33 +05:30
tests Auto merge of #64047 - timvermeulen:cmp_min_max_by, r=cuviper 2019-09-21 04:21:25 +00:00
unicode it's more pythonic to use 'is not None' in python files 2019-09-06 15:14:25 +08:00
alloc.rs Fix clippy::clone_on_copy warnings 2019-07-18 15:14:56 +02:00
any.rs Remove unneeded fn main blocks from docs 2019-10-01 11:55:46 +00:00
array.rs FixedSizeArray: Add missing links in doc comments. 2019-08-01 20:24:05 +07:00
ascii.rs Implement Clone, Display for ascii::EscapeDefault 2019-08-09 22:45:06 -04:00
bool.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
borrow.rs be more direct about borrow requirenments 2019-04-03 11:41:24 +03:00
Cargo.toml bump libcore tests to rand 0.7 2019-08-04 14:50:32 +02:00
cell.rs Auto merge of #62748 - luca-barbieri:optimize-refcell-borrow, r=RalfJung 2019-07-27 09:32:44 +00:00
clone.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
cmp.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
convert.rs address rebase damage 2019-09-25 23:18:31 +03:00
default.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
ffi.rs Make VaListImpl<'f> invariant over the 'f lifetime 2019-07-14 18:14:15 -07:00
hint.rs broken hyperlinks in documentation 2019-09-18 12:31:34 +02:00
internal_macros.rs std: Remove internal definitions of cfg_if! macro 2019-06-10 10:58:44 -07:00
intrinsics.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
iter_private.rs Remove licenses 2018-12-25 21:08:33 -07:00
lib.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
macros.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
marker.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
option.rs Fixed a misleading documentation issue #64844 2019-09-30 00:26:42 -05:00
panic.rs libcore: deny more... 2019-04-19 01:37:12 +02:00
panicking.rs Snap cfgs to new beta 2019-09-25 08:42:46 -04:00
pin.rs pin.rs: fix links to primitives in documentation 2019-09-27 14:33:08 +00:00
raw.rs Fix more tests after revert of rustdoc cfg(test) feature 2019-06-09 18:15:53 +01:00
result.rs Auto merge of #63166 - ksqsf:master, r=alexcrichton 2019-09-04 07:47:08 +00:00
time.rs fix tests 2019-07-30 16:41:03 +00:00
tuple.rs libcore => 2018 2019-04-18 14:47:35 +09:00
unit.rs libcore => 2018 2019-04-18 14:47:35 +09:00