v8/include
Maksim Sadym a913a75b8c Add WebDriverBiDi serialization to CDP
1. Added `generateWebDriverValue` flag to `Runtime.evaluate` and `Runtime.callFunctionOn`.
2. Added `webDriverValue` field to `RemoteObject`, and set it in case of the `generateWebDriverValue` flag was set.
3. Added virtual method `bidiSerialize` to allow embedder-implemented serialization (like in https://crrev.com/c/3472491).
4. Implemented V8 serialization in a separate class `V8WebDriverSerializer`.
5. Hardcode `max_depth=1`.
6. Added tests.

Not implemented yet:
1. `objectId`.
2. Test of embedder-implemented serialization.

Tested automatically by:
```
python3 tools/run-tests.py --outdir out/foo inspector/runtime/add-web-driver-value
```

Naming to be discussed. Suggestions are very welcome.

Design doc: http://go/bidi-serialization

Change-Id: Ib35ed8ff58e40b3304423cc2139050136d844e2c
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3472077
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Maksim Sadym <sadym@chromium.org>
Cr-Commit-Position: refs/heads/main@{#79922}
2022-04-11 15:51:54 +00:00
..
cppgc [test] Add a unittest platform setup mixin 2022-04-06 13:07:43 +00:00
libplatform [api] Advance API deprecation for methods last changed in v9.7 2022-01-26 17:30:21 +00:00
APIDesign.md Move inspector protocol definitions to include/ 2019-06-18 17:59:36 +00:00
DEPS cppgc: Implement process-global state accessors. 2021-02-17 22:37:24 +00:00
DIR_METADATA Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
js_protocol-1.2.json Move inspector protocol definitions to include/ 2019-06-18 17:59:36 +00:00
js_protocol-1.3.json Move inspector protocol definitions to include/ 2019-06-18 17:59:36 +00:00
js_protocol.pdl Add WebDriverBiDi serialization to CDP 2022-04-11 15:51:54 +00:00
OWNERS [owners] Adjust ownership for v8-debug.h. 2021-12-30 08:04:21 +00:00
v8-array-buffer.h V8 Sandbox rebranding 2021-12-15 17:09:36 +00:00
v8-callbacks.h [ShadowRealm] Part 1 - Skeleton 2022-01-25 18:10:57 +00:00
v8-container.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-context.h [sandbox] Store external pointers in EmbedderDataSlots in shifted form 2022-02-22 13:40:35 +00:00
v8-cppgc.h [heap] Split off changes for concurrently processing TracedReference 2022-04-08 13:08:05 +00:00
v8-data.h [api] Introduce new HostImportModuleDynamicallyCallback 2021-11-05 14:35:43 +00:00
v8-date.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-debug.h Introduce v8::StackTrace::CurrentScriptNameOrSourceURL 2022-01-17 11:34:28 +00:00
v8-embedder-heap.h [api] Remove TracedGlobal<> 2022-03-23 21:04:51 +00:00
v8-embedder-state-scope.h Shift EmbedderState values next to each other 2022-01-10 17:43:47 +00:00
v8-exception.h [api] Advance API deprecation for methods last changed in v9.7 2022-01-26 17:30:21 +00:00
v8-extension.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-external.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-fast-api-calls.h [api] Advance API deprecation for methods last changed in v9.7 2022-01-26 17:30:21 +00:00
v8-forward.h [include] Add TryCatch and Extension to v8-forward.h 2021-09-23 13:15:10 +00:00
v8-function-callback.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-function.h [api] Deprecate v8::ScriptCompiler::CompileFunctionInContext 2021-10-27 07:19:51 +00:00
v8-initialization.h Allow embedder to set global OOM handler 2022-04-06 17:27:33 +00:00
v8-inspector-protocol.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-inspector.h Add WebDriverBiDi serialization to CDP 2022-04-11 15:51:54 +00:00
v8-internal.h [deoptimizer] Remove soft deopts 2022-04-04 10:26:36 +00:00
v8-isolate.h [counter] Add use counts for f.arguments and .caller 2022-03-07 17:56:32 +00:00
v8-json.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-local-handle.h [api] Remove TracedGlobal<> 2022-03-23 21:04:51 +00:00
v8-locker.h [execution] Move v8::Locker::WasEverUsed() flag into Isolate 2022-01-20 19:08:49 +00:00
v8-maybe.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-memory-span.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-message.h [message] Remove deprecated PrintCurrentStackTrace function which take a FILE* 2022-02-14 14:36:38 +00:00
v8-metrics.h cppgc: young-gen: Extract and report metrics for young GC cycles 2022-04-04 18:33:08 +00:00
v8-microtask-queue.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-microtask.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-object.h [api] Remove TracedGlobal<> 2022-03-23 21:04:51 +00:00
v8-persistent-handle.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-platform.h [base] Don't return bool from VirtualAddressSpace::Free* routines 2022-03-07 16:53:23 +00:00
v8-primitive-object.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-primitive.h [api] Advance API deprecation for methods last changed in v9.7 2022-01-26 17:30:21 +00:00
v8-profiler.h [api][profiler] Get StartProfiling, StopProfiling to accept integer ID rather than string 2022-04-06 19:29:14 +00:00
v8-promise.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-proxy.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-regexp.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-script.h [api] Advance API deprecation for methods last changed in v9.8 2022-01-27 14:03:56 +00:00
v8-snapshot.h Remove many superfluous STL includes in headers. 2022-01-13 20:56:45 +00:00
v8-statistics.h [api][profiler] Surface CpuProfiler memory in HeapCodeStatistics 2021-11-04 11:01:09 +00:00
v8-template.h Deprecate signature checks in Set{Accessor,NativeDataProperty} 2022-04-06 09:43:37 +00:00
v8-traced-handle.h [api] Remove TracedGlobal<> 2022-03-23 21:04:51 +00:00
v8-typed-array.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-unwinder-state.h [LOONG64] Add LoongArch64 backend 2021-08-16 13:05:19 +00:00
v8-unwinder.h Reland "[profiler] Surface VM & Embedder State" 2021-12-07 19:00:07 +00:00
v8-util.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-value-serializer-version.h Reland^2 "[string] Support shared strings in Value{Serializer,Deserializer}" 2022-01-26 21:00:12 +00:00
v8-value-serializer.h Reland^2 "[string] Support shared strings in Value{Serializer,Deserializer}" 2022-01-26 21:00:12 +00:00
v8-value.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
v8-version-string.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-version.h Version 10.2.0 2022-03-17 10:35:56 +00:00
v8-wasm-trap-handler-posix.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-wasm-trap-handler-win.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-wasm.h Allow compiled module invalidation at WasmStreaming::Finish() 2021-11-23 16:05:34 +00:00
v8-weak-callback-info.h Forward deprecation for resurrecting finalizer 2022-03-23 15:54:22 +00:00
v8.h Remove many superfluous STL includes in headers. 2022-01-13 20:56:45 +00:00
v8config.h Split V8_OS_MACOSX into V8_OS_DARWIN and V8_OS_MACOS 2022-02-18 10:24:59 +00:00