Type Alias JSObjectHasPropertyCallback

Source
pub type JSObjectHasPropertyCallback = Option<unsafe extern "C" fn(ctx: JSContextRef, object: JSObjectRef, propertyName: JSStringRef) -> bool>;
Expand description

The callback invoked when determining whether an object has a property.

  • ctx: The execution context to use.
  • object: The JSObjectRef to search for the property.
  • propertyName: A JSStringRef containing the name of the property look up.

Returns true if object has the property, otherwise false.

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

bool
HasProperty(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName);

If this function returns false, the hasProperty request forwards to object’s statically declared properties, then its parent class chain (which includes the default object class), then its prototype chain.

This callback enables optimization in cases where only a property’s existence needs to be known, not its value, and computing its value would be expensive.

If this callback is NULL, the getProperty callback will be used to service hasProperty requests.

§See also

Aliased Type§

pub enum JSObjectHasPropertyCallback {
    None,
    Some(unsafe extern "C" fn(*const OpaqueJSContext, *mut OpaqueJSValue, *mut OpaqueJSString) -> bool),
}

Variants§

§1.0.0

None

No value.

§1.0.0

Some(unsafe extern "C" fn(*const OpaqueJSContext, *mut OpaqueJSValue, *mut OpaqueJSString) -> bool)

Some value of type T.