diff options
Diffstat (limited to 'components')
119 files changed, 119 insertions, 357 deletions
diff --git a/components/script/dom/attr.rs b/components/script/dom/attr.rs index f4dd6e85d7b..896c65d1c13 100644 --- a/components/script/dom/attr.rs +++ b/components/script/dom/attr.rs @@ -69,9 +69,7 @@ impl Str for AttrValue { } } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Attr { reflector_: Reflector, local_name: Atom, diff --git a/components/script/dom/blob.rs b/components/script/dom/blob.rs index 5849b75ff10..f59c690360e 100644 --- a/components/script/dom/blob.rs +++ b/components/script/dom/blob.rs @@ -15,9 +15,7 @@ pub enum BlobType { FileTypeId } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Blob { reflector_: Reflector, type_: BlobType diff --git a/components/script/dom/browsercontext.rs b/components/script/dom/browsercontext.rs index 9f6041710e3..1a64068bd9d 100644 --- a/components/script/dom/browsercontext.rs +++ b/components/script/dom/browsercontext.rs @@ -65,9 +65,7 @@ impl BrowserContext { } } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct SessionHistoryEntry { document: JS<Document>, children: Vec<BrowserContext> diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs index c9a19c3301c..0c665645af6 100644 --- a/components/script/dom/canvasrenderingcontext2d.rs +++ b/components/script/dom/canvasrenderingcontext2d.rs @@ -15,9 +15,7 @@ use geom::size::Size2D; use canvas::canvas_render_task::{CanvasMsg, CanvasRenderTask, ClearRect, Close, FillRect, Recreate, StrokeRect}; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct CanvasRenderingContext2D { reflector_: Reflector, global: GlobalField, diff --git a/components/script/dom/characterdata.rs b/components/script/dom/characterdata.rs index 3a5ebcf6ab6..a5eec3d8dc1 100644 --- a/components/script/dom/characterdata.rs +++ b/components/script/dom/characterdata.rs @@ -15,9 +15,7 @@ use dom::eventtarget::{EventTarget, NodeTargetTypeId}; use dom::node::{CommentNodeTypeId, Node, NodeTypeId, TextNodeTypeId, ProcessingInstructionNodeTypeId, NodeHelpers}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct CharacterData { node: Node, data: DOMRefCell<DOMString>, diff --git a/components/script/dom/comment.rs b/components/script/dom/comment.rs index 8da33dab01f..e55483f39cd 100644 --- a/components/script/dom/comment.rs +++ b/components/script/dom/comment.rs @@ -16,9 +16,7 @@ use dom::node::{CommentNodeTypeId, Node}; use servo_util::str::DOMString; /// An HTML comment. -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Comment { characterdata: CharacterData, } diff --git a/components/script/dom/console.rs b/components/script/dom/console.rs index a62d2ad4047..b2a10f0c071 100644 --- a/components/script/dom/console.rs +++ b/components/script/dom/console.rs @@ -9,9 +9,7 @@ use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Console { reflector_: Reflector } diff --git a/components/script/dom/customevent.rs b/components/script/dom/customevent.rs index b6549f28a16..3cad0e2ddba 100644 --- a/components/script/dom/customevent.rs +++ b/components/script/dom/customevent.rs @@ -17,9 +17,7 @@ use servo_util::str::DOMString; use std::cell::Cell; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct CustomEvent { event: Event, detail: Cell<JSVal>, diff --git a/components/script/dom/dedicatedworkerglobalscope.rs b/components/script/dom/dedicatedworkerglobalscope.rs index 902e0e44763..1e81f8d9e9f 100644 --- a/components/script/dom/dedicatedworkerglobalscope.rs +++ b/components/script/dom/dedicatedworkerglobalscope.rs @@ -36,9 +36,7 @@ use std::task::TaskBuilder; use native::task::NativeTaskBuilder; use url::Url; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DedicatedWorkerGlobalScope { workerglobalscope: WorkerGlobalScope, receiver: Receiver<ScriptMsg>, diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs index 2a4f70fdf95..4843fe0207c 100644 --- a/components/script/dom/document.rs +++ b/components/script/dom/document.rs @@ -73,9 +73,7 @@ pub enum IsHTMLDocument { NonHTMLDocument, } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Document { node: Node, window: JS<Window>, diff --git a/components/script/dom/documentfragment.rs b/components/script/dom/documentfragment.rs index 8b3b8e6bba6..65fa818e033 100644 --- a/components/script/dom/documentfragment.rs +++ b/components/script/dom/documentfragment.rs @@ -18,9 +18,7 @@ use dom::node::{DocumentFragmentNodeTypeId, Node, NodeHelpers, window_from_node} use dom::nodelist::NodeList; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DocumentFragment { node: Node, } diff --git a/components/script/dom/documenttype.rs b/components/script/dom/documenttype.rs index 683b1c56ae0..f293208d1f9 100644 --- a/components/script/dom/documenttype.rs +++ b/components/script/dom/documenttype.rs @@ -13,9 +13,7 @@ use dom::node::{Node, DoctypeNodeTypeId, NodeHelpers}; use servo_util::str::DOMString; /// The `DOCTYPE` tag. -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DocumentType { node: Node, name: DOMString, diff --git a/components/script/dom/domexception.rs b/components/script/dom/domexception.rs index 8dc4e8f89f4..f3fc0027620 100644 --- a/components/script/dom/domexception.rs +++ b/components/script/dom/domexception.rs @@ -61,9 +61,7 @@ impl DOMErrorName { } } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DOMException { code: DOMErrorName, reflector_: Reflector diff --git a/components/script/dom/domimplementation.rs b/components/script/dom/domimplementation.rs index 7e23d86f2bc..e2761ea5456 100644 --- a/components/script/dom/domimplementation.rs +++ b/components/script/dom/domimplementation.rs @@ -22,9 +22,7 @@ use dom::node::Node; use dom::text::Text; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DOMImplementation { document: JS<Document>, reflector_: Reflector, diff --git a/components/script/dom/domparser.rs b/components/script/dom/domparser.rs index 7b6bbae3e7c..0ce5487159a 100644 --- a/components/script/dom/domparser.rs +++ b/components/script/dom/domparser.rs @@ -14,9 +14,7 @@ use dom::document::{Document, HTMLDocument, NonHTMLDocument}; use dom::window::Window; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DOMParser { window: JS<Window>, //XXXjdm Document instead? reflector_: Reflector diff --git a/components/script/dom/domrect.rs b/components/script/dom/domrect.rs index 39e9c4cbb0e..258ca71ca1e 100644 --- a/components/script/dom/domrect.rs +++ b/components/script/dom/domrect.rs @@ -10,9 +10,7 @@ use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::window::Window; use servo_util::geometry::Au; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DOMRect { reflector_: Reflector, top: f32, diff --git a/components/script/dom/domrectlist.rs b/components/script/dom/domrectlist.rs index 88ec6d5e148..5b9565fc25e 100644 --- a/components/script/dom/domrectlist.rs +++ b/components/script/dom/domrectlist.rs @@ -10,9 +10,7 @@ use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::domrect::DOMRect; use dom::window::Window; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DOMRectList { reflector_: Reflector, rects: Vec<JS<DOMRect>>, diff --git a/components/script/dom/domtokenlist.rs b/components/script/dom/domtokenlist.rs index a23e5e49bac..a7326fa8e2d 100644 --- a/components/script/dom/domtokenlist.rs +++ b/components/script/dom/domtokenlist.rs @@ -15,9 +15,7 @@ use dom::node::window_from_node; use servo_util::str::{DOMString, HTML_SPACE_CHARACTERS}; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct DOMTokenList { reflector_: Reflector, element: JS<Element>, diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs index d9f995720a8..e5be7b2c039 100644 --- a/components/script/dom/element.rs +++ b/components/script/dom/element.rs @@ -45,9 +45,7 @@ use std::mem; use string_cache::{Atom, Namespace}; use url::UrlParser; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Element { node: Node, local_name: Atom, diff --git a/components/script/dom/event.rs b/components/script/dom/event.rs index 05b3d6af3a5..e61bd15a3b0 100644 --- a/components/script/dom/event.rs +++ b/components/script/dom/event.rs @@ -47,9 +47,7 @@ pub enum EventCancelable { NotCancelable } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Event { type_id: EventTypeId, reflector_: Reflector, diff --git a/components/script/dom/eventtarget.rs b/components/script/dom/eventtarget.rs index e51272cff6b..3a764c66a9d 100644 --- a/components/script/dom/eventtarget.rs +++ b/components/script/dom/eventtarget.rs @@ -65,9 +65,7 @@ pub struct EventListenerEntry { listener: EventListenerType } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct EventTarget { type_id: EventTargetTypeId, reflector_: Reflector, diff --git a/components/script/dom/file.rs b/components/script/dom/file.rs index cb42537f63f..d6a056cb04b 100644 --- a/components/script/dom/file.rs +++ b/components/script/dom/file.rs @@ -10,9 +10,7 @@ use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::blob::{Blob, BlobType, FileTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct File { blob: Blob, name: DOMString, diff --git a/components/script/dom/formdata.rs b/components/script/dom/formdata.rs index 140ff809125..cd6dbf65143 100644 --- a/components/script/dom/formdata.rs +++ b/components/script/dom/formdata.rs @@ -25,9 +25,7 @@ pub enum FormDatum { FileData(JS<File>) } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct FormData { data: RefCell<HashMap<DOMString, Vec<FormDatum>>>, reflector_: Reflector, diff --git a/components/script/dom/htmlanchorelement.rs b/components/script/dom/htmlanchorelement.rs index aad63f98ba8..72c5d2fe7ae 100644 --- a/components/script/dom/htmlanchorelement.rs +++ b/components/script/dom/htmlanchorelement.rs @@ -21,9 +21,7 @@ use dom::virtualmethods::VirtualMethods; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLAnchorElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlappletelement.rs b/components/script/dom/htmlappletelement.rs index eeb7eb35188..4360d288b2c 100644 --- a/components/script/dom/htmlappletelement.rs +++ b/components/script/dom/htmlappletelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLAppletElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlaudioelement.rs b/components/script/dom/htmlaudioelement.rs index 9eed3b6c1db..216b255816a 100644 --- a/components/script/dom/htmlaudioelement.rs +++ b/components/script/dom/htmlaudioelement.rs @@ -13,9 +13,7 @@ use dom::htmlmediaelement::HTMLMediaElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLAudioElement { htmlmediaelement: HTMLMediaElement } diff --git a/components/script/dom/htmlbaseelement.rs b/components/script/dom/htmlbaseelement.rs index 7bf12bb0822..a91b6bd9791 100644 --- a/components/script/dom/htmlbaseelement.rs +++ b/components/script/dom/htmlbaseelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLBaseElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlbodyelement.rs b/components/script/dom/htmlbodyelement.rs index 7c0c0c17711..948a7192aa0 100644 --- a/components/script/dom/htmlbodyelement.rs +++ b/components/script/dom/htmlbodyelement.rs @@ -20,9 +20,7 @@ use dom::virtualmethods::VirtualMethods; use servo_util::str::DOMString; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLBodyElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlbrelement.rs b/components/script/dom/htmlbrelement.rs index 74811afe074..e2716c39357 100644 --- a/components/script/dom/htmlbrelement.rs +++ b/components/script/dom/htmlbrelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLBRElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlbuttonelement.rs b/components/script/dom/htmlbuttonelement.rs index ec2377297f3..e5b7a0da216 100644 --- a/components/script/dom/htmlbuttonelement.rs +++ b/components/script/dom/htmlbuttonelement.rs @@ -20,9 +20,7 @@ use std::ascii::OwnedStrAsciiExt; use servo_util::str::DOMString; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLButtonElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlcanvaselement.rs b/components/script/dom/htmlcanvaselement.rs index 69a96a086fc..af239a55ebe 100644 --- a/components/script/dom/htmlcanvaselement.rs +++ b/components/script/dom/htmlcanvaselement.rs @@ -28,9 +28,7 @@ use std::default::Default; static DefaultWidth: u32 = 300; static DefaultHeight: u32 = 150; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLCanvasElement { htmlelement: HTMLElement, context: MutNullableJS<CanvasRenderingContext2D>, diff --git a/components/script/dom/htmlcollection.rs b/components/script/dom/htmlcollection.rs index abd8b6857aa..6b62904c830 100644 --- a/components/script/dom/htmlcollection.rs +++ b/components/script/dom/htmlcollection.rs @@ -29,9 +29,7 @@ pub enum CollectionTypeId { Live(JS<Node>, Box<CollectionFilter+'static>) } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLCollection { collection: CollectionTypeId, reflector_: Reflector, diff --git a/components/script/dom/htmldataelement.rs b/components/script/dom/htmldataelement.rs index 58e2ad90f73..33dfbfd7bd7 100644 --- a/components/script/dom/htmldataelement.rs +++ b/components/script/dom/htmldataelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLDataElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmldatalistelement.rs b/components/script/dom/htmldatalistelement.rs index 3363997142b..210c22b33a3 100644 --- a/components/script/dom/htmldatalistelement.rs +++ b/components/script/dom/htmldatalistelement.rs @@ -16,9 +16,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId, window_from_node}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLDataListElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmldirectoryelement.rs b/components/script/dom/htmldirectoryelement.rs index f1cd840e298..21c675458b9 100644 --- a/components/script/dom/htmldirectoryelement.rs +++ b/components/script/dom/htmldirectoryelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLDirectoryElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmldivelement.rs b/components/script/dom/htmldivelement.rs index d35ad9dc4be..899c35f571a 100644 --- a/components/script/dom/htmldivelement.rs +++ b/components/script/dom/htmldivelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLDivElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmldlistelement.rs b/components/script/dom/htmldlistelement.rs index 643f7e81263..38828fb3957 100644 --- a/components/script/dom/htmldlistelement.rs +++ b/components/script/dom/htmldlistelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLDListElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlelement.rs b/components/script/dom/htmlelement.rs index 00ea736a07f..36488d9a2f9 100644 --- a/components/script/dom/htmlelement.rs +++ b/components/script/dom/htmlelement.rs @@ -20,9 +20,7 @@ use dom::virtualmethods::VirtualMethods; use servo_util::str::DOMString; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLElement { element: Element } diff --git a/components/script/dom/htmlembedelement.rs b/components/script/dom/htmlembedelement.rs index e8de6bbd08a..f99d0f821df 100644 --- a/components/script/dom/htmlembedelement.rs +++ b/components/script/dom/htmlembedelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLEmbedElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlfieldsetelement.rs b/components/script/dom/htmlfieldsetelement.rs index 4ec69852e95..d4be6a3f00e 100644 --- a/components/script/dom/htmlfieldsetelement.rs +++ b/components/script/dom/htmlfieldsetelement.rs @@ -21,9 +21,7 @@ use dom::virtualmethods::VirtualMethods; use servo_util::str::{DOMString, StaticStringVec}; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLFieldSetElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlfontelement.rs b/components/script/dom/htmlfontelement.rs index 5f11a672cc4..3edf195f2dc 100644 --- a/components/script/dom/htmlfontelement.rs +++ b/components/script/dom/htmlfontelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLFontElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlformelement.rs b/components/script/dom/htmlformelement.rs index ed18eb109f2..49c3486a186 100644 --- a/components/script/dom/htmlformelement.rs +++ b/components/script/dom/htmlformelement.rs @@ -30,9 +30,7 @@ use url::UrlParser; use url::form_urlencoded::serialize; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLFormElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlframeelement.rs b/components/script/dom/htmlframeelement.rs index 76a8b190cb1..23448387033 100644 --- a/components/script/dom/htmlframeelement.rs +++ b/components/script/dom/htmlframeelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLFrameElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlframesetelement.rs b/components/script/dom/htmlframesetelement.rs index 168ab8f73ec..9afa3ca02ef 100644 --- a/components/script/dom/htmlframesetelement.rs +++ b/components/script/dom/htmlframesetelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLFrameSetElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlheadelement.rs b/components/script/dom/htmlheadelement.rs index 51cbf9f9b88..b4bff814681 100644 --- a/components/script/dom/htmlheadelement.rs +++ b/components/script/dom/htmlheadelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLHeadElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlheadingelement.rs b/components/script/dom/htmlheadingelement.rs index 1f91a89abee..c52c7cf7c0f 100644 --- a/components/script/dom/htmlheadingelement.rs +++ b/components/script/dom/htmlheadingelement.rs @@ -23,9 +23,7 @@ pub enum HeadingLevel { Heading6, } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLHeadingElement { htmlelement: HTMLElement, level: HeadingLevel, diff --git a/components/script/dom/htmlhrelement.rs b/components/script/dom/htmlhrelement.rs index 95400b2713d..ec71ea141bd 100644 --- a/components/script/dom/htmlhrelement.rs +++ b/components/script/dom/htmlhrelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLHRElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlhtmlelement.rs b/components/script/dom/htmlhtmlelement.rs index f3cd408a31d..dddde174b73 100644 --- a/components/script/dom/htmlhtmlelement.rs +++ b/components/script/dom/htmlhtmlelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLHtmlElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmliframeelement.rs b/components/script/dom/htmliframeelement.rs index 108fbbe4dc2..230a78df5b2 100644 --- a/components/script/dom/htmliframeelement.rs +++ b/components/script/dom/htmliframeelement.rs @@ -39,9 +39,7 @@ enum SandboxAllowance { AllowPopups = 0x20 } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLIFrameElement { htmlelement: HTMLElement, size: Cell<Option<IFrameSize>>, diff --git a/components/script/dom/htmlimageelement.rs b/components/script/dom/htmlimageelement.rs index c706fcfcd7e..0128ebe0a3e 100644 --- a/components/script/dom/htmlimageelement.rs +++ b/components/script/dom/htmlimageelement.rs @@ -24,9 +24,7 @@ use url::{Url, UrlParser}; use std::cell::RefCell; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLImageElement { htmlelement: HTMLElement, image: RefCell<Option<Url>>, diff --git a/components/script/dom/htmlinputelement.rs b/components/script/dom/htmlinputelement.rs index 776ff10244d..74864165e71 100644 --- a/components/script/dom/htmlinputelement.rs +++ b/components/script/dom/htmlinputelement.rs @@ -44,9 +44,7 @@ enum InputType { InputPassword } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLInputElement { htmlelement: HTMLElement, input_type: Cell<InputType>, diff --git a/components/script/dom/htmllabelelement.rs b/components/script/dom/htmllabelelement.rs index 59fe5479f53..f1932dc3ad3 100644 --- a/components/script/dom/htmllabelelement.rs +++ b/components/script/dom/htmllabelelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLLabelElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmllegendelement.rs b/components/script/dom/htmllegendelement.rs index 2d4725528ab..5e98fa5b986 100644 --- a/components/script/dom/htmllegendelement.rs +++ b/components/script/dom/htmllegendelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLLegendElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmllielement.rs b/components/script/dom/htmllielement.rs index f4d789ec549..16bbd46833f 100644 --- a/components/script/dom/htmllielement.rs +++ b/components/script/dom/htmllielement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLLIElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmllinkelement.rs b/components/script/dom/htmllinkelement.rs index 13c4bf3b513..5abde3469e0 100644 --- a/components/script/dom/htmllinkelement.rs +++ b/components/script/dom/htmllinkelement.rs @@ -21,9 +21,7 @@ use std::ascii::StrAsciiExt; use url::UrlParser; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLLinkElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlmapelement.rs b/components/script/dom/htmlmapelement.rs index 0cca9e14a84..e11c6bdf5c0 100644 --- a/components/script/dom/htmlmapelement.rs +++ b/components/script/dom/htmlmapelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLMapElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs index 54ff9308672..3cc03a64d1c 100644 --- a/components/script/dom/htmlmediaelement.rs +++ b/components/script/dom/htmlmediaelement.rs @@ -12,9 +12,7 @@ use dom::htmlelement::HTMLElement; use dom::node::ElementNodeTypeId; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLMediaElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlmetaelement.rs b/components/script/dom/htmlmetaelement.rs index 4a38ebfbc3a..fda51c6d277 100644 --- a/components/script/dom/htmlmetaelement.rs +++ b/components/script/dom/htmlmetaelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLMetaElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlmeterelement.rs b/components/script/dom/htmlmeterelement.rs index 76e2f9400d0..bb88e499444 100644 --- a/components/script/dom/htmlmeterelement.rs +++ b/components/script/dom/htmlmeterelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLMeterElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlmodelement.rs b/components/script/dom/htmlmodelement.rs index 0fa5e2e0cd2..e1cc1af706e 100644 --- a/components/script/dom/htmlmodelement.rs +++ b/components/script/dom/htmlmodelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLModElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlobjectelement.rs b/components/script/dom/htmlobjectelement.rs index a7de41d3599..4e4789ea3cc 100644 --- a/components/script/dom/htmlobjectelement.rs +++ b/components/script/dom/htmlobjectelement.rs @@ -25,9 +25,7 @@ use string_cache::Atom; use url::Url; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLObjectElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlolistelement.rs b/components/script/dom/htmlolistelement.rs index 82c67341c31..8b1fdbe01d1 100644 --- a/components/script/dom/htmlolistelement.rs +++ b/components/script/dom/htmlolistelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLOListElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmloptgroupelement.rs b/components/script/dom/htmloptgroupelement.rs index e7fe66c2e0d..fac03df2f77 100644 --- a/components/script/dom/htmloptgroupelement.rs +++ b/components/script/dom/htmloptgroupelement.rs @@ -18,9 +18,7 @@ use dom::virtualmethods::VirtualMethods; use servo_util::str::DOMString; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLOptGroupElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmloptionelement.rs b/components/script/dom/htmloptionelement.rs index 1493e5cecef..648ec90f605 100644 --- a/components/script/dom/htmloptionelement.rs +++ b/components/script/dom/htmloptionelement.rs @@ -22,9 +22,7 @@ use dom::virtualmethods::VirtualMethods; use servo_util::str::{DOMString, split_html_space_chars}; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLOptionElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmloutputelement.rs b/components/script/dom/htmloutputelement.rs index 0b9f0b0d872..4622fe02f98 100644 --- a/components/script/dom/htmloutputelement.rs +++ b/components/script/dom/htmloutputelement.rs @@ -15,9 +15,7 @@ use dom::node::{Node, ElementNodeTypeId, window_from_node}; use dom::validitystate::ValidityState; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLOutputElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlparagraphelement.rs b/components/script/dom/htmlparagraphelement.rs index 66a70b6963f..a6d7b346b3a 100644 --- a/components/script/dom/htmlparagraphelement.rs +++ b/components/script/dom/htmlparagraphelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLParagraphElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlparamelement.rs b/components/script/dom/htmlparamelement.rs index 7845a767512..a7ceff0b1b3 100644 --- a/components/script/dom/htmlparamelement.rs +++ b/components/script/dom/htmlparamelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLParamElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlpreelement.rs b/components/script/dom/htmlpreelement.rs index 89799212226..7a25822a569 100644 --- a/components/script/dom/htmlpreelement.rs +++ b/components/script/dom/htmlpreelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLPreElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlprogresselement.rs b/components/script/dom/htmlprogresselement.rs index 65db0e536af..18bd90869b6 100644 --- a/components/script/dom/htmlprogresselement.rs +++ b/components/script/dom/htmlprogresselement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLProgressElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlquoteelement.rs b/components/script/dom/htmlquoteelement.rs index f028b3d9c5d..5dcdd92250a 100644 --- a/components/script/dom/htmlquoteelement.rs +++ b/components/script/dom/htmlquoteelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLQuoteElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlscriptelement.rs b/components/script/dom/htmlscriptelement.rs index e4c268d5713..b970596fbdd 100644 --- a/components/script/dom/htmlscriptelement.rs +++ b/components/script/dom/htmlscriptelement.rs @@ -18,9 +18,7 @@ use dom::node::{Node, NodeHelpers, ElementNodeTypeId}; use servo_util::str::{DOMString, HTML_SPACE_CHARACTERS, StaticStringVec}; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLScriptElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlselectelement.rs b/components/script/dom/htmlselectelement.rs index 011254600d3..39d14b11935 100644 --- a/components/script/dom/htmlselectelement.rs +++ b/components/script/dom/htmlselectelement.rs @@ -21,9 +21,7 @@ use dom::virtualmethods::VirtualMethods; use servo_util::str::DOMString; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLSelectElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlsourceelement.rs b/components/script/dom/htmlsourceelement.rs index 8a7578febdf..900b581f358 100644 --- a/components/script/dom/htmlsourceelement.rs +++ b/components/script/dom/htmlsourceelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLSourceElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlspanelement.rs b/components/script/dom/htmlspanelement.rs index fba53a8b795..2a5ff463513 100644 --- a/components/script/dom/htmlspanelement.rs +++ b/components/script/dom/htmlspanelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLSpanElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlstyleelement.rs b/components/script/dom/htmlstyleelement.rs index 46c631fc730..f4d6a315638 100644 --- a/components/script/dom/htmlstyleelement.rs +++ b/components/script/dom/htmlstyleelement.rs @@ -17,9 +17,7 @@ use layout_interface::{AddStylesheetMsg, LayoutChan}; use servo_util::str::DOMString; use style::Stylesheet; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLStyleElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmltablecaptionelement.rs b/components/script/dom/htmltablecaptionelement.rs index e1ecf1914ce..90380f37eb9 100644 --- a/components/script/dom/htmltablecaptionelement.rs +++ b/components/script/dom/htmltablecaptionelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTableCaptionElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmltablecellelement.rs b/components/script/dom/htmltablecellelement.rs index 6bd2d735695..18795031400 100644 --- a/components/script/dom/htmltablecellelement.rs +++ b/components/script/dom/htmltablecellelement.rs @@ -18,9 +18,7 @@ use servo_util::str; use std::cell::Cell; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTableCellElement { htmlelement: HTMLElement, width: Cell<LengthOrPercentageOrAuto>, diff --git a/components/script/dom/htmltablecolelement.rs b/components/script/dom/htmltablecolelement.rs index 03caf0e22b8..f9761151dc1 100644 --- a/components/script/dom/htmltablecolelement.rs +++ b/components/script/dom/htmltablecolelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTableColElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmltabledatacellelement.rs b/components/script/dom/htmltabledatacellelement.rs index 11b8b117a2c..535f2e4ffd5 100644 --- a/components/script/dom/htmltabledatacellelement.rs +++ b/components/script/dom/htmltabledatacellelement.rs @@ -13,9 +13,7 @@ use dom::htmltablecellelement::HTMLTableCellElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTableDataCellElement { htmltablecellelement: HTMLTableCellElement, } diff --git a/components/script/dom/htmltableelement.rs b/components/script/dom/htmltableelement.rs index e33a44cdd58..b39c8ebb3e3 100644 --- a/components/script/dom/htmltableelement.rs +++ b/components/script/dom/htmltableelement.rs @@ -17,9 +17,7 @@ use dom::htmltablecaptionelement::HTMLTableCaptionElement; use dom::node::{Node, NodeHelpers, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTableElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmltableheadercellelement.rs b/components/script/dom/htmltableheadercellelement.rs index eae776a6903..03ae8a83d7e 100644 --- a/components/script/dom/htmltableheadercellelement.rs +++ b/components/script/dom/htmltableheadercellelement.rs @@ -13,9 +13,7 @@ use dom::htmltablecellelement::HTMLTableCellElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTableHeaderCellElement { htmltablecellelement: HTMLTableCellElement, } diff --git a/components/script/dom/htmltablerowelement.rs b/components/script/dom/htmltablerowelement.rs index 45f1f06fe28..64bd1e66c11 100644 --- a/components/script/dom/htmltablerowelement.rs +++ b/components/script/dom/htmltablerowelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTableRowElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmltablesectionelement.rs b/components/script/dom/htmltablesectionelement.rs index f4a26c709ec..d10e4b82b44 100644 --- a/components/script/dom/htmltablesectionelement.rs +++ b/components/script/dom/htmltablesectionelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTableSectionElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmltemplateelement.rs b/components/script/dom/htmltemplateelement.rs index 9e959937ec6..c0a125109dc 100644 --- a/components/script/dom/htmltemplateelement.rs +++ b/components/script/dom/htmltemplateelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTemplateElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmltextareaelement.rs b/components/script/dom/htmltextareaelement.rs index 37fd0544f4f..274c2b08ee1 100644 --- a/components/script/dom/htmltextareaelement.rs +++ b/components/script/dom/htmltextareaelement.rs @@ -18,9 +18,7 @@ use dom::virtualmethods::VirtualMethods; use servo_util::str::DOMString; use string_cache::Atom; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTextAreaElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmltimeelement.rs b/components/script/dom/htmltimeelement.rs index 4cf70e20214..3f21071fd2b 100644 --- a/components/script/dom/htmltimeelement.rs +++ b/components/script/dom/htmltimeelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTimeElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmltitleelement.rs b/components/script/dom/htmltitleelement.rs index 5e7d8fbd1b3..ef8b70aa4fa 100644 --- a/components/script/dom/htmltitleelement.rs +++ b/components/script/dom/htmltitleelement.rs @@ -16,9 +16,7 @@ use dom::node::{Node, NodeHelpers, ElementNodeTypeId}; use dom::text::Text; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTitleElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmltrackelement.rs b/components/script/dom/htmltrackelement.rs index f1ae254b365..ae1a164ad05 100644 --- a/components/script/dom/htmltrackelement.rs +++ b/components/script/dom/htmltrackelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLTrackElement { htmlelement: HTMLElement, } diff --git a/components/script/dom/htmlulistelement.rs b/components/script/dom/htmlulistelement.rs index bd417aef8ca..5909dbfc3ae 100644 --- a/components/script/dom/htmlulistelement.rs +++ b/components/script/dom/htmlulistelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLUListElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlunknownelement.rs b/components/script/dom/htmlunknownelement.rs index 1194346baa9..d8a338afb82 100644 --- a/components/script/dom/htmlunknownelement.rs +++ b/components/script/dom/htmlunknownelement.rs @@ -13,9 +13,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLUnknownElement { htmlelement: HTMLElement } diff --git a/components/script/dom/htmlvideoelement.rs b/components/script/dom/htmlvideoelement.rs index 6e7080aca68..4bec140ecf1 100644 --- a/components/script/dom/htmlvideoelement.rs +++ b/components/script/dom/htmlvideoelement.rs @@ -13,9 +13,7 @@ use dom::htmlmediaelement::HTMLMediaElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct HTMLVideoElement { htmlmediaelement: HTMLMediaElement } diff --git a/components/script/dom/location.rs b/components/script/dom/location.rs index 008a7deb3e9..79d1a9e404a 100644 --- a/components/script/dom/location.rs +++ b/components/script/dom/location.rs @@ -15,9 +15,7 @@ use servo_util::str::DOMString; use std::rc::Rc; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Location { reflector_: Reflector, page: Rc<Page>, diff --git a/components/script/dom/messageevent.rs b/components/script/dom/messageevent.rs index 0f21a0b8096..a090a2f279e 100644 --- a/components/script/dom/messageevent.rs +++ b/components/script/dom/messageevent.rs @@ -18,9 +18,7 @@ use servo_util::str::DOMString; use js::jsapi::JSContext; use js::jsval::JSVal; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct MessageEvent { event: Event, data: JSVal, diff --git a/components/script/dom/mouseevent.rs b/components/script/dom/mouseevent.rs index 2ecfaa06ca5..a4d3a0a9e09 100644 --- a/components/script/dom/mouseevent.rs +++ b/components/script/dom/mouseevent.rs @@ -19,9 +19,7 @@ use servo_util::str::DOMString; use std::cell::Cell; use std::default::Default; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct MouseEvent { mouseevent: UIEvent, screen_x: Cell<i32>, diff --git a/components/script/dom/namednodemap.rs b/components/script/dom/namednodemap.rs index c0304510c68..1bfe7034198 100644 --- a/components/script/dom/namednodemap.rs +++ b/components/script/dom/namednodemap.rs @@ -11,9 +11,7 @@ use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::element::Element; use dom::window::Window; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct NamedNodeMap { reflector_: Reflector, owner: JS<Element>, diff --git a/components/script/dom/navigator.rs b/components/script/dom/navigator.rs index f3ae6421564..5824817f895 100644 --- a/components/script/dom/navigator.rs +++ b/components/script/dom/navigator.rs @@ -11,9 +11,7 @@ use dom::navigatorinfo::NavigatorInfo; use dom::window::Window; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Navigator { reflector_: Reflector, } diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs index 5b2e3191ce6..c159eed0153 100644 --- a/components/script/dom/node.rs +++ b/components/script/dom/node.rs @@ -71,9 +71,7 @@ use uuid; // /// An HTML node. -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Node { /// The JavaScript reflector for this node. eventtarget: EventTarget, diff --git a/components/script/dom/nodeiterator.rs b/components/script/dom/nodeiterator.rs index 27656da9433..e6d2e982d43 100644 --- a/components/script/dom/nodeiterator.rs +++ b/components/script/dom/nodeiterator.rs @@ -8,9 +8,7 @@ use dom::bindings::global::GlobalRef; use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct NodeIterator { reflector_: Reflector } diff --git a/components/script/dom/nodelist.rs b/components/script/dom/nodelist.rs index f2da3a0c4ba..9bac5ef2c9a 100644 --- a/components/script/dom/nodelist.rs +++ b/components/script/dom/nodelist.rs @@ -17,9 +17,7 @@ pub enum NodeListType { Children(JS<Node>) } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct NodeList { list_type: NodeListType, reflector_: Reflector, diff --git a/components/script/dom/performance.rs b/components/script/dom/performance.rs index ae6fb7061cc..a8e6561f0d5 100644 --- a/components/script/dom/performance.rs +++ b/components/script/dom/performance.rs @@ -13,9 +13,7 @@ use time; pub type DOMHighResTimeStamp = f64; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Performance { reflector_: Reflector, timing: JS<PerformanceTiming>, diff --git a/components/script/dom/performancetiming.rs b/components/script/dom/performancetiming.rs index 0c8b6a60008..7a93343e87b 100644 --- a/components/script/dom/performancetiming.rs +++ b/components/script/dom/performancetiming.rs @@ -9,9 +9,7 @@ use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::window::Window; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct PerformanceTiming { reflector_: Reflector, navigationStart: u64, diff --git a/components/script/dom/processinginstruction.rs b/components/script/dom/processinginstruction.rs index 19017ae9050..7b2c5f22ba6 100644 --- a/components/script/dom/processinginstruction.rs +++ b/components/script/dom/processinginstruction.rs @@ -14,9 +14,7 @@ use dom::node::{Node, ProcessingInstructionNodeTypeId}; use servo_util::str::DOMString; /// An HTML processing instruction node. -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct ProcessingInstruction { characterdata: CharacterData, target: DOMString, diff --git a/components/script/dom/progressevent.rs b/components/script/dom/progressevent.rs index 52d1f6f35ff..54b902994ea 100644 --- a/components/script/dom/progressevent.rs +++ b/components/script/dom/progressevent.rs @@ -13,9 +13,7 @@ use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::event::{Event, ProgressEventTypeId}; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct ProgressEvent { event: Event, length_computable: bool, diff --git a/components/script/dom/range.rs b/components/script/dom/range.rs index a611604e6bb..99b48cea700 100644 --- a/components/script/dom/range.rs +++ b/components/script/dom/range.rs @@ -11,9 +11,7 @@ use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::document::Document; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Range { reflector_: Reflector } diff --git a/components/script/dom/screen.rs b/components/script/dom/screen.rs index ad4250ee1c6..dd3bc911cc3 100644 --- a/components/script/dom/screen.rs +++ b/components/script/dom/screen.rs @@ -9,9 +9,7 @@ use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::window::Window; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Screen { reflector_: Reflector, } diff --git a/components/script/dom/testbinding.rs b/components/script/dom/testbinding.rs index a409c70d1bf..073a5721fa1 100644 --- a/components/script/dom/testbinding.rs +++ b/components/script/dom/testbinding.rs @@ -18,9 +18,7 @@ use servo_util::str::DOMString; use js::jsapi::JSContext; use js::jsval::{JSVal, NullValue}; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct TestBinding { reflector: Reflector, global: GlobalField, diff --git a/components/script/dom/text.rs b/components/script/dom/text.rs index b8fea7c23cb..1843bf58d21 100644 --- a/components/script/dom/text.rs +++ b/components/script/dom/text.rs @@ -16,9 +16,7 @@ use dom::node::{Node, TextNodeTypeId}; use servo_util::str::DOMString; /// An HTML text node. -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Text { characterdata: CharacterData, } diff --git a/components/script/dom/treewalker.rs b/components/script/dom/treewalker.rs index f9100dd15be..44a62f60baa 100644 --- a/components/script/dom/treewalker.rs +++ b/components/script/dom/treewalker.rs @@ -21,9 +21,7 @@ use dom::node::{Node, NodeHelpers}; use std::cell::Cell; // http://dom.spec.whatwg.org/#interface-treewalker -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct TreeWalker { reflector_: Reflector, root_node: JS<Node>, diff --git a/components/script/dom/uievent.rs b/components/script/dom/uievent.rs index d5dd2cfc4df..6a55f6ccbf8 100644 --- a/components/script/dom/uievent.rs +++ b/components/script/dom/uievent.rs @@ -19,9 +19,7 @@ use servo_util::str::DOMString; use std::cell::Cell; use std::default::Default; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct UIEvent { event: Event, view: MutNullableJS<Window>, diff --git a/components/script/dom/urlsearchparams.rs b/components/script/dom/urlsearchparams.rs index 8174fafcc98..98cfc2a5792 100644 --- a/components/script/dom/urlsearchparams.rs +++ b/components/script/dom/urlsearchparams.rs @@ -20,9 +20,7 @@ use std::collections::hashmap::HashMap; use std::fmt::radix; use std::ascii::OwnedStrAsciiExt; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct URLSearchParams { data: RefCell<HashMap<DOMString, Vec<DOMString>>>, reflector_: Reflector, diff --git a/components/script/dom/validitystate.rs b/components/script/dom/validitystate.rs index ef76ac433e1..f8ce174229f 100644 --- a/components/script/dom/validitystate.rs +++ b/components/script/dom/validitystate.rs @@ -8,9 +8,7 @@ use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::window::Window; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct ValidityState { reflector_: Reflector, state: u8, diff --git a/components/script/dom/window.rs b/components/script/dom/window.rs index 2090cd0819d..044a6f6fabe 100644 --- a/components/script/dom/window.rs +++ b/components/script/dom/window.rs @@ -44,9 +44,7 @@ use std::default::Default; use std::rc::Rc; use time; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Window { eventtarget: EventTarget, script_chan: ScriptChan, diff --git a/components/script/dom/worker.rs b/components/script/dom/worker.rs index 0d549ca95f6..05a65318c69 100644 --- a/components/script/dom/worker.rs +++ b/components/script/dom/worker.rs @@ -31,9 +31,7 @@ use std::ptr; pub struct TrustedWorkerAddress(pub *const c_void); untraceable!(TrustedWorkerAddress) -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct Worker { eventtarget: EventTarget, refcount: Cell<uint>, diff --git a/components/script/dom/workerglobalscope.rs b/components/script/dom/workerglobalscope.rs index 69f2c926320..5c352739c98 100644 --- a/components/script/dom/workerglobalscope.rs +++ b/components/script/dom/workerglobalscope.rs @@ -32,9 +32,7 @@ pub enum WorkerGlobalScopeId { DedicatedGlobalScope, } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct WorkerGlobalScope { eventtarget: EventTarget, worker_url: Url, diff --git a/components/script/dom/workerlocation.rs b/components/script/dom/workerlocation.rs index 145ba8c8f93..01583b54692 100644 --- a/components/script/dom/workerlocation.rs +++ b/components/script/dom/workerlocation.rs @@ -14,9 +14,7 @@ use servo_util::str::DOMString; use url::Url; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct WorkerLocation { reflector_: Reflector, url: Url, diff --git a/components/script/dom/workernavigator.rs b/components/script/dom/workernavigator.rs index 6cc02c0e3fa..98e5672fa85 100644 --- a/components/script/dom/workernavigator.rs +++ b/components/script/dom/workernavigator.rs @@ -11,9 +11,7 @@ use dom::navigatorinfo::NavigatorInfo; use dom::workerglobalscope::WorkerGlobalScope; use servo_util::str::DOMString; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct WorkerNavigator { reflector_: Reflector, } diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs index 1e96b701d1e..02f7070ad3c 100644 --- a/components/script/dom/xmlhttprequest.rs +++ b/components/script/dom/xmlhttprequest.rs @@ -102,9 +102,7 @@ enum SyncOrAsync<'a> { } -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct XMLHttpRequest { eventtarget: XMLHttpRequestEventTarget, ready_state: Cell<XMLHttpRequestState>, diff --git a/components/script/dom/xmlhttprequesteventtarget.rs b/components/script/dom/xmlhttprequesteventtarget.rs index 0b9c9e7a75f..79e70123a4d 100644 --- a/components/script/dom/xmlhttprequesteventtarget.rs +++ b/components/script/dom/xmlhttprequesteventtarget.rs @@ -11,9 +11,7 @@ use dom::bindings::utils::{Reflectable, Reflector}; use dom::eventtarget::{EventTarget, EventTargetHelpers, XMLHttpRequestTargetTypeId}; use dom::xmlhttprequest::XMLHttpRequestId; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct XMLHttpRequestEventTarget { eventtarget: EventTarget, } diff --git a/components/script/dom/xmlhttprequestupload.rs b/components/script/dom/xmlhttprequestupload.rs index 7e11df328a8..78635ea306c 100644 --- a/components/script/dom/xmlhttprequestupload.rs +++ b/components/script/dom/xmlhttprequestupload.rs @@ -11,9 +11,7 @@ use dom::eventtarget::{EventTarget, XMLHttpRequestTargetTypeId}; use dom::xmlhttprequest::{XMLHttpRequestUploadTypeId}; use dom::xmlhttprequesteventtarget::XMLHttpRequestEventTarget; -#[jstraceable] -#[must_root] -#[privatize] +#[dom_struct] pub struct XMLHttpRequestUpload { eventtarget: XMLHttpRequestEventTarget } |