auto merge of #2649 : ebalint/servo/2580_JS_T_unrooted_replace, r=jdm

removed .clone() calls
modified from_rooted method parameter: T to &T
This commit is contained in:
bors-servo 2014-06-13 14:33:03 -04:00
commit 7ed5041891
20 changed files with 51 additions and 53 deletions

View file

@ -77,7 +77,7 @@ impl<T: Reflectable> Temporary<T> {
/// Create a new Temporary value from a rooted value.
pub fn from_rooted<'a>(root: &JSRef<'a, T>) -> Temporary<T> {
Temporary::new(root.unrooted())
Temporary::new(JS::from_rooted(root))
}
/// Create a stack-bounded root for this value.
@ -156,7 +156,7 @@ impl<T: Reflectable> JS<T> {
}
impl<T: Assignable<U>, U: Reflectable> JS<U> {
pub fn from_rooted(root: T) -> JS<U> {
pub fn from_rooted(root: &T) -> JS<U> {
unsafe {
root.get_js()
}
@ -279,7 +279,7 @@ pub trait OptionalUnrootable<T> {
impl<'a, T: Reflectable> OptionalUnrootable<T> for Option<JSRef<'a, T>> {
fn unrooted(&self) -> Option<JS<T>> {
self.as_ref().map(|inner| inner.unrooted())
self.as_ref().map(|inner| JS::from_rooted(inner))
}
}