1023dd3b8Sopenharmony_ci/*! 2023dd3b8Sopenharmony_ci * decimal.js v10.4.3 3023dd3b8Sopenharmony_ci * An arbitrary-precision Decimal type for JavaScript. 4023dd3b8Sopenharmony_ci * https://github.com/MikeMcl/decimal.js 5023dd3b8Sopenharmony_ci * Copyright (c) 2024 Huawei Device Co., Ltd. 6023dd3b8Sopenharmony_ci * MIT Licence 7023dd3b8Sopenharmony_ci */ 8023dd3b8Sopenharmony_ci 9023dd3b8Sopenharmony_ci#include "native_engine/native_engine.h" 10023dd3b8Sopenharmony_ci 11023dd3b8Sopenharmony_ciextern const char _binary_decimal_mjs_start[]; 12023dd3b8Sopenharmony_ciextern const char _binary_decimal_mjs_end[]; 13023dd3b8Sopenharmony_ciextern const char _binary_decimal_abc_start[]; 14023dd3b8Sopenharmony_ciextern const char _binary_decimal_abc_end[]; 15023dd3b8Sopenharmony_ci 16023dd3b8Sopenharmony_ci// Napi get mjs code function 17023dd3b8Sopenharmony_ciextern "C" __attribute__((visibility("default"))) 18023dd3b8Sopenharmony_civoid NAPI_arkts_math_Decimal_GetMJSCode(const char **buf, int *buflen) 19023dd3b8Sopenharmony_ci{ 20023dd3b8Sopenharmony_ci if (buf != nullptr) { 21023dd3b8Sopenharmony_ci *buf = _binary_decimal_mjs_start; 22023dd3b8Sopenharmony_ci } 23023dd3b8Sopenharmony_ci if (buflen != nullptr) { 24023dd3b8Sopenharmony_ci *buflen = _binary_decimal_mjs_end - _binary_decimal_mjs_start; 25023dd3b8Sopenharmony_ci } 26023dd3b8Sopenharmony_ci} 27023dd3b8Sopenharmony_ci 28023dd3b8Sopenharmony_ci// Napi get abc code function 29023dd3b8Sopenharmony_ciextern "C" __attribute__((visibility("default"))) 30023dd3b8Sopenharmony_civoid NAPI_arkts_math_Decimal_GetABCCode(const char **buf, int *buflen) 31023dd3b8Sopenharmony_ci{ 32023dd3b8Sopenharmony_ci if (buf != nullptr) { 33023dd3b8Sopenharmony_ci *buf = _binary_decimal_abc_start; 34023dd3b8Sopenharmony_ci } 35023dd3b8Sopenharmony_ci if (buflen != nullptr) { 36023dd3b8Sopenharmony_ci *buflen = _binary_decimal_abc_end - _binary_decimal_abc_start; 37023dd3b8Sopenharmony_ci } 38023dd3b8Sopenharmony_ci} 39023dd3b8Sopenharmony_ci 40023dd3b8Sopenharmony_ci/* 41023dd3b8Sopenharmony_ci * Module define 42023dd3b8Sopenharmony_ci */ 43023dd3b8Sopenharmony_cistatic napi_module DecimalModule = { 44023dd3b8Sopenharmony_ci .nm_filename = nullptr, 45023dd3b8Sopenharmony_ci .nm_modname = "arkts.math.Decimal", 46023dd3b8Sopenharmony_ci}; 47023dd3b8Sopenharmony_ciextern "C" __attribute__((constructor)) void DecimalRegisterModule(void) 48023dd3b8Sopenharmony_ci{ 49023dd3b8Sopenharmony_ci napi_module_register(&DecimalModule); 50023dd3b8Sopenharmony_ci} 51