IDL: Drop value conversion (V8 -> C++) macros from generated code

Instead of using an ever growing set of per-type-and-situation macros
to perform the conversion from V8 value to C++ value (e.g. for method
arguments and in attribute setters), just generate regular C++ code
that does the same job. In many cases, this leads to roughly the same
amount of code, and is arguable easier to read unless one is very
familiar with all the different macros and their definitions.

Technically, the v8_types.v8_value_to_local_cpp_value() function now
returns a small template context dictionary instead of a "single-
expression" string, and a new template macro is used to generate the
multi-line conversion code using this context.

All now unused macros in V8BindingMacros.h are removed. The remaining
macros are used from custom bindings code, which will be rewritten to
not use them too and thus better match the corresponding generated
code. (There was already a fair amount of mismatch between the two.)

BUG=

Review URL: https://codereview.chromium.org/946973005

git-svn-id: svn://svn.chromium.org/blink/trunk@190816 bbb929c8-8fbe-4397-9dbb-9b2b20218538
43 files changed
tree: ad47f24bac66e20b884ea88880326bfb207d1d56
  1. third_party/