| // Copyright 2019 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module blink.mojom; |
| |
| // This enum defines the types of parameters used to specify a feature policy. |
| // TODO(crbug.com/1119481): Add the following types: inc/dec int, inc double, set. |
| enum PolicyValueType { |
| kNull, |
| kBool, |
| kDecDouble, |
| // Valid enum value range depends on specific feature definition in |
| // /third_party/blink/renderer/core/feature_policy/document_policy_features.json5. |
| // The range check is performed upon parsing of document policy in |
| // /third_party/blink/renderer/core/feature_policy/document_policy_parser.cc. |
| kEnum, |
| }; |
| |
| // This union includes all the types that can be used to specify a policy's |
| // parameter. |
| // TODO(crbug.com/1119481): Add the following types: inc/dec int, inc double, set. |
| union PolicyValue { |
| bool null_value; |
| bool bool_value; |
| double dec_double_value; |
| int32 enum_value; |
| }; |