@nativescript/canvas 2.0.0-alpha.10 → 2.0.0-alpha.12

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 (372) hide show
  1. package/Canvas/index.android.d.ts +4 -0
  2. package/Canvas/index.android.js +15 -1
  3. package/Canvas/index.android.js.map +1 -1
  4. package/Canvas/index.ios.js +0 -1
  5. package/Canvas/index.ios.js.map +1 -1
  6. package/WebGL/WebGLRenderingContext/index.js +9 -1
  7. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  8. package/package.json +1 -1
  9. package/platforms/android/canvas-release.aar +0 -0
  10. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  11. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +4 -0
  12. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +46 -0
  13. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  14. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +381 -16
  15. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +3 -0
  16. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +3 -0
  17. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  18. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  19. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +8 -0
  20. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +46 -0
  21. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  22. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  23. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +381 -16
  24. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +3 -0
  25. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +3 -0
  26. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +381 -16
  27. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +3 -0
  28. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +3 -0
  29. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +24 -24
  30. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  31. package/platforms/ios/Podfile +1 -1
  32. package/platforms/ios/build.xcconfig +1 -1
  33. package/platforms/ios/src/CanvasModule.h +1 -1
  34. package/platforms/ios/src/cpp/CanvasJSIModule.h +1 -1
  35. package/platforms/ios/src/cpp/CanvasJSIModule.mm +17 -17
  36. package/platforms/ios/src/cpp/Helpers.h +1 -1
  37. package/platforms/ios/src/cpp/ImageAssetImpl.h +1 -1
  38. package/platforms/ios/src/cpp/ImageBitmapImpl.h +1 -1
  39. package/platforms/ios/src/cpp/JSICallback.h +1 -1
  40. package/platforms/ios/src/cpp/JSIReadFileCallback.h +1 -1
  41. package/platforms/ios/src/cpp/TextDecoderImpl.h +1 -1
  42. package/platforms/ios/src/cpp/VecMutableBuffer.h +1 -1
  43. package/platforms/ios/src/cpp/canvas2d/CanvasGradient.h +1 -1
  44. package/platforms/ios/src/cpp/canvas2d/CanvasPattern.h +1 -1
  45. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +1 -1
  46. package/platforms/ios/src/cpp/canvas2d/ImageDataImpl.h +1 -1
  47. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.h +1 -1
  48. package/platforms/ios/src/cpp/canvas2d/Path2D.h +1 -1
  49. package/platforms/ios/src/cpp/canvas2d/TextMetricsImpl.h +1 -1
  50. package/platforms/ios/src/cpp/webgl/WebGLActiveInfoImpl.h +1 -1
  51. package/platforms/ios/src/cpp/webgl/WebGLBuffer.h +1 -1
  52. package/platforms/ios/src/cpp/webgl/WebGLFramebuffer.h +1 -1
  53. package/platforms/ios/src/cpp/webgl/WebGLProgram.h +1 -1
  54. package/platforms/ios/src/cpp/webgl/WebGLRenderbuffer.h +1 -1
  55. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.h +1 -1
  56. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.h +1 -1
  57. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.mm +1 -1
  58. package/platforms/ios/src/cpp/webgl/WebGLShader.h +1 -1
  59. package/platforms/ios/src/cpp/webgl/WebGLShaderPrecisionFormatImpl.h +1 -1
  60. package/platforms/ios/src/cpp/webgl/WebGLTexture.h +1 -1
  61. package/platforms/ios/src/cpp/webgl/WebGLUniformLocation.h +1 -1
  62. package/platforms/ios/src/cpp/webgl/extensions/ANGLE_instanced_arraysImpl.h +1 -1
  63. package/platforms/ios/src/cpp/webgl/extensions/EXT_blend_minmaxImpl.h +1 -1
  64. package/platforms/ios/src/cpp/webgl/extensions/EXT_color_buffer_half_floatImpl.h +1 -1
  65. package/platforms/ios/src/cpp/webgl/extensions/EXT_disjoint_timer_queryImpl.h +1 -1
  66. package/platforms/ios/src/cpp/webgl/extensions/EXT_sRGBImpl.h +1 -1
  67. package/platforms/ios/src/cpp/webgl/extensions/EXT_shader_texture_lodImpl.h +1 -1
  68. package/platforms/ios/src/cpp/webgl/extensions/EXT_texture_filter_anisotropicImpl.h +1 -1
  69. package/platforms/ios/src/cpp/webgl/extensions/OES_element_index_uintImpl.h +1 -1
  70. package/platforms/ios/src/cpp/webgl/extensions/OES_fbo_render_mipmap.h +1 -1
  71. package/platforms/ios/src/cpp/webgl/extensions/OES_standard_derivativesImpl.h +1 -1
  72. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_floatImpl.h +1 -1
  73. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_float_linearImpl.h +1 -1
  74. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_half_floatImpl.h +1 -1
  75. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_half_float_linearImpl.h +1 -1
  76. package/platforms/ios/src/cpp/webgl/extensions/OES_vertex_array_objectImpl.h +1 -1
  77. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_color_buffer_floatImpl.h +1 -1
  78. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_atcImpl.h +1 -1
  79. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_etc1Impl.h +1 -1
  80. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_etcImpl.h +1 -1
  81. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_pvrtcImpl.h +1 -1
  82. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_s3tcImpl.h +1 -1
  83. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_s3tc_srgbImpl.h +1 -1
  84. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_depth_textureImpl.h +1 -1
  85. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_draw_buffersImpl.h +1 -1
  86. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_lose_contextImpl.h +1 -1
  87. package/platforms/ios/src/cpp/webgl2/WebGL2RenderingContext.h +1 -1
  88. package/platforms/ios/src/cpp/webgl2/WebGLQuery.h +1 -1
  89. package/platforms/ios/src/cpp/webgl2/WebGLSampler.h +1 -1
  90. package/platforms/ios/src/cpp/webgl2/WebGLSyncImpl.h +1 -1
  91. package/platforms/ios/src/cpp/webgl2/WebGLTransformFeedback.h +1 -1
  92. package/platforms/ios/src/cpp/webgl2/WebGLVertexArrayObject.h +1 -1
  93. package/pods/Headers/include/APIDesign.md +0 -72
  94. package/pods/Headers/include/DEPS +0 -10
  95. package/pods/Headers/include/DIR_METADATA +0 -11
  96. package/pods/Headers/include/OWNERS +0 -23
  97. package/pods/Headers/include/cppgc/DEPS +0 -8
  98. package/pods/Headers/include/cppgc/OWNERS +0 -2
  99. package/pods/Headers/include/cppgc/README.md +0 -133
  100. package/pods/Headers/include/cppgc/allocation.h +0 -310
  101. package/pods/Headers/include/cppgc/common.h +0 -29
  102. package/pods/Headers/include/cppgc/cross-thread-persistent.h +0 -465
  103. package/pods/Headers/include/cppgc/custom-space.h +0 -97
  104. package/pods/Headers/include/cppgc/default-platform.h +0 -67
  105. package/pods/Headers/include/cppgc/ephemeron-pair.h +0 -30
  106. package/pods/Headers/include/cppgc/explicit-management.h +0 -100
  107. package/pods/Headers/include/cppgc/garbage-collected.h +0 -106
  108. package/pods/Headers/include/cppgc/heap-consistency.h +0 -266
  109. package/pods/Headers/include/cppgc/heap-state.h +0 -82
  110. package/pods/Headers/include/cppgc/heap-statistics.h +0 -120
  111. package/pods/Headers/include/cppgc/heap.h +0 -206
  112. package/pods/Headers/include/cppgc/internal/api-constants.h +0 -55
  113. package/pods/Headers/include/cppgc/internal/atomic-entry-flag.h +0 -48
  114. package/pods/Headers/include/cppgc/internal/caged-heap-local-data.h +0 -79
  115. package/pods/Headers/include/cppgc/internal/compiler-specific.h +0 -38
  116. package/pods/Headers/include/cppgc/internal/finalizer-trait.h +0 -93
  117. package/pods/Headers/include/cppgc/internal/gc-info.h +0 -156
  118. package/pods/Headers/include/cppgc/internal/logging.h +0 -50
  119. package/pods/Headers/include/cppgc/internal/name-trait.h +0 -122
  120. package/pods/Headers/include/cppgc/internal/persistent-node.h +0 -216
  121. package/pods/Headers/include/cppgc/internal/pointer-policies.h +0 -186
  122. package/pods/Headers/include/cppgc/internal/write-barrier.h +0 -435
  123. package/pods/Headers/include/cppgc/liveness-broker.h +0 -77
  124. package/pods/Headers/include/cppgc/macros.h +0 -26
  125. package/pods/Headers/include/cppgc/member.h +0 -291
  126. package/pods/Headers/include/cppgc/name-provider.h +0 -65
  127. package/pods/Headers/include/cppgc/object-size-trait.h +0 -58
  128. package/pods/Headers/include/cppgc/persistent.h +0 -370
  129. package/pods/Headers/include/cppgc/platform.h +0 -156
  130. package/pods/Headers/include/cppgc/prefinalizer.h +0 -75
  131. package/pods/Headers/include/cppgc/process-heap-statistics.h +0 -36
  132. package/pods/Headers/include/cppgc/sentinel-pointer.h +0 -32
  133. package/pods/Headers/include/cppgc/source-location.h +0 -92
  134. package/pods/Headers/include/cppgc/testing.h +0 -106
  135. package/pods/Headers/include/cppgc/trace-trait.h +0 -116
  136. package/pods/Headers/include/cppgc/type-traits.h +0 -240
  137. package/pods/Headers/include/cppgc/visitor.h +0 -379
  138. package/pods/Headers/include/js_protocol-1.2.json +0 -936
  139. package/pods/Headers/include/js_protocol-1.3.json +0 -1112
  140. package/pods/Headers/include/js_protocol.pdl +0 -1709
  141. package/pods/Headers/include/libffi/arm64/ffi.h +0 -524
  142. package/pods/Headers/include/libffi/arm64/ffitarget.h +0 -92
  143. package/pods/Headers/include/libffi/x86_64/ffi.h +0 -524
  144. package/pods/Headers/include/libffi/x86_64/ffitarget.h +0 -147
  145. package/pods/Headers/include/libffi.h +0 -12
  146. package/pods/Headers/include/libplatform/DEPS +0 -9
  147. package/pods/Headers/include/libplatform/libplatform-export.h +0 -29
  148. package/pods/Headers/include/libplatform/libplatform.h +0 -106
  149. package/pods/Headers/include/libplatform/v8-tracing.h +0 -333
  150. package/pods/Headers/include/v8-array-buffer.h +0 -433
  151. package/pods/Headers/include/v8-callbacks.h +0 -397
  152. package/pods/Headers/include/v8-container.h +0 -129
  153. package/pods/Headers/include/v8-context.h +0 -407
  154. package/pods/Headers/include/v8-cppgc.h +0 -215
  155. package/pods/Headers/include/v8-data.h +0 -80
  156. package/pods/Headers/include/v8-date.h +0 -43
  157. package/pods/Headers/include/v8-debug.h +0 -168
  158. package/pods/Headers/include/v8-embedder-heap.h +0 -218
  159. package/pods/Headers/include/v8-embedder-state-scope.h +0 -51
  160. package/pods/Headers/include/v8-exception.h +0 -217
  161. package/pods/Headers/include/v8-extension.h +0 -62
  162. package/pods/Headers/include/v8-external.h +0 -37
  163. package/pods/Headers/include/v8-fast-api-calls.h +0 -939
  164. package/pods/Headers/include/v8-forward.h +0 -81
  165. package/pods/Headers/include/v8-function-callback.h +0 -475
  166. package/pods/Headers/include/v8-function.h +0 -125
  167. package/pods/Headers/include/v8-initialization.h +0 -315
  168. package/pods/Headers/include/v8-inspector-protocol.h +0 -13
  169. package/pods/Headers/include/v8-inspector.h +0 -376
  170. package/pods/Headers/include/v8-internal.h +0 -661
  171. package/pods/Headers/include/v8-isolate.h +0 -1709
  172. package/pods/Headers/include/v8-json.h +0 -47
  173. package/pods/Headers/include/v8-local-handle.h +0 -455
  174. package/pods/Headers/include/v8-locker.h +0 -149
  175. package/pods/Headers/include/v8-maybe.h +0 -137
  176. package/pods/Headers/include/v8-memory-span.h +0 -43
  177. package/pods/Headers/include/v8-message.h +0 -216
  178. package/pods/Headers/include/v8-metrics.h +0 -255
  179. package/pods/Headers/include/v8-microtask-queue.h +0 -152
  180. package/pods/Headers/include/v8-microtask.h +0 -28
  181. package/pods/Headers/include/v8-object.h +0 -775
  182. package/pods/Headers/include/v8-persistent-handle.h +0 -590
  183. package/pods/Headers/include/v8-platform.h +0 -1092
  184. package/pods/Headers/include/v8-primitive-object.h +0 -118
  185. package/pods/Headers/include/v8-primitive.h +0 -866
  186. package/pods/Headers/include/v8-profiler.h +0 -1198
  187. package/pods/Headers/include/v8-promise.h +0 -174
  188. package/pods/Headers/include/v8-proxy.h +0 -50
  189. package/pods/Headers/include/v8-regexp.h +0 -105
  190. package/pods/Headers/include/v8-script.h +0 -748
  191. package/pods/Headers/include/v8-snapshot.h +0 -196
  192. package/pods/Headers/include/v8-statistics.h +0 -217
  193. package/pods/Headers/include/v8-template.h +0 -1079
  194. package/pods/Headers/include/v8-traced-handle.h +0 -420
  195. package/pods/Headers/include/v8-typed-array.h +0 -282
  196. package/pods/Headers/include/v8-unwinder-state.h +0 -31
  197. package/pods/Headers/include/v8-unwinder.h +0 -132
  198. package/pods/Headers/include/v8-util.h +0 -658
  199. package/pods/Headers/include/v8-value-serializer-version.h +0 -24
  200. package/pods/Headers/include/v8-value-serializer.h +0 -279
  201. package/pods/Headers/include/v8-value.h +0 -526
  202. package/pods/Headers/include/v8-version-string.h +0 -38
  203. package/pods/Headers/include/v8-version.h +0 -20
  204. package/pods/Headers/include/v8-wasm-trap-handler-posix.h +0 -31
  205. package/pods/Headers/include/v8-wasm-trap-handler-win.h +0 -28
  206. package/pods/Headers/include/v8-wasm.h +0 -257
  207. package/pods/Headers/include/v8-weak-callback-info.h +0 -86
  208. package/pods/Headers/include/v8.h +0 -88
  209. package/pods/Headers/include/v8config.h +0 -605
  210. package/pods/Headers/inspector/InspectorServer.h +0 -20
  211. package/pods/Headers/inspector/JsV8InspectorClient.h +0 -66
  212. package/pods/Headers/inspector/base/trace_event/common/trace_event_common.h +0 -1123
  213. package/pods/Headers/inspector/base64.h +0 -9
  214. package/pods/Headers/inspector/src/base/address-region.h +0 -95
  215. package/pods/Headers/inspector/src/base/atomic-utils.h +0 -219
  216. package/pods/Headers/inspector/src/base/atomicops.h +0 -332
  217. package/pods/Headers/inspector/src/base/atomicops_internals_atomicword_compat.h +0 -89
  218. package/pods/Headers/inspector/src/base/base-export.h +0 -31
  219. package/pods/Headers/inspector/src/base/bits.h +0 -343
  220. package/pods/Headers/inspector/src/base/build_config.h +0 -234
  221. package/pods/Headers/inspector/src/base/compiler-specific.h +0 -136
  222. package/pods/Headers/inspector/src/base/export-template.h +0 -163
  223. package/pods/Headers/inspector/src/base/flags.h +0 -130
  224. package/pods/Headers/inspector/src/base/immediate-crash.h +0 -162
  225. package/pods/Headers/inspector/src/base/lazy-instance.h +0 -258
  226. package/pods/Headers/inspector/src/base/logging.h +0 -417
  227. package/pods/Headers/inspector/src/base/macros.h +0 -423
  228. package/pods/Headers/inspector/src/base/memory.h +0 -89
  229. package/pods/Headers/inspector/src/base/once.h +0 -108
  230. package/pods/Headers/inspector/src/base/optional.h +0 -882
  231. package/pods/Headers/inspector/src/base/platform/mutex.h +0 -370
  232. package/pods/Headers/inspector/src/base/platform/platform.h +0 -476
  233. package/pods/Headers/inspector/src/base/platform/semaphore.h +0 -108
  234. package/pods/Headers/inspector/src/base/platform/v8-time.h +0 -513
  235. package/pods/Headers/inspector/src/base/platform/wrappers.h +0 -73
  236. package/pods/Headers/inspector/src/base/safe_conversions.h +0 -389
  237. package/pods/Headers/inspector/src/base/safe_conversions_impl.h +0 -822
  238. package/pods/Headers/inspector/src/base/template-utils.h +0 -113
  239. package/pods/Headers/inspector/src/base/v8-fallthrough.h +0 -21
  240. package/pods/Headers/inspector/src/common/checks.h +0 -38
  241. package/pods/Headers/inspector/src/common/globals.h +0 -1842
  242. package/pods/Headers/inspector/src/debug/debug-interface.h +0 -667
  243. package/pods/Headers/inspector/src/debug/interface-types.h +0 -175
  244. package/pods/Headers/inspector/src/init/v8.h +0 -52
  245. package/pods/Headers/inspector/src/inspector/custom-preview.h +0 -24
  246. package/pods/Headers/inspector/src/inspector/injected-script.h +0 -251
  247. package/pods/Headers/inspector/src/inspector/inspected-context.h +0 -79
  248. package/pods/Headers/inspector/src/inspector/protocol/CSS.h +0 -2148
  249. package/pods/Headers/inspector/src/inspector/protocol/Console.h +0 -211
  250. package/pods/Headers/inspector/src/inspector/protocol/DOM.h +0 -1008
  251. package/pods/Headers/inspector/src/inspector/protocol/Debugger.h +0 -892
  252. package/pods/Headers/inspector/src/inspector/protocol/Forward.h +0 -75
  253. package/pods/Headers/inspector/src/inspector/protocol/HeapProfiler.h +0 -346
  254. package/pods/Headers/inspector/src/inspector/protocol/Log.h +0 -342
  255. package/pods/Headers/inspector/src/inspector/protocol/Network.h +0 -2528
  256. package/pods/Headers/inspector/src/inspector/protocol/Overlay.h +0 -281
  257. package/pods/Headers/inspector/src/inspector/protocol/Page.h +0 -1189
  258. package/pods/Headers/inspector/src/inspector/protocol/Profiler.h +0 -1001
  259. package/pods/Headers/inspector/src/inspector/protocol/Protocol.h +0 -617
  260. package/pods/Headers/inspector/src/inspector/protocol/Runtime.h +0 -1696
  261. package/pods/Headers/inspector/src/inspector/protocol/Schema.h +0 -146
  262. package/pods/Headers/inspector/src/inspector/protocol/Security.h +0 -793
  263. package/pods/Headers/inspector/src/inspector/remote-object-id.h +0 -54
  264. package/pods/Headers/inspector/src/inspector/search-util.h +0 -26
  265. package/pods/Headers/inspector/src/inspector/string-16.h +0 -180
  266. package/pods/Headers/inspector/src/inspector/string-util.h +0 -128
  267. package/pods/Headers/inspector/src/inspector/v8-console-agent-impl.h +0 -48
  268. package/pods/Headers/inspector/src/inspector/v8-console-message.h +0 -147
  269. package/pods/Headers/inspector/src/inspector/v8-console.h +0 -173
  270. package/pods/Headers/inspector/src/inspector/v8-css-agent-impl.h +0 -62
  271. package/pods/Headers/inspector/src/inspector/v8-debugger-agent-impl.h +0 -248
  272. package/pods/Headers/inspector/src/inspector/v8-debugger-id.h +0 -44
  273. package/pods/Headers/inspector/src/inspector/v8-debugger-script.h +0 -123
  274. package/pods/Headers/inspector/src/inspector/v8-debugger.h +0 -257
  275. package/pods/Headers/inspector/src/inspector/v8-dom-agent-impl.h +0 -91
  276. package/pods/Headers/inspector/src/inspector/v8-heap-profiler-agent-impl.h +0 -80
  277. package/pods/Headers/inspector/src/inspector/v8-inspector-impl.h +0 -191
  278. package/pods/Headers/inspector/src/inspector/v8-inspector-session-impl.h +0 -156
  279. package/pods/Headers/inspector/src/inspector/v8-log-agent-impl.h +0 -34
  280. package/pods/Headers/inspector/src/inspector/v8-network-agent-impl.h +0 -71
  281. package/pods/Headers/inspector/src/inspector/v8-ns-debugger-agent-impl.h +0 -24
  282. package/pods/Headers/inspector/src/inspector/v8-overlay-agent-impl.h +0 -70
  283. package/pods/Headers/inspector/src/inspector/v8-page-agent-impl.h +0 -88
  284. package/pods/Headers/inspector/src/inspector/v8-profiler-agent-impl.h +0 -104
  285. package/pods/Headers/inspector/src/inspector/v8-regex.h +0 -38
  286. package/pods/Headers/inspector/src/inspector/v8-runtime-agent-impl.h +0 -157
  287. package/pods/Headers/inspector/src/inspector/v8-schema-agent-impl.h +0 -38
  288. package/pods/Headers/inspector/src/inspector/v8-stack-trace-impl.h +0 -164
  289. package/pods/Headers/inspector/src/inspector/v8-string-conversions.h +0 -17
  290. package/pods/Headers/inspector/src/inspector/v8-value-utils.h +0 -23
  291. package/pods/Headers/inspector/src/inspector/value-mirror.h +0 -87
  292. package/pods/Headers/inspector/src/libplatform/default-platform.h +0 -92
  293. package/pods/Headers/inspector/src/logging/tracing-flags.h +0 -50
  294. package/pods/Headers/inspector/src/numbers/conversions.h +0 -183
  295. package/pods/Headers/inspector/src/tracing/trace-event.h +0 -664
  296. package/pods/Headers/inspector/src/utils/allocation.h +0 -367
  297. package/pods/Headers/inspector/src/utils/vector.h +0 -324
  298. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/cbor.h +0 -305
  299. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/dispatch.h +0 -314
  300. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/error_support.h +0 -62
  301. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/export.h +0 -6
  302. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/find_by_first.h +0 -58
  303. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/frontend_channel.h +0 -47
  304. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/glue.h +0 -80
  305. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json.h +0 -52
  306. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json_platform.h +0 -26
  307. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/maybe.h +0 -104
  308. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/parser_handler.h +0 -39
  309. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/protocol_core.h +0 -406
  310. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializable.h +0 -32
  311. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializer_traits.h +0 -158
  312. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/span.h +0 -99
  313. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/status.h +0 -139
  314. package/pods/Headers/inspector/utils.h +0 -32
  315. package/pods/Headers/inspector/v8-inspector-platform.h +0 -44
  316. package/pods/Headers/jsi/decorator.h +0 -770
  317. package/pods/Headers/jsi/instrumentation.h +0 -117
  318. package/pods/Headers/jsi/jsi-inl.h +0 -338
  319. package/pods/Headers/jsi/jsi.h +0 -1571
  320. package/pods/Headers/jsi/jsilib.h +0 -59
  321. package/pods/Headers/jsi/threadsafe.h +0 -79
  322. package/pods/Headers/runtime/ArgConverter.h +0 -61
  323. package/pods/Headers/runtime/ArrayAdapter.h +0 -13
  324. package/pods/Headers/runtime/Caches.h +0 -98
  325. package/pods/Headers/runtime/ClassBuilder.h +0 -61
  326. package/pods/Headers/runtime/Common.h +0 -9
  327. package/pods/Headers/runtime/ConcurrentMap.h +0 -55
  328. package/pods/Headers/runtime/ConcurrentQueue.h +0 -28
  329. package/pods/Headers/runtime/Console.h +0 -27
  330. package/pods/Headers/runtime/Constants.h +0 -15
  331. package/pods/Headers/runtime/DataWrapper.h +0 -671
  332. package/pods/Headers/runtime/DictionaryAdapter.h +0 -13
  333. package/pods/Headers/runtime/ExtVector.h +0 -21
  334. package/pods/Headers/runtime/FFICall.h +0 -105
  335. package/pods/Headers/runtime/FastEnumerationAdapter.h +0 -13
  336. package/pods/Headers/runtime/FunctionReference.h +0 -18
  337. package/pods/Headers/runtime/Helpers.h +0 -84
  338. package/pods/Headers/runtime/InlineFunctions.h +0 -16
  339. package/pods/Headers/runtime/Interop.h +0 -202
  340. package/pods/Headers/runtime/KnownUnknownClassPair.h +0 -35
  341. package/pods/Headers/runtime/Metadata.h +0 -981
  342. package/pods/Headers/runtime/MetadataBuilder.h +0 -72
  343. package/pods/Headers/runtime/MetadataInlines.h +0 -157
  344. package/pods/Headers/runtime/ModuleInternal.h +0 -59
  345. package/pods/Headers/runtime/NSDataAdapter.h +0 -13
  346. package/pods/Headers/runtime/NativeScriptException.h +0 -27
  347. package/pods/Headers/runtime/ObjectManager.h +0 -31
  348. package/pods/Headers/runtime/OneByteStringResource.h +0 -21
  349. package/pods/Headers/runtime/Pointer.h +0 -26
  350. package/pods/Headers/runtime/PromiseProxy.h +0 -15
  351. package/pods/Headers/runtime/Reference.h +0 -38
  352. package/pods/Headers/runtime/Runtime.h +0 -67
  353. package/pods/Headers/runtime/RuntimeConfig.h +0 -17
  354. package/pods/Headers/runtime/SetTimeout.h +0 -34
  355. package/pods/Headers/runtime/SimpleAllocator.h +0 -23
  356. package/pods/Headers/runtime/StringHasher.h +0 -315
  357. package/pods/Headers/runtime/SymbolIterator.h +0 -18
  358. package/pods/Headers/runtime/SymbolLoader.h +0 -27
  359. package/pods/Headers/runtime/TNSDerivedClass.h +0 -8
  360. package/pods/Headers/runtime/TSHelpers.h +0 -15
  361. package/pods/Headers/runtime/Tasks.h +0 -19
  362. package/pods/Headers/runtime/UnmanagedType.h +0 -21
  363. package/pods/Headers/runtime/WeakRef.h +0 -15
  364. package/pods/Headers/runtime/Worker.h +0 -26
  365. package/pods/Headers/runtime/robin_hood.h +0 -2184
  366. package/pods/Headers/v8runtime/HostProxy.h +0 -71
  367. package/pods/Headers/v8runtime/JSIV8ValueConverter.h +0 -74
  368. package/pods/Headers/v8runtime/V8PointerValue.h +0 -44
  369. package/pods/Headers/v8runtime/V8Runtime.h +0 -240
  370. package/pods/Headers/v8runtime/V8RuntimeConfig.h +0 -26
  371. package/pods/Headers/v8runtime/V8RuntimeFactory.h +0 -21
  372. package/pods/NativeScript.podspec +0 -68
