koffi 0.9.33 → 0.9.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (360) hide show
  1. package/README.md +65 -95
  2. package/package.json +1 -1
  3. package/src/call_arm32.cc +18 -8
  4. package/src/ffi.cc +1 -2
  5. package/vendor/node-addon-api/CODE_OF_CONDUCT.md +0 -4
  6. package/vendor/node-addon-api/CONTRIBUTING.md +0 -93
  7. package/vendor/node-addon-api/appveyor.yml +0 -37
  8. package/vendor/node-addon-api/benchmark/README.md +0 -47
  9. package/vendor/node-addon-api/benchmark/binding.gyp +0 -25
  10. package/vendor/node-addon-api/benchmark/function_args.cc +0 -217
  11. package/vendor/node-addon-api/benchmark/function_args.js +0 -60
  12. package/vendor/node-addon-api/benchmark/index.js +0 -34
  13. package/vendor/node-addon-api/benchmark/property_descriptor.cc +0 -91
  14. package/vendor/node-addon-api/benchmark/property_descriptor.js +0 -37
  15. package/vendor/node-addon-api/doc/addon.md +0 -163
  16. package/vendor/node-addon-api/doc/array.md +0 -81
  17. package/vendor/node-addon-api/doc/array_buffer.md +0 -155
  18. package/vendor/node-addon-api/doc/async_context.md +0 -86
  19. package/vendor/node-addon-api/doc/async_operations.md +0 -31
  20. package/vendor/node-addon-api/doc/async_worker.md +0 -427
  21. package/vendor/node-addon-api/doc/async_worker_variants.md +0 -557
  22. package/vendor/node-addon-api/doc/bigint.md +0 -97
  23. package/vendor/node-addon-api/doc/boolean.md +0 -68
  24. package/vendor/node-addon-api/doc/buffer.md +0 -150
  25. package/vendor/node-addon-api/doc/callback_scope.md +0 -54
  26. package/vendor/node-addon-api/doc/callbackinfo.md +0 -97
  27. package/vendor/node-addon-api/doc/checker-tool.md +0 -32
  28. package/vendor/node-addon-api/doc/class_property_descriptor.md +0 -123
  29. package/vendor/node-addon-api/doc/cmake-js.md +0 -68
  30. package/vendor/node-addon-api/doc/conversion-tool.md +0 -28
  31. package/vendor/node-addon-api/doc/creating_a_release.md +0 -62
  32. package/vendor/node-addon-api/doc/dataview.md +0 -248
  33. package/vendor/node-addon-api/doc/date.md +0 -68
  34. package/vendor/node-addon-api/doc/env.md +0 -196
  35. package/vendor/node-addon-api/doc/error.md +0 -120
  36. package/vendor/node-addon-api/doc/error_handling.md +0 -254
  37. package/vendor/node-addon-api/doc/escapable_handle_scope.md +0 -80
  38. package/vendor/node-addon-api/doc/external.md +0 -63
  39. package/vendor/node-addon-api/doc/function.md +0 -402
  40. package/vendor/node-addon-api/doc/function_reference.md +0 -238
  41. package/vendor/node-addon-api/doc/generator.md +0 -13
  42. package/vendor/node-addon-api/doc/handle_scope.md +0 -63
  43. package/vendor/node-addon-api/doc/hierarchy.md +0 -91
  44. package/vendor/node-addon-api/doc/instance_wrap.md +0 -408
  45. package/vendor/node-addon-api/doc/maybe.md +0 -76
  46. package/vendor/node-addon-api/doc/memory_management.md +0 -27
  47. package/vendor/node-addon-api/doc/name.md +0 -29
  48. package/vendor/node-addon-api/doc/node-gyp.md +0 -82
  49. package/vendor/node-addon-api/doc/number.md +0 -163
  50. package/vendor/node-addon-api/doc/object.md +0 -411
  51. package/vendor/node-addon-api/doc/object_lifetime_management.md +0 -83
  52. package/vendor/node-addon-api/doc/object_reference.md +0 -117
  53. package/vendor/node-addon-api/doc/object_wrap.md +0 -588
  54. package/vendor/node-addon-api/doc/prebuild_tools.md +0 -16
  55. package/vendor/node-addon-api/doc/promises.md +0 -79
  56. package/vendor/node-addon-api/doc/property_descriptor.md +0 -286
  57. package/vendor/node-addon-api/doc/propertylvalue.md +0 -50
  58. package/vendor/node-addon-api/doc/range_error.md +0 -59
  59. package/vendor/node-addon-api/doc/reference.md +0 -113
  60. package/vendor/node-addon-api/doc/setup.md +0 -110
  61. package/vendor/node-addon-api/doc/string.md +0 -93
  62. package/vendor/node-addon-api/doc/symbol.md +0 -61
  63. package/vendor/node-addon-api/doc/threadsafe.md +0 -121
  64. package/vendor/node-addon-api/doc/threadsafe_function.md +0 -290
  65. package/vendor/node-addon-api/doc/type_error.md +0 -59
  66. package/vendor/node-addon-api/doc/typed_array.md +0 -78
  67. package/vendor/node-addon-api/doc/typed_array_of.md +0 -137
  68. package/vendor/node-addon-api/doc/typed_threadsafe_function.md +0 -306
  69. package/vendor/node-addon-api/doc/value.md +0 -340
  70. package/vendor/node-addon-api/doc/version_management.md +0 -43
  71. package/vendor/node-addon-api/package.json +0 -415
  72. package/vendor/node-addon-api/test/README.md +0 -91
  73. package/vendor/node-addon-api/test/addon.cc +0 -36
  74. package/vendor/node-addon-api/test/addon.js +0 -11
  75. package/vendor/node-addon-api/test/addon_build/index.js +0 -49
  76. package/vendor/node-addon-api/test/addon_build/tpl/addon.cc +0 -17
  77. package/vendor/node-addon-api/test/addon_build/tpl/binding.gyp +0 -62
  78. package/vendor/node-addon-api/test/addon_build/tpl/index.js +0 -9
  79. package/vendor/node-addon-api/test/addon_build/tpl/package.json +0 -11
  80. package/vendor/node-addon-api/test/addon_data.cc +0 -99
  81. package/vendor/node-addon-api/test/addon_data.js +0 -46
  82. package/vendor/node-addon-api/test/array_buffer.cc +0 -243
  83. package/vendor/node-addon-api/test/array_buffer.js +0 -69
  84. package/vendor/node-addon-api/test/async_context.cc +0 -36
  85. package/vendor/node-addon-api/test/async_context.js +0 -122
  86. package/vendor/node-addon-api/test/async_progress_queue_worker.cc +0 -83
  87. package/vendor/node-addon-api/test/async_progress_queue_worker.js +0 -46
  88. package/vendor/node-addon-api/test/async_progress_worker.cc +0 -134
  89. package/vendor/node-addon-api/test/async_progress_worker.js +0 -61
  90. package/vendor/node-addon-api/test/async_worker.cc +0 -106
  91. package/vendor/node-addon-api/test/async_worker.js +0 -179
  92. package/vendor/node-addon-api/test/async_worker_nocallback.js +0 -13
  93. package/vendor/node-addon-api/test/async_worker_persistent.cc +0 -63
  94. package/vendor/node-addon-api/test/async_worker_persistent.js +0 -24
  95. package/vendor/node-addon-api/test/basic_types/array.cc +0 -40
  96. package/vendor/node-addon-api/test/basic_types/array.js +0 -35
  97. package/vendor/node-addon-api/test/basic_types/boolean.cc +0 -38
  98. package/vendor/node-addon-api/test/basic_types/boolean.js +0 -35
  99. package/vendor/node-addon-api/test/basic_types/number.cc +0 -99
  100. package/vendor/node-addon-api/test/basic_types/number.js +0 -114
  101. package/vendor/node-addon-api/test/basic_types/value.cc +0 -120
  102. package/vendor/node-addon-api/test/basic_types/value.js +0 -133
  103. package/vendor/node-addon-api/test/bigint.cc +0 -91
  104. package/vendor/node-addon-api/test/bigint.js +0 -53
  105. package/vendor/node-addon-api/test/binding-swallowexcept.cc +0 -12
  106. package/vendor/node-addon-api/test/binding.cc +0 -173
  107. package/vendor/node-addon-api/test/binding.gyp +0 -124
  108. package/vendor/node-addon-api/test/buffer.cc +0 -183
  109. package/vendor/node-addon-api/test/buffer.js +0 -69
  110. package/vendor/node-addon-api/test/callbackscope.cc +0 -22
  111. package/vendor/node-addon-api/test/callbackscope.js +0 -49
  112. package/vendor/node-addon-api/test/common/index.js +0 -114
  113. package/vendor/node-addon-api/test/common/test_helper.h +0 -71
  114. package/vendor/node-addon-api/test/dataview/dataview.cc +0 -48
  115. package/vendor/node-addon-api/test/dataview/dataview.js +0 -35
  116. package/vendor/node-addon-api/test/dataview/dataview_read_write.cc +0 -115
  117. package/vendor/node-addon-api/test/dataview/dataview_read_write.js +0 -90
  118. package/vendor/node-addon-api/test/date.cc +0 -44
  119. package/vendor/node-addon-api/test/date.js +0 -18
  120. package/vendor/node-addon-api/test/env_cleanup.cc +0 -88
  121. package/vendor/node-addon-api/test/env_cleanup.js +0 -56
  122. package/vendor/node-addon-api/test/error.cc +0 -287
  123. package/vendor/node-addon-api/test/error.js +0 -81
  124. package/vendor/node-addon-api/test/error_handling_for_primitives.cc +0 -13
  125. package/vendor/node-addon-api/test/error_handling_for_primitives.js +0 -29
  126. package/vendor/node-addon-api/test/error_terminating_environment.js +0 -95
  127. package/vendor/node-addon-api/test/external.cc +0 -81
  128. package/vendor/node-addon-api/test/external.js +0 -88
  129. package/vendor/node-addon-api/test/function.cc +0 -324
  130. package/vendor/node-addon-api/test/function.js +0 -133
  131. package/vendor/node-addon-api/test/function_reference.cc +0 -202
  132. package/vendor/node-addon-api/test/function_reference.js +0 -157
  133. package/vendor/node-addon-api/test/globalObject/global_object.cc +0 -61
  134. package/vendor/node-addon-api/test/globalObject/global_object_delete_property.cc +0 -31
  135. package/vendor/node-addon-api/test/globalObject/global_object_delete_property.js +0 -61
  136. package/vendor/node-addon-api/test/globalObject/global_object_get_property.cc +0 -40
  137. package/vendor/node-addon-api/test/globalObject/global_object_get_property.js +0 -57
  138. package/vendor/node-addon-api/test/globalObject/global_object_has_own_property.cc +0 -28
  139. package/vendor/node-addon-api/test/globalObject/global_object_has_own_property.js +0 -48
  140. package/vendor/node-addon-api/test/globalObject/global_object_set_property.cc +0 -31
  141. package/vendor/node-addon-api/test/globalObject/global_object_set_property.js +0 -58
  142. package/vendor/node-addon-api/test/handlescope.cc +0 -60
  143. package/vendor/node-addon-api/test/handlescope.js +0 -14
  144. package/vendor/node-addon-api/test/index.js +0 -159
  145. package/vendor/node-addon-api/test/maybe/check.cc +0 -23
  146. package/vendor/node-addon-api/test/maybe/index.js +0 -38
  147. package/vendor/node-addon-api/test/memory_management.cc +0 -17
  148. package/vendor/node-addon-api/test/memory_management.js +0 -9
  149. package/vendor/node-addon-api/test/movable_callbacks.cc +0 -23
  150. package/vendor/node-addon-api/test/movable_callbacks.js +0 -21
  151. package/vendor/node-addon-api/test/name.cc +0 -108
  152. package/vendor/node-addon-api/test/name.js +0 -59
  153. package/vendor/node-addon-api/test/napi_child.js +0 -14
  154. package/vendor/node-addon-api/test/object/delete_property.cc +0 -38
  155. package/vendor/node-addon-api/test/object/delete_property.js +0 -41
  156. package/vendor/node-addon-api/test/object/finalizer.cc +0 -29
  157. package/vendor/node-addon-api/test/object/finalizer.js +0 -28
  158. package/vendor/node-addon-api/test/object/get_property.cc +0 -34
  159. package/vendor/node-addon-api/test/object/get_property.js +0 -40
  160. package/vendor/node-addon-api/test/object/has_own_property.cc +0 -34
  161. package/vendor/node-addon-api/test/object/has_own_property.js +0 -34
  162. package/vendor/node-addon-api/test/object/has_property.cc +0 -38
  163. package/vendor/node-addon-api/test/object/has_property.js +0 -37
  164. package/vendor/node-addon-api/test/object/object.cc +0 -350
  165. package/vendor/node-addon-api/test/object/object.js +0 -217
  166. package/vendor/node-addon-api/test/object/object_deprecated.cc +0 -66
  167. package/vendor/node-addon-api/test/object/object_deprecated.js +0 -47
  168. package/vendor/node-addon-api/test/object/object_freeze_seal.cc +0 -25
  169. package/vendor/node-addon-api/test/object/object_freeze_seal.js +0 -61
  170. package/vendor/node-addon-api/test/object/set_property.cc +0 -45
  171. package/vendor/node-addon-api/test/object/set_property.js +0 -30
  172. package/vendor/node-addon-api/test/object/subscript_operator.cc +0 -58
  173. package/vendor/node-addon-api/test/object/subscript_operator.js +0 -17
  174. package/vendor/node-addon-api/test/object_reference.cc +0 -219
  175. package/vendor/node-addon-api/test/object_reference.js +0 -259
  176. package/vendor/node-addon-api/test/objectwrap.cc +0 -268
  177. package/vendor/node-addon-api/test/objectwrap.js +0 -284
  178. package/vendor/node-addon-api/test/objectwrap_constructor_exception.cc +0 -26
  179. package/vendor/node-addon-api/test/objectwrap_constructor_exception.js +0 -18
  180. package/vendor/node-addon-api/test/objectwrap_function.cc +0 -45
  181. package/vendor/node-addon-api/test/objectwrap_function.js +0 -22
  182. package/vendor/node-addon-api/test/objectwrap_multiple_inheritance.cc +0 -30
  183. package/vendor/node-addon-api/test/objectwrap_multiple_inheritance.js +0 -13
  184. package/vendor/node-addon-api/test/objectwrap_removewrap.cc +0 -45
  185. package/vendor/node-addon-api/test/objectwrap_removewrap.js +0 -40
  186. package/vendor/node-addon-api/test/objectwrap_worker_thread.js +0 -19
  187. package/vendor/node-addon-api/test/promise.cc +0 -29
  188. package/vendor/node-addon-api/test/promise.js +0 -18
  189. package/vendor/node-addon-api/test/reference.cc +0 -24
  190. package/vendor/node-addon-api/test/reference.js +0 -14
  191. package/vendor/node-addon-api/test/run_script.cc +0 -56
  192. package/vendor/node-addon-api/test/run_script.js +0 -45
  193. package/vendor/node-addon-api/test/symbol.cc +0 -79
  194. package/vendor/node-addon-api/test/symbol.js +0 -73
  195. package/vendor/node-addon-api/test/testUtil.js +0 -54
  196. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function.cc +0 -195
  197. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function.js +0 -188
  198. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_ctx.cc +0 -63
  199. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_ctx.js +0 -12
  200. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_existing_tsfn.cc +0 -115
  201. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_existing_tsfn.js +0 -14
  202. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_ptr.cc +0 -26
  203. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_ptr.js +0 -7
  204. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_sum.cc +0 -225
  205. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_sum.js +0 -59
  206. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_unref.cc +0 -42
  207. package/vendor/node-addon-api/test/threadsafe_function/threadsafe_function_unref.js +0 -53
  208. package/vendor/node-addon-api/test/thunking_manual.cc +0 -140
  209. package/vendor/node-addon-api/test/thunking_manual.js +0 -17
  210. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function.cc +0 -215
  211. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function.js +0 -188
  212. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_ctx.cc +0 -68
  213. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_ctx.js +0 -12
  214. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_existing_tsfn.cc +0 -127
  215. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_existing_tsfn.js +0 -14
  216. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_ptr.cc +0 -28
  217. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_ptr.js +0 -7
  218. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_sum.cc +0 -237
  219. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_sum.js +0 -59
  220. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_unref.cc +0 -53
  221. package/vendor/node-addon-api/test/typed_threadsafe_function/typed_threadsafe_function_unref.js +0 -53
  222. package/vendor/node-addon-api/test/typedarray-bigint.js +0 -58
  223. package/vendor/node-addon-api/test/typedarray.cc +0 -216
  224. package/vendor/node-addon-api/test/typedarray.js +0 -69
  225. package/vendor/node-addon-api/test/version_management.cc +0 -27
  226. package/vendor/node-addon-api/test/version_management.js +0 -31
  227. package/vendor/node-addon-api/unit-test/README.md +0 -28
  228. package/vendor/node-addon-api/unit-test/binding-file-template.js +0 -39
  229. package/vendor/node-addon-api/unit-test/binding.gyp +0 -72
  230. package/vendor/node-addon-api/unit-test/exceptions.js +0 -32
  231. package/vendor/node-addon-api/unit-test/generate-binding-cc.js +0 -61
  232. package/vendor/node-addon-api/unit-test/injectTestParams.js +0 -101
  233. package/vendor/node-addon-api/unit-test/listOfTestModules.js +0 -88
  234. package/vendor/node-addon-api/unit-test/matchModules.js +0 -65
  235. package/vendor/node-addon-api/unit-test/setup.js +0 -13
  236. package/vendor/node-addon-api/unit-test/spawnTask.js +0 -26
  237. package/vendor/node-addon-api/unit-test/test.js +0 -30
  238. package/vendor/raylib/projects/VS2019/examples/audio_module_playing.vcxproj +0 -387
  239. package/vendor/raylib/projects/VS2019/examples/audio_multichannel_sound.vcxproj +0 -387
  240. package/vendor/raylib/projects/VS2019/examples/audio_music_stream.vcxproj +0 -387
  241. package/vendor/raylib/projects/VS2019/examples/audio_raw_stream.vcxproj +0 -387
  242. package/vendor/raylib/projects/VS2019/examples/audio_sound_loading.vcxproj +0 -387
  243. package/vendor/raylib/projects/VS2019/examples/core_2d_camera.vcxproj +0 -387
  244. package/vendor/raylib/projects/VS2019/examples/core_2d_camera_platformer.vcxproj +0 -387
  245. package/vendor/raylib/projects/VS2019/examples/core_3d_camera_first_person.vcxproj +0 -387
  246. package/vendor/raylib/projects/VS2019/examples/core_3d_camera_free.vcxproj +0 -387
  247. package/vendor/raylib/projects/VS2019/examples/core_3d_camera_mode.vcxproj +0 -387
  248. package/vendor/raylib/projects/VS2019/examples/core_3d_picking.vcxproj +0 -387
  249. package/vendor/raylib/projects/VS2019/examples/core_basic_window.vcxproj +0 -387
  250. package/vendor/raylib/projects/VS2019/examples/core_custom_logging.vcxproj +0 -387
  251. package/vendor/raylib/projects/VS2019/examples/core_drop_files.vcxproj +0 -387
  252. package/vendor/raylib/projects/VS2019/examples/core_input_gamepad.vcxproj +0 -387
  253. package/vendor/raylib/projects/VS2019/examples/core_input_gestures.vcxproj +0 -387
  254. package/vendor/raylib/projects/VS2019/examples/core_input_keys.vcxproj +0 -387
  255. package/vendor/raylib/projects/VS2019/examples/core_input_mouse.vcxproj +0 -387
  256. package/vendor/raylib/projects/VS2019/examples/core_input_mouse_wheel.vcxproj +0 -387
  257. package/vendor/raylib/projects/VS2019/examples/core_input_multitouch.vcxproj +0 -387
  258. package/vendor/raylib/projects/VS2019/examples/core_loading_thread.vcxproj +0 -387
  259. package/vendor/raylib/projects/VS2019/examples/core_quat_conversion.vcxproj +0 -387
  260. package/vendor/raylib/projects/VS2019/examples/core_random_values.vcxproj +0 -387
  261. package/vendor/raylib/projects/VS2019/examples/core_scissor_test.vcxproj +0 -387
  262. package/vendor/raylib/projects/VS2019/examples/core_split_screen.vcxproj +0 -387
  263. package/vendor/raylib/projects/VS2019/examples/core_storage_values.vcxproj +0 -387
  264. package/vendor/raylib/projects/VS2019/examples/core_vr_simulator.vcxproj +0 -387
  265. package/vendor/raylib/projects/VS2019/examples/core_window_flags.vcxproj +0 -387
  266. package/vendor/raylib/projects/VS2019/examples/core_window_letterbox.vcxproj +0 -387
  267. package/vendor/raylib/projects/VS2019/examples/core_world_screen.vcxproj +0 -387
  268. package/vendor/raylib/projects/VS2019/examples/easings_testbed.vcxproj +0 -387
  269. package/vendor/raylib/projects/VS2019/examples/embedded_files_loading.vcxproj +0 -387
  270. package/vendor/raylib/projects/VS2019/examples/models_animation.vcxproj +0 -387
  271. package/vendor/raylib/projects/VS2019/examples/models_billboard.vcxproj +0 -387
  272. package/vendor/raylib/projects/VS2019/examples/models_box_collisions.vcxproj +0 -387
  273. package/vendor/raylib/projects/VS2019/examples/models_cubicmap.vcxproj +0 -387
  274. package/vendor/raylib/projects/VS2019/examples/models_first_person_maze.vcxproj +0 -387
  275. package/vendor/raylib/projects/VS2019/examples/models_geometric_shapes.vcxproj +0 -387
  276. package/vendor/raylib/projects/VS2019/examples/models_heightmap.vcxproj +0 -387
  277. package/vendor/raylib/projects/VS2019/examples/models_loading.vcxproj +0 -387
  278. package/vendor/raylib/projects/VS2019/examples/models_loading_gltf.vcxproj +0 -387
  279. package/vendor/raylib/projects/VS2019/examples/models_loading_vox.vcxproj +0 -387
  280. package/vendor/raylib/projects/VS2019/examples/models_mesh_generation.vcxproj +0 -387
  281. package/vendor/raylib/projects/VS2019/examples/models_mesh_picking.vcxproj +0 -387
  282. package/vendor/raylib/projects/VS2019/examples/models_orthographic_projection.vcxproj +0 -387
  283. package/vendor/raylib/projects/VS2019/examples/models_rlgl_solar_system.vcxproj +0 -387
  284. package/vendor/raylib/projects/VS2019/examples/models_skybox.vcxproj +0 -387
  285. package/vendor/raylib/projects/VS2019/examples/models_waving_cubes.vcxproj +0 -387
  286. package/vendor/raylib/projects/VS2019/examples/models_yaw_pitch_roll.vcxproj +0 -387
  287. package/vendor/raylib/projects/VS2019/examples/physics_demo.vcxproj +0 -387
  288. package/vendor/raylib/projects/VS2019/examples/physics_friction.vcxproj +0 -387
  289. package/vendor/raylib/projects/VS2019/examples/physics_movement.vcxproj +0 -387
  290. package/vendor/raylib/projects/VS2019/examples/physics_restitution.vcxproj +0 -387
  291. package/vendor/raylib/projects/VS2019/examples/physics_shatter.vcxproj +0 -387
  292. package/vendor/raylib/projects/VS2019/examples/raudio_standalone.vcxproj +0 -387
  293. package/vendor/raylib/projects/VS2019/examples/rlgl_standalone.vcxproj +0 -391
  294. package/vendor/raylib/projects/VS2019/examples/shaders_basic_lighting.vcxproj +0 -387
  295. package/vendor/raylib/projects/VS2019/examples/shaders_custom_uniform.vcxproj +0 -387
  296. package/vendor/raylib/projects/VS2019/examples/shaders_eratosthenes.vcxproj +0 -387
  297. package/vendor/raylib/projects/VS2019/examples/shaders_fog.vcxproj +0 -387
  298. package/vendor/raylib/projects/VS2019/examples/shaders_hot_reloading.vcxproj +0 -387
  299. package/vendor/raylib/projects/VS2019/examples/shaders_julia_set.vcxproj +0 -387
  300. package/vendor/raylib/projects/VS2019/examples/shaders_mesh_instancing.vcxproj +0 -387
  301. package/vendor/raylib/projects/VS2019/examples/shaders_model_shader.vcxproj +0 -387
  302. package/vendor/raylib/projects/VS2019/examples/shaders_multi_sample2d.vcxproj +0 -387
  303. package/vendor/raylib/projects/VS2019/examples/shaders_palette_switch.vcxproj +0 -387
  304. package/vendor/raylib/projects/VS2019/examples/shaders_postprocessing.vcxproj +0 -387
  305. package/vendor/raylib/projects/VS2019/examples/shaders_raymarching.vcxproj +0 -387
  306. package/vendor/raylib/projects/VS2019/examples/shaders_shapes_textures.vcxproj +0 -387
  307. package/vendor/raylib/projects/VS2019/examples/shaders_simple_mask.vcxproj +0 -387
  308. package/vendor/raylib/projects/VS2019/examples/shaders_spotlight.vcxproj +0 -387
  309. package/vendor/raylib/projects/VS2019/examples/shaders_texture_drawing.vcxproj +0 -387
  310. package/vendor/raylib/projects/VS2019/examples/shaders_texture_waves.vcxproj +0 -387
  311. package/vendor/raylib/projects/VS2019/examples/shapes_basic_shapes.vcxproj +0 -387
  312. package/vendor/raylib/projects/VS2019/examples/shapes_bouncing_ball.vcxproj +0 -387
  313. package/vendor/raylib/projects/VS2019/examples/shapes_collision_area.vcxproj +0 -387
  314. package/vendor/raylib/projects/VS2019/examples/shapes_colors_palette.vcxproj +0 -387
  315. package/vendor/raylib/projects/VS2019/examples/shapes_draw_circle_sector.vcxproj +0 -387
  316. package/vendor/raylib/projects/VS2019/examples/shapes_draw_rectangle_rounded.vcxproj +0 -387
  317. package/vendor/raylib/projects/VS2019/examples/shapes_draw_ring.vcxproj +0 -387
  318. package/vendor/raylib/projects/VS2019/examples/shapes_easings_ball_anim.vcxproj +0 -387
  319. package/vendor/raylib/projects/VS2019/examples/shapes_easings_box_anim.vcxproj +0 -387
  320. package/vendor/raylib/projects/VS2019/examples/shapes_easings_rectangle_array.vcxproj +0 -387
  321. package/vendor/raylib/projects/VS2019/examples/shapes_following_eyes.vcxproj +0 -387
  322. package/vendor/raylib/projects/VS2019/examples/shapes_lines_bezier.vcxproj +0 -387
  323. package/vendor/raylib/projects/VS2019/examples/shapes_logo_raylib.vcxproj +0 -387
  324. package/vendor/raylib/projects/VS2019/examples/shapes_logo_raylib_anim.vcxproj +0 -387
  325. package/vendor/raylib/projects/VS2019/examples/shapes_rectangle_scaling.vcxproj +0 -387
  326. package/vendor/raylib/projects/VS2019/examples/text_font_filters.vcxproj +0 -387
  327. package/vendor/raylib/projects/VS2019/examples/text_font_loading.vcxproj +0 -387
  328. package/vendor/raylib/projects/VS2019/examples/text_font_sdf.vcxproj +0 -387
  329. package/vendor/raylib/projects/VS2019/examples/text_font_spritefont.vcxproj +0 -387
  330. package/vendor/raylib/projects/VS2019/examples/text_format_text.vcxproj +0 -387
  331. package/vendor/raylib/projects/VS2019/examples/text_input_box.vcxproj +0 -387
  332. package/vendor/raylib/projects/VS2019/examples/text_raylib_fonts.vcxproj +0 -387
  333. package/vendor/raylib/projects/VS2019/examples/text_rectangle_bounds.vcxproj +0 -387
  334. package/vendor/raylib/projects/VS2019/examples/text_unicode.vcxproj +0 -387
  335. package/vendor/raylib/projects/VS2019/examples/text_writing_anim.vcxproj +0 -387
  336. package/vendor/raylib/projects/VS2019/examples/textures_background_scrolling.vcxproj +0 -387
  337. package/vendor/raylib/projects/VS2019/examples/textures_blend_modes.vcxproj +0 -387
  338. package/vendor/raylib/projects/VS2019/examples/textures_bunnymark.vcxproj +0 -387
  339. package/vendor/raylib/projects/VS2019/examples/textures_draw_tiled.vcxproj +0 -387
  340. package/vendor/raylib/projects/VS2019/examples/textures_image_drawing.vcxproj +0 -387
  341. package/vendor/raylib/projects/VS2019/examples/textures_image_generation.vcxproj +0 -387
  342. package/vendor/raylib/projects/VS2019/examples/textures_image_loading.vcxproj +0 -387
  343. package/vendor/raylib/projects/VS2019/examples/textures_image_processing.vcxproj +0 -387
  344. package/vendor/raylib/projects/VS2019/examples/textures_image_text.vcxproj +0 -387
  345. package/vendor/raylib/projects/VS2019/examples/textures_logo_raylib.vcxproj +0 -387
  346. package/vendor/raylib/projects/VS2019/examples/textures_mouse_painting.vcxproj +0 -387
  347. package/vendor/raylib/projects/VS2019/examples/textures_npatch_drawing.vcxproj +0 -387
  348. package/vendor/raylib/projects/VS2019/examples/textures_particles_blending.vcxproj +0 -387
  349. package/vendor/raylib/projects/VS2019/examples/textures_raw_data.vcxproj +0 -387
  350. package/vendor/raylib/projects/VS2019/examples/textures_rectangle.vcxproj +0 -387
  351. package/vendor/raylib/projects/VS2019/examples/textures_sprite_button.vcxproj +0 -387
  352. package/vendor/raylib/projects/VS2019/examples/textures_sprite_explosion.vcxproj +0 -387
  353. package/vendor/raylib/projects/VS2019/examples/textures_srcrec_dstrec.vcxproj +0 -387
  354. package/vendor/raylib/projects/VS2019/examples/textures_to_image.vcxproj +0 -387
  355. package/vendor/raylib/projects/VS2019/raylib/raylib.vcxproj +0 -341
  356. package/vendor/raylib/projects/VS2019/raylib.sln +0 -2274
  357. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj +0 -226
  358. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj.filters +0 -10
  359. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj.user +0 -4
  360. package/vendor/raylib/projects/VS2019-Android/raylib_android.sln +0 -75
