@triniwiz/nativescript-masonkit 1.0.0-alpha.9 → 1.0.0-beta.0

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 (397) hide show
  1. package/button/index.android.d.ts +13 -0
  2. package/button/index.android.js +56 -0
  3. package/button/index.android.js.map +1 -0
  4. package/button/index.ios.d.ts +21 -0
  5. package/button/index.ios.js +216 -0
  6. package/button/index.ios.js.map +1 -0
  7. package/common.d.ts +78 -33
  8. package/common.js +1121 -251
  9. package/common.js.map +1 -1
  10. package/img/index.android.d.ts +10 -0
  11. package/img/index.android.js +40 -0
  12. package/img/index.android.js.map +1 -0
  13. package/img/index.ios.d.ts +13 -0
  14. package/img/index.ios.js +102 -0
  15. package/img/index.ios.js.map +1 -0
  16. package/index.android.d.ts +6 -34
  17. package/index.android.js +6 -139
  18. package/index.android.js.map +1 -1
  19. package/index.d.ts +88 -60
  20. package/index.ios.d.ts +6 -48
  21. package/index.ios.js +6 -355
  22. package/index.ios.js.map +1 -1
  23. package/package.json +5 -2
  24. package/platforms/android/include.gradle +5 -1
  25. package/platforms/android/masonkit-release.aar +0 -0
  26. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/Mason-Swift.h +794 -284
  27. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/Mason.h +0 -5
  28. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/NSObject+MasonElement_Defaults.h +100 -0
  29. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/mason_native.h +118 -93
  30. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Info.plist +0 -0
  31. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Mason +0 -0
  32. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  33. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.abi.json +58079 -23135
  34. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.private.swiftinterface +1234 -255
  35. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  36. package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftinterface +1234 -255
  37. package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
  38. package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +4252 -1932
  39. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/Mason-Swift.h +1588 -568
  40. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/Mason.h +0 -5
  41. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/NSObject+MasonElement_Defaults.h +100 -0
  42. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/mason_native.h +118 -93
  43. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Info.plist +0 -0
  44. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Mason +0 -0
  45. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  46. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  47. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.abi.json +58076 -23132
  48. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +1211 -232
  49. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  50. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftinterface +1211 -232
  51. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.abi.json +58076 -23132
  52. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +1211 -232
  53. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  54. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +1211 -232
  55. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/_CodeSignature/CodeResources +31 -31
  56. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
  57. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +4246 -1932
  58. package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/x86_64/Mason.yml +4124 -1883
  59. package/scroll/index.android.d.ts +12 -0
  60. package/scroll/index.android.js +50 -0
  61. package/scroll/index.android.js.map +1 -0
  62. package/scroll/index.ios.d.ts +14 -0
  63. package/scroll/index.ios.js +120 -0
  64. package/scroll/index.ios.js.map +1 -0
  65. package/style.d.ts +110 -53
  66. package/style.js +1176 -110
  67. package/style.js.map +1 -1
  68. package/text/index.android.d.ts +30 -0
  69. package/text/index.android.js +124 -0
  70. package/text/index.android.js.map +1 -0
  71. package/text/index.ios.d.ts +38 -0
  72. package/text/index.ios.js +251 -0
  73. package/text/index.ios.js.map +1 -0
  74. package/tree/index.android.d.ts +28 -0
  75. package/tree/index.android.js +77 -0
  76. package/tree/index.android.js.map +1 -0
  77. package/tree/index.ios.d.ts +29 -0
  78. package/tree/index.ios.js +76 -0
  79. package/tree/index.ios.js.map +1 -0
  80. package/utils/index.android.d.ts +187 -0
  81. package/utils/index.android.js +514 -0
  82. package/utils/index.android.js.map +1 -0
  83. package/utils/index.ios.d.ts +198 -0
  84. package/utils/index.ios.js +710 -0
  85. package/utils/index.ios.js.map +1 -0
  86. package/view/index.android.d.ts +12 -0
  87. package/view/index.android.js +50 -0
  88. package/view/index.android.js.map +1 -0
  89. package/view/index.ios.d.ts +16 -0
  90. package/view/index.ios.js +124 -0
  91. package/view/index.ios.js.map +1 -0
  92. package/web.d.ts +55 -0
  93. package/web.js +189 -0
  94. package/web.js.map +1 -0
  95. package/helpers.d.ts +0 -255
  96. package/helpers.js +0 -1318
  97. package/helpers.js.map +0 -1
  98. package/node.d.ts +0 -2
  99. package/node.js +0 -3
  100. package/node.js.map +0 -1
  101. package/platforms/ios/Podfile +0 -1
  102. package/platforms/ios/build.xcconfig +0 -5
  103. package/platforms/ios/prebuild.sh +0 -101
  104. package/platforms/new_native_src/cpp/Caches.cpp +0 -36
  105. package/platforms/new_native_src/cpp/Caches.h +0 -42
  106. package/platforms/new_native_src/cpp/Common.h +0 -34
  107. package/platforms/new_native_src/cpp/ConcurrentMap.h +0 -57
  108. package/platforms/new_native_src/cpp/Helpers.cpp +0 -101
  109. package/platforms/new_native_src/cpp/Helpers.h +0 -364
  110. package/platforms/new_native_src/cpp/MasonImpl.cpp +0 -68
  111. package/platforms/new_native_src/cpp/MasonImpl.h +0 -40
  112. package/platforms/new_native_src/cpp/MasonNodeImpl.cpp +0 -89
  113. package/platforms/new_native_src/cpp/MasonNodeImpl.h +0 -47
  114. package/platforms/new_native_src/cpp/MasonStyleImpl.cpp +0 -2181
  115. package/platforms/new_native_src/cpp/MasonStyleImpl.h +0 -420
  116. package/platforms/new_native_src/cpp/include/mason_native.h +0 -972
  117. package/platforms/new_native_src/cpp/include/robin_hood.h +0 -2544
  118. package/src-native/pods/Headers/include/APIDesign.md +0 -72
  119. package/src-native/pods/Headers/include/DEPS +0 -10
  120. package/src-native/pods/Headers/include/DIR_METADATA +0 -11
  121. package/src-native/pods/Headers/include/OWNERS +0 -23
  122. package/src-native/pods/Headers/include/cppgc/DEPS +0 -8
  123. package/src-native/pods/Headers/include/cppgc/OWNERS +0 -2
  124. package/src-native/pods/Headers/include/cppgc/README.md +0 -133
  125. package/src-native/pods/Headers/include/cppgc/allocation.h +0 -310
  126. package/src-native/pods/Headers/include/cppgc/common.h +0 -29
  127. package/src-native/pods/Headers/include/cppgc/cross-thread-persistent.h +0 -465
  128. package/src-native/pods/Headers/include/cppgc/custom-space.h +0 -97
  129. package/src-native/pods/Headers/include/cppgc/default-platform.h +0 -67
  130. package/src-native/pods/Headers/include/cppgc/ephemeron-pair.h +0 -30
  131. package/src-native/pods/Headers/include/cppgc/explicit-management.h +0 -100
  132. package/src-native/pods/Headers/include/cppgc/garbage-collected.h +0 -106
  133. package/src-native/pods/Headers/include/cppgc/heap-consistency.h +0 -266
  134. package/src-native/pods/Headers/include/cppgc/heap-state.h +0 -82
  135. package/src-native/pods/Headers/include/cppgc/heap-statistics.h +0 -120
  136. package/src-native/pods/Headers/include/cppgc/heap.h +0 -206
  137. package/src-native/pods/Headers/include/cppgc/internal/api-constants.h +0 -55
  138. package/src-native/pods/Headers/include/cppgc/internal/atomic-entry-flag.h +0 -48
  139. package/src-native/pods/Headers/include/cppgc/internal/caged-heap-local-data.h +0 -79
  140. package/src-native/pods/Headers/include/cppgc/internal/compiler-specific.h +0 -38
  141. package/src-native/pods/Headers/include/cppgc/internal/finalizer-trait.h +0 -93
  142. package/src-native/pods/Headers/include/cppgc/internal/gc-info.h +0 -156
  143. package/src-native/pods/Headers/include/cppgc/internal/logging.h +0 -50
  144. package/src-native/pods/Headers/include/cppgc/internal/name-trait.h +0 -122
  145. package/src-native/pods/Headers/include/cppgc/internal/persistent-node.h +0 -216
  146. package/src-native/pods/Headers/include/cppgc/internal/pointer-policies.h +0 -186
  147. package/src-native/pods/Headers/include/cppgc/internal/write-barrier.h +0 -435
  148. package/src-native/pods/Headers/include/cppgc/liveness-broker.h +0 -77
  149. package/src-native/pods/Headers/include/cppgc/macros.h +0 -26
  150. package/src-native/pods/Headers/include/cppgc/member.h +0 -291
  151. package/src-native/pods/Headers/include/cppgc/name-provider.h +0 -65
  152. package/src-native/pods/Headers/include/cppgc/object-size-trait.h +0 -58
  153. package/src-native/pods/Headers/include/cppgc/persistent.h +0 -370
  154. package/src-native/pods/Headers/include/cppgc/platform.h +0 -156
  155. package/src-native/pods/Headers/include/cppgc/prefinalizer.h +0 -75
  156. package/src-native/pods/Headers/include/cppgc/process-heap-statistics.h +0 -36
  157. package/src-native/pods/Headers/include/cppgc/sentinel-pointer.h +0 -32
  158. package/src-native/pods/Headers/include/cppgc/source-location.h +0 -92
  159. package/src-native/pods/Headers/include/cppgc/testing.h +0 -106
  160. package/src-native/pods/Headers/include/cppgc/trace-trait.h +0 -116
  161. package/src-native/pods/Headers/include/cppgc/type-traits.h +0 -240
  162. package/src-native/pods/Headers/include/cppgc/visitor.h +0 -379
  163. package/src-native/pods/Headers/include/js_protocol-1.2.json +0 -936
  164. package/src-native/pods/Headers/include/js_protocol-1.3.json +0 -1112
  165. package/src-native/pods/Headers/include/js_protocol.pdl +0 -1709
  166. package/src-native/pods/Headers/include/libffi/arm64/ffi.h +0 -524
  167. package/src-native/pods/Headers/include/libffi/arm64/ffitarget.h +0 -92
  168. package/src-native/pods/Headers/include/libffi/x86_64/ffi.h +0 -524
  169. package/src-native/pods/Headers/include/libffi/x86_64/ffitarget.h +0 -147
  170. package/src-native/pods/Headers/include/libffi.h +0 -12
  171. package/src-native/pods/Headers/include/libplatform/DEPS +0 -9
  172. package/src-native/pods/Headers/include/libplatform/libplatform-export.h +0 -29
  173. package/src-native/pods/Headers/include/libplatform/libplatform.h +0 -106
  174. package/src-native/pods/Headers/include/libplatform/v8-tracing.h +0 -333
  175. package/src-native/pods/Headers/include/v8-array-buffer.h +0 -433
  176. package/src-native/pods/Headers/include/v8-callbacks.h +0 -397
  177. package/src-native/pods/Headers/include/v8-container.h +0 -129
  178. package/src-native/pods/Headers/include/v8-context.h +0 -407
  179. package/src-native/pods/Headers/include/v8-cppgc.h +0 -215
  180. package/src-native/pods/Headers/include/v8-data.h +0 -80
  181. package/src-native/pods/Headers/include/v8-date.h +0 -43
  182. package/src-native/pods/Headers/include/v8-debug.h +0 -168
  183. package/src-native/pods/Headers/include/v8-embedder-heap.h +0 -218
  184. package/src-native/pods/Headers/include/v8-embedder-state-scope.h +0 -51
  185. package/src-native/pods/Headers/include/v8-exception.h +0 -217
  186. package/src-native/pods/Headers/include/v8-extension.h +0 -62
  187. package/src-native/pods/Headers/include/v8-external.h +0 -37
  188. package/src-native/pods/Headers/include/v8-fast-api-calls.h +0 -939
  189. package/src-native/pods/Headers/include/v8-forward.h +0 -81
  190. package/src-native/pods/Headers/include/v8-function-callback.h +0 -475
  191. package/src-native/pods/Headers/include/v8-function.h +0 -125
  192. package/src-native/pods/Headers/include/v8-initialization.h +0 -315
  193. package/src-native/pods/Headers/include/v8-inspector-protocol.h +0 -13
  194. package/src-native/pods/Headers/include/v8-inspector.h +0 -376
  195. package/src-native/pods/Headers/include/v8-internal.h +0 -661
  196. package/src-native/pods/Headers/include/v8-isolate.h +0 -1709
  197. package/src-native/pods/Headers/include/v8-json.h +0 -47
  198. package/src-native/pods/Headers/include/v8-local-handle.h +0 -455
  199. package/src-native/pods/Headers/include/v8-locker.h +0 -149
  200. package/src-native/pods/Headers/include/v8-maybe.h +0 -137
  201. package/src-native/pods/Headers/include/v8-memory-span.h +0 -43
  202. package/src-native/pods/Headers/include/v8-message.h +0 -216
  203. package/src-native/pods/Headers/include/v8-metrics.h +0 -255
  204. package/src-native/pods/Headers/include/v8-microtask-queue.h +0 -152
  205. package/src-native/pods/Headers/include/v8-microtask.h +0 -28
  206. package/src-native/pods/Headers/include/v8-object.h +0 -775
  207. package/src-native/pods/Headers/include/v8-persistent-handle.h +0 -590
  208. package/src-native/pods/Headers/include/v8-platform.h +0 -1092
  209. package/src-native/pods/Headers/include/v8-primitive-object.h +0 -118
  210. package/src-native/pods/Headers/include/v8-primitive.h +0 -866
  211. package/src-native/pods/Headers/include/v8-profiler.h +0 -1198
  212. package/src-native/pods/Headers/include/v8-promise.h +0 -174
  213. package/src-native/pods/Headers/include/v8-proxy.h +0 -50
  214. package/src-native/pods/Headers/include/v8-regexp.h +0 -105
  215. package/src-native/pods/Headers/include/v8-script.h +0 -748
  216. package/src-native/pods/Headers/include/v8-snapshot.h +0 -196
  217. package/src-native/pods/Headers/include/v8-statistics.h +0 -217
  218. package/src-native/pods/Headers/include/v8-template.h +0 -1079
  219. package/src-native/pods/Headers/include/v8-traced-handle.h +0 -420
  220. package/src-native/pods/Headers/include/v8-typed-array.h +0 -282
  221. package/src-native/pods/Headers/include/v8-unwinder-state.h +0 -31
  222. package/src-native/pods/Headers/include/v8-unwinder.h +0 -132
  223. package/src-native/pods/Headers/include/v8-util.h +0 -658
  224. package/src-native/pods/Headers/include/v8-value-serializer-version.h +0 -24
  225. package/src-native/pods/Headers/include/v8-value-serializer.h +0 -279
  226. package/src-native/pods/Headers/include/v8-value.h +0 -526
  227. package/src-native/pods/Headers/include/v8-version-string.h +0 -38
  228. package/src-native/pods/Headers/include/v8-version.h +0 -20
  229. package/src-native/pods/Headers/include/v8-wasm-trap-handler-posix.h +0 -31
  230. package/src-native/pods/Headers/include/v8-wasm-trap-handler-win.h +0 -28
  231. package/src-native/pods/Headers/include/v8-wasm.h +0 -257
  232. package/src-native/pods/Headers/include/v8-weak-callback-info.h +0 -86
  233. package/src-native/pods/Headers/include/v8.h +0 -88
  234. package/src-native/pods/Headers/include/v8config.h +0 -605
  235. package/src-native/pods/Headers/inspector/InspectorServer.h +0 -20
  236. package/src-native/pods/Headers/inspector/JsV8InspectorClient.h +0 -66
  237. package/src-native/pods/Headers/inspector/base/trace_event/common/trace_event_common.h +0 -1123
  238. package/src-native/pods/Headers/inspector/base64.h +0 -9
  239. package/src-native/pods/Headers/inspector/src/base/address-region.h +0 -95
  240. package/src-native/pods/Headers/inspector/src/base/atomic-utils.h +0 -219
  241. package/src-native/pods/Headers/inspector/src/base/atomicops.h +0 -332
  242. package/src-native/pods/Headers/inspector/src/base/atomicops_internals_atomicword_compat.h +0 -89
  243. package/src-native/pods/Headers/inspector/src/base/base-export.h +0 -31
  244. package/src-native/pods/Headers/inspector/src/base/bits.h +0 -343
  245. package/src-native/pods/Headers/inspector/src/base/build_config.h +0 -234
  246. package/src-native/pods/Headers/inspector/src/base/compiler-specific.h +0 -136
  247. package/src-native/pods/Headers/inspector/src/base/export-template.h +0 -163
  248. package/src-native/pods/Headers/inspector/src/base/flags.h +0 -130
  249. package/src-native/pods/Headers/inspector/src/base/immediate-crash.h +0 -162
  250. package/src-native/pods/Headers/inspector/src/base/lazy-instance.h +0 -258
  251. package/src-native/pods/Headers/inspector/src/base/logging.h +0 -417
  252. package/src-native/pods/Headers/inspector/src/base/macros.h +0 -423
  253. package/src-native/pods/Headers/inspector/src/base/memory.h +0 -89
  254. package/src-native/pods/Headers/inspector/src/base/once.h +0 -108
  255. package/src-native/pods/Headers/inspector/src/base/optional.h +0 -882
  256. package/src-native/pods/Headers/inspector/src/base/platform/mutex.h +0 -370
  257. package/src-native/pods/Headers/inspector/src/base/platform/platform.h +0 -476
  258. package/src-native/pods/Headers/inspector/src/base/platform/semaphore.h +0 -108
  259. package/src-native/pods/Headers/inspector/src/base/platform/v8-time.h +0 -513
  260. package/src-native/pods/Headers/inspector/src/base/platform/wrappers.h +0 -73
  261. package/src-native/pods/Headers/inspector/src/base/safe_conversions.h +0 -389
  262. package/src-native/pods/Headers/inspector/src/base/safe_conversions_impl.h +0 -822
  263. package/src-native/pods/Headers/inspector/src/base/template-utils.h +0 -113
  264. package/src-native/pods/Headers/inspector/src/base/v8-fallthrough.h +0 -21
  265. package/src-native/pods/Headers/inspector/src/common/checks.h +0 -38
  266. package/src-native/pods/Headers/inspector/src/common/globals.h +0 -1842
  267. package/src-native/pods/Headers/inspector/src/debug/debug-interface.h +0 -667
  268. package/src-native/pods/Headers/inspector/src/debug/interface-types.h +0 -175
  269. package/src-native/pods/Headers/inspector/src/init/v8.h +0 -52
  270. package/src-native/pods/Headers/inspector/src/inspector/custom-preview.h +0 -24
  271. package/src-native/pods/Headers/inspector/src/inspector/injected-script.h +0 -251
  272. package/src-native/pods/Headers/inspector/src/inspector/inspected-context.h +0 -79
  273. package/src-native/pods/Headers/inspector/src/inspector/protocol/CSS.h +0 -2148
  274. package/src-native/pods/Headers/inspector/src/inspector/protocol/Console.h +0 -211
  275. package/src-native/pods/Headers/inspector/src/inspector/protocol/DOM.h +0 -1008
  276. package/src-native/pods/Headers/inspector/src/inspector/protocol/Debugger.h +0 -892
  277. package/src-native/pods/Headers/inspector/src/inspector/protocol/Forward.h +0 -75
  278. package/src-native/pods/Headers/inspector/src/inspector/protocol/HeapProfiler.h +0 -346
  279. package/src-native/pods/Headers/inspector/src/inspector/protocol/Log.h +0 -342
  280. package/src-native/pods/Headers/inspector/src/inspector/protocol/Network.h +0 -2528
  281. package/src-native/pods/Headers/inspector/src/inspector/protocol/Overlay.h +0 -281
  282. package/src-native/pods/Headers/inspector/src/inspector/protocol/Page.h +0 -1189
  283. package/src-native/pods/Headers/inspector/src/inspector/protocol/Profiler.h +0 -1001
  284. package/src-native/pods/Headers/inspector/src/inspector/protocol/Protocol.h +0 -617
  285. package/src-native/pods/Headers/inspector/src/inspector/protocol/Runtime.h +0 -1696
  286. package/src-native/pods/Headers/inspector/src/inspector/protocol/Schema.h +0 -146
  287. package/src-native/pods/Headers/inspector/src/inspector/protocol/Security.h +0 -793
  288. package/src-native/pods/Headers/inspector/src/inspector/remote-object-id.h +0 -54
  289. package/src-native/pods/Headers/inspector/src/inspector/search-util.h +0 -26
  290. package/src-native/pods/Headers/inspector/src/inspector/string-16.h +0 -180
  291. package/src-native/pods/Headers/inspector/src/inspector/string-util.h +0 -128
  292. package/src-native/pods/Headers/inspector/src/inspector/v8-console-agent-impl.h +0 -48
  293. package/src-native/pods/Headers/inspector/src/inspector/v8-console-message.h +0 -147
  294. package/src-native/pods/Headers/inspector/src/inspector/v8-console.h +0 -173
  295. package/src-native/pods/Headers/inspector/src/inspector/v8-css-agent-impl.h +0 -62
  296. package/src-native/pods/Headers/inspector/src/inspector/v8-debugger-agent-impl.h +0 -248
  297. package/src-native/pods/Headers/inspector/src/inspector/v8-debugger-id.h +0 -44
  298. package/src-native/pods/Headers/inspector/src/inspector/v8-debugger-script.h +0 -123
  299. package/src-native/pods/Headers/inspector/src/inspector/v8-debugger.h +0 -257
  300. package/src-native/pods/Headers/inspector/src/inspector/v8-dom-agent-impl.h +0 -91
  301. package/src-native/pods/Headers/inspector/src/inspector/v8-heap-profiler-agent-impl.h +0 -80
  302. package/src-native/pods/Headers/inspector/src/inspector/v8-inspector-impl.h +0 -191
  303. package/src-native/pods/Headers/inspector/src/inspector/v8-inspector-session-impl.h +0 -156
  304. package/src-native/pods/Headers/inspector/src/inspector/v8-log-agent-impl.h +0 -34
  305. package/src-native/pods/Headers/inspector/src/inspector/v8-network-agent-impl.h +0 -71
  306. package/src-native/pods/Headers/inspector/src/inspector/v8-ns-debugger-agent-impl.h +0 -24
  307. package/src-native/pods/Headers/inspector/src/inspector/v8-overlay-agent-impl.h +0 -70
  308. package/src-native/pods/Headers/inspector/src/inspector/v8-page-agent-impl.h +0 -88
  309. package/src-native/pods/Headers/inspector/src/inspector/v8-profiler-agent-impl.h +0 -104
  310. package/src-native/pods/Headers/inspector/src/inspector/v8-regex.h +0 -38
  311. package/src-native/pods/Headers/inspector/src/inspector/v8-runtime-agent-impl.h +0 -157
  312. package/src-native/pods/Headers/inspector/src/inspector/v8-schema-agent-impl.h +0 -38
  313. package/src-native/pods/Headers/inspector/src/inspector/v8-stack-trace-impl.h +0 -164
  314. package/src-native/pods/Headers/inspector/src/inspector/v8-string-conversions.h +0 -17
  315. package/src-native/pods/Headers/inspector/src/inspector/v8-value-utils.h +0 -23
  316. package/src-native/pods/Headers/inspector/src/inspector/value-mirror.h +0 -87
  317. package/src-native/pods/Headers/inspector/src/libplatform/default-platform.h +0 -92
  318. package/src-native/pods/Headers/inspector/src/logging/tracing-flags.h +0 -50
  319. package/src-native/pods/Headers/inspector/src/numbers/conversions.h +0 -183
  320. package/src-native/pods/Headers/inspector/src/tracing/trace-event.h +0 -664
  321. package/src-native/pods/Headers/inspector/src/utils/allocation.h +0 -367
  322. package/src-native/pods/Headers/inspector/src/utils/vector.h +0 -324
  323. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/cbor.h +0 -305
  324. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/dispatch.h +0 -314
  325. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/error_support.h +0 -62
  326. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/export.h +0 -6
  327. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/find_by_first.h +0 -58
  328. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/frontend_channel.h +0 -47
  329. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/glue.h +0 -80
  330. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json.h +0 -52
  331. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json_platform.h +0 -26
  332. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/maybe.h +0 -104
  333. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/parser_handler.h +0 -39
  334. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/protocol_core.h +0 -406
  335. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializable.h +0 -32
  336. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializer_traits.h +0 -158
  337. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/span.h +0 -99
  338. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/status.h +0 -139
  339. package/src-native/pods/Headers/inspector/utils.h +0 -32
  340. package/src-native/pods/Headers/inspector/v8-inspector-platform.h +0 -44
  341. package/src-native/pods/Headers/jsi/decorator.h +0 -762
  342. package/src-native/pods/Headers/jsi/instrumentation.h +0 -117
  343. package/src-native/pods/Headers/jsi/jsi-inl.h +0 -322
  344. package/src-native/pods/Headers/jsi/jsi.h +0 -1387
  345. package/src-native/pods/Headers/jsi/jsilib.h +0 -59
  346. package/src-native/pods/Headers/jsi/threadsafe.h +0 -79
  347. package/src-native/pods/Headers/runtime/ArgConverter.h +0 -61
  348. package/src-native/pods/Headers/runtime/ArrayAdapter.h +0 -13
  349. package/src-native/pods/Headers/runtime/Caches.h +0 -98
  350. package/src-native/pods/Headers/runtime/ClassBuilder.h +0 -61
  351. package/src-native/pods/Headers/runtime/Common.h +0 -9
  352. package/src-native/pods/Headers/runtime/ConcurrentMap.h +0 -55
  353. package/src-native/pods/Headers/runtime/ConcurrentQueue.h +0 -28
  354. package/src-native/pods/Headers/runtime/Console.h +0 -27
  355. package/src-native/pods/Headers/runtime/Constants.h +0 -15
  356. package/src-native/pods/Headers/runtime/DataWrapper.h +0 -671
  357. package/src-native/pods/Headers/runtime/DictionaryAdapter.h +0 -13
  358. package/src-native/pods/Headers/runtime/ExtVector.h +0 -21
  359. package/src-native/pods/Headers/runtime/FFICall.h +0 -105
  360. package/src-native/pods/Headers/runtime/FastEnumerationAdapter.h +0 -13
  361. package/src-native/pods/Headers/runtime/FunctionReference.h +0 -18
  362. package/src-native/pods/Headers/runtime/Helpers.h +0 -84
  363. package/src-native/pods/Headers/runtime/InlineFunctions.h +0 -16
  364. package/src-native/pods/Headers/runtime/Interop.h +0 -202
  365. package/src-native/pods/Headers/runtime/KnownUnknownClassPair.h +0 -35
  366. package/src-native/pods/Headers/runtime/Metadata.h +0 -981
  367. package/src-native/pods/Headers/runtime/MetadataBuilder.h +0 -72
  368. package/src-native/pods/Headers/runtime/MetadataInlines.h +0 -157
  369. package/src-native/pods/Headers/runtime/ModuleInternal.h +0 -59
  370. package/src-native/pods/Headers/runtime/NSDataAdapter.h +0 -13
  371. package/src-native/pods/Headers/runtime/NativeScriptException.h +0 -27
  372. package/src-native/pods/Headers/runtime/ObjectManager.h +0 -31
  373. package/src-native/pods/Headers/runtime/OneByteStringResource.h +0 -21
  374. package/src-native/pods/Headers/runtime/Pointer.h +0 -26
  375. package/src-native/pods/Headers/runtime/PromiseProxy.h +0 -15
  376. package/src-native/pods/Headers/runtime/Reference.h +0 -38
  377. package/src-native/pods/Headers/runtime/Runtime.h +0 -67
  378. package/src-native/pods/Headers/runtime/RuntimeConfig.h +0 -17
  379. package/src-native/pods/Headers/runtime/SetTimeout.h +0 -34
  380. package/src-native/pods/Headers/runtime/SimpleAllocator.h +0 -23
  381. package/src-native/pods/Headers/runtime/StringHasher.h +0 -315
  382. package/src-native/pods/Headers/runtime/SymbolIterator.h +0 -18
  383. package/src-native/pods/Headers/runtime/SymbolLoader.h +0 -27
  384. package/src-native/pods/Headers/runtime/TNSDerivedClass.h +0 -8
  385. package/src-native/pods/Headers/runtime/TSHelpers.h +0 -15
  386. package/src-native/pods/Headers/runtime/Tasks.h +0 -19
  387. package/src-native/pods/Headers/runtime/UnmanagedType.h +0 -21
  388. package/src-native/pods/Headers/runtime/WeakRef.h +0 -15
  389. package/src-native/pods/Headers/runtime/Worker.h +0 -26
  390. package/src-native/pods/Headers/runtime/robin_hood.h +0 -2184
  391. package/src-native/pods/Headers/v8runtime/HostProxy.h +0 -71
  392. package/src-native/pods/Headers/v8runtime/JSIV8ValueConverter.h +0 -70
  393. package/src-native/pods/Headers/v8runtime/V8PointerValue.h +0 -44
  394. package/src-native/pods/Headers/v8runtime/V8Runtime.h +0 -215
  395. package/src-native/pods/Headers/v8runtime/V8RuntimeConfig.h +0 -26
  396. package/src-native/pods/Headers/v8runtime/V8RuntimeFactory.h +0 -21
  397. package/src-native/pods/NativeScript.podspec +0 -68
