@triniwiz/nativescript-masonkit 1.0.0-alpha.5 → 1.0.0-alpha.7

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 (345) hide show
  1. package/common.d.ts +7 -9
  2. package/common.js +277 -552
  3. package/common.js.map +1 -1
  4. package/helpers.d.ts +32 -10
  5. package/helpers.js +772 -286
  6. package/helpers.js.map +1 -1
  7. package/index.android.d.ts +6 -2
  8. package/index.android.js +21 -3
  9. package/index.android.js.map +1 -1
  10. package/index.d.ts +64 -7
  11. package/index.ios.d.ts +9 -6
  12. package/index.ios.js +39 -25
  13. package/index.ios.js.map +1 -1
  14. package/package.json +1 -1
  15. package/platforms/android/include.gradle +18 -1
  16. package/platforms/android/masonkit-release.aar +0 -0
  17. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/Mason-Swift.h +108 -64
  18. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/mason_native.h +47 -20
  19. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Info.plist +0 -0
  20. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Mason +0 -0
  21. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  22. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.abi.json +7002 -1194
  23. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.private.swiftinterface +58 -21
  24. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  25. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftinterface +58 -21
  26. package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
  27. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/Mason-Swift.h +216 -128
  28. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/mason_native.h +47 -20
  29. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Info.plist +0 -0
  30. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Mason +0 -0
  31. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  32. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  33. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.abi.json +7002 -1194
  34. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +58 -21
  35. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  36. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftinterface +58 -21
  37. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.abi.json +7002 -1194
  38. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +58 -21
  39. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  40. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +58 -21
  41. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/_CodeSignature/CodeResources +43 -43
  42. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
  43. package/platforms/ios/build.xcconfig +1 -2
  44. package/platforms/ios/src/MasonV8Module.h +583 -0
  45. package/platforms/ios/src/MasonV8Module.mm +1005 -0
  46. package/platforms/ios/src/{include → cpp/include}/mason_native.h +47 -20
  47. package/platforms/ios/src/cpp/include/robin_hood.h +2544 -0
  48. package/platforms/ios/src/module.modulemap +2 -2
  49. package/platforms/new_native_src/cpp/Caches.cpp +36 -0
  50. package/platforms/new_native_src/cpp/Caches.h +42 -0
  51. package/platforms/new_native_src/cpp/Common.h +34 -0
  52. package/platforms/new_native_src/cpp/ConcurrentMap.h +57 -0
  53. package/platforms/new_native_src/cpp/Helpers.cpp +101 -0
  54. package/platforms/new_native_src/cpp/Helpers.h +364 -0
  55. package/platforms/new_native_src/cpp/MasonImpl.cpp +68 -0
  56. package/platforms/new_native_src/cpp/MasonImpl.h +40 -0
  57. package/platforms/new_native_src/cpp/MasonNodeImpl.cpp +89 -0
  58. package/platforms/new_native_src/cpp/MasonNodeImpl.h +47 -0
  59. package/platforms/new_native_src/cpp/MasonStyleImpl.cpp +2181 -0
  60. package/platforms/new_native_src/cpp/MasonStyleImpl.h +420 -0
  61. package/platforms/{ios/Mason.xcframework/ios-arm64/Mason.framework/PrivateHeaders → new_native_src/cpp/include}/mason_native.h +464 -168
  62. package/platforms/new_native_src/cpp/include/robin_hood.h +2544 -0
  63. package/pods/Headers/include/APIDesign.md +72 -0
  64. package/pods/Headers/include/DEPS +10 -0
  65. package/pods/Headers/include/DIR_METADATA +11 -0
  66. package/pods/Headers/include/OWNERS +23 -0
  67. package/pods/Headers/include/cppgc/DEPS +8 -0
  68. package/pods/Headers/include/cppgc/OWNERS +2 -0
  69. package/pods/Headers/include/cppgc/README.md +133 -0
  70. package/pods/Headers/include/cppgc/allocation.h +310 -0
  71. package/pods/Headers/include/cppgc/common.h +29 -0
  72. package/pods/Headers/include/cppgc/cross-thread-persistent.h +465 -0
  73. package/pods/Headers/include/cppgc/custom-space.h +97 -0
  74. package/pods/Headers/include/cppgc/default-platform.h +67 -0
  75. package/pods/Headers/include/cppgc/ephemeron-pair.h +30 -0
  76. package/pods/Headers/include/cppgc/explicit-management.h +100 -0
  77. package/pods/Headers/include/cppgc/garbage-collected.h +106 -0
  78. package/pods/Headers/include/cppgc/heap-consistency.h +266 -0
  79. package/pods/Headers/include/cppgc/heap-state.h +82 -0
  80. package/pods/Headers/include/cppgc/heap-statistics.h +120 -0
  81. package/pods/Headers/include/cppgc/heap.h +206 -0
  82. package/pods/Headers/include/cppgc/internal/api-constants.h +55 -0
  83. package/pods/Headers/include/cppgc/internal/atomic-entry-flag.h +48 -0
  84. package/pods/Headers/include/cppgc/internal/caged-heap-local-data.h +79 -0
  85. package/pods/Headers/include/cppgc/internal/compiler-specific.h +38 -0
  86. package/pods/Headers/include/cppgc/internal/finalizer-trait.h +93 -0
  87. package/pods/Headers/include/cppgc/internal/gc-info.h +156 -0
  88. package/pods/Headers/include/cppgc/internal/logging.h +50 -0
  89. package/pods/Headers/include/cppgc/internal/name-trait.h +122 -0
  90. package/pods/Headers/include/cppgc/internal/persistent-node.h +216 -0
  91. package/pods/Headers/include/cppgc/internal/pointer-policies.h +186 -0
  92. package/pods/Headers/include/cppgc/internal/write-barrier.h +435 -0
  93. package/pods/Headers/include/cppgc/liveness-broker.h +77 -0
  94. package/pods/Headers/include/cppgc/macros.h +26 -0
  95. package/pods/Headers/include/cppgc/member.h +291 -0
  96. package/pods/Headers/include/cppgc/name-provider.h +65 -0
  97. package/pods/Headers/include/cppgc/object-size-trait.h +58 -0
  98. package/pods/Headers/include/cppgc/persistent.h +370 -0
  99. package/pods/Headers/include/cppgc/platform.h +156 -0
  100. package/pods/Headers/include/cppgc/prefinalizer.h +75 -0
  101. package/pods/Headers/include/cppgc/process-heap-statistics.h +36 -0
  102. package/pods/Headers/include/cppgc/sentinel-pointer.h +32 -0
  103. package/pods/Headers/include/cppgc/source-location.h +92 -0
  104. package/pods/Headers/include/cppgc/testing.h +106 -0
  105. package/pods/Headers/include/cppgc/trace-trait.h +116 -0
  106. package/pods/Headers/include/cppgc/type-traits.h +240 -0
  107. package/pods/Headers/include/cppgc/visitor.h +379 -0
  108. package/pods/Headers/include/js_protocol-1.2.json +936 -0
  109. package/pods/Headers/include/js_protocol-1.3.json +1112 -0
  110. package/pods/Headers/include/js_protocol.pdl +1709 -0
  111. package/pods/Headers/include/libffi/arm64/ffi.h +524 -0
  112. package/pods/Headers/include/libffi/arm64/ffitarget.h +92 -0
  113. package/pods/Headers/include/libffi/x86_64/ffi.h +524 -0
  114. package/pods/Headers/include/libffi/x86_64/ffitarget.h +147 -0
  115. package/pods/Headers/include/libffi.h +12 -0
  116. package/pods/Headers/include/libplatform/DEPS +9 -0
  117. package/pods/Headers/include/libplatform/libplatform-export.h +29 -0
  118. package/pods/Headers/include/libplatform/libplatform.h +106 -0
  119. package/pods/Headers/include/libplatform/v8-tracing.h +333 -0
  120. package/pods/Headers/include/v8-array-buffer.h +433 -0
  121. package/pods/Headers/include/v8-callbacks.h +397 -0
  122. package/pods/Headers/include/v8-container.h +129 -0
  123. package/pods/Headers/include/v8-context.h +407 -0
  124. package/pods/Headers/include/v8-cppgc.h +215 -0
  125. package/pods/Headers/include/v8-data.h +80 -0
  126. package/pods/Headers/include/v8-date.h +43 -0
  127. package/pods/Headers/include/v8-debug.h +168 -0
  128. package/pods/Headers/include/v8-embedder-heap.h +218 -0
  129. package/pods/Headers/include/v8-embedder-state-scope.h +51 -0
  130. package/pods/Headers/include/v8-exception.h +217 -0
  131. package/pods/Headers/include/v8-extension.h +62 -0
  132. package/pods/Headers/include/v8-external.h +37 -0
  133. package/pods/Headers/include/v8-fast-api-calls.h +939 -0
  134. package/pods/Headers/include/v8-forward.h +81 -0
  135. package/pods/Headers/include/v8-function-callback.h +475 -0
  136. package/pods/Headers/include/v8-function.h +125 -0
  137. package/pods/Headers/include/v8-initialization.h +315 -0
  138. package/pods/Headers/include/v8-inspector-protocol.h +13 -0
  139. package/pods/Headers/include/v8-inspector.h +376 -0
  140. package/pods/Headers/include/v8-internal.h +661 -0
  141. package/pods/Headers/include/v8-isolate.h +1709 -0
  142. package/pods/Headers/include/v8-json.h +47 -0
  143. package/pods/Headers/include/v8-local-handle.h +455 -0
  144. package/pods/Headers/include/v8-locker.h +149 -0
  145. package/pods/Headers/include/v8-maybe.h +137 -0
  146. package/pods/Headers/include/v8-memory-span.h +43 -0
  147. package/pods/Headers/include/v8-message.h +216 -0
  148. package/pods/Headers/include/v8-metrics.h +255 -0
  149. package/pods/Headers/include/v8-microtask-queue.h +152 -0
  150. package/pods/Headers/include/v8-microtask.h +28 -0
  151. package/pods/Headers/include/v8-object.h +775 -0
  152. package/pods/Headers/include/v8-persistent-handle.h +590 -0
  153. package/pods/Headers/include/v8-platform.h +1092 -0
  154. package/pods/Headers/include/v8-primitive-object.h +118 -0
  155. package/pods/Headers/include/v8-primitive.h +866 -0
  156. package/pods/Headers/include/v8-profiler.h +1198 -0
  157. package/pods/Headers/include/v8-promise.h +174 -0
  158. package/pods/Headers/include/v8-proxy.h +50 -0
  159. package/pods/Headers/include/v8-regexp.h +105 -0
  160. package/pods/Headers/include/v8-script.h +748 -0
  161. package/pods/Headers/include/v8-snapshot.h +196 -0
  162. package/pods/Headers/include/v8-statistics.h +217 -0
  163. package/pods/Headers/include/v8-template.h +1079 -0
  164. package/pods/Headers/include/v8-traced-handle.h +420 -0
  165. package/pods/Headers/include/v8-typed-array.h +282 -0
  166. package/pods/Headers/include/v8-unwinder-state.h +31 -0
  167. package/pods/Headers/include/v8-unwinder.h +132 -0
  168. package/pods/Headers/include/v8-util.h +658 -0
  169. package/pods/Headers/include/v8-value-serializer-version.h +24 -0
  170. package/pods/Headers/include/v8-value-serializer.h +279 -0
  171. package/pods/Headers/include/v8-value.h +526 -0
  172. package/pods/Headers/include/v8-version-string.h +38 -0
  173. package/pods/Headers/include/v8-version.h +20 -0
  174. package/pods/Headers/include/v8-wasm-trap-handler-posix.h +31 -0
  175. package/pods/Headers/include/v8-wasm-trap-handler-win.h +28 -0
  176. package/pods/Headers/include/v8-wasm.h +257 -0
  177. package/pods/Headers/include/v8-weak-callback-info.h +86 -0
  178. package/pods/Headers/include/v8.h +88 -0
  179. package/pods/Headers/include/v8config.h +605 -0
  180. package/pods/Headers/inspector/InspectorServer.h +20 -0
  181. package/pods/Headers/inspector/JsV8InspectorClient.h +66 -0
  182. package/pods/Headers/inspector/base/trace_event/common/trace_event_common.h +1123 -0
  183. package/pods/Headers/inspector/base64.h +9 -0
  184. package/pods/Headers/inspector/src/base/address-region.h +95 -0
  185. package/pods/Headers/inspector/src/base/atomic-utils.h +219 -0
  186. package/pods/Headers/inspector/src/base/atomicops.h +332 -0
  187. package/pods/Headers/inspector/src/base/atomicops_internals_atomicword_compat.h +89 -0
  188. package/pods/Headers/inspector/src/base/base-export.h +31 -0
  189. package/pods/Headers/inspector/src/base/bits.h +343 -0
  190. package/pods/Headers/inspector/src/base/build_config.h +234 -0
  191. package/pods/Headers/inspector/src/base/compiler-specific.h +136 -0
  192. package/pods/Headers/inspector/src/base/export-template.h +163 -0
  193. package/pods/Headers/inspector/src/base/flags.h +130 -0
  194. package/pods/Headers/inspector/src/base/immediate-crash.h +162 -0
  195. package/pods/Headers/inspector/src/base/lazy-instance.h +258 -0
  196. package/pods/Headers/inspector/src/base/logging.h +417 -0
  197. package/pods/Headers/inspector/src/base/macros.h +423 -0
  198. package/pods/Headers/inspector/src/base/memory.h +89 -0
  199. package/pods/Headers/inspector/src/base/once.h +108 -0
  200. package/pods/Headers/inspector/src/base/optional.h +882 -0
  201. package/pods/Headers/inspector/src/base/platform/mutex.h +370 -0
  202. package/pods/Headers/inspector/src/base/platform/platform.h +476 -0
  203. package/pods/Headers/inspector/src/base/platform/semaphore.h +108 -0
  204. package/pods/Headers/inspector/src/base/platform/v8-time.h +513 -0
  205. package/pods/Headers/inspector/src/base/platform/wrappers.h +73 -0
  206. package/pods/Headers/inspector/src/base/safe_conversions.h +389 -0
  207. package/pods/Headers/inspector/src/base/safe_conversions_impl.h +822 -0
  208. package/pods/Headers/inspector/src/base/template-utils.h +113 -0
  209. package/pods/Headers/inspector/src/base/v8-fallthrough.h +21 -0
  210. package/pods/Headers/inspector/src/common/checks.h +38 -0
  211. package/pods/Headers/inspector/src/common/globals.h +1842 -0
  212. package/pods/Headers/inspector/src/debug/debug-interface.h +667 -0
  213. package/pods/Headers/inspector/src/debug/interface-types.h +175 -0
  214. package/pods/Headers/inspector/src/init/v8.h +52 -0
  215. package/pods/Headers/inspector/src/inspector/custom-preview.h +24 -0
  216. package/pods/Headers/inspector/src/inspector/injected-script.h +251 -0
  217. package/pods/Headers/inspector/src/inspector/inspected-context.h +79 -0
  218. package/pods/Headers/inspector/src/inspector/protocol/CSS.h +2148 -0
  219. package/pods/Headers/inspector/src/inspector/protocol/Console.h +211 -0
  220. package/pods/Headers/inspector/src/inspector/protocol/DOM.h +1008 -0
  221. package/pods/Headers/inspector/src/inspector/protocol/Debugger.h +892 -0
  222. package/pods/Headers/inspector/src/inspector/protocol/Forward.h +75 -0
  223. package/pods/Headers/inspector/src/inspector/protocol/HeapProfiler.h +346 -0
  224. package/pods/Headers/inspector/src/inspector/protocol/Log.h +342 -0
  225. package/pods/Headers/inspector/src/inspector/protocol/Network.h +2528 -0
  226. package/pods/Headers/inspector/src/inspector/protocol/Overlay.h +281 -0
  227. package/pods/Headers/inspector/src/inspector/protocol/Page.h +1189 -0
  228. package/pods/Headers/inspector/src/inspector/protocol/Profiler.h +1001 -0
  229. package/pods/Headers/inspector/src/inspector/protocol/Protocol.h +617 -0
  230. package/pods/Headers/inspector/src/inspector/protocol/Runtime.h +1696 -0
  231. package/pods/Headers/inspector/src/inspector/protocol/Schema.h +146 -0
  232. package/pods/Headers/inspector/src/inspector/protocol/Security.h +793 -0
  233. package/pods/Headers/inspector/src/inspector/remote-object-id.h +54 -0
  234. package/pods/Headers/inspector/src/inspector/search-util.h +26 -0
  235. package/pods/Headers/inspector/src/inspector/string-16.h +180 -0
  236. package/pods/Headers/inspector/src/inspector/string-util.h +128 -0
  237. package/pods/Headers/inspector/src/inspector/v8-console-agent-impl.h +48 -0
  238. package/pods/Headers/inspector/src/inspector/v8-console-message.h +147 -0
  239. package/pods/Headers/inspector/src/inspector/v8-console.h +173 -0
  240. package/pods/Headers/inspector/src/inspector/v8-css-agent-impl.h +62 -0
  241. package/pods/Headers/inspector/src/inspector/v8-debugger-agent-impl.h +248 -0
  242. package/pods/Headers/inspector/src/inspector/v8-debugger-id.h +44 -0
  243. package/pods/Headers/inspector/src/inspector/v8-debugger-script.h +123 -0
  244. package/pods/Headers/inspector/src/inspector/v8-debugger.h +257 -0
  245. package/pods/Headers/inspector/src/inspector/v8-dom-agent-impl.h +91 -0
  246. package/pods/Headers/inspector/src/inspector/v8-heap-profiler-agent-impl.h +80 -0
  247. package/pods/Headers/inspector/src/inspector/v8-inspector-impl.h +191 -0
  248. package/pods/Headers/inspector/src/inspector/v8-inspector-session-impl.h +156 -0
  249. package/pods/Headers/inspector/src/inspector/v8-log-agent-impl.h +34 -0
  250. package/pods/Headers/inspector/src/inspector/v8-network-agent-impl.h +71 -0
  251. package/pods/Headers/inspector/src/inspector/v8-ns-debugger-agent-impl.h +24 -0
  252. package/pods/Headers/inspector/src/inspector/v8-overlay-agent-impl.h +70 -0
  253. package/pods/Headers/inspector/src/inspector/v8-page-agent-impl.h +88 -0
  254. package/pods/Headers/inspector/src/inspector/v8-profiler-agent-impl.h +104 -0
  255. package/pods/Headers/inspector/src/inspector/v8-regex.h +38 -0
  256. package/pods/Headers/inspector/src/inspector/v8-runtime-agent-impl.h +157 -0
  257. package/pods/Headers/inspector/src/inspector/v8-schema-agent-impl.h +38 -0
  258. package/pods/Headers/inspector/src/inspector/v8-stack-trace-impl.h +164 -0
  259. package/pods/Headers/inspector/src/inspector/v8-string-conversions.h +17 -0
  260. package/pods/Headers/inspector/src/inspector/v8-value-utils.h +23 -0
  261. package/pods/Headers/inspector/src/inspector/value-mirror.h +87 -0
  262. package/pods/Headers/inspector/src/libplatform/default-platform.h +92 -0
  263. package/pods/Headers/inspector/src/logging/tracing-flags.h +50 -0
  264. package/pods/Headers/inspector/src/numbers/conversions.h +183 -0
  265. package/pods/Headers/inspector/src/tracing/trace-event.h +664 -0
  266. package/pods/Headers/inspector/src/utils/allocation.h +367 -0
  267. package/pods/Headers/inspector/src/utils/vector.h +324 -0
  268. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/cbor.h +305 -0
  269. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/dispatch.h +314 -0
  270. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/error_support.h +62 -0
  271. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/export.h +6 -0
  272. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/find_by_first.h +58 -0
  273. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/frontend_channel.h +47 -0
  274. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/glue.h +80 -0
  275. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json.h +52 -0
  276. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json_platform.h +26 -0
  277. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/maybe.h +104 -0
  278. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/parser_handler.h +39 -0
  279. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/protocol_core.h +406 -0
  280. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializable.h +32 -0
  281. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializer_traits.h +158 -0
  282. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/span.h +99 -0
  283. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/status.h +139 -0
  284. package/pods/Headers/inspector/utils.h +32 -0
  285. package/pods/Headers/inspector/v8-inspector-platform.h +44 -0
  286. package/pods/Headers/jsi/decorator.h +762 -0
  287. package/pods/Headers/jsi/instrumentation.h +117 -0
  288. package/pods/Headers/jsi/jsi-inl.h +322 -0
  289. package/pods/Headers/jsi/jsi.h +1387 -0
  290. package/pods/Headers/jsi/jsilib.h +59 -0
  291. package/pods/Headers/jsi/threadsafe.h +79 -0
  292. package/pods/Headers/runtime/ArgConverter.h +61 -0
  293. package/pods/Headers/runtime/ArrayAdapter.h +13 -0
  294. package/pods/Headers/runtime/Caches.h +98 -0
  295. package/pods/Headers/runtime/ClassBuilder.h +61 -0
  296. package/pods/Headers/runtime/Common.h +9 -0
  297. package/pods/Headers/runtime/ConcurrentMap.h +55 -0
  298. package/pods/Headers/runtime/ConcurrentQueue.h +28 -0
  299. package/pods/Headers/runtime/Console.h +27 -0
  300. package/pods/Headers/runtime/Constants.h +15 -0
  301. package/pods/Headers/runtime/DataWrapper.h +671 -0
  302. package/pods/Headers/runtime/DictionaryAdapter.h +13 -0
  303. package/pods/Headers/runtime/ExtVector.h +21 -0
  304. package/pods/Headers/runtime/FFICall.h +105 -0
  305. package/pods/Headers/runtime/FastEnumerationAdapter.h +13 -0
  306. package/pods/Headers/runtime/FunctionReference.h +18 -0
  307. package/pods/Headers/runtime/Helpers.h +84 -0
  308. package/pods/Headers/runtime/InlineFunctions.h +16 -0
  309. package/pods/Headers/runtime/Interop.h +202 -0
  310. package/pods/Headers/runtime/KnownUnknownClassPair.h +35 -0
  311. package/pods/Headers/runtime/Metadata.h +981 -0
  312. package/pods/Headers/runtime/MetadataBuilder.h +72 -0
  313. package/pods/Headers/runtime/MetadataInlines.h +157 -0
  314. package/pods/Headers/runtime/ModuleInternal.h +59 -0
  315. package/pods/Headers/runtime/NSDataAdapter.h +13 -0
  316. package/pods/Headers/runtime/NativeScriptException.h +27 -0
  317. package/pods/Headers/runtime/ObjectManager.h +31 -0
  318. package/pods/Headers/runtime/OneByteStringResource.h +21 -0
  319. package/pods/Headers/runtime/Pointer.h +26 -0
  320. package/pods/Headers/runtime/PromiseProxy.h +15 -0
  321. package/pods/Headers/runtime/Reference.h +38 -0
  322. package/pods/Headers/runtime/Runtime.h +67 -0
  323. package/pods/Headers/runtime/RuntimeConfig.h +17 -0
  324. package/pods/Headers/runtime/SetTimeout.h +34 -0
  325. package/pods/Headers/runtime/SimpleAllocator.h +23 -0
  326. package/pods/Headers/runtime/StringHasher.h +315 -0
  327. package/pods/Headers/runtime/SymbolIterator.h +18 -0
  328. package/pods/Headers/runtime/SymbolLoader.h +27 -0
  329. package/pods/Headers/runtime/TNSDerivedClass.h +8 -0
  330. package/pods/Headers/runtime/TSHelpers.h +15 -0
  331. package/pods/Headers/runtime/Tasks.h +19 -0
  332. package/pods/Headers/runtime/UnmanagedType.h +21 -0
  333. package/pods/Headers/runtime/WeakRef.h +15 -0
  334. package/pods/Headers/runtime/Worker.h +26 -0
  335. package/pods/Headers/runtime/robin_hood.h +2184 -0
  336. package/pods/Headers/v8runtime/HostProxy.h +71 -0
  337. package/pods/Headers/v8runtime/JSIV8ValueConverter.h +70 -0
  338. package/pods/Headers/v8runtime/V8PointerValue.h +44 -0
  339. package/pods/Headers/v8runtime/V8Runtime.h +215 -0
  340. package/pods/Headers/v8runtime/V8RuntimeConfig.h +26 -0
  341. package/pods/Headers/v8runtime/V8RuntimeFactory.h +21 -0
  342. package/pods/NativeScript.podspec +68 -0
  343. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/PrivateHeaders/mason_native.h +0 -676
  344. package/platforms/ios/src/JSIModule.h +0 -217
  345. package/platforms/ios/src/JSIModule.mm +0 -2788
