blob: c6be37cf37ad9fc4ca261f3753d7edcf6dfb9d3a [file] [log] [blame] [edit]
// Copyright 2017 The Bazel Authors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// This file contains the protocol buffer representation of a list of supported
// flags for Bazel commands.
syntax = "proto2";
package bazel_flags;
option java_outer_classname = "BazelFlagsProto";
option java_package = "com.google.devtools.build.lib.runtime.commands.proto";
// option java_api_version = 2;
message FlagInfo {
// Name of the flag, without leading dashes.
required string name = 1;
// True if --noname exists, too.
optional bool has_negative_flag = 2 [default = false];
// Help text of the flag.
optional string documentation = 3;
// List of supported Bazel commands, e.g. ['build', 'test']
repeated string commands = 4;
// Flag name abbreviation, without leading dash.
optional string abbreviation = 5;
// True if a flag is allowed to occur multiple times in a single arg list.
optional bool allows_multiple = 6 [default = false];
// The effect tags associated with the flag
repeated string effect_tags = 7;
// The metadata tags associated with the flag
repeated string metadata_tags = 8;
// The documentation category assigned to this flag
optional string documentation_category = 9;
// Whether the flag requires a value.
// If false, value-less invocations are acceptable, e.g. --subcommands,
// but if true a value must be present for all instantiations of the flag,
// e.g. --jobs=100.
optional bool requires_value = 10;
// The default value
optional string default_value = 13;
// The old, deprecated name for this option, without leading dashes.
optional string old_name = 11;
// The deprecation warning for this option, if one is present.
optional string deprecation_warning = 12;
// Additional options which are added if this option is present.
repeated string option_expansions = 14;
// The expected type/"converter".
optional string type_converter = 15;
// List of valid enum values.
repeated string enum_values = 16;
}
message FlagCollection {
repeated FlagInfo flag_infos = 1;
}