MCPcopy Create free account
hub / github.com/nodejs/node-addon-api / AccessorCallbackData

Class AccessorCallbackData

napi-inl.h:451–478  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

449
450template <typename Getter, typename Setter>
451struct AccessorCallbackData {
452 static inline napi_value GetterWrapper(napi_env env,
453 napi_callback_info info) {
454 return details::WrapCallback(env, [&] {
455 CallbackInfo callbackInfo(env, info);
456 AccessorCallbackData* callbackData =
457 static_cast<AccessorCallbackData*>(callbackInfo.Data());
458 callbackInfo.SetData(callbackData->data);
459 return callbackData->getterCallback(callbackInfo);
460 });
461 }
462
463 static inline napi_value SetterWrapper(napi_env env,
464 napi_callback_info info) {
465 return details::WrapCallback(env, [&] {
466 CallbackInfo callbackInfo(env, info);
467 AccessorCallbackData* callbackData =
468 static_cast<AccessorCallbackData*>(callbackInfo.Data());
469 callbackInfo.SetData(callbackData->data);
470 callbackData->setterCallback(callbackInfo);
471 return nullptr;
472 });
473 }
474
475 Getter getterCallback;
476 Setter setterCallback;
477 void* data;
478};
479
480// Debugging-purpose C++-style variant of sprintf().
481inline std::string StringFormat(const char* format, ...) {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected