mirror of
https://github.com/servo/servo.git
synced 2025-08-04 05:00:08 +01:00
Use Traceable for primitive types and DOMString
This commit is contained in:
parent
dae6ad409d
commit
ee56b45a8c
5 changed files with 31 additions and 31 deletions
|
@ -7,7 +7,7 @@
|
||||||
use dom::bindings::codegen::InheritTypes::{CharacterDataDerived, NodeCast};
|
use dom::bindings::codegen::InheritTypes::{CharacterDataDerived, NodeCast};
|
||||||
use dom::bindings::error::{Fallible, ErrorResult, IndexSize};
|
use dom::bindings::error::{Fallible, ErrorResult, IndexSize};
|
||||||
use dom::bindings::js::JSRef;
|
use dom::bindings::js::JSRef;
|
||||||
use dom::bindings::trace::Untraceable;
|
use dom::bindings::trace::Traceable;
|
||||||
use dom::bindings::utils::{Reflectable, Reflector};
|
use dom::bindings::utils::{Reflectable, Reflector};
|
||||||
use dom::document::Document;
|
use dom::document::Document;
|
||||||
use dom::eventtarget::{EventTarget, NodeTargetTypeId};
|
use dom::eventtarget::{EventTarget, NodeTargetTypeId};
|
||||||
|
@ -19,7 +19,7 @@ use std::cell::RefCell;
|
||||||
#[deriving(Encodable)]
|
#[deriving(Encodable)]
|
||||||
pub struct CharacterData {
|
pub struct CharacterData {
|
||||||
pub node: Node,
|
pub node: Node,
|
||||||
pub data: Untraceable<RefCell<DOMString>>,
|
pub data: Traceable<RefCell<DOMString>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl CharacterDataDerived for EventTarget {
|
impl CharacterDataDerived for EventTarget {
|
||||||
|
@ -37,7 +37,7 @@ impl CharacterData {
|
||||||
pub fn new_inherited(id: NodeTypeId, data: DOMString, document: &JSRef<Document>) -> CharacterData {
|
pub fn new_inherited(id: NodeTypeId, data: DOMString, document: &JSRef<Document>) -> CharacterData {
|
||||||
CharacterData {
|
CharacterData {
|
||||||
node: Node::new_inherited(id, document),
|
node: Node::new_inherited(id, document),
|
||||||
data: Untraceable::new(RefCell::new(data)),
|
data: Traceable::new(RefCell::new(data)),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,7 +66,7 @@ pub struct Document {
|
||||||
idmap: Traceable<RefCell<HashMap<DOMString, Vec<JS<Element>>>>>,
|
idmap: Traceable<RefCell<HashMap<DOMString, Vec<JS<Element>>>>>,
|
||||||
pub implementation: Cell<Option<JS<DOMImplementation>>>,
|
pub implementation: Cell<Option<JS<DOMImplementation>>>,
|
||||||
pub content_type: DOMString,
|
pub content_type: DOMString,
|
||||||
pub encoding_name: Untraceable<RefCell<DOMString>>,
|
pub encoding_name: Traceable<RefCell<DOMString>>,
|
||||||
pub is_html_document: bool,
|
pub is_html_document: bool,
|
||||||
pub url: Untraceable<Url>,
|
pub url: Untraceable<Url>,
|
||||||
pub quirks_mode: Untraceable<Cell<QuirksMode>>,
|
pub quirks_mode: Untraceable<Cell<QuirksMode>>,
|
||||||
|
@ -231,7 +231,7 @@ impl Document {
|
||||||
// http://dom.spec.whatwg.org/#concept-document-quirks
|
// http://dom.spec.whatwg.org/#concept-document-quirks
|
||||||
quirks_mode: Untraceable::new(Cell::new(NoQuirks)),
|
quirks_mode: Untraceable::new(Cell::new(NoQuirks)),
|
||||||
// http://dom.spec.whatwg.org/#concept-document-encoding
|
// http://dom.spec.whatwg.org/#concept-document-encoding
|
||||||
encoding_name: Untraceable::new(RefCell::new("utf-8".to_string())),
|
encoding_name: Traceable::new(RefCell::new("utf-8".to_string())),
|
||||||
is_html_document: is_html_document == HTMLDocument,
|
is_html_document: is_html_document == HTMLDocument,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@ use dom::bindings::codegen::Bindings::EventBinding;
|
||||||
use dom::bindings::codegen::Bindings::EventBinding::EventConstants;
|
use dom::bindings::codegen::Bindings::EventBinding::EventConstants;
|
||||||
use dom::bindings::error::Fallible;
|
use dom::bindings::error::Fallible;
|
||||||
use dom::bindings::js::{JS, JSRef, Temporary};
|
use dom::bindings::js::{JS, JSRef, Temporary};
|
||||||
use dom::bindings::trace::Untraceable;
|
use dom::bindings::trace::Traceable;
|
||||||
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
|
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
|
||||||
use dom::eventtarget::EventTarget;
|
use dom::eventtarget::EventTarget;
|
||||||
use dom::window::Window;
|
use dom::window::Window;
|
||||||
|
@ -52,16 +52,16 @@ pub struct Event {
|
||||||
pub reflector_: Reflector,
|
pub reflector_: Reflector,
|
||||||
pub current_target: Cell<Option<JS<EventTarget>>>,
|
pub current_target: Cell<Option<JS<EventTarget>>>,
|
||||||
pub target: Cell<Option<JS<EventTarget>>>,
|
pub target: Cell<Option<JS<EventTarget>>>,
|
||||||
type_: Untraceable<RefCell<DOMString>>,
|
type_: Traceable<RefCell<DOMString>>,
|
||||||
pub phase: Untraceable<Cell<EventPhase>>,
|
pub phase: Traceable<Cell<EventPhase>>,
|
||||||
pub canceled: Untraceable<Cell<bool>>,
|
pub canceled: Traceable<Cell<bool>>,
|
||||||
pub stop_propagation: Untraceable<Cell<bool>>,
|
pub stop_propagation: Traceable<Cell<bool>>,
|
||||||
pub stop_immediate: Untraceable<Cell<bool>>,
|
pub stop_immediate: Traceable<Cell<bool>>,
|
||||||
pub cancelable: Untraceable<Cell<bool>>,
|
pub cancelable: Traceable<Cell<bool>>,
|
||||||
pub bubbles: Untraceable<Cell<bool>>,
|
pub bubbles: Traceable<Cell<bool>>,
|
||||||
pub trusted: Untraceable<Cell<bool>>,
|
pub trusted: Traceable<Cell<bool>>,
|
||||||
pub dispatching: Untraceable<Cell<bool>>,
|
pub dispatching: Traceable<Cell<bool>>,
|
||||||
pub initialized: Untraceable<Cell<bool>>,
|
pub initialized: Traceable<Cell<bool>>,
|
||||||
pub timestamp: u64,
|
pub timestamp: u64,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,16 +72,16 @@ impl Event {
|
||||||
reflector_: Reflector::new(),
|
reflector_: Reflector::new(),
|
||||||
current_target: Cell::new(None),
|
current_target: Cell::new(None),
|
||||||
target: Cell::new(None),
|
target: Cell::new(None),
|
||||||
phase: Untraceable::new(Cell::new(PhaseNone)),
|
phase: Traceable::new(Cell::new(PhaseNone)),
|
||||||
type_: Untraceable::new(RefCell::new("".to_string())),
|
type_: Traceable::new(RefCell::new("".to_string())),
|
||||||
canceled: Untraceable::new(Cell::new(false)),
|
canceled: Traceable::new(Cell::new(false)),
|
||||||
cancelable: Untraceable::new(Cell::new(true)),
|
cancelable: Traceable::new(Cell::new(true)),
|
||||||
bubbles: Untraceable::new(Cell::new(false)),
|
bubbles: Traceable::new(Cell::new(false)),
|
||||||
trusted: Untraceable::new(Cell::new(false)),
|
trusted: Traceable::new(Cell::new(false)),
|
||||||
dispatching: Untraceable::new(Cell::new(false)),
|
dispatching: Traceable::new(Cell::new(false)),
|
||||||
stop_propagation: Untraceable::new(Cell::new(false)),
|
stop_propagation: Traceable::new(Cell::new(false)),
|
||||||
stop_immediate: Untraceable::new(Cell::new(false)),
|
stop_immediate: Traceable::new(Cell::new(false)),
|
||||||
initialized: Untraceable::new(Cell::new(false)),
|
initialized: Traceable::new(Cell::new(false)),
|
||||||
timestamp: time::get_time().sec as u64,
|
timestamp: time::get_time().sec as u64,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@ use dom::bindings::codegen::Bindings::UIEventBinding;
|
||||||
use dom::bindings::codegen::InheritTypes::{EventCast, UIEventDerived};
|
use dom::bindings::codegen::InheritTypes::{EventCast, UIEventDerived};
|
||||||
use dom::bindings::error::Fallible;
|
use dom::bindings::error::Fallible;
|
||||||
use dom::bindings::js::{JS, JSRef, RootedReference, Temporary, OptionalSettable};
|
use dom::bindings::js::{JS, JSRef, RootedReference, Temporary, OptionalSettable};
|
||||||
use dom::bindings::trace::Untraceable;
|
use dom::bindings::trace::Traceable;
|
||||||
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
|
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
|
||||||
use dom::event::{Event, EventMethods, EventTypeId, UIEventTypeId};
|
use dom::event::{Event, EventMethods, EventTypeId, UIEventTypeId};
|
||||||
use dom::window::Window;
|
use dom::window::Window;
|
||||||
|
@ -19,7 +19,7 @@ use std::cell::Cell;
|
||||||
pub struct UIEvent {
|
pub struct UIEvent {
|
||||||
pub event: Event,
|
pub event: Event,
|
||||||
pub view: Cell<Option<JS<Window>>>,
|
pub view: Cell<Option<JS<Window>>>,
|
||||||
pub detail: Untraceable<Cell<i32>>
|
pub detail: Traceable<Cell<i32>>
|
||||||
}
|
}
|
||||||
|
|
||||||
impl UIEventDerived for Event {
|
impl UIEventDerived for Event {
|
||||||
|
@ -33,7 +33,7 @@ impl UIEvent {
|
||||||
UIEvent {
|
UIEvent {
|
||||||
event: Event::new_inherited(type_id),
|
event: Event::new_inherited(type_id),
|
||||||
view: Cell::new(None),
|
view: Cell::new(None),
|
||||||
detail: Untraceable::new(Cell::new(0)),
|
detail: Traceable::new(Cell::new(0)),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -75,7 +75,7 @@ pub struct Window {
|
||||||
pub navigator: Cell<Option<JS<Navigator>>>,
|
pub navigator: Cell<Option<JS<Navigator>>>,
|
||||||
pub image_cache_task: ImageCacheTask,
|
pub image_cache_task: ImageCacheTask,
|
||||||
pub active_timers: Traceable<RefCell<HashMap<TimerId, TimerHandle>>>,
|
pub active_timers: Traceable<RefCell<HashMap<TimerId, TimerHandle>>>,
|
||||||
pub next_timer_handle: Untraceable<Cell<i32>>,
|
pub next_timer_handle: Traceable<Cell<i32>>,
|
||||||
pub compositor: Untraceable<Box<ScriptListener>>,
|
pub compositor: Untraceable<Box<ScriptListener>>,
|
||||||
pub browser_context: Traceable<RefCell<Option<BrowserContext>>>,
|
pub browser_context: Traceable<RefCell<Option<BrowserContext>>>,
|
||||||
pub page: Rc<Page>,
|
pub page: Rc<Page>,
|
||||||
|
@ -399,7 +399,7 @@ impl Window {
|
||||||
navigator: Cell::new(None),
|
navigator: Cell::new(None),
|
||||||
image_cache_task: image_cache_task,
|
image_cache_task: image_cache_task,
|
||||||
active_timers: Traceable::new(RefCell::new(HashMap::new())),
|
active_timers: Traceable::new(RefCell::new(HashMap::new())),
|
||||||
next_timer_handle: Untraceable::new(Cell::new(0)),
|
next_timer_handle: Traceable::new(Cell::new(0)),
|
||||||
browser_context: Traceable::new(RefCell::new(None)),
|
browser_context: Traceable::new(RefCell::new(None)),
|
||||||
performance: Cell::new(None),
|
performance: Cell::new(None),
|
||||||
navigationStart: time::get_time().sec as u64,
|
navigationStart: time::get_time().sec as u64,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue