Please note, this is a STATIC archive of website from 03 Nov 2016, does not collect or store any user information, there is no "phishing" involved.


This article needs a technical review. How you can help.

Obsolete since JSAPI 29
This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.

JSMarkOp is the type of the JSClass.mark callback in SpiderMonkey 1.7 and earlier. In SpiderMonkey 1.8, JSMarkOp will be deprecated. All new code using SpiderMonkey 1.8 or later should use a JSTraceOp instead to ensure that the tracing APIs work properly.


typedef uint32
(* JSMarkOp)(JSContext *cx, JSObject *obj, void *arg);
Name Type Description
cx JSContext * The JS context in which the mark phase of garbage collection is occurring.
obj JSObject * The object to be marked.
arg void * Opaque data which the mark hook must pass through to JS_MarkGCThing.


Call JS_MarkGCThing for each GC thing directly reachable from obj. Use JSVAL_IS_GCTHING to check whether a value needs to be marked and JSVAL_TO_GCTHING to convert the jsval to a pointer.

JSClass hooks

JSClass offers the following hook:

  • The JavaScript engine calls the JSClass.mark callback during the mark phase of garbage collection.

See Also

Document Tags and Contributors

 Contributors to this page: kscarfone, arai
 Last updated by: kscarfone,