Chromium Code Reviews
DescriptionInitial patch for the web modules layered platform proposal.
This reads in the IDL we use to expose APIs to the web platform and
instead generates C++ bindings to expose to Blink developers. The C++
bindings are a very simple wrapper around a pointer to the core C++
class. Compilers will completely compile out the wrapper and there is
no performance overhead compared to writing the raw C++ code.
This patch just adds the plumbing to expose Node::firstChild. There will
need to be followup patches to expose more types of methods and more classes.
The IDL compiler is two phases. The parser, which generates an intermediate
representation (IR), and the codegen that generates the C++ code from the IR.
We share the parser code with the V8 code generator, but don't share the code
to generate the C++ bindings from the IR.
Using this we can build features in a layered way. It's not quite as true to the
layered platform vision as writing the features in JS code, but it's a big
pragmatic step in that direction.
Patch Set 1 #
Total comments: 2
Messages
Total messages: 6 (2 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||