@@ -1,286 +0,0 @@
1
- # Property Descriptor
2
-
3
- A [`Napi::Object`](object.md) can be assigned properties via its [`DefineProperty`](object.md#defineproperty) and [`DefineProperties`](object.md#defineproperties) functions, which take PropertyDescriptor(s) as their parameters. The `Napi::PropertyDescriptor` can contain either values or functions, which are then assigned to the `Napi::Object`. Note that a single instance of a `Napi::PropertyDescriptor` class can only contain either one value, or at most two functions. PropertyDescriptors can only be created through the class methods [`Accessor`](#accessor), [`Function`](#function), or [`Value`](#value), each of which return a new static instance of a `Napi::PropertyDescriptor`.
4
-
5
- ## Example
6
-
7
- ```cpp
8
- #include <napi.h>
9
-
10
- using namespace Napi;
11
-
12
- Value TestGetter(const CallbackInfo& info) {
13
- return Boolean::New(info.Env(), testValue);
14
- }
15
-
16
- void TestSetter(const CallbackInfo& info) {
17
- testValue = info[0].As<Boolean>();
18
- }
19
-
20
- Value TestFunction(const CallbackInfo& info) {
21
- return Boolean::New(info.Env(), true);
22
- }
23
-
24
- Void Init(Env env) {
25
- // Create an object.
26
- Object obj = Object::New(env);
27
-
28
- // Accessor
29
- PropertyDescriptor pd1 = PropertyDescriptor::Accessor<TestGetter>("pd1");
30
- PropertyDescriptor pd2 =
31
- PropertyDescriptor::Accessor<TestGetter, TestSetter>("pd2");
32
- // Function
33
- PropertyDescriptor pd3 = PropertyDescriptor::Function(env,
34
- "function",
35
- TestFunction);
36
- // Value
37
- Boolean true_bool = Boolean::New(env, true);
38
- PropertyDescriptor pd4 =
39
- PropertyDescriptor::Value("boolean value",
40
- Napi::Boolean::New(env, true),
41
- napi_writable);
42
-
43
- // Assign properties to the object.
44
- obj.DefineProperties({pd1, pd2, pd3, pd4});
45
- }
46
- ```
47
-
48
- ## Types
49
-
50
- ### PropertyDescriptor::GetterCallback
51
-
52
- ```cpp
53
- using GetterCallback = Napi::Value (*)(const Napi::CallbackInfo& info);
54
- ```
55
-
56
- This is the signature of a getter function to be passed as a template parameter
57
- to `PropertyDescriptor::Accessor`.
58
-
59
- ### PropertyDescriptor::SetterCallback
60
-
61
- ```cpp
62
- using SetterCallback = void (*)(const Napi::CallbackInfo& info);
63
- ```
64
-
65
- This is the signature of a setter function to be passed as a template parameter
66
- to `PropertyDescriptor::Accessor`.
67
-
68
- ## Methods
69
-
70
- ### Constructor
71
-
72
- ```cpp
73
- Napi::PropertyDescriptor::PropertyDescriptor (napi_property_descriptor desc);
74
- ```
75
-
76
- * `[in] desc`: A PropertyDescriptor that is needed in order to create another PropertyDescriptor.
77
-
78
- ### Accessor
79
-
80
- ```cpp
81
- template <Napi::PropertyDescriptor::GetterCallback Getter>
82
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Accessor (___ name,
83
- napi_property_attributes attributes = napi_default,
84
- void* data = nullptr);
85
- ```
86
-
87
- * `[template] Getter`: A getter function.
88
- * `[in] attributes`: Potential attributes for the getter function.
89
- * `[in] data`: A pointer to data of any type, default is a null pointer.
90
-
91
- Returns a PropertyDescriptor that contains a read-only property.
92
-
93
- The name of the property can be any of the following types:
94
- - `const char*`
95
- - `const std::string &`
96
- - `napi_value value`
97
- - `Napi::Name`
98
-
99
- ```cpp
100
- template <
101
- Napi::PropertyDescriptor::GetterCallback Getter,
102
- Napi::PropertyDescriptor::SetterCallback Setter>
103
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Accessor (___ name,
104
- napi_property_attributes attributes = napi_default,
105
- void* data = nullptr);
106
- ```
107
-
108
- * `[template] Getter`: A getter function.
109
- * `[template] Setter`: A setter function.
110
- * `[in] attributes`: Potential attributes for the getter function.
111
- * `[in] data`: A pointer to data of any type, default is a null pointer.
112
-
113
- Returns a PropertyDescriptor that contains a read-write property.
114
-
115
- The name of the property can be any of the following types:
116
- - `const char*`
117
- - `const std::string &`
118
- - `napi_value value`
119
- - `Napi::Name`
120
-
121
- ```cpp
122
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Accessor (___ name,
123
- Getter getter,
124
- napi_property_attributes attributes = napi_default,
125
- void *data = nullptr);
126
- ```
127
-
128
- * `[in] name`: The name used for the getter function.
129
- * `[in] getter`: A getter function.
130
- * `[in] attributes`: Potential attributes for the getter function.
131
- * `[in] data`: A pointer to data of any type, default is a null pointer.
132
-
133
- Returns a PropertyDescriptor that contains a function.
134
-
135
- The name of the property can be any of the following types:
136
- - `const char*`
137
- - `const std::string &`
138
- - `napi_value value`
139
- - `Napi::Name`
140
-
141
- **The above signature is deprecated. It will result in a memory leak if used.**
142
-
143
- ```cpp
144
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Accessor (
145
- Napi::Env env,
146
- Napi::Object object,
147
- ___ name,
148
- Getter getter,
149
- napi_property_attributes attributes = napi_default,
150
- void *data = nullptr);
151
- ```
152
-
153
- * `[in] env`: The environment in which to create this accessor.
154
- * `[in] object`: The object on which the accessor will be defined.
155
- * `[in] name`: The name used for the getter function.
156
- * `[in] getter`: A getter function.
157
- * `[in] attributes`: Potential attributes for the getter function.
158
- * `[in] data`: A pointer to data of any type, default is a null pointer.
159
-
160
- Returns a `Napi::PropertyDescriptor` that contains a `Getter` accessor.
161
-
162
- The name of the property can be any of the following types:
163
- - `const char*`
164
- - `const std::string &`
165
- - `Napi::Name`
166
-
167
- ```cpp
168
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Accessor (___ name,
169
- Getter getter,
170
- Setter setter,
171
- napi_property_attributes attributes = napi_default,
172
- void *data = nullptr);
173
- ```
174
-
175
- * `[in] name`: The name of the getter and setter function.
176
- * `[in] getter`: The getter function.
177
- * `[in] setter`: The setter function.
178
- * `[in] attributes`: Potential attributes for the getter function.
179
- * `[in] data`: A pointer to data of any type, default is a null pointer.
180
-
181
- Returns a `Napi::PropertyDescriptor` that contains a `Getter` and `Setter` function.
182
-
183
- The name of the property can be any of the following types:
184
- - `const char*`
185
- - `const std::string &`
186
- - `napi_value value`
187
- - `Napi::Name`
188
-
189
- **The above signature is deprecated. It will result in a memory leak if used.**
190
-
191
- ```cpp
192
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Accessor (
193
- Napi::Env env,
194
- Napi::Object object,
195
- ___ name,
196
- Getter getter,
197
- Setter setter,
198
- napi_property_attributes attributes = napi_default,
199
- void *data = nullptr);
200
- ```
201
-
202
- * `[in] env`: The environment in which to create this accessor.
203
- * `[in] object`: The object on which the accessor will be defined.
204
- * `[in] name`: The name of the getter and setter function.
205
- * `[in] getter`: The getter function.
206
- * `[in] setter`: The setter function.
207
- * `[in] attributes`: Potential attributes for the getter function.
208
- * `[in] data`: A pointer to data of any type, default is a null pointer.
209
-
210
- Returns a `Napi::PropertyDescriptor` that contains a `Getter` and `Setter` function.
211
-
212
- The name of the property can be any of the following types:
213
- - `const char*`
214
- - `const std::string &`
215
- - `Napi::Name`
216
-
217
- ### Function
218
-
219
- ```cpp
220
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Function (___ name,
221
- Callable cb,
222
- napi_property_attributes attributes = napi_default,
223
- void *data = nullptr);
224
- ```
225
-
226
- * `[in] name`: The name of the Callable function.
227
- * `[in] cb`: The function
228
- * `[in] attributes`: Potential attributes for the getter function.
229
- * `[in] data`: A pointer to data of any type, default is a null pointer.
230
-
231
- Returns a `Napi::PropertyDescriptor` that contains a callable `Napi::Function`.
232
-
233
- The name of the property can be any of the following types:
234
- - `const char*`
235
- - `const std::string &`
236
- - `napi_value value`
237
- - `Napi::Name`
238
-
239
- **The above signature is deprecated. It will result in a memory leak if used.**
240
-
241
- ```cpp
242
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Function (
243
- Napi::Env env,
244
- ___ name,
245
- Callable cb,
246
- napi_property_attributes attributes = napi_default,
247
- void *data = nullptr);
248
- ```
249
-
250
- * `[in] env`: The environment in which to create this accessor.
251
- * `[in] name`: The name of the Callable function.
252
- * `[in] cb`: The function
253
- * `[in] attributes`: Potential attributes for the getter function.
254
- * `[in] data`: A pointer to data of any type, default is a null pointer.
255
-
256
- Returns a `Napi::PropertyDescriptor` that contains a callable `Napi::Function`.
257
-
258
- The name of the property can be any of the following types:
259
- - `const char*`
260
- - `const std::string &`
261
- - `Napi::Name`
262
-
263
- ### Value
264
-
265
- ```cpp
266
- static Napi::PropertyDescriptor Napi::PropertyDescriptor::Value (___ name,
267
- napi_value value,
268
- napi_property_attributes attributes = napi_default);
269
- ```
270
-
271
- The name of the property can be any of the following types:
272
- - `const char*`
273
- - `const std::string &`
274
- - `napi_value value`
275
- - `Napi::Name`
276
-
277
- ## Related Information
278
-
279
- ### napi\_property\_attributes
280
- `napi_property_attributes` are flags used to indicate to JavaScript certain permissions that the property is meant to have. The following are the flag options:
281
- - napi\_default,
282
- - napi\_writable,
283
- - napi\_enumerable,
284
- - napi\_configurable
285
- For more information on the flags and on napi\_property\_attributes, please read the documentation [here](https://github.com/nodejs/node/blob/HEAD/doc/api/n-api.md#napi_property_attributes).
286
-
@@ -1,50 +0,0 @@
1
- # PropertyLValue
2
-
3
- The `Napi::Object::PropertyLValue` class is a helper class provided by
4
- `Napi::Object` to allow more intuitive assignment of properties.
5
-
6
- ## Example
7
- ```cpp
8
- #include <napi.h>
9
-
10
- using namespace Napi;
11
-
12
- Void Init(Env env) {
13
- // Create a new instance
14
- Object obj = Object::New(env);
15
-
16
- // Assign a value to a property.
17
- obj["hello"] = "world";
18
- }
19
- ```
20
-
21
- In the above example, `obj["hello"]` returns a `Napi::Object::PropertyLValue`
22
- whose `operator=()` method accepts a string which will become the value of the
23
- "hello" property of the newly created object.
24
-
25
- In general, `obj[key] = value` is the equivalent of `obj.Set(key, value)`, where
26
- the types of `key` and `value` are all those supported by
27
- [`Napi::Object::Set()`](object.md#set).
28
-
29
- ## Methods
30
-
31
- ### operator Value()
32
-
33
- ```cpp
34
- operator Value() const;
35
- ```
36
-
37
- Implicitly casts this `Napi::Object::PropertyLValue` to a `Napi::Value`.
38
-
39
- ### operator =()
40
-
41
- ```cpp
42
- template <typename ValueType>
43
- PropertyLValue& operator =(ValueType value);
44
- ```
45
-
46
- * `[in] value` a value to assign to the property referred to by the
47
- `Napi::Object::PropertyLValue`. The type of the value is one of the types
48
- supported by the second parameter of [`Napi::Object::Set()`](object.md#set).
49
-
50
- Returns a self-reference.
@@ -1,59 +0,0 @@
1
- # RangeError
2
-
3
- The `Napi::RangeError` class is a representation of the JavaScript `RangeError` that is
4
- thrown when trying to pass a value as an argument to a function that does not allow
5
- a range that includes the value.
6
-
7
- The `Napi::RangeError` class inherits its behaviors from the `Napi::Error` class (for
8
- more info see: [`Napi::Error`](error.md)).
9
-
10
- For more details about error handling refer to the section titled [Error handling](error_handling.md).
11
-
12
- ## Methods
13
-
14
- ### New
15
-
16
- Creates a new instance of a `Napi::RangeError` object.
17
-
18
- ```cpp
19
- Napi::RangeError::New(Napi::Env env, const char* message);
20
- ```
21
-
22
- - `[in] Env`: The environment in which to construct the `Napi::RangeError` object.
23
- - `[in] message`: Null-terminated string to be used as the message for the `Napi::RangeError`.
24
-
25
- Returns an instance of a `Napi::RangeError` object.
26
-
27
- ### New
28
-
29
- Creates a new instance of a `Napi::RangeError` object.
30
-
31
- ```cpp
32
- Napi::RangeError::New(Napi::Env env, const std::string& message);
33
- ```
34
-
35
- - `[in] Env`: The environment in which to construct the `Napi::RangeError` object.
36
- - `[in] message`: Reference string to be used as the message for the `Napi::RangeError`.
37
-
38
- Returns an instance of a `Napi::RangeError` object.
39
-
40
- ### Constructor
41
-
42
- Creates a new empty instance of a `Napi::RangeError`.
43
-
44
- ```cpp
45
- Napi::RangeError::RangeError();
46
- ```
47
-
48
- ### Constructor
49
-
50
- Initializes a `Napi::RangeError` instance from an existing Javascript error object.
51
-
52
- ```cpp
53
- Napi::RangeError::RangeError(napi_env env, napi_value value);
54
- ```
55
-
56
- - `[in] Env`: The environment in which to construct the `Napi::RangeError` object.
57
- - `[in] value`: The `Napi::Error` reference to wrap.
58
-
59
- Returns an instance of a `Napi::RangeError` object.
@@ -1,113 +0,0 @@
1
- # Reference (template)
2
-
3
- Holds a counted reference to a [`Napi::Value`](value.md) object; initially a weak reference unless otherwise specified, may be changed to/from a strong reference by adjusting the refcount.
4
-
5
- The referenced `Napi::Value` is not immediately destroyed when the reference count is zero; it is merely then eligible for garbage-collection if there are no other references to the `Napi::Value`.
6
-
7
- `Napi::Reference` objects allocated in static space, such as a global static instance, must call the `SuppressDestruct` method to prevent its destructor, running at program shutdown time, from attempting to reset the reference when the environment is no longer valid. Avoid using this if at all possible.
8
-
9
- The following classes inherit, either directly or indirectly, from `Napi::Reference`:
10
-
11
- * [`Napi::ObjectWrap`](object_wrap.md)
12
- * [`Napi::ObjectReference`](object_reference.md)
13
- * [`Napi::FunctionReference`](function_reference.md)
14
-
15
- ## Methods
16
-
17
- ### Factory Method
18
-
19
- ```cpp
20
- static Napi::Reference<T> Napi::Reference::New(const T& value, uint32_t initialRefcount = 0);
21
- ```
22
-
23
- * `[in] value`: The value which is to be referenced.
24
-
25
- * `[in] initialRefcount`: The initial reference count.
26
-
27
- ### Empty Constructor
28
-
29
- ```cpp
30
- Napi::Reference::Reference();
31
- ```
32
-
33
- Creates a new _empty_ `Napi::Reference` instance.
34
-
35
- ### Constructor
36
-
37
- ```cpp
38
- Napi::Reference::Reference(napi_env env, napi_value value);
39
- ```
40
-
41
- * `[in] env`: The `napi_env` environment in which to construct the `Napi::Reference` object.
42
-
43
- * `[in] value`: The Node-API primitive value to be held by the `Napi::Reference`.
44
-
45
- ### Env
46
-
47
- ```cpp
48
- Napi::Env Napi::Reference::Env() const;
49
- ```
50
-
51
- Returns the `Napi::Env` value in which the `Napi::Reference` was instantiated.
52
-
53
- ### IsEmpty
54
-
55
- ```cpp
56
- bool Napi::Reference::IsEmpty() const;
57
- ```
58
-
59
- Determines whether the value held by the `Napi::Reference` is empty.
60
-
61
- ### Value
62
-
63
- ```cpp
64
- T Napi::Reference::Value() const;
65
- ```
66
-
67
- Returns the value held by the `Napi::Reference`.
68
-
69
- ### Ref
70
-
71
- ```cpp
72
- uint32_t Napi::Reference::Ref() const;
73
- ```
74
-
75
- Increments the reference count for the `Napi::Reference` and returns the resulting reference count. Throws an error if the increment fails.
76
-
77
- ### Unref
78
-
79
- ```cpp
80
- uint32_t Napi::Reference::Unref() const;
81
- ```
82
-
83
- Decrements the reference count for the `Napi::Reference` and returns the resulting reference count. Throws an error if the decrement fails.
84
-
85
- ### Reset (Empty)
86
-
87
- ```cpp
88
- void Napi::Reference::Reset();
89
- ```
90
-
91
- Sets the value held by the `Napi::Reference` to be empty.
92
-
93
- ### Reset
94
-
95
- ```cpp
96
- void Napi::Reference::Reset(const T& value, uint32_t refcount = 0);
97
- ```
98
-
99
- * `[in] value`: The value which is to be referenced.
100
-
101
- * `[in] initialRefcount`: The initial reference count.
102
-
103
- Sets the value held by the `Napi::Reference`.
104
-
105
- ### SuppressDestruct
106
-
107
- ```cpp
108
- void Napi::Reference::SuppressDestruct();
109
- ```
110
-
111
- Call this method on a `Napi::Reference` that is declared as static data to prevent its destructor, running at program shutdown time, from attempting to reset the reference when the environment is no longer valid.
112
-
113
- Avoid using this if at all possible. If you do need to use static data, **MAKE SURE** to warn your users that your addon is **NOT** threadsafe.
@@ -1,110 +0,0 @@
1
- # Setup
2
-
3
- ## Prerequisites
4
-
5
- Before starting to use **Node-API** you need to assure you have the following
6
- prerequisites:
7
-
8
- * **Node.JS** see: [Installing Node.js](https://nodejs.org/)
9
-
10
- * **Node.js native addon build tool**
11
-
12
- - **[node-gyp](node-gyp.md)**
13
-
14
- ## Installation and usage
15
-
16
- To use **Node-API** in a native module:
17
-
18
- 1. Add a dependency on this package to `package.json`:
19
-
20
- ```json
21
- "dependencies": {
22
- "node-addon-api": "*",
23
- }
24
- ```
25
-
26
- 2. Reference this package's include directory and gyp file in `binding.gyp`:
27
-
28
- ```gyp
29
- 'include_dirs': ["<!(node -p \"require('node-addon-api').include_dir\")"],
30
- ```
31
-
32
- 3. Decide whether the package will enable C++ exceptions in the Node-API wrapper.
33
- The base ABI-stable C APIs do not throw or handle C++ exceptions, but the
34
- Node-API C++ wrapper classes may _optionally_
35
- [integrate C++ and JavaScript exception-handling
36
- ](https://github.com/nodejs/node-addon-api/blob/HEAD/doc/error_handling.md).
37
- To enable that capability, C++ exceptions must be enabled in `binding.gyp`:
38
-
39
- ```gyp
40
- 'cflags!': [ '-fno-exceptions' ],
41
- 'cflags_cc!': [ '-fno-exceptions' ],
42
- 'conditions': [
43
- ["OS=='win'", {
44
- "defines": [
45
- "_HAS_EXCEPTIONS=1"
46
- ],
47
- "msvs_settings": {
48
- "VCCLCompilerTool": {
49
- "ExceptionHandling": 1
50
- },
51
- },
52
- }],
53
- ["OS=='mac'", {
54
- 'xcode_settings': {
55
- 'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
56
- 'CLANG_CXX_LIBRARY': 'libc++',
57
- 'MACOSX_DEPLOYMENT_TARGET': '10.7',
58
- },
59
- }],
60
- ],
61
- ```
62
-
63
- Alternatively, disable use of C++ exceptions in Node-API:
64
-
65
- ```gyp
66
- 'defines': [ 'NAPI_DISABLE_CPP_EXCEPTIONS' ],
67
- ```
68
-
69
- If you decide to use node-addon-api without C++ exceptions enabled, please
70
- consider enabling node-addon-api safe API type guards to ensure the proper
71
- exception handling pattern:
72
-
73
- ```gyp
74
- 'defines': [ 'NODE_ADDON_API_ENABLE_MAYBE' ],
75
- ```
76
-
77
- 4. If you would like your native addon to support OSX, please also add the
78
- following settings in the `binding.gyp` file:
79
-
80
- ```gyp
81
- 'conditions': [
82
- ['OS=="mac"', {
83
- 'cflags+': ['-fvisibility=hidden'],
84
- 'xcode_settings': {
85
- 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
86
- }
87
- }]
88
- ]
89
- ```
90
-
91
- 5. Include `napi.h` in the native module code.
92
- To ensure only ABI-stable APIs are used, DO NOT include
93
- `node.h`, `nan.h`, or `v8.h`.
94
-
95
- ```C++
96
- #include "napi.h"
97
- ```
98
-
99
- At build time, the Node-API back-compat library code will be used only when the
100
- targeted node version *does not* have Node-API built-in.
101
-
102
- The preprocessor directive `NODE_ADDON_API_DISABLE_DEPRECATED` can be defined at
103
- compile time before including `napi.h` to skip the definition of deprecated APIs.
104
-
105
- By default, throwing an exception on a terminating environment (eg. worker
106
- threads) will cause a fatal exception, terminating the Node process. This is to
107
- provide feedback to the user of the runtime error, as it is impossible to pass
108
- the error to JavaScript when the environment is terminating. In order to bypass
109
- this behavior such that the Node process will not terminate, define the
110
- preprocessor directive `NODE_API_SWALLOW_UNTHROWABLE_EXCEPTIONS`.