diff options
author | 2022-05-09 22:39:22 -0700 | |
---|---|---|
committer | 2022-05-09 22:39:22 -0700 | |
commit | 1cb870be162493ebc24c709cb177912c344776e5 (patch) | |
tree | eb22c05b68915bed3bd3d6f8cbb6904494a67445 /src | |
parent | 35232fa42248d98c7107e3ae45d6a67c293578c7 (diff) | |
download | bun-1cb870be162493ebc24c709cb177912c344776e5.tar.gz bun-1cb870be162493ebc24c709cb177912c344776e5.tar.zst bun-1cb870be162493ebc24c709cb177912c344776e5.zip |
few more napi functions
Diffstat (limited to 'src')
-rw-r--r-- | src/javascript/jsc/bindings/napi.cpp | 28 | ||||
-rw-r--r-- | src/symbols.txt | 3 |
2 files changed, 30 insertions, 1 deletions
diff --git a/src/javascript/jsc/bindings/napi.cpp b/src/javascript/jsc/bindings/napi.cpp index b387daf6b..9a8a03405 100644 --- a/src/javascript/jsc/bindings/napi.cpp +++ b/src/javascript/jsc/bindings/napi.cpp @@ -749,9 +749,35 @@ extern "C" napi_status napi_detach_arraybuffer(napi_env env, return napi_ok; } +extern "C" napi_status napi_adjust_external_memory(napi_env env, + int64_t change_in_bytes, + int64_t* adjusted_value) +{ + if (change_in_bytes > 0) { + toJS(env)->vm().heap.deprecatedReportExtraMemory(change_in_bytes); + } + *adjusted_value = toJS(env)->vm().heap.extraMemorySize(); + return napi_ok; +} + +extern "C" napi_status napi_is_exception_pending(napi_env env, bool* result) +{ + auto globalObject = toJS(env); + *result = globalObject->vm().exceptionForInspection() != nullptr; + return napi_ok; +} +extern "C" napi_status napi_get_and_clear_last_exception(napi_env env, + napi_value* result) +{ + auto globalObject = toJS(env); + *result = toNapi(JSC::JSValue(globalObject->vm().lastException())); + globalObject->vm().clearLastException(); + return napi_ok; +} + extern "C" napi_status napi_throw(napi_env env, napi_value error) { - Zig::GlobalObject* globalObject = toJS(env); + auto globalObject = toJS(env); JSC::VM& vm = globalObject->vm(); auto throwScope = DECLARE_THROW_SCOPE(vm); diff --git a/src/symbols.txt b/src/symbols.txt index 47588af88..e3c47f531 100644 --- a/src/symbols.txt +++ b/src/symbols.txt @@ -121,3 +121,6 @@ _napi_reference_unref _napi_reference_ref _napi_get_reference_value _napi_delete_reference +_napi_adjust_external_memory +_napi_is_exception_pending +_napi_get_and_clear_last_exception |