Clean up V8 bindings template code
This patch makes some of the V8 bindings templates a bit cleaner. Specifically:
- Uses custom filters for the attribute list to duplicating complicated logic
between for loops in the template and extra booleans defined in python.
- Adds a unique_by filter to simplify the uniqueness logic in the templates.
- Makes consistent use of the 'runtime_enabled' filter.
- Combines for/endfor and if/endif tags into single for-if/endfor tags.
- Makes use of the jinja2 'groupby' filter to clarify the complex logic for
collecting and grouping runtime features by name.
It has a couple of visible side effects; mostly removing some extra generated
blank lines, and removing an unneeded extra brace pair in v8_dictionary.cpp (and
adjusting indentation appropriately). The text expectations have been updated to
match.
TBR=chasej@chromium.org
Review-Url: https://codereview.chromium.org/2000483002
Cr-Commit-Position: refs/heads/master@{#395067}
22 files changed