DescriptionIDL: Binding code generation for dictionaries
This CL adds V8 binding code generation for IDL dictionaries.
- Each dictionary will have its own IDL file because we generate binding
code from dedicated template(dictionary_v8.{cpp,h}).
- Generated binding will contain toV8() and toNative() functions. They are
similar to interfaces' toV8() and toNative(), but there are a little
differences. toV8() never creates a wrapper object. It always returns
a new V8 object. Similarly, toNative() always creates a new DOM object.
This behavior should confirm that dictionaries are passed by value.
- IDL dictionaries are required to be GarbageCollected because we don't want
to add further Oilpan transition pain.
- This CL removes TestDictDerived. We are currently not supporting
inheritance.
- Modified IdlDictionary and IdlDictionaryMember to code generation work.
- Added "is_dictionary" flag to interfaces_info so that the code generator
can handle IDL dictionary correctly.
- Added "is_dictionary" property to IdlType. This is needed for binding code
generation.
- Added v8_dictionary.py. This creates template context for dictionaries.
Generated binding code won't be able to compile at this point. We need
DOM implementation. In follow-up CLs, we are planning to auto-generate
DOM implementation.
BUG=321462
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=178894
Patch Set 1 #
Total comments: 22
Patch Set 2 : #
Total comments: 2
Patch Set 3 : #Patch Set 4 : #Messages
Total messages: 11 (0 generated)
|