Initial vendor packages
Signed-off-by: Valentin Popov <valentin@popov.link>
This commit is contained in:
19
vendor/smallvec/src/arbitrary.rs
vendored
Normal file
19
vendor/smallvec/src/arbitrary.rs
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
use crate::{Array, SmallVec};
|
||||
use arbitrary::{Arbitrary, Unstructured};
|
||||
|
||||
impl<'a, A: Array> Arbitrary<'a> for SmallVec<A>
|
||||
where
|
||||
<A as Array>::Item: Arbitrary<'a>,
|
||||
{
|
||||
fn arbitrary(u: &mut Unstructured<'a>) -> arbitrary::Result<Self> {
|
||||
u.arbitrary_iter()?.collect()
|
||||
}
|
||||
|
||||
fn arbitrary_take_rest(u: Unstructured<'a>) -> arbitrary::Result<Self> {
|
||||
u.arbitrary_take_rest_iter()?.collect()
|
||||
}
|
||||
|
||||
fn size_hint(depth: usize) -> (usize, Option<usize>) {
|
||||
arbitrary::size_hint::and(<usize as Arbitrary>::size_hint(depth), (0, None))
|
||||
}
|
||||
}
|
2457
vendor/smallvec/src/lib.rs
vendored
Normal file
2457
vendor/smallvec/src/lib.rs
vendored
Normal file
File diff suppressed because it is too large
Load Diff
19
vendor/smallvec/src/specialization.rs
vendored
Normal file
19
vendor/smallvec/src/specialization.rs
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Implementations that require `default fn`.
|
||||
|
||||
use super::{Array, SmallVec, SpecFrom};
|
||||
|
||||
impl<'a, A: Array> SpecFrom<A, &'a [A::Item]> for SmallVec<A>
|
||||
where
|
||||
A::Item: Clone,
|
||||
{
|
||||
#[inline]
|
||||
default fn spec_from(slice: &'a [A::Item]) -> SmallVec<A> {
|
||||
slice.into_iter().cloned().collect()
|
||||
}
|
||||
}
|
1013
vendor/smallvec/src/tests.rs
vendored
Normal file
1013
vendor/smallvec/src/tests.rs
vendored
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user