pub type JSObjectGetPropertyNamesCallback = Option<unsafe extern "C" fn(ctx: JSContextRef, object: JSObjectRef, propertyNames: JSPropertyNameAccumulatorRef)>;Expand description
The callback invoked when collecting the names of an object’s properties.
ctx: The execution context to use.object: TheJSObjectRefwhose property names are being collected.propertyNames: A JavaScript property name accumulator in which to accumulate the names of 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.
Aliased Type§
pub enum JSObjectGetPropertyNamesCallback {
None,
Some(unsafe extern "C" fn(*const OpaqueJSContext, *mut OpaqueJSValue, *mut OpaqueJSPropertyNameAccumulator)),
}