Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge #1053: Implement iter::size_hint and ExactSizeIterator for Witn…
…ess Iter ec8dada Implement iter::size_hint and ExactSizeIterator for Witness Iter (Riccardo Casatta) Pull request description: close #1050 I don't think we need to change the `collect` since it use the `size_hint()` lower bound to initially allocate // with size_hint // test blockdata::witness::benches::bench_big_witness_to_vec ... bench: 313 ns/iter (+/- 13) // test blockdata::witness::benches::bench_witness_to_vec ... bench: 204 ns/iter (+/- 11) // without // test blockdata::witness::benches::bench_big_witness_to_vec ... bench: 489 ns/iter (+/- 28) // test blockdata::witness::benches::bench_witness_to_vec ... bench: 221 ns/iter (+/- 102) The reason why the small witness doesn't get big perf boost is because by default vec allocates 4 slots ACKs for top commit: Kixunil: ACK ec8dada apoelstra: ACK ec8dada Tree-SHA512: dbe09ba6ebd4014fe0639412894beedab6cc7e844a5ec1697af8f0694b62ae5d423a801df1b48ac7029444c01877975e2d5168728f038fbd4f5808bda90e0f2f
- Loading branch information