mirror of
https://github.com/servo/servo.git
synced 2025-06-20 07:08:59 +01:00
Add trace hooks for Window and Document, and remove explicit rooting for the root DOM node. Fixes #901.
This commit is contained in:
parent
9640324721
commit
636c30affe
7 changed files with 66 additions and 39 deletions
|
@ -143,6 +143,7 @@ DOMInterfaces = {
|
|||
'Document': {
|
||||
'nativeType': 'AbstractDocument',
|
||||
'pointerType': '',
|
||||
'customTrace': 'trace'
|
||||
},
|
||||
|
||||
'DOMParser': {
|
||||
|
@ -228,6 +229,7 @@ DOMInterfaces = {
|
|||
'HTMLDocument': {
|
||||
'nativeType': 'AbstractDocument',
|
||||
'pointerType': '',
|
||||
'customTrace': 'trace'
|
||||
},
|
||||
|
||||
'HTMLFormElement': {
|
||||
|
@ -433,7 +435,8 @@ DOMInterfaces = {
|
|||
}],
|
||||
|
||||
'Window': {
|
||||
'createGlobal': True
|
||||
'createGlobal': True,
|
||||
'customTrace': 'trace'
|
||||
},
|
||||
|
||||
'WindowProxy': {
|
||||
|
|
|
@ -2221,13 +2221,13 @@ static Class_name: [u8, ..%i] = %s;
|
|||
static Class: DOMJSClass = DOMJSClass {
|
||||
base: JSClass { name: &Class_name as *u8 as *libc::c_char,
|
||||
flags: JSCLASS_IS_DOMJSCLASS | %s | (((%s) & JSCLASS_RESERVED_SLOTS_MASK) << JSCLASS_RESERVED_SLOTS_SHIFT), //JSCLASS_HAS_RESERVED_SLOTS(%s),
|
||||
addProperty: %s, /* addProperty */
|
||||
delProperty: crust::JS_PropertyStub, /* delProperty */
|
||||
getProperty: crust::JS_PropertyStub, /* getProperty */
|
||||
setProperty: crust::JS_StrictPropertyStub, /* setProperty */
|
||||
enumerate: crust::JS_EnumerateStub,
|
||||
resolve: crust::JS_ResolveStub,
|
||||
convert: crust::JS_ConvertStub,
|
||||
addProperty: Some(%s), /* addProperty */
|
||||
delProperty: Some(crust::JS_PropertyStub), /* delProperty */
|
||||
getProperty: Some(crust::JS_PropertyStub), /* getProperty */
|
||||
setProperty: Some(crust::JS_StrictPropertyStub), /* setProperty */
|
||||
enumerate: Some(crust::JS_EnumerateStub),
|
||||
resolve: Some(crust::JS_ResolveStub),
|
||||
convert: Some(crust::JS_ConvertStub),
|
||||
finalize: Some(%s), /* finalize */
|
||||
checkAccess: None, /* checkAccess */
|
||||
call: None, /* call */
|
||||
|
@ -2269,13 +2269,13 @@ static PrototypeClassName__: [u8, ..%s] = %s;
|
|||
static PrototypeClass: JSClass = JSClass {
|
||||
name: &PrototypeClassName__ as *u8 as *libc::c_char,
|
||||
flags: (1 & JSCLASS_RESERVED_SLOTS_MASK) << JSCLASS_RESERVED_SLOTS_SHIFT, //JSCLASS_HAS_RESERVED_SLOTS(1)
|
||||
addProperty: crust::JS_PropertyStub, /* addProperty */
|
||||
delProperty: crust::JS_PropertyStub, /* delProperty */
|
||||
getProperty: crust::JS_PropertyStub, /* getProperty */
|
||||
setProperty: crust::JS_StrictPropertyStub, /* setProperty */
|
||||
enumerate: crust::JS_EnumerateStub,
|
||||
resolve: crust::JS_ResolveStub,
|
||||
convert: crust::JS_ConvertStub,
|
||||
addProperty: Some(crust::JS_PropertyStub), /* addProperty */
|
||||
delProperty: Some(crust::JS_PropertyStub), /* delProperty */
|
||||
getProperty: Some(crust::JS_PropertyStub), /* getProperty */
|
||||
setProperty: Some(crust::JS_StrictPropertyStub), /* setProperty */
|
||||
enumerate: Some(crust::JS_EnumerateStub),
|
||||
resolve: Some(crust::JS_ResolveStub),
|
||||
convert: Some(crust::JS_ConvertStub),
|
||||
finalize: None, /* finalize */
|
||||
checkAccess: None, /* checkAccess */
|
||||
call: None, /* call */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue