0
Files
src/gin
Sami Kyostila 88a4d55ef0 gin: Define V8_USE_PERFETTO when building with Perfetto
Make sure the V8_USE_PERFETTO is defined when building the gin bindings
with Perfetto enabled. Otherwise v8 and gin will be built using
mismatching values of this definition, leading to subtle
incompatibilities.

Bug: 1006541
Cq-Include-Trybots: luci.chromium.try:linux-perfetto-rel
Change-Id: Ib99c53de684f3d04bbb8c5f95d4e130cbefe207b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2611266
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Auto-Submit: Sami Kyöstilä <skyostil@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840547}
2021-01-06 10:15:19 +00:00
..
2020-10-07 00:02:29 +00:00
2020-10-07 00:02:29 +00:00
2020-11-23 19:18:36 +00:00

Gin - Lightweight bindings for V8

This directory contains Gin, a set of utilities to make working with V8 easier.

Here are some of the key bits:

  • converter.h: Templatized JS ↔ C++ conversion routines for many common C++ types. You can define your own by specializing Converter.

  • function_template.h: Create JavaScript functions that dispatch to any C++ function, member function pointer, or base::Callback.

  • object_template_builder.h: A handy utility for creation of v8::ObjectTemplate.

  • wrappable.h: Base class for C++ classes that want to be owned by the V8 GC. Wrappable objects are automatically deleted when GC discovers that nothing in the V8 heap refers to them. This is also an easy way to expose C++ objects to JavaScript.

  • runner.h: Create script contexts and run code in them.

  • module_runner_delegate.h: A delegate for runner that implements a subset of the AMD module specification. Also see modules/ with some example modules.