Type Definition javascriptcore_sys::JSObjectGetPropertyNamesCallback [] [src]

type JSObjectGetPropertyNamesCallback = Option<unsafe extern "C" fn(_: JSContextRef, _: JSObjectRef, _: JSPropertyNameAccumulatorRef)>;

The callback invoked when collecting the names of an object's properties.

If you named your function GetPropertyNames, you would declare it like this:

void
GetPropertyNames(JSContextRef ctx, JSObjectRef object,
                 JSPropertyNameAccumulatorRef propertyNames);

Property name accumulators are used by JSObjectCopyPropertyNames and JavaScript for...in loops.

Use JSPropertyNameAccumulatorAddName to add property names to accumulator. A class's getPropertyNames callback only needs to provide the names of properties that the class vends through a custom getProperty or setProperty callback. Other properties, including statically declared properties, properties vended by other classes, and properties belonging to object's prototype, are added independently.