@triniwiz/nativescript-masonkit 1.0.0-alpha.11 → 1.0.0-alpha.13

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 (306) hide show
  1. package/helpers.js +0 -3
  2. package/helpers.js.map +1 -1
  3. package/package.json +1 -1
  4. package/platforms/android/masonkit-release.aar +0 -0
  5. package/style.js +0 -1
  6. package/style.js.map +1 -1
  7. package/node.d.ts +0 -2
  8. package/node.js +0 -3
  9. package/node.js.map +0 -1
  10. package/platforms/ios/Podfile +0 -1
  11. package/platforms/ios/build.xcconfig +0 -5
  12. package/platforms/ios/prebuild.sh +0 -101
  13. package/platforms/new_native_src/cpp/Caches.cpp +0 -36
  14. package/platforms/new_native_src/cpp/Caches.h +0 -42
  15. package/platforms/new_native_src/cpp/Common.h +0 -34
  16. package/platforms/new_native_src/cpp/ConcurrentMap.h +0 -57
  17. package/platforms/new_native_src/cpp/Helpers.cpp +0 -101
  18. package/platforms/new_native_src/cpp/Helpers.h +0 -364
  19. package/platforms/new_native_src/cpp/MasonImpl.cpp +0 -68
  20. package/platforms/new_native_src/cpp/MasonImpl.h +0 -40
  21. package/platforms/new_native_src/cpp/MasonNodeImpl.cpp +0 -89
  22. package/platforms/new_native_src/cpp/MasonNodeImpl.h +0 -47
  23. package/platforms/new_native_src/cpp/MasonStyleImpl.cpp +0 -2181
  24. package/platforms/new_native_src/cpp/MasonStyleImpl.h +0 -420
  25. package/platforms/new_native_src/cpp/include/mason_native.h +0 -972
  26. package/platforms/new_native_src/cpp/include/robin_hood.h +0 -2544
  27. package/src-native/pods/Headers/include/APIDesign.md +0 -72
  28. package/src-native/pods/Headers/include/DEPS +0 -10
  29. package/src-native/pods/Headers/include/DIR_METADATA +0 -11
  30. package/src-native/pods/Headers/include/OWNERS +0 -23
  31. package/src-native/pods/Headers/include/cppgc/DEPS +0 -8
  32. package/src-native/pods/Headers/include/cppgc/OWNERS +0 -2
  33. package/src-native/pods/Headers/include/cppgc/README.md +0 -133
  34. package/src-native/pods/Headers/include/cppgc/allocation.h +0 -310
  35. package/src-native/pods/Headers/include/cppgc/common.h +0 -29
  36. package/src-native/pods/Headers/include/cppgc/cross-thread-persistent.h +0 -465
  37. package/src-native/pods/Headers/include/cppgc/custom-space.h +0 -97
  38. package/src-native/pods/Headers/include/cppgc/default-platform.h +0 -67
  39. package/src-native/pods/Headers/include/cppgc/ephemeron-pair.h +0 -30
  40. package/src-native/pods/Headers/include/cppgc/explicit-management.h +0 -100
  41. package/src-native/pods/Headers/include/cppgc/garbage-collected.h +0 -106
  42. package/src-native/pods/Headers/include/cppgc/heap-consistency.h +0 -266
  43. package/src-native/pods/Headers/include/cppgc/heap-state.h +0 -82
  44. package/src-native/pods/Headers/include/cppgc/heap-statistics.h +0 -120
  45. package/src-native/pods/Headers/include/cppgc/heap.h +0 -206
  46. package/src-native/pods/Headers/include/cppgc/internal/api-constants.h +0 -55
  47. package/src-native/pods/Headers/include/cppgc/internal/atomic-entry-flag.h +0 -48
  48. package/src-native/pods/Headers/include/cppgc/internal/caged-heap-local-data.h +0 -79
  49. package/src-native/pods/Headers/include/cppgc/internal/compiler-specific.h +0 -38
  50. package/src-native/pods/Headers/include/cppgc/internal/finalizer-trait.h +0 -93
  51. package/src-native/pods/Headers/include/cppgc/internal/gc-info.h +0 -156
  52. package/src-native/pods/Headers/include/cppgc/internal/logging.h +0 -50
  53. package/src-native/pods/Headers/include/cppgc/internal/name-trait.h +0 -122
  54. package/src-native/pods/Headers/include/cppgc/internal/persistent-node.h +0 -216
  55. package/src-native/pods/Headers/include/cppgc/internal/pointer-policies.h +0 -186
  56. package/src-native/pods/Headers/include/cppgc/internal/write-barrier.h +0 -435
  57. package/src-native/pods/Headers/include/cppgc/liveness-broker.h +0 -77
  58. package/src-native/pods/Headers/include/cppgc/macros.h +0 -26
  59. package/src-native/pods/Headers/include/cppgc/member.h +0 -291
  60. package/src-native/pods/Headers/include/cppgc/name-provider.h +0 -65
  61. package/src-native/pods/Headers/include/cppgc/object-size-trait.h +0 -58
  62. package/src-native/pods/Headers/include/cppgc/persistent.h +0 -370
  63. package/src-native/pods/Headers/include/cppgc/platform.h +0 -156
  64. package/src-native/pods/Headers/include/cppgc/prefinalizer.h +0 -75
  65. package/src-native/pods/Headers/include/cppgc/process-heap-statistics.h +0 -36
  66. package/src-native/pods/Headers/include/cppgc/sentinel-pointer.h +0 -32
  67. package/src-native/pods/Headers/include/cppgc/source-location.h +0 -92
  68. package/src-native/pods/Headers/include/cppgc/testing.h +0 -106
  69. package/src-native/pods/Headers/include/cppgc/trace-trait.h +0 -116
  70. package/src-native/pods/Headers/include/cppgc/type-traits.h +0 -240
  71. package/src-native/pods/Headers/include/cppgc/visitor.h +0 -379
  72. package/src-native/pods/Headers/include/js_protocol-1.2.json +0 -936
  73. package/src-native/pods/Headers/include/js_protocol-1.3.json +0 -1112
  74. package/src-native/pods/Headers/include/js_protocol.pdl +0 -1709
  75. package/src-native/pods/Headers/include/libffi/arm64/ffi.h +0 -524
  76. package/src-native/pods/Headers/include/libffi/arm64/ffitarget.h +0 -92
  77. package/src-native/pods/Headers/include/libffi/x86_64/ffi.h +0 -524
  78. package/src-native/pods/Headers/include/libffi/x86_64/ffitarget.h +0 -147
  79. package/src-native/pods/Headers/include/libffi.h +0 -12
  80. package/src-native/pods/Headers/include/libplatform/DEPS +0 -9
  81. package/src-native/pods/Headers/include/libplatform/libplatform-export.h +0 -29
  82. package/src-native/pods/Headers/include/libplatform/libplatform.h +0 -106
  83. package/src-native/pods/Headers/include/libplatform/v8-tracing.h +0 -333
  84. package/src-native/pods/Headers/include/v8-array-buffer.h +0 -433
  85. package/src-native/pods/Headers/include/v8-callbacks.h +0 -397
  86. package/src-native/pods/Headers/include/v8-container.h +0 -129
  87. package/src-native/pods/Headers/include/v8-context.h +0 -407
  88. package/src-native/pods/Headers/include/v8-cppgc.h +0 -215
  89. package/src-native/pods/Headers/include/v8-data.h +0 -80
  90. package/src-native/pods/Headers/include/v8-date.h +0 -43
  91. package/src-native/pods/Headers/include/v8-debug.h +0 -168
  92. package/src-native/pods/Headers/include/v8-embedder-heap.h +0 -218
  93. package/src-native/pods/Headers/include/v8-embedder-state-scope.h +0 -51
  94. package/src-native/pods/Headers/include/v8-exception.h +0 -217
  95. package/src-native/pods/Headers/include/v8-extension.h +0 -62
  96. package/src-native/pods/Headers/include/v8-external.h +0 -37
  97. package/src-native/pods/Headers/include/v8-fast-api-calls.h +0 -939
  98. package/src-native/pods/Headers/include/v8-forward.h +0 -81
  99. package/src-native/pods/Headers/include/v8-function-callback.h +0 -475
  100. package/src-native/pods/Headers/include/v8-function.h +0 -125
  101. package/src-native/pods/Headers/include/v8-initialization.h +0 -315
  102. package/src-native/pods/Headers/include/v8-inspector-protocol.h +0 -13
  103. package/src-native/pods/Headers/include/v8-inspector.h +0 -376
  104. package/src-native/pods/Headers/include/v8-internal.h +0 -661
  105. package/src-native/pods/Headers/include/v8-isolate.h +0 -1709
  106. package/src-native/pods/Headers/include/v8-json.h +0 -47
  107. package/src-native/pods/Headers/include/v8-local-handle.h +0 -455
  108. package/src-native/pods/Headers/include/v8-locker.h +0 -149
  109. package/src-native/pods/Headers/include/v8-maybe.h +0 -137
  110. package/src-native/pods/Headers/include/v8-memory-span.h +0 -43
  111. package/src-native/pods/Headers/include/v8-message.h +0 -216
  112. package/src-native/pods/Headers/include/v8-metrics.h +0 -255
  113. package/src-native/pods/Headers/include/v8-microtask-queue.h +0 -152
  114. package/src-native/pods/Headers/include/v8-microtask.h +0 -28
  115. package/src-native/pods/Headers/include/v8-object.h +0 -775
  116. package/src-native/pods/Headers/include/v8-persistent-handle.h +0 -590
  117. package/src-native/pods/Headers/include/v8-platform.h +0 -1092
  118. package/src-native/pods/Headers/include/v8-primitive-object.h +0 -118
  119. package/src-native/pods/Headers/include/v8-primitive.h +0 -866
  120. package/src-native/pods/Headers/include/v8-profiler.h +0 -1198
  121. package/src-native/pods/Headers/include/v8-promise.h +0 -174
  122. package/src-native/pods/Headers/include/v8-proxy.h +0 -50
  123. package/src-native/pods/Headers/include/v8-regexp.h +0 -105
  124. package/src-native/pods/Headers/include/v8-script.h +0 -748
  125. package/src-native/pods/Headers/include/v8-snapshot.h +0 -196
  126. package/src-native/pods/Headers/include/v8-statistics.h +0 -217
  127. package/src-native/pods/Headers/include/v8-template.h +0 -1079
  128. package/src-native/pods/Headers/include/v8-traced-handle.h +0 -420
  129. package/src-native/pods/Headers/include/v8-typed-array.h +0 -282
  130. package/src-native/pods/Headers/include/v8-unwinder-state.h +0 -31
  131. package/src-native/pods/Headers/include/v8-unwinder.h +0 -132
  132. package/src-native/pods/Headers/include/v8-util.h +0 -658
  133. package/src-native/pods/Headers/include/v8-value-serializer-version.h +0 -24
  134. package/src-native/pods/Headers/include/v8-value-serializer.h +0 -279
  135. package/src-native/pods/Headers/include/v8-value.h +0 -526
  136. package/src-native/pods/Headers/include/v8-version-string.h +0 -38
  137. package/src-native/pods/Headers/include/v8-version.h +0 -20
  138. package/src-native/pods/Headers/include/v8-wasm-trap-handler-posix.h +0 -31
  139. package/src-native/pods/Headers/include/v8-wasm-trap-handler-win.h +0 -28
  140. package/src-native/pods/Headers/include/v8-wasm.h +0 -257
  141. package/src-native/pods/Headers/include/v8-weak-callback-info.h +0 -86
  142. package/src-native/pods/Headers/include/v8.h +0 -88
  143. package/src-native/pods/Headers/include/v8config.h +0 -605
  144. package/src-native/pods/Headers/inspector/InspectorServer.h +0 -20
  145. package/src-native/pods/Headers/inspector/JsV8InspectorClient.h +0 -66
  146. package/src-native/pods/Headers/inspector/base/trace_event/common/trace_event_common.h +0 -1123
  147. package/src-native/pods/Headers/inspector/base64.h +0 -9
  148. package/src-native/pods/Headers/inspector/src/base/address-region.h +0 -95
  149. package/src-native/pods/Headers/inspector/src/base/atomic-utils.h +0 -219
  150. package/src-native/pods/Headers/inspector/src/base/atomicops.h +0 -332
  151. package/src-native/pods/Headers/inspector/src/base/atomicops_internals_atomicword_compat.h +0 -89
  152. package/src-native/pods/Headers/inspector/src/base/base-export.h +0 -31
  153. package/src-native/pods/Headers/inspector/src/base/bits.h +0 -343
  154. package/src-native/pods/Headers/inspector/src/base/build_config.h +0 -234
  155. package/src-native/pods/Headers/inspector/src/base/compiler-specific.h +0 -136
  156. package/src-native/pods/Headers/inspector/src/base/export-template.h +0 -163
  157. package/src-native/pods/Headers/inspector/src/base/flags.h +0 -130
  158. package/src-native/pods/Headers/inspector/src/base/immediate-crash.h +0 -162
  159. package/src-native/pods/Headers/inspector/src/base/lazy-instance.h +0 -258
  160. package/src-native/pods/Headers/inspector/src/base/logging.h +0 -417
  161. package/src-native/pods/Headers/inspector/src/base/macros.h +0 -423
  162. package/src-native/pods/Headers/inspector/src/base/memory.h +0 -89
  163. package/src-native/pods/Headers/inspector/src/base/once.h +0 -108
  164. package/src-native/pods/Headers/inspector/src/base/optional.h +0 -882
  165. package/src-native/pods/Headers/inspector/src/base/platform/mutex.h +0 -370
  166. package/src-native/pods/Headers/inspector/src/base/platform/platform.h +0 -476
  167. package/src-native/pods/Headers/inspector/src/base/platform/semaphore.h +0 -108
  168. package/src-native/pods/Headers/inspector/src/base/platform/v8-time.h +0 -513
  169. package/src-native/pods/Headers/inspector/src/base/platform/wrappers.h +0 -73
  170. package/src-native/pods/Headers/inspector/src/base/safe_conversions.h +0 -389
  171. package/src-native/pods/Headers/inspector/src/base/safe_conversions_impl.h +0 -822
  172. package/src-native/pods/Headers/inspector/src/base/template-utils.h +0 -113
  173. package/src-native/pods/Headers/inspector/src/base/v8-fallthrough.h +0 -21
  174. package/src-native/pods/Headers/inspector/src/common/checks.h +0 -38
  175. package/src-native/pods/Headers/inspector/src/common/globals.h +0 -1842
  176. package/src-native/pods/Headers/inspector/src/debug/debug-interface.h +0 -667
  177. package/src-native/pods/Headers/inspector/src/debug/interface-types.h +0 -175
  178. package/src-native/pods/Headers/inspector/src/init/v8.h +0 -52
  179. package/src-native/pods/Headers/inspector/src/inspector/custom-preview.h +0 -24
  180. package/src-native/pods/Headers/inspector/src/inspector/injected-script.h +0 -251
  181. package/src-native/pods/Headers/inspector/src/inspector/inspected-context.h +0 -79
  182. package/src-native/pods/Headers/inspector/src/inspector/protocol/CSS.h +0 -2148
  183. package/src-native/pods/Headers/inspector/src/inspector/protocol/Console.h +0 -211
  184. package/src-native/pods/Headers/inspector/src/inspector/protocol/DOM.h +0 -1008
  185. package/src-native/pods/Headers/inspector/src/inspector/protocol/Debugger.h +0 -892
  186. package/src-native/pods/Headers/inspector/src/inspector/protocol/Forward.h +0 -75
  187. package/src-native/pods/Headers/inspector/src/inspector/protocol/HeapProfiler.h +0 -346
  188. package/src-native/pods/Headers/inspector/src/inspector/protocol/Log.h +0 -342
  189. package/src-native/pods/Headers/inspector/src/inspector/protocol/Network.h +0 -2528
  190. package/src-native/pods/Headers/inspector/src/inspector/protocol/Overlay.h +0 -281
  191. package/src-native/pods/Headers/inspector/src/inspector/protocol/Page.h +0 -1189
  192. package/src-native/pods/Headers/inspector/src/inspector/protocol/Profiler.h +0 -1001
  193. package/src-native/pods/Headers/inspector/src/inspector/protocol/Protocol.h +0 -617
  194. package/src-native/pods/Headers/inspector/src/inspector/protocol/Runtime.h +0 -1696
  195. package/src-native/pods/Headers/inspector/src/inspector/protocol/Schema.h +0 -146
  196. package/src-native/pods/Headers/inspector/src/inspector/protocol/Security.h +0 -793
  197. package/src-native/pods/Headers/inspector/src/inspector/remote-object-id.h +0 -54
  198. package/src-native/pods/Headers/inspector/src/inspector/search-util.h +0 -26
  199. package/src-native/pods/Headers/inspector/src/inspector/string-16.h +0 -180
  200. package/src-native/pods/Headers/inspector/src/inspector/string-util.h +0 -128
  201. package/src-native/pods/Headers/inspector/src/inspector/v8-console-agent-impl.h +0 -48
  202. package/src-native/pods/Headers/inspector/src/inspector/v8-console-message.h +0 -147
  203. package/src-native/pods/Headers/inspector/src/inspector/v8-console.h +0 -173
  204. package/src-native/pods/Headers/inspector/src/inspector/v8-css-agent-impl.h +0 -62
  205. package/src-native/pods/Headers/inspector/src/inspector/v8-debugger-agent-impl.h +0 -248
  206. package/src-native/pods/Headers/inspector/src/inspector/v8-debugger-id.h +0 -44
  207. package/src-native/pods/Headers/inspector/src/inspector/v8-debugger-script.h +0 -123
  208. package/src-native/pods/Headers/inspector/src/inspector/v8-debugger.h +0 -257
  209. package/src-native/pods/Headers/inspector/src/inspector/v8-dom-agent-impl.h +0 -91
  210. package/src-native/pods/Headers/inspector/src/inspector/v8-heap-profiler-agent-impl.h +0 -80
  211. package/src-native/pods/Headers/inspector/src/inspector/v8-inspector-impl.h +0 -191
  212. package/src-native/pods/Headers/inspector/src/inspector/v8-inspector-session-impl.h +0 -156
  213. package/src-native/pods/Headers/inspector/src/inspector/v8-log-agent-impl.h +0 -34
  214. package/src-native/pods/Headers/inspector/src/inspector/v8-network-agent-impl.h +0 -71
  215. package/src-native/pods/Headers/inspector/src/inspector/v8-ns-debugger-agent-impl.h +0 -24
  216. package/src-native/pods/Headers/inspector/src/inspector/v8-overlay-agent-impl.h +0 -70
  217. package/src-native/pods/Headers/inspector/src/inspector/v8-page-agent-impl.h +0 -88
  218. package/src-native/pods/Headers/inspector/src/inspector/v8-profiler-agent-impl.h +0 -104
  219. package/src-native/pods/Headers/inspector/src/inspector/v8-regex.h +0 -38
  220. package/src-native/pods/Headers/inspector/src/inspector/v8-runtime-agent-impl.h +0 -157
  221. package/src-native/pods/Headers/inspector/src/inspector/v8-schema-agent-impl.h +0 -38
  222. package/src-native/pods/Headers/inspector/src/inspector/v8-stack-trace-impl.h +0 -164
  223. package/src-native/pods/Headers/inspector/src/inspector/v8-string-conversions.h +0 -17
  224. package/src-native/pods/Headers/inspector/src/inspector/v8-value-utils.h +0 -23
  225. package/src-native/pods/Headers/inspector/src/inspector/value-mirror.h +0 -87
  226. package/src-native/pods/Headers/inspector/src/libplatform/default-platform.h +0 -92
  227. package/src-native/pods/Headers/inspector/src/logging/tracing-flags.h +0 -50
  228. package/src-native/pods/Headers/inspector/src/numbers/conversions.h +0 -183
  229. package/src-native/pods/Headers/inspector/src/tracing/trace-event.h +0 -664
  230. package/src-native/pods/Headers/inspector/src/utils/allocation.h +0 -367
  231. package/src-native/pods/Headers/inspector/src/utils/vector.h +0 -324
  232. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/cbor.h +0 -305
  233. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/dispatch.h +0 -314
  234. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/error_support.h +0 -62
  235. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/export.h +0 -6
  236. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/find_by_first.h +0 -58
  237. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/frontend_channel.h +0 -47
  238. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/glue.h +0 -80
  239. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json.h +0 -52
  240. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json_platform.h +0 -26
  241. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/maybe.h +0 -104
  242. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/parser_handler.h +0 -39
  243. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/protocol_core.h +0 -406
  244. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializable.h +0 -32
  245. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializer_traits.h +0 -158
  246. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/span.h +0 -99
  247. package/src-native/pods/Headers/inspector/third_party/inspector_protocol/crdtp/status.h +0 -139
  248. package/src-native/pods/Headers/inspector/utils.h +0 -32
  249. package/src-native/pods/Headers/inspector/v8-inspector-platform.h +0 -44
  250. package/src-native/pods/Headers/jsi/decorator.h +0 -762
  251. package/src-native/pods/Headers/jsi/instrumentation.h +0 -117
  252. package/src-native/pods/Headers/jsi/jsi-inl.h +0 -322
  253. package/src-native/pods/Headers/jsi/jsi.h +0 -1387
  254. package/src-native/pods/Headers/jsi/jsilib.h +0 -59
  255. package/src-native/pods/Headers/jsi/threadsafe.h +0 -79
  256. package/src-native/pods/Headers/runtime/ArgConverter.h +0 -61
  257. package/src-native/pods/Headers/runtime/ArrayAdapter.h +0 -13
  258. package/src-native/pods/Headers/runtime/Caches.h +0 -98
  259. package/src-native/pods/Headers/runtime/ClassBuilder.h +0 -61
  260. package/src-native/pods/Headers/runtime/Common.h +0 -9
  261. package/src-native/pods/Headers/runtime/ConcurrentMap.h +0 -55
  262. package/src-native/pods/Headers/runtime/ConcurrentQueue.h +0 -28
  263. package/src-native/pods/Headers/runtime/Console.h +0 -27
  264. package/src-native/pods/Headers/runtime/Constants.h +0 -15
  265. package/src-native/pods/Headers/runtime/DataWrapper.h +0 -671
  266. package/src-native/pods/Headers/runtime/DictionaryAdapter.h +0 -13
  267. package/src-native/pods/Headers/runtime/ExtVector.h +0 -21
  268. package/src-native/pods/Headers/runtime/FFICall.h +0 -105
  269. package/src-native/pods/Headers/runtime/FastEnumerationAdapter.h +0 -13
  270. package/src-native/pods/Headers/runtime/FunctionReference.h +0 -18
  271. package/src-native/pods/Headers/runtime/Helpers.h +0 -84
  272. package/src-native/pods/Headers/runtime/InlineFunctions.h +0 -16
  273. package/src-native/pods/Headers/runtime/Interop.h +0 -202
  274. package/src-native/pods/Headers/runtime/KnownUnknownClassPair.h +0 -35
  275. package/src-native/pods/Headers/runtime/Metadata.h +0 -981
  276. package/src-native/pods/Headers/runtime/MetadataBuilder.h +0 -72
  277. package/src-native/pods/Headers/runtime/MetadataInlines.h +0 -157
  278. package/src-native/pods/Headers/runtime/ModuleInternal.h +0 -59
  279. package/src-native/pods/Headers/runtime/NSDataAdapter.h +0 -13
  280. package/src-native/pods/Headers/runtime/NativeScriptException.h +0 -27
  281. package/src-native/pods/Headers/runtime/ObjectManager.h +0 -31
  282. package/src-native/pods/Headers/runtime/OneByteStringResource.h +0 -21
  283. package/src-native/pods/Headers/runtime/Pointer.h +0 -26
  284. package/src-native/pods/Headers/runtime/PromiseProxy.h +0 -15
  285. package/src-native/pods/Headers/runtime/Reference.h +0 -38
  286. package/src-native/pods/Headers/runtime/Runtime.h +0 -67
  287. package/src-native/pods/Headers/runtime/RuntimeConfig.h +0 -17
  288. package/src-native/pods/Headers/runtime/SetTimeout.h +0 -34
  289. package/src-native/pods/Headers/runtime/SimpleAllocator.h +0 -23
  290. package/src-native/pods/Headers/runtime/StringHasher.h +0 -315
  291. package/src-native/pods/Headers/runtime/SymbolIterator.h +0 -18
  292. package/src-native/pods/Headers/runtime/SymbolLoader.h +0 -27
  293. package/src-native/pods/Headers/runtime/TNSDerivedClass.h +0 -8
  294. package/src-native/pods/Headers/runtime/TSHelpers.h +0 -15
  295. package/src-native/pods/Headers/runtime/Tasks.h +0 -19
  296. package/src-native/pods/Headers/runtime/UnmanagedType.h +0 -21
  297. package/src-native/pods/Headers/runtime/WeakRef.h +0 -15
  298. package/src-native/pods/Headers/runtime/Worker.h +0 -26
  299. package/src-native/pods/Headers/runtime/robin_hood.h +0 -2184
  300. package/src-native/pods/Headers/v8runtime/HostProxy.h +0 -71
  301. package/src-native/pods/Headers/v8runtime/JSIV8ValueConverter.h +0 -70
  302. package/src-native/pods/Headers/v8runtime/V8PointerValue.h +0 -44
  303. package/src-native/pods/Headers/v8runtime/V8Runtime.h +0 -215
  304. package/src-native/pods/Headers/v8runtime/V8RuntimeConfig.h +0 -26
  305. package/src-native/pods/Headers/v8runtime/V8RuntimeFactory.h +0 -21
  306. 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_