0
Files
src/gin
Andrew Grieve a5a4a7f84c Reland "Stop shipping v8 context snapshot for arm32"
This reverts commit 75499f2d67.

Reason for reland: added a target_os=="android" check

Original change's description:
> Revert "Stop shipping v8 context snapshot for arm32"
>
> This reverts commit 1a5f87be2f.
>
> Reason for revert: Might have changed use_v8_context_snapshot for
> non-android platforms. Will fix & re-land.
>
> Original change's description:
> > Stop shipping v8 context snapshot for arm32
> >
> > This introduces separate GN variables that are specific to the
> > secondary ABI so that the value of them can be known both to the
> > primary ABI (which needs to know whether or not to include them as
> > assets), as well as the secondary ABI (which needs to know the value
> > to pass to native code).
> >
> > They are:
> > * use_v8_context_snapshot_secondary_abi
> > * include_both_v8_snapshots_secondary_abi
> >
> > Which are compliments of:
> > * use_v8_context_snapshot
> > * include_both_v8_snapshots
> >
> > This also makes v8_context_snapshot_filename a regular variable
> > rather than a GN args, since it seems unlikely that it is useful to
> > allow configuring this via GN args.
> >
> > Bug: 377850453, 40539769
> > Change-Id: I882cb3d7540ea497ea3494a10f378a54d47724d6
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6011925
> > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
> > Commit-Queue: Andrew Grieve <agrieve@chromium.org>
> > Reviewed-by: Kentaro Hara <haraken@chromium.org>
> > Cr-Commit-Position: refs/heads/main@{#1382620}
>
> Bug: 377850453, 40539769
> Change-Id: I794a74441450da4e0cd5bd8ce9f71caee8edef0a
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6022056
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Owners-Override: Andrew Grieve <agrieve@chromium.org>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Auto-Submit: Andrew Grieve <agrieve@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1382764}

Bug: 377850453, 40539769
Change-Id: Ifc4fbd703abe7c9c51d801099e8c4e81be5e226e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6022321
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Auto-Submit: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1382822}
2024-11-14 06:23:01 +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::RepeatingCallback.

  • 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.