@@ -1,406 +0,0 @@
1
- // Copyright 2020 The Chromium 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_CRDTP_PROTOCOL_CORE_H_
6
- #define V8_CRDTP_PROTOCOL_CORE_H_
7
-
8
- #include <sys/types.h>
9
-
10
- #include <memory>
11
- #include <string>
12
- #include <vector>
13
-
14
- #include "cbor.h"
15
- #include "maybe.h"
16
- #include "serializable.h"
17
- #include "span.h"
18
- #include "status.h"
19
-
20
- namespace v8_crdtp {
21
-
22
- class DeserializerState {
23
- public:
24
- using Storage = std::shared_ptr<const std::vector<uint8_t>>;
25
-
26
- // Creates a state from the raw bytes received from the peer.
27
- explicit DeserializerState(std::vector<uint8_t> bytes);
28
- // Creates the state from the part of another message.
29
- DeserializerState(Storage storage, span<uint8_t> span);
30
- DeserializerState(const DeserializerState& r) = delete;
31
- DeserializerState(DeserializerState&& r) = default;
32
-
33
- // Registers |error|, unless the tokenizer's status is already an error.
34
- void RegisterError(Error error);
35
- // Registers |name| as a segment of the field path.
36
- void RegisterFieldPath(span<char> name);
37
-
38
- // Produces an error message considering |tokenizer.Status()|,
39
- // status_, and field_path_.
40
- std::string ErrorMessage(span<char> message_name) const;
41
- Status status() const;
42
- const Storage& storage() const { return storage_; }
43
- cbor::CBORTokenizer* tokenizer() { return &tokenizer_; }
44
-
45
- private:
46
- const Storage storage_;
47
- cbor::CBORTokenizer tokenizer_;
48
- Status status_;
49
- std::vector<span<char>> field_path_;
50
- };
51
-
52
- template <typename T, typename = void>
53
- struct ProtocolTypeTraits {};
54
-
55
- template <>
56
- struct ProtocolTypeTraits<bool> {
57
- static bool Deserialize(DeserializerState* state, bool* value);
58
- static void Serialize(bool value, std::vector<uint8_t>* bytes);
59
- };
60
-
61
- template <>
62
- struct ProtocolTypeTraits<int32_t> {
63
- static bool Deserialize(DeserializerState* state, int* value);
64
- static void Serialize(int value, std::vector<uint8_t>* bytes);
65
- };
66
-
67
- template <>
68
- struct ProtocolTypeTraits<double> {
69
- static bool Deserialize(DeserializerState* state, double* value);
70
- static void Serialize(double value, std::vector<uint8_t>* bytes);
71
- };
72
-
73
- class ContainerSerializer {
74
- public:
75
- ContainerSerializer(std::vector<uint8_t>* bytes, uint8_t tag);
76
-
77
- template <typename T>
78
- void AddField(span<char> field_name, const T& value) {
79
- cbor::EncodeString8(
80
- span<uint8_t>(reinterpret_cast<const uint8_t*>(field_name.data()),
81
- field_name.size()),
82
- bytes_);
83
- ProtocolTypeTraits<T>::Serialize(value, bytes_);
84
- }
85
- template <typename T>
86
- void AddField(span<char> field_name, const detail::ValueMaybe<T>& value) {
87
- if (!value.isJust())
88
- return;
89
- AddField(field_name, value.fromJust());
90
- }
91
- template <typename T>
92
- void AddField(span<char> field_name, const detail::PtrMaybe<T>& value) {
93
- if (!value.isJust())
94
- return;
95
- AddField(field_name, *value.fromJust());
96
- }
97
-
98
- void EncodeStop();
99
-
100
- private:
101
- std::vector<uint8_t>* const bytes_;
102
- cbor::EnvelopeEncoder envelope_;
103
- };
104
-
105
- class ObjectSerializer {
106
- public:
107
- ObjectSerializer();
108
- ~ObjectSerializer();
109
-
110
- template <typename T>
111
- void AddField(span<char> name, const T& field) {
112
- serializer_.AddField(name, field);
113
- }
114
- std::unique_ptr<Serializable> Finish();
115
-
116
- private:
117
- std::vector<uint8_t> owned_bytes_;
118
- ContainerSerializer serializer_;
119
- };
120
-
121
- class DeserializerDescriptor {
122
- public:
123
- struct Field {
124
- span<char> name;
125
- bool is_optional;
126
- bool (*deserializer)(DeserializerState* state, void* obj);
127
- };
128
-
129
- DeserializerDescriptor(const Field* fields, size_t field_count);
130
-
131
- bool Deserialize(DeserializerState* state, void* obj) const;
132
-
133
- private:
134
- bool DeserializeField(DeserializerState* state,
135
- span<char> name,
136
- int* seen_mandatory_fields,
137
- void* obj) const;
138
-
139
- const Field* const fields_;
140
- const size_t field_count_;
141
- const int mandatory_field_mask_;
142
- };
143
-
144
- template <typename T>
145
- struct ProtocolTypeTraits<std::vector<T>> {
146
- static bool Deserialize(DeserializerState* state, std::vector<T>* value) {
147
- auto* tokenizer = state->tokenizer();
148
- if (tokenizer->TokenTag() == cbor::CBORTokenTag::ENVELOPE)
149
- tokenizer->EnterEnvelope();
150
- if (tokenizer->TokenTag() != cbor::CBORTokenTag::ARRAY_START) {
151
- state->RegisterError(Error::CBOR_ARRAY_START_EXPECTED);
152
- return false;
153
- }
154
- assert(value->empty());
155
- tokenizer->Next();
156
- for (; tokenizer->TokenTag() != cbor::CBORTokenTag::STOP;
157
- tokenizer->Next()) {
158
- value->emplace_back();
159
- if (!ProtocolTypeTraits<T>::Deserialize(state, &value->back()))
160
- return false;
161
- }
162
- return true;
163
- }
164
-
165
- static void Serialize(const std::vector<T>& value,
166
- std::vector<uint8_t>* bytes) {
167
- ContainerSerializer container_serializer(
168
- bytes, cbor::EncodeIndefiniteLengthArrayStart());
169
- for (const auto& item : value)
170
- ProtocolTypeTraits<T>::Serialize(item, bytes);
171
- container_serializer.EncodeStop();
172
- }
173
- };
174
-
175
- template <typename T>
176
- struct ProtocolTypeTraits<std::unique_ptr<std::vector<T>>> {
177
- static bool Deserialize(DeserializerState* state,
178
- std::unique_ptr<std::vector<T>>* value) {
179
- auto res = std::make_unique<std::vector<T>>();
180
- if (!ProtocolTypeTraits<std::vector<T>>::Deserialize(state, res.get()))
181
- return false;
182
- *value = std::move(res);
183
- return true;
184
- }
185
- static void Serialize(const std::unique_ptr<std::vector<T>>& value,
186
- std::vector<uint8_t>* bytes) {
187
- ProtocolTypeTraits<std::vector<T>>::Serialize(*value, bytes);
188
- }
189
- };
190
-
191
- class DeferredMessage : public Serializable {
192
- public:
193
- static std::unique_ptr<DeferredMessage> FromSerializable(
194
- std::unique_ptr<Serializable> serializeable);
195
- static std::unique_ptr<DeferredMessage> FromSpan(span<uint8_t> bytes);
196
-
197
- ~DeferredMessage() override = default;
198
- virtual DeserializerState MakeDeserializer() const = 0;
199
-
200
- protected:
201
- DeferredMessage() = default;
202
- };
203
-
204
- template <>
205
- struct ProtocolTypeTraits<std::unique_ptr<DeferredMessage>> {
206
- static bool Deserialize(DeserializerState* state,
207
- std::unique_ptr<DeferredMessage>* value);
208
- static void Serialize(const std::unique_ptr<DeferredMessage>& value,
209
- std::vector<uint8_t>* bytes);
210
- };
211
-
212
- template <typename T>
213
- struct ProtocolTypeTraits<detail::ValueMaybe<T>> {
214
- static bool Deserialize(DeserializerState* state,
215
- detail::ValueMaybe<T>* value) {
216
- T res;
217
- if (!ProtocolTypeTraits<T>::Deserialize(state, &res))
218
- return false;
219
- *value = std::move(res);
220
- return true;
221
- }
222
-
223
- static void Serialize(const detail::ValueMaybe<T>& value,
224
- std::vector<uint8_t>* bytes) {
225
- ProtocolTypeTraits<T>::Serialize(value.fromJust(), bytes);
226
- }
227
- };
228
-
229
- template <typename T>
230
- struct ProtocolTypeTraits<detail::PtrMaybe<T>> {
231
- static bool Deserialize(DeserializerState* state,
232
- detail::PtrMaybe<T>* value) {
233
- std::unique_ptr<T> res;
234
- if (!ProtocolTypeTraits<std::unique_ptr<T>>::Deserialize(state, &res))
235
- return false;
236
- *value = std::move(res);
237
- return true;
238
- }
239
-
240
- static void Serialize(const detail::PtrMaybe<T>& value,
241
- std::vector<uint8_t>* bytes) {
242
- ProtocolTypeTraits<T>::Serialize(*value.fromJust(), bytes);
243
- }
244
- };
245
-
246
- template <typename T>
247
- class DeserializableProtocolObject {
248
- public:
249
- static StatusOr<std::unique_ptr<T>> ReadFrom(
250
- const DeferredMessage& deferred_message) {
251
- auto state = deferred_message.MakeDeserializer();
252
- if (auto res = Deserialize(&state))
253
- return StatusOr<std::unique_ptr<T>>(std::move(res));
254
- return StatusOr<std::unique_ptr<T>>(state.status());
255
- }
256
-
257
- static StatusOr<std::unique_ptr<T>> ReadFrom(std::vector<uint8_t> bytes) {
258
- auto state = DeserializerState(std::move(bytes));
259
- if (auto res = Deserialize(&state))
260
- return StatusOr<std::unique_ptr<T>>(std::move(res));
261
- return StatusOr<std::unique_ptr<T>>(state.status());
262
- }
263
-
264
- // Short-hand for legacy clients. This would swallow any errors, consider
265
- // using ReadFrom.
266
- static std::unique_ptr<T> FromBinary(const uint8_t* bytes, size_t size) {
267
- std::unique_ptr<T> value(new T());
268
- auto deserializer = DeferredMessage::FromSpan(span<uint8_t>(bytes, size))
269
- ->MakeDeserializer();
270
- Deserialize(&deserializer, value.get());
271
- return value;
272
- }
273
-
274
- static bool Deserialize(DeserializerState* state, T* value) {
275
- return T::deserializer_descriptor().Deserialize(state, value);
276
- }
277
-
278
- protected:
279
- // This is for the sake of the macros used by derived classes thay may be in
280
- // a different namespace;
281
- using ProtocolType = T;
282
- using DeserializerDescriptorType = DeserializerDescriptor;
283
- template <typename U>
284
- using DeserializableBase = DeserializableProtocolObject<U>;
285
-
286
- DeserializableProtocolObject() = default;
287
- ~DeserializableProtocolObject() = default;
288
-
289
- private:
290
- friend struct ProtocolTypeTraits<std::unique_ptr<T>>;
291
-
292
- static std::unique_ptr<T> Deserialize(DeserializerState* state) {
293
- std::unique_ptr<T> value(new T());
294
- if (Deserialize(state, value.get()))
295
- return value;
296
- return nullptr;
297
- }
298
- };
299
-
300
- template <typename T>
301
- class ProtocolObject : public Serializable,
302
- public DeserializableProtocolObject<T> {
303
- public:
304
- std::unique_ptr<T> Clone() const {
305
- std::vector<uint8_t> serialized;
306
- AppendSerialized(&serialized);
307
- return T::ReadFrom(std::move(serialized)).value();
308
- }
309
- // TODO(caseq): compatibility only, remove.
310
- std::unique_ptr<T> clone() const { return Clone(); }
311
-
312
- protected:
313
- using ProtocolType = T;
314
-
315
- ProtocolObject() = default;
316
- };
317
-
318
- template <typename T>
319
- struct ProtocolTypeTraits<
320
- T,
321
- typename std::enable_if<
322
- std::is_base_of<ProtocolObject<T>, T>::value>::type> {
323
- static bool Deserialize(DeserializerState* state, T* value) {
324
- return T::Deserialize(state, value);
325
- }
326
-
327
- static void Serialize(const T& value, std::vector<uint8_t>* bytes) {
328
- value.AppendSerialized(bytes);
329
- }
330
- };
331
-
332
- template <typename T>
333
- struct ProtocolTypeTraits<
334
- std::unique_ptr<T>,
335
- typename std::enable_if<
336
- std::is_base_of<ProtocolObject<T>, T>::value>::type> {
337
- static bool Deserialize(DeserializerState* state, std::unique_ptr<T>* value) {
338
- std::unique_ptr<T> res = T::Deserialize(state);
339
- if (!res)
340
- return false;
341
- *value = std::move(res);
342
- return true;
343
- }
344
-
345
- static void Serialize(const std::unique_ptr<T>& value,
346
- std::vector<uint8_t>* bytes) {
347
- ProtocolTypeTraits<T>::Serialize(*value, bytes);
348
- }
349
- };
350
-
351
- #define DECLARE_DESERIALIZATION_SUPPORT() \
352
- friend DeserializableBase<ProtocolType>; \
353
- static const DeserializerDescriptorType& deserializer_descriptor()
354
-
355
- #define DECLARE_SERIALIZATION_SUPPORT() \
356
- public: \
357
- void AppendSerialized(std::vector<uint8_t>* bytes) const override; \
358
- \
359
- private: \
360
- friend DeserializableBase<ProtocolType>; \
361
- static const DeserializerDescriptorType& deserializer_descriptor()
362
-
363
- #define V8_CRDTP_DESERIALIZE_FILED_IMPL(name, field, is_optional) \
364
- { \
365
- MakeSpan(name), is_optional, \
366
- [](DeserializerState* __state, void* __obj) -> bool { \
367
- return ProtocolTypeTraits<decltype(field)>::Deserialize( \
368
- __state, &static_cast<ProtocolType*>(__obj)->field); \
369
- } \
370
- }
371
-
372
- // clang-format off
373
- #define V8_CRDTP_BEGIN_DESERIALIZER(type) \
374
- const type::DeserializerDescriptorType& type::deserializer_descriptor() { \
375
- using namespace v8_crdtp; \
376
- static const DeserializerDescriptorType::Field fields[] = {
377
-
378
- #define V8_CRDTP_END_DESERIALIZER() \
379
- }; \
380
- static const DeserializerDescriptorType s_desc( \
381
- fields, sizeof fields / sizeof fields[0]); \
382
- return s_desc; \
383
- }
384
-
385
- #define V8_CRDTP_DESERIALIZE_FIELD(name, field) \
386
- V8_CRDTP_DESERIALIZE_FILED_IMPL(name, field, false)
387
- #define V8_CRDTP_DESERIALIZE_FIELD_OPT(name, field) \
388
- V8_CRDTP_DESERIALIZE_FILED_IMPL(name, field, true)
389
-
390
- #define V8_CRDTP_BEGIN_SERIALIZER(type) \
391
- void type::AppendSerialized(std::vector<uint8_t>* bytes) const { \
392
- using namespace v8_crdtp; \
393
- ContainerSerializer __serializer(bytes, \
394
- cbor::EncodeIndefiniteLengthMapStart());
395
-
396
- #define V8_CRDTP_SERIALIZE_FIELD(name, field) \
397
- __serializer.AddField(MakeSpan(name), field)
398
-
399
- #define V8_CRDTP_END_SERIALIZER() \
400
- __serializer.EncodeStop(); \
401
- } class __cddtp_dummy_name
402
- // clang-format on
403
-
404
- } // namespace v8_crdtp
405
-
406
- #endif // V8_CRDTP_PROTOCOL_CORE_H_
@@ -1,32 +0,0 @@
1
- // Copyright 2019 The Chromium 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_CRDTP_SERIALIZABLE_H_
6
- #define V8_CRDTP_SERIALIZABLE_H_
7
-
8
- #include <cstdint>
9
- #include <memory>
10
- #include <vector>
11
- #include "export.h"
12
-
13
- namespace v8_crdtp {
14
- // =============================================================================
15
- // Serializable - An object to be emitted as a sequence of bytes.
16
- // =============================================================================
17
- class Serializable {
18
- public:
19
- // Convenience: Invokes |AppendSerialized| on an empty vector.
20
- std::vector<uint8_t> Serialize() const;
21
-
22
- virtual void AppendSerialized(std::vector<uint8_t>* out) const = 0;
23
-
24
- virtual ~Serializable() = default;
25
-
26
- // Wraps a vector of |bytes| into a Serializable for situations in which we
27
- // eagerly serialize a structure.
28
- static std::unique_ptr<Serializable> From(std::vector<uint8_t> bytes);
29
- };
30
- } // namespace v8_crdtp
31
-
32
- #endif // V8_CRDTP_SERIALIZABLE_H_
@@ -1,158 +0,0 @@
1
- // Copyright 2019 The Chromium 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_CRDTP_SERIALIZER_TRAITS_H_
6
- #define V8_CRDTP_SERIALIZER_TRAITS_H_
7
-
8
- #include <memory>
9
- #include <string>
10
- #include <vector>
11
- #include "cbor.h"
12
- #include "maybe.h"
13
- #include "span.h"
14
-
15
- namespace v8_crdtp {
16
- // =============================================================================
17
- // SerializerTraits - Encodes field values of protocol objects in CBOR.
18
- // =============================================================================
19
- //
20
- // A family of serialization functions which are used by FieldSerializerTraits
21
- // (below) to encode field values in CBOR. Conceptually, it's this:
22
- //
23
- // Serialize(bool value, std::vector<uint8_t>* out);
24
- // Serialize(int32_t value, std::vector<uint8_t>* out);
25
- // Serialize(double value, std::vector<uint8_t>* out);
26
- // ...
27
- //
28
- // However, if this was to use straight-forward overloading, implicit
29
- // type conversions would lead to ambiguity - e.g., a bool could be
30
- // represented as an int32_t, but it should really be encoded as a bool.
31
- // The template parameterized / specialized structs accomplish this.
32
- //
33
- // SerializerTraits<bool>::Serialize(bool value, std::vector<uint8_t>* out);
34
- // SerializerTraits<int32>::Serialize(int32_t value, std::vector<uint8_t>* out);
35
- // SerializerTraits<double>::Serialize(double value, std::vector<uint8_t>* out);
36
- template <typename T>
37
- struct SerializerTraits {
38
- // |Serializable| (defined in serializable.h) already knows how to serialize
39
- // to CBOR, so we can just delegate. This covers domain specific types,
40
- // protocol::Binary, etc.
41
- // However, we use duck-typing here, because Exported, which is part of the V8
42
- // headers also comes with AppendSerialized, and logically it's the same type,
43
- // but it lives in a different namespace (v8_inspector::protocol::Exported).
44
- template <
45
- typename LikeSerializable,
46
- typename std::enable_if_t<std::is_member_pointer<decltype(
47
- &LikeSerializable::AppendSerialized)>{},
48
- int> = 0>
49
- static void Serialize(const LikeSerializable& value,
50
- std::vector<uint8_t>* out) {
51
- value.AppendSerialized(out);
52
- }
53
- };
54
-
55
- // This covers std::string, which is assumed to be UTF-8.
56
- // The two other string implementations that are used in the protocol bindings:
57
- // - WTF::String, for which the SerializerTraits specialization is located
58
- // in third_party/blink/renderer/core/inspector/v8-inspector-string.h.
59
- // - v8_inspector::String16, implemented in v8/src/inspector/string-16.h
60
- // along with its SerializerTraits specialization.
61
- template <>
62
- struct SerializerTraits<std::string> {
63
- static void Serialize(const std::string& str, std::vector<uint8_t>* out) {
64
- cbor::EncodeString8(SpanFrom(str), out);
65
- }
66
- };
67
-
68
- template <>
69
- struct SerializerTraits<bool> {
70
- static void Serialize(bool value, std::vector<uint8_t>* out) {
71
- out->push_back(value ? cbor::EncodeTrue() : cbor::EncodeFalse());
72
- }
73
- };
74
-
75
- template <>
76
- struct SerializerTraits<int32_t> {
77
- static void Serialize(int32_t value, std::vector<uint8_t>* out) {
78
- cbor::EncodeInt32(value, out);
79
- }
80
- };
81
-
82
- template <>
83
- struct SerializerTraits<double> {
84
- static void Serialize(double value, std::vector<uint8_t>* out) {
85
- cbor::EncodeDouble(value, out);
86
- }
87
- };
88
-
89
- template <typename T>
90
- struct SerializerTraits<std::vector<T>> {
91
- static void Serialize(const std::vector<T>& value,
92
- std::vector<uint8_t>* out) {
93
- out->push_back(cbor::EncodeIndefiniteLengthArrayStart());
94
- for (const T& element : value)
95
- SerializerTraits<T>::Serialize(element, out);
96
- out->push_back(cbor::EncodeStop());
97
- }
98
- };
99
-
100
- template <typename T>
101
- struct SerializerTraits<std::unique_ptr<T>> {
102
- static void Serialize(const std::unique_ptr<T>& value,
103
- std::vector<uint8_t>* out) {
104
- SerializerTraits<T>::Serialize(*value, out);
105
- }
106
- };
107
-
108
- // =============================================================================
109
- // FieldSerializerTraits - Encodes fields of protocol objects in CBOR
110
- // =============================================================================
111
- //
112
- // The generated code (see TypeBuilder_cpp.template) invokes SerializeField,
113
- // which then instantiates the FieldSerializerTraits to emit the appropriate
114
- // existence checks / dereference for the field value. This avoids emitting
115
- // the field name if the value for an optional field isn't set.
116
- template <typename T>
117
- struct FieldSerializerTraits {
118
- static void Serialize(span<uint8_t> field_name,
119
- const T& field_value,
120
- std::vector<uint8_t>* out) {
121
- cbor::EncodeString8(field_name, out);
122
- SerializerTraits<T>::Serialize(field_value, out);
123
- }
124
- };
125
-
126
- template <typename T>
127
- struct FieldSerializerTraits<detail::PtrMaybe<T>> {
128
- static void Serialize(span<uint8_t> field_name,
129
- const detail::PtrMaybe<T>& field_value,
130
- std::vector<uint8_t>* out) {
131
- if (!field_value.isJust())
132
- return;
133
- cbor::EncodeString8(field_name, out);
134
- SerializerTraits<T>::Serialize(*field_value.fromJust(), out);
135
- }
136
- };
137
-
138
- template <typename T>
139
- struct FieldSerializerTraits<detail::ValueMaybe<T>> {
140
- static void Serialize(span<uint8_t> field_name,
141
- const detail::ValueMaybe<T>& field_value,
142
- std::vector<uint8_t>* out) {
143
- if (!field_value.isJust())
144
- return;
145
- cbor::EncodeString8(field_name, out);
146
- SerializerTraits<T>::Serialize(field_value.fromJust(), out);
147
- }
148
- };
149
-
150
- template <typename T>
151
- void SerializeField(span<uint8_t> field_name,
152
- const T& field_value,
153
- std::vector<uint8_t>* out) {
154
- FieldSerializerTraits<T>::Serialize(field_name, field_value, out);
155
- }
156
- } // namespace v8_crdtp
157
-
158
- #endif // V8_CRDTP_SERIALIZER_TRAITS_H_
@@ -1,99 +0,0 @@
1
- // Copyright 2019 The Chromium 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_CRDTP_SPAN_H_
6
- #define V8_CRDTP_SPAN_H_
7
-
8
- #include <cstdint>
9
- #include <cstring>
10
- #include <string>
11
-
12
- #include "export.h"
13
-
14
- namespace v8_crdtp {
15
- // =============================================================================
16
- // span - sequence of bytes
17
- // =============================================================================
18
-
19
- // This template is similar to std::span, which will be included in C++20.
20
- template <typename T>
21
- class span {
22
- public:
23
- using index_type = size_t;
24
-
25
- constexpr span() : data_(nullptr), size_(0) {}
26
- constexpr span(const T* data, index_type size) : data_(data), size_(size) {}
27
-
28
- constexpr const T* data() const { return data_; }
29
-
30
- constexpr const T* begin() const { return data_; }
31
- constexpr const T* end() const { return data_ + size_; }
32
-
33
- constexpr const T& operator[](index_type idx) const { return data_[idx]; }
34
-
35
- constexpr span<T> subspan(index_type offset, index_type count) const {
36
- return span(data_ + offset, count);
37
- }
38
-
39
- constexpr span<T> subspan(index_type offset) const {
40
- return span(data_ + offset, size_ - offset);
41
- }
42
-
43
- constexpr bool empty() const { return size_ == 0; }
44
-
45
- constexpr index_type size() const { return size_; }
46
- constexpr index_type size_bytes() const { return size_ * sizeof(T); }
47
-
48
- private:
49
- const T* data_;
50
- index_type size_;
51
- };
52
-
53
- template <size_t N>
54
- constexpr span<char> MakeSpan(const char (&str)[N]) {
55
- return span<char>(str, N - 1);
56
- }
57
-
58
- template <size_t N>
59
- constexpr span<uint8_t> SpanFrom(const char (&str)[N]) {
60
- return span<uint8_t>(reinterpret_cast<const uint8_t*>(str), N - 1);
61
- }
62
-
63
- constexpr inline span<uint8_t> SpanFrom(const char* str) {
64
- return str ? span<uint8_t>(reinterpret_cast<const uint8_t*>(str), strlen(str))
65
- : span<uint8_t>();
66
- }
67
-
68
- inline span<uint8_t> SpanFrom(const std::string& v) {
69
- return span<uint8_t>(reinterpret_cast<const uint8_t*>(v.data()), v.size());
70
- }
71
-
72
- // This SpanFrom routine works for std::vector<uint8_t> and
73
- // std::vector<uint16_t>, but also for base::span<const uint8_t> in Chromium.
74
- template <typename C,
75
- typename = std::enable_if_t<
76
- std::is_unsigned<typename C::value_type>{} &&
77
- std::is_member_function_pointer<decltype(&C::size)>{}>>
78
- inline span<typename C::value_type> SpanFrom(const C& v) {
79
- return span<typename C::value_type>(v.data(), v.size());
80
- }
81
-
82
- // Less than / equality comparison functions for sorting / searching for byte
83
- // spans.
84
- bool SpanLessThan(span<uint8_t> x, span<uint8_t> y) noexcept;
85
- bool SpanEquals(span<uint8_t> x, span<uint8_t> y) noexcept;
86
-
87
- // Less than / equality comparison functions for sorting / searching for byte
88
- // spans.
89
- bool SpanLessThan(span<char> x, span<char> y) noexcept;
90
- bool SpanEquals(span<char> x, span<char> y) noexcept;
91
-
92
- struct SpanLt {
93
- bool operator()(span<uint8_t> l, span<uint8_t> r) const {
94
- return SpanLessThan(l, r);
95
- }
96
- };
97
- } // namespace v8_crdtp
98
-
99
- #endif // V8_CRDTP_SPAN_H_