json_schema_compiler: Use std::vector<char> for binary values.

This change enables ArrayBuffer[] in IDLs / json-schema descriptions of extension APIs.

This affects the code generated from these descriptions:
The C++ members (and arguments to the ::Create functions) that refer to binary values are now represented by std::vector<char> instead of std::string.

All usages are adapted in this CL.
While there, this change updates the affected code parts
 - to use vector_as_array where it makes sense
 - unnecessary copies are removed where easily possible
 - and range based assigns ( ::assign(InputIterator first, InputIterator last) or the same with c'tors) are uniformly used.

BUG=448383
TBR=stevenjb@chromium.org (chromeos/dbus was reviewed by bartfab@)

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

Cr-Commit-Position: refs/heads/master@{#312183}


CrOS-Libchrome-Original-Commit: 93871258123f9c02d00dc33ff96d1d4a240fae68
3 files changed
tree: 273a631ae2855a1c2695cbe2cb2c13dffd971e3f
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/