Mojo C++ bindings: support enum validation.
By default, enums are not extensible, which means any unknown value will fail validation. If an enum may grow in the future, it needs to have [Extensible=True] attribute specified. In that case, the user code is responsible for handling unknown values properly.
This CL doesn't add corresponding validation for JS or Java.
BUG=404186
Review URL: https://codereview.chromium.org/1618963006
Cr-Commit-Position: refs/heads/master@{#371954}
CrOS-Libchrome-Original-Commit: dca229ec9a69564985d182a16c9f2068db4d1989
41 files changed