Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove unnecessary `VecLike` trait. #35

Closed
wants to merge 2 commits into from
Closed

Remove unnecessary `VecLike` trait. #35

wants to merge 2 commits into from

Conversation

@frewsxcv
Copy link
Member

frewsxcv commented Oct 3, 2016

This change is Reviewable

@frewsxcv
Copy link
Member Author

frewsxcv commented Oct 3, 2016

It's not clear to me that this trait serves any purpose. Am I overlooking something?

}
pub fn is_empty(&self) -> bool {
self.len == 0
}

This comment has been minimized.

@frewsxcv

frewsxcv Oct 3, 2016

Author Member

These methods are available via Deref, right?

@mbrubeck
Copy link
Contributor

mbrubeck commented Oct 3, 2016

This is used to write generic code that works with both Vec<T> and SmallVec<T>. It's used in Servo's style crate, for example. Closing because we can't remove this without breaking existing code.

@mbrubeck mbrubeck closed this Oct 3, 2016
@frewsxcv
Copy link
Member Author

frewsxcv commented Oct 3, 2016

via IRC:

19:07 <ghservo> [rust-smallvec] frewsxcv opened pull request #35: Remove unnecessary `VecLike` trait. (master...rm-veclike) https://git.io/vPOao
19:10 <frewsxcv> Corey Someone want to sanity check (and/or review) that PR? ^
19:11 <•mbrubeck> frewsxcv: VecLike is used in the style crate
19:11 <frewsxcv> Corey Maybe it should live in the style crate?
19:11 Good to know though
19:12 <•mbrubeck> frewsxcv: It lets you write code that's generic over Vec<T> and SmallVec<T>, so it seems generally useful
19:15 <frewsxcv> Corey Fair enough.
@frewsxcv frewsxcv deleted the rm-veclike branch Oct 3, 2016
@Ms2ger
Copy link
Contributor

Ms2ger commented Oct 4, 2016

I guess it would be fine to move to style.

@mbrubeck
Copy link
Contributor

mbrubeck commented Nov 29, 2017

We may want to revisit this, since the style crate no longer needs this (servo/servo#19424), and code that does use it could be converted to use standard traits like Extend instead.

bors-servo added a commit to servo/servo that referenced this pull request Nov 29, 2017
Remove unused generic from push_applicable_declarations

This function is only ever used with one type.

This gets rid of the only use of the `smallvec::VecLike` trait, which we may want to deprecate (servo/rust-smallvec#35).  If we do need to make this function generic in the future, we can do it using standard traits instead.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are removing unused code

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/19424)
<!-- Reviewable:end -->
bors-servo added a commit that referenced this pull request Nov 29, 2017
Deprecate the VecLike trait

This is an update of PR #35.

This trait is redundant with existing traits like `Extend` and `Deref`.  Its purpose is unclear (you can do a few things with it, but not much) and the one use case I know of has been removed (servo/servo#19424).

<!-- 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/74)
<!-- Reviewable:end -->
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Nov 30, 2017
…arations (from mbrubeck:veclike); r=emilio

This function is only ever used with one type.

This gets rid of the only use of the `smallvec::VecLike` trait, which we may want to deprecate (servo/rust-smallvec#35).  If we do need to make this function generic in the future, we can do it using standard traits instead.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are removing unused code

Source-Repo: https://github.com/servo/servo
Source-Revision: dbe3136a055008d2c27c7d96f20e0c9ce4b1cb1c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : fd711a25e3eeb999712269c39a74c99981975a63
aethanyc pushed a commit to aethanyc/gecko-dev that referenced this pull request Nov 30, 2017
…arations (from mbrubeck:veclike); r=emilio

This function is only ever used with one type.

This gets rid of the only use of the `smallvec::VecLike` trait, which we may want to deprecate (servo/rust-smallvec#35).  If we do need to make this function generic in the future, we can do it using standard traits instead.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are removing unused code

Source-Repo: https://github.com/servo/servo
Source-Revision: dbe3136a055008d2c27c7d96f20e0c9ce4b1cb1c
xeonchen pushed a commit to xeonchen/gecko-cinnabar that referenced this pull request Nov 30, 2017
…arations (from mbrubeck:veclike); r=emilio

This function is only ever used with one type.

This gets rid of the only use of the `smallvec::VecLike` trait, which we may want to deprecate (servo/rust-smallvec#35).  If we do need to make this function generic in the future, we can do it using standard traits instead.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are removing unused code

Source-Repo: https://github.com/servo/servo
Source-Revision: dbe3136a055008d2c27c7d96f20e0c9ce4b1cb1c
JerryShih pushed a commit to JerryShih/gecko-dev that referenced this pull request Dec 5, 2017
…arations (from mbrubeck:veclike); r=emilio

This function is only ever used with one type.

This gets rid of the only use of the `smallvec::VecLike` trait, which we may want to deprecate (servo/rust-smallvec#35).  If we do need to make this function generic in the future, we can do it using standard traits instead.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are removing unused code

Source-Repo: https://github.com/servo/servo
Source-Revision: dbe3136a055008d2c27c7d96f20e0c9ce4b1cb1c
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Oct 2, 2019
…arations (from mbrubeck:veclike); r=emilio

This function is only ever used with one type.

This gets rid of the only use of the `smallvec::VecLike` trait, which we may want to deprecate (servo/rust-smallvec#35).  If we do need to make this function generic in the future, we can do it using standard traits instead.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are removing unused code

Source-Repo: https://github.com/servo/servo
Source-Revision: dbe3136a055008d2c27c7d96f20e0c9ce4b1cb1c

UltraBlame original commit: 6b3c508ccd771b8e529679a7680e7ba03d40ffca
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Oct 2, 2019
…arations (from mbrubeck:veclike); r=emilio

This function is only ever used with one type.

This gets rid of the only use of the `smallvec::VecLike` trait, which we may want to deprecate (servo/rust-smallvec#35).  If we do need to make this function generic in the future, we can do it using standard traits instead.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are removing unused code

Source-Repo: https://github.com/servo/servo
Source-Revision: dbe3136a055008d2c27c7d96f20e0c9ce4b1cb1c

UltraBlame original commit: 6b3c508ccd771b8e529679a7680e7ba03d40ffca
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Oct 2, 2019
…arations (from mbrubeck:veclike); r=emilio

This function is only ever used with one type.

This gets rid of the only use of the `smallvec::VecLike` trait, which we may want to deprecate (servo/rust-smallvec#35).  If we do need to make this function generic in the future, we can do it using standard traits instead.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are removing unused code

Source-Repo: https://github.com/servo/servo
Source-Revision: dbe3136a055008d2c27c7d96f20e0c9ce4b1cb1c

UltraBlame original commit: 6b3c508ccd771b8e529679a7680e7ba03d40ffca
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants
You can’t perform that action at this time.