diff options
author | Anthony Ramine <n.oxyde@gmail.com> | 2016-05-31 14:43:58 +0200 |
---|---|---|
committer | Anthony Ramine <n.oxyde@gmail.com> | 2016-05-31 14:43:58 +0200 |
commit | b45f1918d16a4c94a18968dc6b69b74408f71083 (patch) | |
tree | f255ab743ffb86040631275e90330625973dceff /components/script/dom | |
parent | 134fd1876718e9e547873c5d1acf140ae5d6aaac (diff) | |
download | servo-b45f1918d16a4c94a18968dc6b69b74408f71083.tar.gz servo-b45f1918d16a4c94a18968dc6b69b74408f71083.zip |
Remove JS::from_rooted
Diffstat (limited to 'components/script/dom')
-rw-r--r-- | components/script/dom/bindings/js.rs | 9 | ||||
-rw-r--r-- | components/script/dom/bindings/trace.rs | 2 | ||||
-rw-r--r-- | components/script/dom/canvasrenderingcontext2d.rs | 4 | ||||
-rw-r--r-- | components/script/dom/document.rs | 14 | ||||
-rw-r--r-- | components/script/dom/domrectlist.rs | 2 | ||||
-rw-r--r-- | components/script/dom/filelist.rs | 2 | ||||
-rw-r--r-- | components/script/dom/formdata.rs | 4 | ||||
-rw-r--r-- | components/script/dom/htmlcanvaselement.rs | 4 | ||||
-rw-r--r-- | components/script/dom/htmltableelement.rs | 2 | ||||
-rw-r--r-- | components/script/dom/node.rs | 6 | ||||
-rw-r--r-- | components/script/dom/nodelist.rs | 2 | ||||
-rw-r--r-- | components/script/dom/performance.rs | 2 | ||||
-rw-r--r-- | components/script/dom/radionodelist.rs | 2 | ||||
-rw-r--r-- | components/script/dom/xmlhttprequest.rs | 2 |
14 files changed, 24 insertions, 33 deletions
diff --git a/components/script/dom/bindings/js.rs b/components/script/dom/bindings/js.rs index 39bd64534af..9adce87d7be 100644 --- a/components/script/dom/bindings/js.rs +++ b/components/script/dom/bindings/js.rs @@ -76,15 +76,6 @@ impl<T> JS<T> { } impl<T: Reflectable> JS<T> { - /// Create a JS<T> from a Root<T> - /// XXX Not a great API. Should be a call on Root<T> instead - #[allow(unrooted_must_root)] - pub fn from_rooted(root: &Root<T>) -> JS<T> { - debug_assert!(thread_state::get().is_script()); - JS { - ptr: unsafe { NonZero::new(&**root) }, - } - } /// Create a JS<T> from a &T #[allow(unrooted_must_root)] pub fn from_ref(obj: &T) -> JS<T> { diff --git a/components/script/dom/bindings/trace.rs b/components/script/dom/bindings/trace.rs index 65bed8b0bf1..10a815fffa7 100644 --- a/components/script/dom/bindings/trace.rs +++ b/components/script/dom/bindings/trace.rs @@ -540,7 +540,7 @@ impl<A: JSTraceable + Reflectable> FromIterator<Root<A>> for RootedVec<JS<A>> { let mut vec = unsafe { RootedVec::new_with_destination_address(return_address() as *const libc::c_void) }; - vec.extend(iterable.into_iter().map(|item| JS::from_rooted(&item))); + vec.extend(iterable.into_iter().map(|item| JS::from_ref(&*item))); vec } } diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs index 6507d013010..cd3583edf4f 100644 --- a/components/script/dom/canvasrenderingcontext2d.rs +++ b/components/script/dom/canvasrenderingcontext2d.rs @@ -996,14 +996,14 @@ impl CanvasRenderingContext2DMethods for CanvasRenderingContext2D { } StringOrCanvasGradientOrCanvasPattern::CanvasGradient(gradient) => { self.state.borrow_mut().fill_style = - CanvasFillOrStrokeStyle::Gradient(JS::from_rooted(&gradient)); + CanvasFillOrStrokeStyle::Gradient(JS::from_ref(&*gradient)); let msg = CanvasMsg::Canvas2d( Canvas2dMsg::SetFillStyle(gradient.to_fill_or_stroke_style())); self.ipc_renderer.send(msg).unwrap(); } StringOrCanvasGradientOrCanvasPattern::CanvasPattern(pattern) => { self.state.borrow_mut().fill_style = - CanvasFillOrStrokeStyle::Pattern(JS::from_rooted(&pattern)); + CanvasFillOrStrokeStyle::Pattern(JS::from_ref(&*pattern)); let msg = CanvasMsg::Canvas2d( Canvas2dMsg::SetFillStyle(pattern.to_fill_or_stroke_style())); self.ipc_renderer.send(msg).unwrap(); diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs index a12f122e2c6..7729fe5a29a 100644 --- a/components/script/dom/document.rs +++ b/components/script/dom/document.rs @@ -983,13 +983,13 @@ impl Document { match event_type { TouchEventType::Down => { // Add a new touch point - self.active_touch_points.borrow_mut().push(JS::from_rooted(&touch)); + self.active_touch_points.borrow_mut().push(JS::from_ref(&*touch)); } TouchEventType::Move => { // Replace an existing touch point let mut active_touch_points = self.active_touch_points.borrow_mut(); match active_touch_points.iter_mut().find(|t| t.Identifier() == identifier) { - Some(t) => *t = JS::from_rooted(&touch), + Some(t) => *t = JS::from_ref(&*touch), None => warn!("Got a touchmove event for a non-active touch point"), } } @@ -1010,7 +1010,7 @@ impl Document { touches.extend(self.active_touch_points.borrow().iter().cloned()); let mut changed_touches = RootedVec::new(); - changed_touches.push(JS::from_rooted(&touch)); + changed_touches.push(JS::from_ref(&*touch)); let mut target_touches = RootedVec::new(); target_touches.extend(self.active_touch_points @@ -1775,7 +1775,7 @@ impl Document { node.get_stylesheet() } else { None - }.map(|stylesheet| (JS::from_rooted(&node), stylesheet)) + }.map(|stylesheet| (JS::from_ref(&*node), stylesheet)) }) .collect()); }; @@ -1998,7 +1998,7 @@ impl DocumentMethods for Document { self.upcast(), tag_atom, ascii_lower_tag); - entry.insert(JS::from_rooted(&result)); + entry.insert(JS::from_ref(&*result)); result } } @@ -2016,7 +2016,7 @@ impl DocumentMethods for Document { Occupied(entry) => Root::from_ref(entry.get()), Vacant(entry) => { let result = HTMLCollection::by_qual_tag_name(&self.window, self.upcast(), qname); - entry.insert(JS::from_rooted(&result)); + entry.insert(JS::from_ref(&*result)); result } } @@ -2033,7 +2033,7 @@ impl DocumentMethods for Document { let result = HTMLCollection::by_atomic_class_name(&self.window, self.upcast(), class_atoms); - entry.insert(JS::from_rooted(&result)); + entry.insert(JS::from_ref(&*result)); result } } diff --git a/components/script/dom/domrectlist.rs b/components/script/dom/domrectlist.rs index b6411dbca86..adb246158f4 100644 --- a/components/script/dom/domrectlist.rs +++ b/components/script/dom/domrectlist.rs @@ -22,7 +22,7 @@ impl DOMRectList { { DOMRectList { reflector_: Reflector::new(), - rects: rects.map(|r| JS::from_rooted(&r)).collect(), + rects: rects.map(|r| JS::from_ref(&*r)).collect(), } } diff --git a/components/script/dom/filelist.rs b/components/script/dom/filelist.rs index bf7243d9e73..96bfc4ce0d3 100644 --- a/components/script/dom/filelist.rs +++ b/components/script/dom/filelist.rs @@ -28,7 +28,7 @@ impl FileList { #[allow(unrooted_must_root)] pub fn new(window: &Window, files: Vec<Root<File>>) -> Root<FileList> { - reflect_dom_object(box FileList::new_inherited(files.iter().map(|r| JS::from_rooted(&r)).collect()), + reflect_dom_object(box FileList::new_inherited(files.iter().map(|r| JS::from_ref(&**r)).collect()), GlobalRef::Window(window), FileListBinding::Wrap) } diff --git a/components/script/dom/formdata.rs b/components/script/dom/formdata.rs index c7521a94365..d0bb67d54a0 100644 --- a/components/script/dom/formdata.rs +++ b/components/script/dom/formdata.rs @@ -66,7 +66,7 @@ impl FormDataMethods for FormData { #[allow(unrooted_must_root)] // https://xhr.spec.whatwg.org/#dom-formdata-append fn Append_(&self, name: USVString, value: &Blob, filename: Option<USVString>) { - let blob = FormDatum::BlobData(JS::from_rooted(&self.get_file_or_blob(value, filename))); + let blob = FormDatum::BlobData(JS::from_ref(&*self.get_file_or_blob(value, filename))); let mut data = self.data.borrow_mut(); match data.entry(Atom::from(name.0)) { Occupied(entry) => entry.into_mut().push(blob), @@ -113,7 +113,7 @@ impl FormDataMethods for FormData { fn Set(&self, name: USVString, value: BlobOrUSVString) { let val = match value { BlobOrUSVString::USVString(s) => FormDatum::StringData(s.0), - BlobOrUSVString::Blob(b) => FormDatum::BlobData(JS::from_rooted(&b)) + BlobOrUSVString::Blob(b) => FormDatum::BlobData(JS::from_ref(&*b)) }; self.data.borrow_mut().insert(Atom::from(name.0), vec!(val)); } diff --git a/components/script/dom/htmlcanvaselement.rs b/components/script/dom/htmlcanvaselement.rs index 5bd8f77e630..18dcb6d2e34 100644 --- a/components/script/dom/htmlcanvaselement.rs +++ b/components/script/dom/htmlcanvaselement.rs @@ -145,7 +145,7 @@ impl HTMLCanvasElement { let window = window_from_node(self); let size = self.get_size(); let context = CanvasRenderingContext2D::new(GlobalRef::Window(window.r()), self, size); - *self.context.borrow_mut() = Some(CanvasContext::Context2d(JS::from_rooted(&context))); + *self.context.borrow_mut() = Some(CanvasContext::Context2d(JS::from_ref(&*context))); } match *self.context.borrow().as_ref().unwrap() { @@ -175,7 +175,7 @@ impl HTMLCanvasElement { let maybe_ctx = WebGLRenderingContext::new(GlobalRef::Window(window.r()), self, size, attrs); - *self.context.borrow_mut() = maybe_ctx.map( |ctx| CanvasContext::WebGL(JS::from_rooted(&ctx))); + *self.context.borrow_mut() = maybe_ctx.map( |ctx| CanvasContext::WebGL(JS::from_ref(&*ctx))); } if let Some(CanvasContext::WebGL(ref context)) = *self.context.borrow() { diff --git a/components/script/dom/htmltableelement.rs b/components/script/dom/htmltableelement.rs index 15961b3d514..26a373a3630 100644 --- a/components/script/dom/htmltableelement.rs +++ b/components/script/dom/htmltableelement.rs @@ -143,7 +143,7 @@ impl HTMLTableElementMethods for HTMLTableElement { sections: self.upcast::<Node>() .children() .filter_map(|ref node| - node.downcast::<HTMLTableSectionElement>().map(|_| JS::from_rooted(node))) + node.downcast::<HTMLTableSectionElement>().map(|_| JS::from_ref(&**node))) .collect() }; HTMLCollection::new(window_from_node(self).r(), self.upcast(), box filter) diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs index 35236dbcb4c..384465a8039 100644 --- a/components/script/dom/node.rs +++ b/components/script/dom/node.rs @@ -1517,7 +1517,7 @@ impl Node { let mut new_nodes = RootedVec::new(); let new_nodes = if let NodeTypeId::DocumentFragment = node.type_id() { // Step 3. - new_nodes.extend(node.children().map(|kid| JS::from_rooted(&kid))); + new_nodes.extend(node.children().map(|kid| JS::from_ref(&*kid))); // Step 4: mutation observers. // Step 5. for kid in new_nodes.r() { @@ -1563,7 +1563,7 @@ impl Node { let mut added_nodes = RootedVec::new(); let added_nodes = if let Some(node) = node.as_ref() { if let NodeTypeId::DocumentFragment = node.type_id() { - added_nodes.extend(node.children().map(|child| JS::from_rooted(&child))); + added_nodes.extend(node.children().map(|child| JS::from_ref(&*child))); added_nodes.r() } else { ref_slice(node) @@ -2106,7 +2106,7 @@ impl NodeMethods for Node { // Step 12. let mut nodes = RootedVec::new(); let nodes = if node.type_id() == NodeTypeId::DocumentFragment { - nodes.extend(node.children().map(|node| JS::from_rooted(&node))); + nodes.extend(node.children().map(|node| JS::from_ref(&*node))); nodes.r() } else { ref_slice(&node) diff --git a/components/script/dom/nodelist.rs b/components/script/dom/nodelist.rs index 2d1bbe363a7..fc4e13d6fbe 100644 --- a/components/script/dom/nodelist.rs +++ b/components/script/dom/nodelist.rs @@ -43,7 +43,7 @@ impl NodeList { pub fn new_simple_list<T>(window: &Window, iter: T) -> Root<NodeList> where T: Iterator<Item=Root<Node>> { - NodeList::new(window, NodeListType::Simple(iter.map(|r| JS::from_rooted(&r)).collect())) + NodeList::new(window, NodeListType::Simple(iter.map(|r| JS::from_ref(&*r)).collect())) } pub fn new_child_list(window: &Window, node: &Node) -> Root<NodeList> { diff --git a/components/script/dom/performance.rs b/components/script/dom/performance.rs index 07ddbe2c312..d641d355eb6 100644 --- a/components/script/dom/performance.rs +++ b/components/script/dom/performance.rs @@ -26,7 +26,7 @@ impl Performance { navigation_start_precise: f64) -> Performance { Performance { reflector_: Reflector::new(), - timing: JS::from_rooted(&PerformanceTiming::new(window, + timing: JS::from_ref(&*PerformanceTiming::new(window, navigation_start, navigation_start_precise)), } diff --git a/components/script/dom/radionodelist.rs b/components/script/dom/radionodelist.rs index e0c35179269..d88fc69eacd 100644 --- a/components/script/dom/radionodelist.rs +++ b/components/script/dom/radionodelist.rs @@ -38,7 +38,7 @@ impl RadioNodeList { pub fn new_simple_list<T>(window: &Window, iter: T) -> Root<RadioNodeList> where T: Iterator<Item=Root<Node>> { - RadioNodeList::new(window, NodeListType::Simple(iter.map(|r| JS::from_rooted(&r)).collect())) + RadioNodeList::new(window, NodeListType::Simple(iter.map(|r| JS::from_ref(&*r)).collect())) } pub fn empty(window: &Window) -> Root<RadioNodeList> { diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs index 743a06ff5ec..1000c1b302b 100644 --- a/components/script/dom/xmlhttprequest.rs +++ b/components/script/dom/xmlhttprequest.rs @@ -157,7 +157,7 @@ impl XMLHttpRequest { ready_state: Cell::new(XMLHttpRequestState::Unsent), timeout: Cell::new(0u32), with_credentials: Cell::new(false), - upload: JS::from_rooted(&XMLHttpRequestUpload::new(global)), + upload: JS::from_ref(&*XMLHttpRequestUpload::new(global)), response_url: DOMRefCell::new(String::from("")), status: Cell::new(0), status_text: DOMRefCell::new(ByteString::new(vec!())), |