core: Don't call into the runtime to reserve if we have capacity
This commit is contained in:
parent
c0a99790cb
commit
b7b66b6cb3
|
@ -1504,7 +1504,9 @@ capacity, then no action is taken.
|
||||||
* n - The number of bytes to reserve space for
|
* n - The number of bytes to reserve space for
|
||||||
"]
|
"]
|
||||||
fn reserve(&s: str, n: uint) {
|
fn reserve(&s: str, n: uint) {
|
||||||
rustrt::str_reserve_shared(s, n);
|
if capacity(s) < n {
|
||||||
|
rustrt::str_reserve_shared(s, n);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[doc = "
|
#[doc = "
|
||||||
|
|
|
@ -113,7 +113,10 @@ capacity, then no action is taken.
|
||||||
* n - The number of elements to reserve space for
|
* n - The number of elements to reserve space for
|
||||||
"]
|
"]
|
||||||
fn reserve<T>(&v: [const T], n: uint) {
|
fn reserve<T>(&v: [const T], n: uint) {
|
||||||
rustrt::vec_reserve_shared(sys::get_type_desc::<T>(), v, n);
|
// Only make the (slow) call into the runtime if we have to
|
||||||
|
if capacity(v) < n {
|
||||||
|
rustrt::vec_reserve_shared(sys::get_type_desc::<T>(), v, n);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[doc = "
|
#[doc = "
|
||||||
|
|
Loading…
Reference in New Issue