aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/servoparser/xml.rs
diff options
context:
space:
mode:
authorJosh Matthews <josh@joshmatthews.net>2025-03-16 10:08:22 -0400
committerGitHub <noreply@github.com>2025-03-16 14:08:22 +0000
commitc8d878795966f0b685385e6961e0d69df4268734 (patch)
tree3560dee84d5ed70506b1de90910d361868b868dd /components/script/dom/servoparser/xml.rs
parentd35da38a2fd6f093967e74f704612391b4988e69 (diff)
downloadservo-c8d878795966f0b685385e6961e0d69df4268734.tar.gz
servo-c8d878795966f0b685385e6961e0d69df4268734.zip
Move CustomTraceable to script_bindings. (#35988)
* script: Move CustomTraceable to script_bindings. Signed-off-by: Josh Matthews <josh@joshmatthews.net> * script: Move record binding support to script_bindings. Signed-off-by: Josh Matthews <josh@joshmatthews.net> * Address clippy warnings. Signed-off-by: Josh Matthews <josh@joshmatthews.net> --------- Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Diffstat (limited to 'components/script/dom/servoparser/xml.rs')
-rw-r--r--components/script/dom/servoparser/xml.rs27
1 files changed, 2 insertions, 25 deletions
diff --git a/components/script/dom/servoparser/xml.rs b/components/script/dom/servoparser/xml.rs
index 35c86d2ba4b..218fdfaece5 100644
--- a/components/script/dom/servoparser/xml.rs
+++ b/components/script/dom/servoparser/xml.rs
@@ -7,14 +7,13 @@
use std::cell::Cell;
use html5ever::tokenizer::TokenizerResult;
-use js::jsapi::JSTracer;
+use script_bindings::trace::CustomTraceable;
use servo_url::ServoUrl;
use xml5ever::buffer_queue::BufferQueue;
use xml5ever::tokenizer::XmlTokenizer;
-use xml5ever::tree_builder::{Tracer as XmlTracer, XmlTreeBuilder};
+use xml5ever::tree_builder::XmlTreeBuilder;
use crate::dom::bindings::root::{Dom, DomRoot};
-use crate::dom::bindings::trace::{CustomTraceable, JSTraceable};
use crate::dom::document::Document;
use crate::dom::htmlscriptelement::HTMLScriptElement;
use crate::dom::node::Node;
@@ -59,25 +58,3 @@ impl Tokenizer {
&self.inner.sink.sink.base_url
}
}
-
-#[allow(unsafe_code)]
-unsafe impl CustomTraceable for XmlTokenizer<XmlTreeBuilder<Dom<Node>, Sink>> {
- unsafe fn trace(&self, trc: *mut JSTracer) {
- struct Tracer(*mut JSTracer);
- let tracer = Tracer(trc);
-
- impl XmlTracer for Tracer {
- type Handle = Dom<Node>;
- #[cfg_attr(crown, allow(crown::unrooted_must_root))]
- fn trace_handle(&self, node: &Dom<Node>) {
- unsafe {
- node.trace(self.0);
- }
- }
- }
-
- let tree_builder = &self.sink;
- tree_builder.trace_handles(&tracer);
- tree_builder.sink.trace(trc);
- }
-}