diff options
Diffstat (limited to 'components/script/dom/element.rs')
-rw-r--r-- | components/script/dom/element.rs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs index 7408147893f..3304e23cb64 100644 --- a/components/script/dom/element.rs +++ b/components/script/dom/element.rs @@ -149,23 +149,31 @@ use xml5ever::serialize::TraversalScope::IncludeNode as XmlIncludeNode; #[dom_struct] pub struct Element { node: Node, + #[no_trace] local_name: LocalName, tag_name: TagName, + #[no_trace] namespace: Namespace, + #[no_trace] prefix: DomRefCell<Option<Prefix>>, attrs: DomRefCell<Vec<Dom<Attr>>>, + #[no_trace] id_attribute: DomRefCell<Option<Atom>>, + #[no_trace] is: DomRefCell<Option<LocalName>>, #[ignore_malloc_size_of = "Arc"] + #[no_trace] style_attribute: DomRefCell<Option<Arc<Locked<PropertyDeclarationBlock>>>>, attr_list: MutNullableDom<NamedNodeMap>, class_list: MutNullableDom<DOMTokenList>, + #[no_trace] state: Cell<ElementState>, /// These flags are set by the style system to indicate the that certain /// operations may require restyling this element or its descendants. The /// flags are not atomic, so the style system takes care of only set them /// when it has exclusive access to the element. #[ignore_malloc_size_of = "bitflags defined in rust-selectors"] + #[no_trace] selector_flags: Cell<ElementSelectorFlags>, rare_data: DomRefCell<Option<Box<ElementRareData>>>, } @@ -3673,6 +3681,7 @@ impl<'a> AttributeMutation<'a> { /// owner changes. #[derive(JSTraceable, MallocSizeOf)] struct TagName { + #[no_trace] ptr: DomRefCell<Option<LocalName>>, } |