@@ -1,100 +0,0 @@
1
- // Copyright 2021 the V8 project authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- #ifndef INCLUDE_CPPGC_EXPLICIT_MANAGEMENT_H_
6
- #define INCLUDE_CPPGC_EXPLICIT_MANAGEMENT_H_
7
-
8
- #include <cstddef>
9
-
10
- #include "cppgc/allocation.h"
11
- #include "cppgc/internal/logging.h"
12
- #include "cppgc/type-traits.h"
13
-
14
- namespace cppgc {
15
-
16
- class HeapHandle;
17
-
18
- namespace subtle {
19
-
20
- template <typename T>
21
- void FreeUnreferencedObject(HeapHandle& heap_handle, T& object);
22
- template <typename T>
23
- bool Resize(T& object, AdditionalBytes additional_bytes);
24
-
25
- } // namespace subtle
26
-
27
- namespace internal {
28
-
29
- class ExplicitManagementImpl final {
30
- private:
31
- V8_EXPORT static void FreeUnreferencedObject(HeapHandle&, void*);
32
- V8_EXPORT static bool Resize(void*, size_t);
33
-
34
- template <typename T>
35
- friend void subtle::FreeUnreferencedObject(HeapHandle&, T&);
36
- template <typename T>
37
- friend bool subtle::Resize(T&, AdditionalBytes);
38
- };
39
- } // namespace internal
40
-
41
- namespace subtle {
42
-
43
- /**
44
- * Informs the garbage collector that `object` can be immediately reclaimed. The
45
- * destructor may not be invoked immediately but only on next garbage
46
- * collection.
47
- *
48
- * It is up to the embedder to guarantee that no other object holds a reference
49
- * to `object` after calling `FreeUnreferencedObject()`. In case such a
50
- * reference exists, it's use results in a use-after-free.
51
- *
52
- * To aid in using the API, `FreeUnreferencedObject()` may be called from
53
- * destructors on objects that would be reclaimed in the same garbage collection
54
- * cycle.
55
- *
56
- * \param heap_handle The corresponding heap.
57
- * \param object Reference to an object that is of type `GarbageCollected` and
58
- * should be immediately reclaimed.
59
- */
60
- template <typename T>
61
- void FreeUnreferencedObject(HeapHandle& heap_handle, T& object) {
62
- static_assert(IsGarbageCollectedTypeV<T>,
63
- "Object must be of type GarbageCollected.");
64
- internal::ExplicitManagementImpl::FreeUnreferencedObject(heap_handle,
65
- &object);
66
- }
67
-
68
- /**
69
- * Tries to resize `object` of type `T` with additional bytes on top of
70
- * sizeof(T). Resizing is only useful with trailing inlined storage, see e.g.
71
- * `MakeGarbageCollected(AllocationHandle&, AdditionalBytes)`.
72
- *
73
- * `Resize()` performs growing or shrinking as needed and may skip the operation
74
- * for internal reasons, see return value.
75
- *
76
- * It is up to the embedder to guarantee that in case of shrinking a larger
77
- * object down, the reclaimed area is not used anymore. Any subsequent use
78
- * results in a use-after-free.
79
- *
80
- * The `object` must be live when calling `Resize()`.
81
- *
82
- * \param object Reference to an object that is of type `GarbageCollected` and
83
- * should be resized.
84
- * \param additional_bytes Bytes in addition to sizeof(T) that the object should
85
- * provide.
86
- * \returns true when the operation was successful and the result can be relied
87
- * on, and false otherwise.
88
- */
89
- template <typename T>
90
- bool Resize(T& object, AdditionalBytes additional_bytes) {
91
- static_assert(IsGarbageCollectedTypeV<T>,
92
- "Object must be of type GarbageCollected.");
93
- return internal::ExplicitManagementImpl::Resize(
94
- &object, sizeof(T) + additional_bytes.value);
95
- }
96
-
97
- } // namespace subtle
98
- } // namespace cppgc
99
-
100
- #endif // INCLUDE_CPPGC_EXPLICIT_MANAGEMENT_H_
@@ -1,106 +0,0 @@
1
- // Copyright 2020 the V8 project authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- #ifndef INCLUDE_CPPGC_GARBAGE_COLLECTED_H_
6
- #define INCLUDE_CPPGC_GARBAGE_COLLECTED_H_
7
-
8
- #include "cppgc/internal/api-constants.h"
9
- #include "cppgc/platform.h"
10
- #include "cppgc/trace-trait.h"
11
- #include "cppgc/type-traits.h"
12
-
13
- namespace cppgc {
14
-
15
- class Visitor;
16
-
17
- /**
18
- * Base class for managed objects. Only descendent types of `GarbageCollected`
19
- * can be constructed using `MakeGarbageCollected()`. Must be inherited from as
20
- * left-most base class.
21
- *
22
- * Types inheriting from GarbageCollected must provide a method of
23
- * signature `void Trace(cppgc::Visitor*) const` that dispatchs all managed
24
- * pointers to the visitor and delegates to garbage-collected base classes.
25
- * The method must be virtual if the type is not directly a child of
26
- * GarbageCollected and marked as final.
27
- *
28
- * \code
29
- * // Example using final class.
30
- * class FinalType final : public GarbageCollected<FinalType> {
31
- * public:
32
- * void Trace(cppgc::Visitor* visitor) const {
33
- * // Dispatch using visitor->Trace(...);
34
- * }
35
- * };
36
- *
37
- * // Example using non-final base class.
38
- * class NonFinalBase : public GarbageCollected<NonFinalBase> {
39
- * public:
40
- * virtual void Trace(cppgc::Visitor*) const {}
41
- * };
42
- *
43
- * class FinalChild final : public NonFinalBase {
44
- * public:
45
- * void Trace(cppgc::Visitor* visitor) const final {
46
- * // Dispatch using visitor->Trace(...);
47
- * NonFinalBase::Trace(visitor);
48
- * }
49
- * };
50
- * \endcode
51
- */
52
- template <typename T>
53
- class GarbageCollected {
54
- public:
55
- using IsGarbageCollectedTypeMarker = void;
56
- using ParentMostGarbageCollectedType = T;
57
-
58
- // Must use MakeGarbageCollected.
59
- void* operator new(size_t) = delete;
60
- void* operator new[](size_t) = delete;
61
- // The garbage collector is taking care of reclaiming the object. Also,
62
- // virtual destructor requires an unambiguous, accessible 'operator delete'.
63
- void operator delete(void*) {
64
- #ifdef V8_ENABLE_CHECKS
65
- internal::Fatal(
66
- "Manually deleting a garbage collected object is not allowed");
67
- #endif // V8_ENABLE_CHECKS
68
- }
69
- void operator delete[](void*) = delete;
70
-
71
- protected:
72
- GarbageCollected() = default;
73
- };
74
-
75
- /**
76
- * Base class for managed mixin objects. Such objects cannot be constructed
77
- * directly but must be mixed into the inheritance hierarchy of a
78
- * GarbageCollected object.
79
- *
80
- * Types inheriting from GarbageCollectedMixin must override a virtual method
81
- * of signature `void Trace(cppgc::Visitor*) const` that dispatchs all managed
82
- * pointers to the visitor and delegates to base classes.
83
- *
84
- * \code
85
- * class Mixin : public GarbageCollectedMixin {
86
- * public:
87
- * void Trace(cppgc::Visitor* visitor) const override {
88
- * // Dispatch using visitor->Trace(...);
89
- * }
90
- * };
91
- * \endcode
92
- */
93
- class GarbageCollectedMixin {
94
- public:
95
- using IsGarbageCollectedMixinTypeMarker = void;
96
-
97
- /**
98
- * This Trace method must be overriden by objects inheriting from
99
- * GarbageCollectedMixin.
100
- */
101
- virtual void Trace(cppgc::Visitor*) const {}
102
- };
103
-
104
- } // namespace cppgc
105
-
106
- #endif // INCLUDE_CPPGC_GARBAGE_COLLECTED_H_
@@ -1,266 +0,0 @@
1
- // Copyright 2020 the V8 project authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- #ifndef INCLUDE_CPPGC_HEAP_CONSISTENCY_H_
6
- #define INCLUDE_CPPGC_HEAP_CONSISTENCY_H_
7
-
8
- #include <cstddef>
9
-
10
- #include "cppgc/internal/write-barrier.h"
11
- #include "cppgc/macros.h"
12
- #include "cppgc/trace-trait.h"
13
- #include "v8config.h" // NOLINT(build/include_directory)
14
-
15
- namespace cppgc {
16
-
17
- class HeapHandle;
18
-
19
- namespace subtle {
20
-
21
- /**
22
- * **DO NOT USE: Use the appropriate managed types.**
23
- *
24
- * Consistency helpers that aid in maintaining a consistent internal state of
25
- * the garbage collector.
26
- */
27
- class HeapConsistency final {
28
- public:
29
- using WriteBarrierParams = internal::WriteBarrier::Params;
30
- using WriteBarrierType = internal::WriteBarrier::Type;
31
-
32
- /**
33
- * Gets the required write barrier type for a specific write.
34
- *
35
- * \param slot Slot containing the pointer to the object. The slot itself
36
- * must reside in an object that has been allocated using
37
- * `MakeGarbageCollected()`.
38
- * \param value The pointer to the object. May be an interior pointer to an
39
- * interface of the actual object.
40
- * \param params Parameters that may be used for actual write barrier calls.
41
- * Only filled if return value indicates that a write barrier is needed. The
42
- * contents of the `params` are an implementation detail.
43
- * \returns whether a write barrier is needed and which barrier to invoke.
44
- */
45
- static V8_INLINE WriteBarrierType GetWriteBarrierType(
46
- const void* slot, const void* value, WriteBarrierParams& params) {
47
- return internal::WriteBarrier::GetWriteBarrierType(slot, value, params);
48
- }
49
-
50
- /**
51
- * Gets the required write barrier type for a specific write.
52
- *
53
- * \param slot Slot to some part of an object. The object must not necessarily
54
- have been allocated using `MakeGarbageCollected()` but can also live
55
- off-heap or on stack.
56
- * \param params Parameters that may be used for actual write barrier calls.
57
- * Only filled if return value indicates that a write barrier is needed. The
58
- * contents of the `params` are an implementation detail.
59
- * \param callback Callback returning the corresponding heap handle. The
60
- * callback is only invoked if the heap cannot otherwise be figured out. The
61
- * callback must not allocate.
62
- * \returns whether a write barrier is needed and which barrier to invoke.
63
- */
64
- template <typename HeapHandleCallback>
65
- static V8_INLINE WriteBarrierType
66
- GetWriteBarrierType(const void* slot, WriteBarrierParams& params,
67
- HeapHandleCallback callback) {
68
- return internal::WriteBarrier::GetWriteBarrierType(slot, params, callback);
69
- }
70
-
71
- /**
72
- * Gets the required write barrier type for a specific write.
73
- * This version is meant to be used in conjunction with with a marking write
74
- * barrier barrier which doesn't consider the slot.
75
- *
76
- * \param value The pointer to the object. May be an interior pointer to an
77
- * interface of the actual object.
78
- * \param params Parameters that may be used for actual write barrier calls.
79
- * Only filled if return value indicates that a write barrier is needed. The
80
- * contents of the `params` are an implementation detail.
81
- * \returns whether a write barrier is needed and which barrier to invoke.
82
- */
83
- static V8_INLINE WriteBarrierType
84
- GetWriteBarrierType(const void* value, WriteBarrierParams& params) {
85
- return internal::WriteBarrier::GetWriteBarrierType(value, params);
86
- }
87
-
88
- /**
89
- * Conservative Dijkstra-style write barrier that processes an object if it
90
- * has not yet been processed.
91
- *
92
- * \param params The parameters retrieved from `GetWriteBarrierType()`.
93
- * \param object The pointer to the object. May be an interior pointer to a
94
- * an interface of the actual object.
95
- */
96
- static V8_INLINE void DijkstraWriteBarrier(const WriteBarrierParams& params,
97
- const void* object) {
98
- internal::WriteBarrier::DijkstraMarkingBarrier(params, object);
99
- }
100
-
101
- /**
102
- * Conservative Dijkstra-style write barrier that processes a range of
103
- * elements if they have not yet been processed.
104
- *
105
- * \param params The parameters retrieved from `GetWriteBarrierType()`.
106
- * \param first_element Pointer to the first element that should be processed.
107
- * The slot itself must reside in an object that has been allocated using
108
- * `MakeGarbageCollected()`.
109
- * \param element_size Size of the element in bytes.
110
- * \param number_of_elements Number of elements that should be processed,
111
- * starting with `first_element`.
112
- * \param trace_callback The trace callback that should be invoked for each
113
- * element if necessary.
114
- */
115
- static V8_INLINE void DijkstraWriteBarrierRange(
116
- const WriteBarrierParams& params, const void* first_element,
117
- size_t element_size, size_t number_of_elements,
118
- TraceCallback trace_callback) {
119
- internal::WriteBarrier::DijkstraMarkingBarrierRange(
120
- params, first_element, element_size, number_of_elements,
121
- trace_callback);
122
- }
123
-
124
- /**
125
- * Steele-style write barrier that re-processes an object if it has already
126
- * been processed.
127
- *
128
- * \param params The parameters retrieved from `GetWriteBarrierType()`.
129
- * \param object The pointer to the object which must point to an object that
130
- * has been allocated using `MakeGarbageCollected()`. Interior pointers are
131
- * not supported.
132
- */
133
- static V8_INLINE void SteeleWriteBarrier(const WriteBarrierParams& params,
134
- const void* object) {
135
- internal::WriteBarrier::SteeleMarkingBarrier(params, object);
136
- }
137
-
138
- /**
139
- * Generational barrier for maintaining consistency when running with multiple
140
- * generations.
141
- *
142
- * \param params The parameters retrieved from `GetWriteBarrierType()`.
143
- * \param slot Slot containing the pointer to the object. The slot itself
144
- * must reside in an object that has been allocated using
145
- * `MakeGarbageCollected()`.
146
- */
147
- static V8_INLINE void GenerationalBarrier(const WriteBarrierParams& params,
148
- const void* slot) {
149
- internal::WriteBarrier::GenerationalBarrier(params, slot);
150
- }
151
-
152
- /**
153
- * Generational barrier for source object that may contain outgoing pointers
154
- * to objects in young generation.
155
- *
156
- * \param params The parameters retrieved from `GetWriteBarrierType()`.
157
- * \param inner_pointer Pointer to the source object.
158
- */
159
- static V8_INLINE void GenerationalBarrierForSourceObject(
160
- const WriteBarrierParams& params, const void* inner_pointer) {
161
- internal::WriteBarrier::GenerationalBarrierForSourceObject(params,
162
- inner_pointer);
163
- }
164
-
165
- private:
166
- HeapConsistency() = delete;
167
- };
168
-
169
- /**
170
- * Disallows garbage collection finalizations. Any garbage collection triggers
171
- * result in a crash when in this scope.
172
- *
173
- * Note that the garbage collector already covers paths that can lead to garbage
174
- * collections, so user code does not require checking
175
- * `IsGarbageCollectionAllowed()` before allocations.
176
- */
177
- class V8_EXPORT V8_NODISCARD DisallowGarbageCollectionScope final {
178
- CPPGC_STACK_ALLOCATED();
179
-
180
- public:
181
- /**
182
- * \returns whether garbage collections are currently allowed.
183
- */
184
- static bool IsGarbageCollectionAllowed(HeapHandle& heap_handle);
185
-
186
- /**
187
- * Enters a disallow garbage collection scope. Must be paired with `Leave()`.
188
- * Prefer a scope instance of `DisallowGarbageCollectionScope`.
189
- *
190
- * \param heap_handle The corresponding heap.
191
- */
192
- static void Enter(HeapHandle& heap_handle);
193
-
194
- /**
195
- * Leaves a disallow garbage collection scope. Must be paired with `Enter()`.
196
- * Prefer a scope instance of `DisallowGarbageCollectionScope`.
197
- *
198
- * \param heap_handle The corresponding heap.
199
- */
200
- static void Leave(HeapHandle& heap_handle);
201
-
202
- /**
203
- * Constructs a scoped object that automatically enters and leaves a disallow
204
- * garbage collection scope based on its lifetime.
205
- *
206
- * \param heap_handle The corresponding heap.
207
- */
208
- explicit DisallowGarbageCollectionScope(HeapHandle& heap_handle);
209
- ~DisallowGarbageCollectionScope();
210
-
211
- DisallowGarbageCollectionScope(const DisallowGarbageCollectionScope&) =
212
- delete;
213
- DisallowGarbageCollectionScope& operator=(
214
- const DisallowGarbageCollectionScope&) = delete;
215
-
216
- private:
217
- HeapHandle& heap_handle_;
218
- };
219
-
220
- /**
221
- * Avoids invoking garbage collection finalizations. Already running garbage
222
- * collection phase are unaffected by this scope.
223
- *
224
- * Should only be used temporarily as the scope has an impact on memory usage
225
- * and follow up garbage collections.
226
- */
227
- class V8_EXPORT V8_NODISCARD NoGarbageCollectionScope final {
228
- CPPGC_STACK_ALLOCATED();
229
-
230
- public:
231
- /**
232
- * Enters a no garbage collection scope. Must be paired with `Leave()`. Prefer
233
- * a scope instance of `NoGarbageCollectionScope`.
234
- *
235
- * \param heap_handle The corresponding heap.
236
- */
237
- static void Enter(HeapHandle& heap_handle);
238
-
239
- /**
240
- * Leaves a no garbage collection scope. Must be paired with `Enter()`. Prefer
241
- * a scope instance of `NoGarbageCollectionScope`.
242
- *
243
- * \param heap_handle The corresponding heap.
244
- */
245
- static void Leave(HeapHandle& heap_handle);
246
-
247
- /**
248
- * Constructs a scoped object that automatically enters and leaves a no
249
- * garbage collection scope based on its lifetime.
250
- *
251
- * \param heap_handle The corresponding heap.
252
- */
253
- explicit NoGarbageCollectionScope(HeapHandle& heap_handle);
254
- ~NoGarbageCollectionScope();
255
-
256
- NoGarbageCollectionScope(const NoGarbageCollectionScope&) = delete;
257
- NoGarbageCollectionScope& operator=(const NoGarbageCollectionScope&) = delete;
258
-
259
- private:
260
- HeapHandle& heap_handle_;
261
- };
262
-
263
- } // namespace subtle
264
- } // namespace cppgc
265
-
266
- #endif // INCLUDE_CPPGC_HEAP_CONSISTENCY_H_
@@ -1,82 +0,0 @@
1
- // Copyright 2021 the V8 project authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- #ifndef INCLUDE_CPPGC_HEAP_STATE_H_
6
- #define INCLUDE_CPPGC_HEAP_STATE_H_
7
-
8
- #include "v8config.h" // NOLINT(build/include_directory)
9
-
10
- namespace cppgc {
11
-
12
- class HeapHandle;
13
-
14
- namespace subtle {
15
-
16
- /**
17
- * Helpers to peek into heap-internal state.
18
- */
19
- class V8_EXPORT HeapState final {
20
- public:
21
- /**
22
- * Returns whether the garbage collector is marking. This API is experimental
23
- * and is expected to be removed in future.
24
- *
25
- * \param heap_handle The corresponding heap.
26
- * \returns true if the garbage collector is currently marking, and false
27
- * otherwise.
28
- */
29
- static bool IsMarking(const HeapHandle& heap_handle);
30
-
31
- /*
32
- * Returns whether the garbage collector is sweeping. This API is experimental
33
- * and is expected to be removed in future.
34
- *
35
- * \param heap_handle The corresponding heap.
36
- * \returns true if the garbage collector is currently sweeping, and false
37
- * otherwise.
38
- */
39
- static bool IsSweeping(const HeapHandle& heap_handle);
40
-
41
- /*
42
- * Returns whether the garbage collector is currently sweeping on the thread
43
- * owning this heap. This API allows the caller to determine whether it has
44
- * been called from a destructor of a managed object. This API is experimental
45
- * and may be removed in future.
46
- *
47
- * \param heap_handle The corresponding heap.
48
- * \returns true if the garbage collector is currently sweeping on this
49
- * thread, and false otherwise.
50
- */
51
- static bool IsSweepingOnOwningThread(const HeapHandle& heap_handle);
52
-
53
- /**
54
- * Returns whether the garbage collector is in the atomic pause, i.e., the
55
- * mutator is stopped from running. This API is experimental and is expected
56
- * to be removed in future.
57
- *
58
- * \param heap_handle The corresponding heap.
59
- * \returns true if the garbage collector is currently in the atomic pause,
60
- * and false otherwise.
61
- */
62
- static bool IsInAtomicPause(const HeapHandle& heap_handle);
63
-
64
- /**
65
- * Returns whether the last garbage collection was finalized conservatively
66
- * (i.e., with a non-empty stack). This API is experimental and is expected to
67
- * be removed in future.
68
- *
69
- * \param heap_handle The corresponding heap.
70
- * \returns true if the last garbage collection was finalized conservatively,
71
- * and false otherwise.
72
- */
73
- static bool PreviousGCWasConservative(const HeapHandle& heap_handle);
74
-
75
- private:
76
- HeapState() = delete;
77
- };
78
-
79
- } // namespace subtle
80
- } // namespace cppgc
81
-
82
- #endif // INCLUDE_CPPGC_HEAP_STATE_H_
@@ -1,120 +0,0 @@
1
- // Copyright 2021 the V8 project authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- #ifndef INCLUDE_CPPGC_HEAP_STATISTICS_H_
6
- #define INCLUDE_CPPGC_HEAP_STATISTICS_H_
7
-
8
- #include <cstddef>
9
- #include <cstdint>
10
- #include <string>
11
- #include <vector>
12
-
13
- namespace cppgc {
14
-
15
- /**
16
- * `HeapStatistics` contains memory consumption and utilization statistics for a
17
- * cppgc heap.
18
- */
19
- struct HeapStatistics final {
20
- /**
21
- * Specifies the detail level of the heap statistics. Brief statistics contain
22
- * only the top-level allocated and used memory statistics for the entire
23
- * heap. Detailed statistics also contain a break down per space and page, as
24
- * well as freelist statistics and object type histograms. Note that used
25
- * memory reported by brief statistics and detailed statistics might differ
26
- * slightly.
27
- */
28
- enum DetailLevel : uint8_t {
29
- kBrief,
30
- kDetailed,
31
- };
32
-
33
- /**
34
- * Object statistics for a single type.
35
- */
36
- struct ObjectStatsEntry {
37
- /**
38
- * Number of allocated bytes.
39
- */
40
- size_t allocated_bytes;
41
- /**
42
- * Number of allocated objects.
43
- */
44
- size_t object_count;
45
- };
46
-
47
- /**
48
- * Page granularity statistics. For each page the statistics record the
49
- * allocated memory size and overall used memory size for the page.
50
- */
51
- struct PageStatistics {
52
- /** Overall committed amount of memory for the page. */
53
- size_t committed_size_bytes = 0;
54
- /** Resident amount of memory held by the page. */
55
- size_t resident_size_bytes = 0;
56
- /** Amount of memory actually used on the page. */
57
- size_t used_size_bytes = 0;
58
- /** Statistics for object allocated on the page. Filled only when
59
- * NameProvider::HideInternalNames() is false. */
60
- std::vector<ObjectStatsEntry> object_statistics;
61
- };
62
-
63
- /**
64
- * Statistics of the freelist (used only in non-large object spaces). For
65
- * each bucket in the freelist the statistics record the bucket size, the
66
- * number of freelist entries in the bucket, and the overall allocated memory
67
- * consumed by these freelist entries.
68
- */
69
- struct FreeListStatistics {
70
- /** bucket sizes in the freelist. */
71
- std::vector<size_t> bucket_size;
72
- /** number of freelist entries per bucket. */
73
- std::vector<size_t> free_count;
74
- /** memory size consumed by freelist entries per size. */
75
- std::vector<size_t> free_size;
76
- };
77
-
78
- /**
79
- * Space granularity statistics. For each space the statistics record the
80
- * space name, the amount of allocated memory and overall used memory for the
81
- * space. The statistics also contain statistics for each of the space's
82
- * pages, its freelist and the objects allocated on the space.
83
- */
84
- struct SpaceStatistics {
85
- /** The space name */
86
- std::string name;
87
- /** Overall committed amount of memory for the heap. */
88
- size_t committed_size_bytes = 0;
89
- /** Resident amount of memory held by the heap. */
90
- size_t resident_size_bytes = 0;
91
- /** Amount of memory actually used on the space. */
92
- size_t used_size_bytes = 0;
93
- /** Statistics for each of the pages in the space. */
94
- std::vector<PageStatistics> page_stats;
95
- /** Statistics for the freelist of the space. */
96
- FreeListStatistics free_list_stats;
97
- };
98
-
99
- /** Overall committed amount of memory for the heap. */
100
- size_t committed_size_bytes = 0;
101
- /** Resident amount of memory help by the heap. */
102
- size_t resident_size_bytes = 0;
103
- /** Amount of memory actually used on the heap. */
104
- size_t used_size_bytes = 0;
105
- /** Detail level of this HeapStatistics. */
106
- DetailLevel detail_level;
107
-
108
- /** Statistics for each of the spaces in the heap. Filled only when
109
- * `detail_level` is `DetailLevel::kDetailed`. */
110
- std::vector<SpaceStatistics> space_stats;
111
-
112
- /**
113
- * Vector of `cppgc::GarbageCollected` type names.
114
- */
115
- std::vector<std::string> type_names;
116
- };
117
-
118
- } // namespace cppgc
119
-
120
- #endif // INCLUDE_CPPGC_HEAP_STATISTICS_H_