Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upFirst specialization #123
Merged
First specialization #123
Conversation
lib.rs
Outdated
|
|
||
| #[cfg(feature = "specialization")] | ||
| #[inline] | ||
| default fn from(slice: &'a [A::Item]) -> SmallVec<A> { |
This comment has been minimized.
This comment has been minimized.
nox
Aug 27, 2018
Member
Doesn't that mean that one can specialise the implementation from outside the crate? Shouldn't we be specialising an internal trait used by this impl?
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
I added a new `specialization` feature that will specialize `From<&[_: Copy]>` to use `from_slice`, which offers a nice performance boost. Alas, I could not get any measurable perf improvement on `insert_many` or `extend`, so I'll leave them out for now.
|
This should now be ready for merging. |
|
@bors-servo r+ |
|
|
bors-servo
added a commit
that referenced
this pull request
Aug 30, 2018
First specialization I added a new `specialization` feature that will specialize `From<&[_: Copy]>` to use `from_slice`, which offers a nice performance boost. Alas, I could not get any measurable perf improvement on `insert_many` or `extend` yet, so I'll leave them out for now. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/123) <!-- Reviewable:end -->
|
|
mbrubeck
added a commit
to mbrubeck/rust-smallvec
that referenced
this pull request
Nov 15, 2018
Merged
bors-servo
added a commit
that referenced
this pull request
Nov 16, 2018
Version 0.6.6 Changes in this release: * Fix possible over-allocation in `from_slice` (#122) * Optional nightly-only `specialization` feature for `from_slice` optimization (#123) * New `from_raw_parts` constructor (#130) * Documentation and testing improvements (#125, #129) <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/131) <!-- Reviewable:end -->
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
llogiq commentedAug 27, 2018
•
edited by larsbergstrom
I added a new
specializationfeature that will specializeFrom<&[_: Copy]>to usefrom_slice, which offers a nice performance boost.Alas, I could not get any measurable perf improvement on
insert_manyorextendyet, so I'll leave them out for now.This change is