Hi, I started looking at https://bugzilla.mozilla.org/show_bug.cgi?id=896759 which makes me wonder "what exactly is a native object"? Here's what I've gleaned...
- A native object is one that uses the default ObjectOps. - Also, the marking of reserved slots appears to be different for native vs. non-native objects. - The only examples of non-native objects in SM are ObjectProxy, OuterWindowProxy, FunctionProxy, ArrayBuffer, and the typed arrays (Int8Array, etc). - There is an API function JS_IsNative(), so it's a concept that's queryable in the API. (But Gecko doesn't use it.) We call obj->isNative() in a *lot* of places, and the treatment of native vs. non-native seems to be rather ad hoc -- few of the cases make me think "oh yes, that's clearly the native behaviour on that side and the non-native behaviour on that side"... Bug 896579 is about splitting up the meaning of "native" and I wonder if it could be simplified further or done away with altogether, somehow. Any clarifications are welcome. Thanks. Nick _______________________________________________ dev-tech-js-engine-internals mailing list dev-tech-js-engine-internals@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals