Skip to content

Commit 3b8e1f3

Browse files
committed
Implement Into<Vec<T>> for SmallVector<T>
1 parent 8104df2 commit 3b8e1f3

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

src/libsyntax/util/small_vector.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,16 @@ enum SmallVectorRepr<T> {
2929
Many(Vec<T>),
3030
}
3131

32+
impl<T> Into<Vec<T>> for SmallVector<T> {
33+
fn into(self) -> Vec<T> {
34+
match self.repr {
35+
Zero => Vec::new(),
36+
One(t) => vec![t],
37+
Many(vec) => vec,
38+
}
39+
}
40+
}
41+
3242
impl<T> FromIterator<T> for SmallVector<T> {
3343
fn from_iter<I: IntoIterator<Item=T>>(iter: I) -> SmallVector<T> {
3444
let mut v = SmallVector::zero();

0 commit comments

Comments
 (0)