IDL: DOM impl class code generation for IDL dictionaries
After this CL, CodeGeneratorV8 generates not only V8 bindings, but also DOM implementation classes for IDL dictionaries. - For an IDL file which defines a dictionary, the code generator generates bindings code (V8Foo.{cpp,h}) and DOM impl code (Foo.{cpp,h}). - Added Jinja templates for DOM impl generation. The context for these templates is created by v8_dictionary.dictionary_impl_context(). - v8_types.cpp_types() takes a new argument called |used_as_return_type|. This flags is used by member_impl_context(). Also, |used_in_cpp_sequence| argument is renamed to |used_as_member|. IDL dictionaries are still not be able to use in core/modules. We need to generate impl classes in the right place. (e.g. core/dom/Foo.idl -> gen/blink/core/dom/Foo.{cpp,h}) Also, following types are not supported yet as dictionary members: - union types. - enumeration types. - composite types (arrays, sequences and dictionaries) of which element type is an interface. BUG=321462 Review URL: https://codereview.chromium.org/420763002 git-svn-id: svn://svn.chromium.org/blink/trunk@179190 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Showing
Please register or sign in to comment