[base] Support base::Optional from std::initializer_list

Chromium allowed std::initializer_list soon after base::Optional was
added to the codebase [1,2], rendering the top level comment incorrect.
This change introduces appropriate overloads for the construcor,
emplace() and make_optional().

[1] https://crrev.com/53f6b258355ce36752ea7a8dcf8953560b5be818
[2] https://crrev.com/0fcb776029fb1380c8e8c9d4cbdcaf7a217ddb5c

Bug: 521269
Change-Id: Iba10136c8ff84d4aa1f77148f8dc238db5c1be4c
Reviewed-on: https://chromium-review.googlesource.com/840008
Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#526668}

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