@@ -0,0 +1,54 @@
1
+ // Copyright 2015 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 V8_INSPECTOR_REMOTE_OBJECT_ID_H_
6
+ #define V8_INSPECTOR_REMOTE_OBJECT_ID_H_
7
+
8
+ #include <memory>
9
+
10
+ #include "src/inspector/protocol/Forward.h"
11
+
12
+ namespace v8_inspector {
13
+
14
+ using protocol::Response;
15
+
16
+ class RemoteObjectIdBase {
17
+ public:
18
+ uint64_t isolateId() const { return m_isolateId; }
19
+ int contextId() const { return m_injectedScriptId; }
20
+
21
+ protected:
22
+ RemoteObjectIdBase();
23
+ ~RemoteObjectIdBase() = default;
24
+
25
+ bool parseId(const String16&);
26
+
27
+ uint64_t m_isolateId;
28
+ int m_injectedScriptId;
29
+ int m_id;
30
+ };
31
+
32
+ class RemoteObjectId final : public RemoteObjectIdBase {
33
+ public:
34
+ static Response parse(const String16&, std::unique_ptr<RemoteObjectId>*);
35
+ ~RemoteObjectId() = default;
36
+ int id() const { return m_id; }
37
+
38
+ static String16 serialize(uint64_t isolateId, int injectedScriptId, int id);
39
+ };
40
+
41
+ class RemoteCallFrameId final : public RemoteObjectIdBase {
42
+ public:
43
+ static Response parse(const String16&, std::unique_ptr<RemoteCallFrameId>*);
44
+ ~RemoteCallFrameId() = default;
45
+
46
+ int frameOrdinal() const { return m_id; }
47
+
48
+ static String16 serialize(uint64_t isolateId, int injectedScriptId,
49
+ int frameOrdinal);
50
+ };
51
+
52
+ } // namespace v8_inspector
53
+
54
+ #endif // V8_INSPECTOR_REMOTE_OBJECT_ID_H_
@@ -0,0 +1,26 @@
1
+ // Copyright 2016 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 V8_INSPECTOR_SEARCH_UTIL_H_
6
+ #define V8_INSPECTOR_SEARCH_UTIL_H_
7
+
8
+ #include <memory>
9
+
10
+ #include "src/inspector/protocol/Debugger.h"
11
+ #include "src/inspector/string-util.h"
12
+
13
+ namespace v8_inspector {
14
+
15
+ class V8InspectorSession;
16
+
17
+ String16 findSourceURL(const String16& content, bool multiline);
18
+ String16 findSourceMapURL(const String16& content, bool multiline);
19
+ std::vector<std::unique_ptr<protocol::Debugger::SearchMatch>>
20
+ searchInTextByLinesImpl(V8InspectorSession*, const String16& text,
21
+ const String16& query, bool caseSensitive,
22
+ bool isRegex);
23
+
24
+ } // namespace v8_inspector
25
+
26
+ #endif // V8_INSPECTOR_SEARCH_UTIL_H_
@@ -0,0 +1,180 @@
1
+ // Copyright 2016 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 V8_INSPECTOR_STRING_16_H_
6
+ #define V8_INSPECTOR_STRING_16_H_
7
+
8
+ #include <stdint.h>
9
+ #include <cctype>
10
+ #include <climits>
11
+ #include <cstring>
12
+ #include <string>
13
+ #include <vector>
14
+
15
+ #include "../../third_party/inspector_protocol/crdtp/serializer_traits.h"
16
+ #include "src/base/compiler-specific.h"
17
+
18
+ namespace v8_inspector {
19
+
20
+ using UChar = uint16_t;
21
+
22
+ class String16 {
23
+ public:
24
+ static const size_t kNotFound = static_cast<size_t>(-1);
25
+
26
+ String16() = default;
27
+ String16(const String16&) V8_NOEXCEPT = default;
28
+ String16(String16&&) V8_NOEXCEPT = default;
29
+ String16(const UChar* characters, size_t size);
30
+ V8_EXPORT String16(const UChar* characters);
31
+ V8_EXPORT String16(const char* characters);
32
+ String16(const char* characters, size_t size);
33
+ explicit String16(const std::basic_string<UChar>& impl);
34
+ explicit String16(std::basic_string<UChar>&& impl);
35
+
36
+ String16& operator=(const String16&) V8_NOEXCEPT = default;
37
+ String16& operator=(String16&&) V8_NOEXCEPT = default;
38
+
39
+ static String16 fromInteger(int);
40
+ static String16 fromInteger(size_t);
41
+ static String16 fromInteger64(int64_t);
42
+ static String16 fromUInt64(uint64_t);
43
+ static String16 fromDouble(double);
44
+ static String16 fromDouble(double, int precision);
45
+
46
+ int64_t toInteger64(bool* ok = nullptr) const;
47
+ uint64_t toUInt64(bool* ok = nullptr) const;
48
+ int toInteger(bool* ok = nullptr) const;
49
+ String16 stripWhiteSpace() const;
50
+ const UChar* characters16() const { return m_impl.c_str(); }
51
+ size_t length() const { return m_impl.length(); }
52
+ bool isEmpty() const { return !m_impl.length(); }
53
+ UChar operator[](size_t index) const { return m_impl[index]; }
54
+ String16 substring(size_t pos, size_t len = UINT_MAX) const {
55
+ return String16(m_impl.substr(pos, len));
56
+ }
57
+ size_t find(const String16& str, size_t start = 0) const {
58
+ return m_impl.find(str.m_impl, start);
59
+ }
60
+ size_t reverseFind(const String16& str, size_t start = UINT_MAX) const {
61
+ return m_impl.rfind(str.m_impl, start);
62
+ }
63
+ size_t find(UChar c, size_t start = 0) const { return m_impl.find(c, start); }
64
+ size_t reverseFind(UChar c, size_t start = UINT_MAX) const {
65
+ return m_impl.rfind(c, start);
66
+ }
67
+ void swap(String16& other) {
68
+ m_impl.swap(other.m_impl);
69
+ std::swap(hash_code, other.hash_code);
70
+ }
71
+
72
+ // Convenience methods.
73
+ V8_EXPORT std::string utf8() const;
74
+ V8_EXPORT static String16 fromUTF8(const char* stringStart, size_t length);
75
+
76
+ // Instantiates a String16 in native endianness from UTF16 LE.
77
+ // On Big endian architectures, byte order needs to be flipped.
78
+ V8_EXPORT static String16 fromUTF16LE(const UChar* stringStart,
79
+ size_t length);
80
+
81
+ std::size_t hash() const {
82
+ if (!hash_code) {
83
+ for (char c : m_impl) hash_code = 31 * hash_code + c;
84
+ // Map hash code 0 to 1. This double the number of hash collisions for 1,
85
+ // but avoids recomputing the hash code.
86
+ if (!hash_code) ++hash_code;
87
+ }
88
+ return hash_code;
89
+ }
90
+
91
+ inline bool operator==(const String16& other) const {
92
+ return m_impl == other.m_impl;
93
+ }
94
+ inline bool operator<(const String16& other) const {
95
+ return m_impl < other.m_impl;
96
+ }
97
+ inline bool operator!=(const String16& other) const {
98
+ return m_impl != other.m_impl;
99
+ }
100
+ inline String16 operator+(const String16& other) const {
101
+ return String16(m_impl + other.m_impl);
102
+ }
103
+ inline String16& operator+=(const String16& other) {
104
+ m_impl += other.m_impl;
105
+ return *this;
106
+ }
107
+
108
+ // Defined later, since it uses the String16Builder.
109
+ template <typename... T>
110
+ static String16 concat(T... args);
111
+
112
+ private:
113
+ std::basic_string<UChar> m_impl;
114
+ mutable std::size_t hash_code = 0;
115
+ };
116
+
117
+ inline String16 operator+(const char* a, const String16& b) {
118
+ return String16(a) + b;
119
+ }
120
+
121
+ class String16Builder {
122
+ public:
123
+ String16Builder();
124
+ void append(const String16&);
125
+ void append(UChar);
126
+ void append(char);
127
+ void append(const UChar*, size_t);
128
+ void append(const char*, size_t);
129
+ void appendNumber(int);
130
+ void appendNumber(size_t);
131
+ void appendUnsignedAsHex(uint64_t);
132
+ void appendUnsignedAsHex(uint32_t);
133
+ void appendUnsignedAsHex(uint8_t);
134
+ String16 toString();
135
+ void reserveCapacity(size_t);
136
+
137
+ template <typename T, typename... R>
138
+ void appendAll(T first, R... rest) {
139
+ append(first);
140
+ appendAll(rest...);
141
+ }
142
+ void appendAll() {}
143
+
144
+ private:
145
+ std::vector<UChar> m_buffer;
146
+ };
147
+
148
+ template <typename... T>
149
+ String16 String16::concat(T... args) {
150
+ String16Builder builder;
151
+ builder.appendAll(args...);
152
+ return builder.toString();
153
+ }
154
+
155
+ } // namespace v8_inspector
156
+
157
+ #if !defined(__APPLE__) || defined(_LIBCPP_VERSION)
158
+
159
+ namespace std {
160
+ template <>
161
+ struct hash<v8_inspector::String16> {
162
+ std::size_t operator()(const v8_inspector::String16& string) const {
163
+ return string.hash();
164
+ }
165
+ };
166
+
167
+ } // namespace std
168
+
169
+ #endif // !defined(__APPLE__) || defined(_LIBCPP_VERSION)
170
+
171
+ // See third_party/inspector_protocol/crdtp/serializer_traits.h.
172
+ namespace v8_crdtp {
173
+ template <>
174
+ struct SerializerTraits<v8_inspector::String16> {
175
+ static void Serialize(const v8_inspector::String16& str,
176
+ std::vector<uint8_t>* out);
177
+ };
178
+ } // namespace v8_crdtp
179
+
180
+ #endif // V8_INSPECTOR_STRING_16_H_
@@ -0,0 +1,128 @@
1
+ // Copyright 2016 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 V8_INSPECTOR_STRING_UTIL_H_
6
+ #define V8_INSPECTOR_STRING_UTIL_H_
7
+
8
+ #include <stdint.h>
9
+
10
+ #include <memory>
11
+
12
+ #include "../../third_party/inspector_protocol/crdtp/protocol_core.h"
13
+ #include "include/v8-inspector.h"
14
+ #include "src/base/logging.h"
15
+ #include "src/base/macros.h"
16
+ #include "src/inspector/string-16.h"
17
+
18
+ namespace v8_inspector {
19
+
20
+ namespace protocol {
21
+
22
+ class Value;
23
+
24
+ using String = v8_inspector::String16;
25
+
26
+ class StringUtil {
27
+ public:
28
+ static String fromUTF8(const uint8_t* data, size_t length) {
29
+ return String16::fromUTF8(reinterpret_cast<const char*>(data), length);
30
+ }
31
+
32
+ static String fromUTF16LE(const uint16_t* data, size_t length) {
33
+ return String16::fromUTF16LE(data, length);
34
+ }
35
+
36
+ static const uint8_t* CharactersLatin1(const String& s) { return nullptr; }
37
+ static const uint8_t* CharactersUTF8(const String& s) { return nullptr; }
38
+ static const uint16_t* CharactersUTF16(const String& s) {
39
+ return s.characters16();
40
+ }
41
+ static size_t CharacterCount(const String& s) { return s.length(); }
42
+ };
43
+
44
+ // A read-only sequence of uninterpreted bytes with reference-counted storage.
45
+ class V8_EXPORT Binary {
46
+ public:
47
+ Binary() = default;
48
+
49
+ const uint8_t* data() const { return bytes_->data(); }
50
+ size_t size() const { return bytes_->size(); }
51
+ String toBase64() const;
52
+ static Binary fromBase64(const String& base64, bool* success);
53
+ static Binary fromSpan(const uint8_t* data, size_t size) {
54
+ return Binary(std::make_shared<std::vector<uint8_t>>(data, data + size));
55
+ }
56
+
57
+ private:
58
+ std::shared_ptr<std::vector<uint8_t>> bytes_;
59
+
60
+ explicit Binary(std::shared_ptr<std::vector<uint8_t>> bytes)
61
+ : bytes_(bytes) {}
62
+ };
63
+ } // namespace protocol
64
+
65
+ v8::Local<v8::String> toV8String(v8::Isolate*, const String16&);
66
+ v8::Local<v8::String> toV8StringInternalized(v8::Isolate*, const String16&);
67
+ v8::Local<v8::String> toV8StringInternalized(v8::Isolate*, const char*);
68
+ v8::Local<v8::String> toV8String(v8::Isolate*, const StringView&);
69
+ // TODO(dgozman): rename to toString16.
70
+ String16 toProtocolString(v8::Isolate*, v8::Local<v8::String>);
71
+ String16 toProtocolStringWithTypeCheck(v8::Isolate*, v8::Local<v8::Value>);
72
+ String16 toString16(const StringView&);
73
+ StringView toStringView(const String16&);
74
+ bool stringViewStartsWith(const StringView&, const char*);
75
+
76
+ // Creates a string buffer instance which owns |str|, a 16 bit string.
77
+ std::unique_ptr<StringBuffer> StringBufferFrom(String16 str);
78
+
79
+ // Creates a string buffer instance which owns |str|, an 8 bit string.
80
+ // 8 bit strings are used for LATIN1 text (which subsumes 7 bit ASCII, e.g.
81
+ // our generated JSON), as well as for CBOR encoded binary messages.
82
+ std::unique_ptr<StringBuffer> StringBufferFrom(std::vector<uint8_t> str);
83
+
84
+ String16 stackTraceIdToString(uintptr_t id);
85
+
86
+ } // namespace v8_inspector
87
+
88
+ // See third_party/inspector_protocol/crdtp/serializer_traits.h.
89
+ namespace v8_crdtp {
90
+
91
+ template <>
92
+ struct ProtocolTypeTraits<v8_inspector::String16> {
93
+ static bool Deserialize(DeserializerState* state,
94
+ v8_inspector::String16* value);
95
+ static void Serialize(const v8_inspector::String16& value,
96
+ std::vector<uint8_t>* bytes);
97
+ };
98
+
99
+ template <>
100
+ struct ProtocolTypeTraits<v8_inspector::protocol::Binary> {
101
+ static bool Deserialize(DeserializerState* state,
102
+ v8_inspector::protocol::Binary* value);
103
+ static void Serialize(const v8_inspector::protocol::Binary& value,
104
+ std::vector<uint8_t>* bytes);
105
+ };
106
+
107
+ template <>
108
+ struct SerializerTraits<v8_inspector::protocol::Binary> {
109
+ static void Serialize(const v8_inspector::protocol::Binary& binary,
110
+ std::vector<uint8_t>* out);
111
+ };
112
+
113
+ namespace detail {
114
+ template <>
115
+ struct MaybeTypedef<v8_inspector::String16> {
116
+ typedef ValueMaybe<v8_inspector::String16> type;
117
+ };
118
+
119
+ template <>
120
+ struct MaybeTypedef<v8_inspector::protocol::Binary> {
121
+ typedef ValueMaybe<v8_inspector::protocol::Binary> type;
122
+ };
123
+
124
+ } // namespace detail
125
+
126
+ } // namespace v8_crdtp
127
+
128
+ #endif // V8_INSPECTOR_STRING_UTIL_H_
@@ -0,0 +1,48 @@
1
+ // Copyright 2016 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 V8_INSPECTOR_V8_CONSOLE_AGENT_IMPL_H_
6
+ #define V8_INSPECTOR_V8_CONSOLE_AGENT_IMPL_H_
7
+
8
+ #include "src/base/macros.h"
9
+ #include "src/inspector/protocol/Console.h"
10
+ #include "src/inspector/protocol/Forward.h"
11
+
12
+ namespace v8_inspector {
13
+
14
+ class V8ConsoleMessage;
15
+ class V8InspectorSessionImpl;
16
+
17
+ using protocol::Response;
18
+
19
+ class V8ConsoleAgentImpl : public protocol::Console::Backend {
20
+ public:
21
+ V8ConsoleAgentImpl(V8InspectorSessionImpl*, protocol::FrontendChannel*,
22
+ protocol::DictionaryValue* state);
23
+ ~V8ConsoleAgentImpl() override;
24
+ V8ConsoleAgentImpl(const V8ConsoleAgentImpl&) = delete;
25
+ V8ConsoleAgentImpl& operator=(const V8ConsoleAgentImpl&) = delete;
26
+
27
+ Response enable() override;
28
+ Response disable() override;
29
+ Response clearMessages() override;
30
+
31
+ void restore();
32
+ void messageAdded(V8ConsoleMessage*);
33
+ void reset();
34
+ bool enabled();
35
+
36
+ private:
37
+ void reportAllMessages();
38
+ bool reportMessage(V8ConsoleMessage*, bool generatePreview);
39
+
40
+ V8InspectorSessionImpl* m_session;
41
+ protocol::DictionaryValue* m_state;
42
+ protocol::Console::Frontend m_frontend;
43
+ bool m_enabled;
44
+ };
45
+
46
+ } // namespace v8_inspector
47
+
48
+ #endif // V8_INSPECTOR_V8_CONSOLE_AGENT_IMPL_H_
@@ -0,0 +1,147 @@
1
+ // Copyright 2016 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 V8_INSPECTOR_V8_CONSOLE_MESSAGE_H_
6
+ #define V8_INSPECTOR_V8_CONSOLE_MESSAGE_H_
7
+
8
+ #include <deque>
9
+ #include <map>
10
+ #include <memory>
11
+ #include <set>
12
+
13
+ #include "include/v8.h"
14
+ #include "src/inspector/protocol/Console.h"
15
+ #include "src/inspector/protocol/Forward.h"
16
+ #include "src/inspector/protocol/Runtime.h"
17
+
18
+ namespace v8_inspector {
19
+
20
+ class InspectedContext;
21
+ class V8InspectorImpl;
22
+ class V8InspectorSessionImpl;
23
+ class V8StackTraceImpl;
24
+
25
+ enum class V8MessageOrigin { kConsole, kException, kRevokedException };
26
+
27
+ enum class ConsoleAPIType {
28
+ kLog,
29
+ kDebug,
30
+ kInfo,
31
+ kError,
32
+ kWarning,
33
+ kDir,
34
+ kDirXML,
35
+ kTable,
36
+ kTrace,
37
+ kStartGroup,
38
+ kStartGroupCollapsed,
39
+ kEndGroup,
40
+ kClear,
41
+ kAssert,
42
+ kTimeEnd,
43
+ kCount
44
+ };
45
+
46
+ class V8ConsoleMessage {
47
+ public:
48
+ ~V8ConsoleMessage();
49
+
50
+ static std::unique_ptr<V8ConsoleMessage> createForConsoleAPI(
51
+ v8::Local<v8::Context> v8Context, int contextId, int groupId,
52
+ V8InspectorImpl* inspector, double timestamp, ConsoleAPIType,
53
+ const std::vector<v8::Local<v8::Value>>& arguments,
54
+ const String16& consoleContext, std::unique_ptr<V8StackTraceImpl>);
55
+
56
+ static std::unique_ptr<V8ConsoleMessage> createForException(
57
+ double timestamp, const String16& detailedMessage, const String16& url,
58
+ unsigned lineNumber, unsigned columnNumber,
59
+ std::unique_ptr<V8StackTraceImpl>, int scriptId, v8::Isolate*,
60
+ const String16& message, int contextId, v8::Local<v8::Value> exception,
61
+ unsigned exceptionId);
62
+
63
+ static std::unique_ptr<V8ConsoleMessage> createForRevokedException(
64
+ double timestamp, const String16& message, unsigned revokedExceptionId);
65
+
66
+ V8MessageOrigin origin() const;
67
+ void reportToFrontend(protocol::Console::Frontend*) const;
68
+ void reportToFrontend(protocol::Runtime::Frontend*, V8InspectorSessionImpl*,
69
+ bool generatePreview) const;
70
+ ConsoleAPIType type() const;
71
+ void contextDestroyed(int contextId);
72
+
73
+ int estimatedSize() const {
74
+ return m_v8Size + static_cast<int>(m_message.length() * sizeof(UChar));
75
+ }
76
+
77
+ private:
78
+ V8ConsoleMessage(V8MessageOrigin, double timestamp, const String16& message);
79
+
80
+ using Arguments = std::vector<std::unique_ptr<v8::Global<v8::Value>>>;
81
+ std::unique_ptr<protocol::Array<protocol::Runtime::RemoteObject>>
82
+ wrapArguments(V8InspectorSessionImpl*, bool generatePreview) const;
83
+ std::unique_ptr<protocol::Runtime::RemoteObject> wrapException(
84
+ V8InspectorSessionImpl*, bool generatePreview) const;
85
+ void setLocation(const String16& url, unsigned lineNumber,
86
+ unsigned columnNumber, std::unique_ptr<V8StackTraceImpl>,
87
+ int scriptId);
88
+
89
+ V8MessageOrigin m_origin;
90
+ double m_timestamp;
91
+ String16 m_message;
92
+ String16 m_url;
93
+ unsigned m_lineNumber;
94
+ unsigned m_columnNumber;
95
+ std::unique_ptr<V8StackTraceImpl> m_stackTrace;
96
+ int m_scriptId;
97
+ int m_contextId;
98
+ ConsoleAPIType m_type;
99
+ unsigned m_exceptionId;
100
+ unsigned m_revokedExceptionId;
101
+ int m_v8Size = 0;
102
+ Arguments m_arguments;
103
+ String16 m_detailedMessage;
104
+ String16 m_consoleContext;
105
+ };
106
+
107
+ class V8ConsoleMessageStorage {
108
+ public:
109
+ V8ConsoleMessageStorage(V8InspectorImpl*, int contextGroupId);
110
+ ~V8ConsoleMessageStorage();
111
+
112
+ int contextGroupId() { return m_contextGroupId; }
113
+ const std::deque<std::unique_ptr<V8ConsoleMessage>>& messages() const {
114
+ return m_messages;
115
+ }
116
+
117
+ void addMessage(std::unique_ptr<V8ConsoleMessage>);
118
+ void contextDestroyed(int contextId);
119
+ void clear();
120
+
121
+ bool shouldReportDeprecationMessage(int contextId, const String16& method);
122
+ int count(int contextId, const String16& id);
123
+ bool countReset(int contextId, const String16& id);
124
+ void time(int contextId, const String16& id);
125
+ double timeLog(int contextId, const String16& id);
126
+ double timeEnd(int contextId, const String16& id);
127
+ bool hasTimer(int contextId, const String16& id);
128
+
129
+ private:
130
+ V8InspectorImpl* m_inspector;
131
+ int m_contextGroupId;
132
+ int m_estimatedSize = 0;
133
+ std::deque<std::unique_ptr<V8ConsoleMessage>> m_messages;
134
+
135
+ struct PerContextData {
136
+ std::set<String16> m_reportedDeprecationMessages;
137
+ // Corresponds to https://console.spec.whatwg.org/#count-map
138
+ std::map<String16, int> m_count;
139
+ // Corresponds to https://console.spec.whatwg.org/#timer-table
140
+ std::map<String16, double> m_time;
141
+ };
142
+ std::map<int, PerContextData> m_data;
143
+ };
144
+
145
+ } // namespace v8_inspector
146
+
147
+ #endif // V8_INSPECTOR_V8_CONSOLE_MESSAGE_H_