2024-12-15 19:51:02 +00:00
|
|
|
// Extracted from: Spotify 1.2.52.442 (windows)
|
2021-06-19 20:29:48 +00:00
|
|
|
|
|
|
|
syntax = "proto2";
|
|
|
|
|
|
|
|
package google.protobuf;
|
|
|
|
|
|
|
|
option csharp_namespace = "Google.Protobuf.Reflection";
|
|
|
|
option objc_class_prefix = "GPB";
|
|
|
|
option cc_enable_arenas = true;
|
|
|
|
option go_package = "google.golang.org/protobuf/types/descriptorpb";
|
|
|
|
option optimize_for = SPEED;
|
|
|
|
option java_outer_classname = "DescriptorProtos";
|
|
|
|
option java_package = "com.google.protobuf";
|
|
|
|
|
|
|
|
message FileDescriptorSet {
|
|
|
|
repeated FileDescriptorProto file = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message FileDescriptorProto {
|
|
|
|
optional string name = 1;
|
|
|
|
optional string package = 2;
|
|
|
|
repeated string dependency = 3;
|
|
|
|
repeated int32 public_dependency = 10;
|
|
|
|
repeated int32 weak_dependency = 11;
|
|
|
|
repeated DescriptorProto message_type = 4;
|
|
|
|
repeated EnumDescriptorProto enum_type = 5;
|
|
|
|
repeated ServiceDescriptorProto service = 6;
|
|
|
|
repeated FieldDescriptorProto extension = 7;
|
|
|
|
optional FileOptions options = 8;
|
|
|
|
optional SourceCodeInfo source_code_info = 9;
|
|
|
|
optional string syntax = 12;
|
2024-12-15 19:51:02 +00:00
|
|
|
optional Edition edition = 14;
|
2021-06-19 20:29:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message DescriptorProto {
|
|
|
|
optional string name = 1;
|
|
|
|
repeated FieldDescriptorProto field = 2;
|
|
|
|
repeated FieldDescriptorProto extension = 6;
|
|
|
|
repeated DescriptorProto nested_type = 3;
|
|
|
|
repeated EnumDescriptorProto enum_type = 4;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated ExtensionRange extension_range = 5;
|
|
|
|
message ExtensionRange {
|
|
|
|
optional int32 start = 1;
|
|
|
|
optional int32 end = 2;
|
|
|
|
optional ExtensionRangeOptions options = 3;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated OneofDescriptorProto oneof_decl = 8;
|
|
|
|
optional MessageOptions options = 7;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated ReservedRange reserved_range = 9;
|
|
|
|
message ReservedRange {
|
|
|
|
optional int32 start = 1;
|
|
|
|
optional int32 end = 2;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated string reserved_name = 10;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ExtensionRangeOptions {
|
2024-12-15 19:51:02 +00:00
|
|
|
message Declaration {
|
|
|
|
reserved 4;
|
|
|
|
optional int32 number = 1;
|
|
|
|
optional string full_name = 2;
|
|
|
|
optional string type = 3;
|
|
|
|
optional bool reserved = 5;
|
|
|
|
optional bool repeated = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum VerificationState {
|
|
|
|
DECLARATION = 0;
|
|
|
|
UNVERIFIED = 1;
|
|
|
|
}
|
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
2024-12-15 19:51:02 +00:00
|
|
|
repeated Declaration declaration = 2;
|
|
|
|
optional FeatureSet features = 50;
|
|
|
|
optional VerificationState verification = 3 [default = UNVERIFIED];
|
2021-06-19 20:29:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message FieldDescriptorProto {
|
|
|
|
optional string name = 1;
|
|
|
|
optional int32 number = 3;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional Label label = 4;
|
|
|
|
enum Label {
|
|
|
|
LABEL_OPTIONAL = 1;
|
|
|
|
LABEL_REPEATED = 3;
|
2024-12-15 19:51:02 +00:00
|
|
|
LABEL_REQUIRED = 2;
|
2021-06-19 20:29:48 +00:00
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional Type type = 5;
|
|
|
|
enum Type {
|
|
|
|
TYPE_DOUBLE = 1;
|
|
|
|
TYPE_FLOAT = 2;
|
|
|
|
TYPE_INT64 = 3;
|
|
|
|
TYPE_UINT64 = 4;
|
|
|
|
TYPE_INT32 = 5;
|
|
|
|
TYPE_FIXED64 = 6;
|
|
|
|
TYPE_FIXED32 = 7;
|
|
|
|
TYPE_BOOL = 8;
|
|
|
|
TYPE_STRING = 9;
|
|
|
|
TYPE_GROUP = 10;
|
|
|
|
TYPE_MESSAGE = 11;
|
|
|
|
TYPE_BYTES = 12;
|
|
|
|
TYPE_UINT32 = 13;
|
|
|
|
TYPE_ENUM = 14;
|
|
|
|
TYPE_SFIXED32 = 15;
|
|
|
|
TYPE_SFIXED64 = 16;
|
|
|
|
TYPE_SINT32 = 17;
|
|
|
|
TYPE_SINT64 = 18;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional string type_name = 6;
|
|
|
|
optional string extendee = 2;
|
|
|
|
optional string default_value = 7;
|
|
|
|
optional int32 oneof_index = 9;
|
|
|
|
optional string json_name = 10;
|
|
|
|
optional FieldOptions options = 8;
|
|
|
|
optional bool proto3_optional = 17;
|
|
|
|
}
|
|
|
|
|
|
|
|
message OneofDescriptorProto {
|
|
|
|
optional string name = 1;
|
|
|
|
optional OneofOptions options = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message EnumDescriptorProto {
|
2024-12-15 19:51:02 +00:00
|
|
|
optional string name = 1;
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated EnumValueDescriptorProto value = 2;
|
|
|
|
optional EnumOptions options = 3;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated EnumReservedRange reserved_range = 4;
|
|
|
|
message EnumReservedRange {
|
|
|
|
optional int32 start = 1;
|
|
|
|
optional int32 end = 2;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated string reserved_name = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
message EnumValueDescriptorProto {
|
|
|
|
optional string name = 1;
|
|
|
|
optional int32 number = 2;
|
|
|
|
optional EnumValueOptions options = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ServiceDescriptorProto {
|
|
|
|
optional string name = 1;
|
|
|
|
repeated MethodDescriptorProto method = 2;
|
|
|
|
optional ServiceOptions options = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message MethodDescriptorProto {
|
|
|
|
optional string name = 1;
|
|
|
|
optional string input_type = 2;
|
|
|
|
optional string output_type = 3;
|
|
|
|
optional MethodOptions options = 4;
|
|
|
|
optional bool client_streaming = 5 [default = false];
|
|
|
|
optional bool server_streaming = 6 [default = false];
|
|
|
|
}
|
|
|
|
|
|
|
|
message FileOptions {
|
|
|
|
optional string java_package = 1;
|
|
|
|
optional string java_outer_classname = 8;
|
|
|
|
optional bool java_multiple_files = 10 [default = false];
|
2024-12-15 19:51:02 +00:00
|
|
|
optional bool java_generate_equals_and_hash = 20;
|
2021-06-19 20:29:48 +00:00
|
|
|
optional bool java_string_check_utf8 = 27 [default = false];
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional OptimizeMode optimize_for = 9 [default = SPEED];
|
|
|
|
enum OptimizeMode {
|
|
|
|
SPEED = 1;
|
|
|
|
CODE_SIZE = 2;
|
|
|
|
LITE_RUNTIME = 3;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional string go_package = 11;
|
|
|
|
optional bool cc_generic_services = 16 [default = false];
|
|
|
|
optional bool java_generic_services = 17 [default = false];
|
|
|
|
optional bool py_generic_services = 18 [default = false];
|
|
|
|
optional bool php_generic_services = 42 [default = false];
|
|
|
|
optional bool deprecated = 23 [default = false];
|
|
|
|
optional bool cc_enable_arenas = 31 [default = true];
|
|
|
|
optional string objc_class_prefix = 36;
|
|
|
|
optional string csharp_namespace = 37;
|
|
|
|
optional string swift_prefix = 39;
|
|
|
|
optional string php_class_prefix = 40;
|
|
|
|
optional string php_namespace = 41;
|
|
|
|
optional string php_metadata_namespace = 44;
|
|
|
|
optional string ruby_package = 45;
|
2024-12-15 19:51:02 +00:00
|
|
|
optional FeatureSet features = 50;
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
reserved 38;
|
|
|
|
}
|
|
|
|
|
|
|
|
message MessageOptions {
|
|
|
|
optional bool message_set_wire_format = 1 [default = false];
|
|
|
|
optional bool no_standard_descriptor_accessor = 2 [default = false];
|
|
|
|
optional bool deprecated = 3 [default = false];
|
|
|
|
optional bool map_entry = 7;
|
2024-12-15 19:51:02 +00:00
|
|
|
optional bool deprecated_legacy_json_field_conflicts = 11;
|
|
|
|
optional FeatureSet features = 12;
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-12-10 19:33:43 +00:00
|
|
|
reserved 4, 5, 6, 8, 9;
|
2021-06-19 20:29:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message FieldOptions {
|
|
|
|
optional CType ctype = 1 [default = STRING];
|
|
|
|
enum CType {
|
|
|
|
STRING = 0;
|
|
|
|
CORD = 1;
|
|
|
|
STRING_PIECE = 2;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional bool packed = 2;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional JSType jstype = 6 [default = JS_NORMAL];
|
|
|
|
enum JSType {
|
|
|
|
JS_NORMAL = 0;
|
|
|
|
JS_STRING = 1;
|
|
|
|
JS_NUMBER = 2;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional bool lazy = 5 [default = false];
|
2024-12-15 19:51:02 +00:00
|
|
|
optional bool unverified_lazy = 15 [default = false];
|
2021-06-19 20:29:48 +00:00
|
|
|
optional bool deprecated = 3 [default = false];
|
|
|
|
optional bool weak = 10 [default = false];
|
2024-12-15 19:51:02 +00:00
|
|
|
optional bool debug_redact = 16 [default = false];
|
|
|
|
|
|
|
|
optional OptionRetention retention = 17;
|
|
|
|
enum OptionRetention {
|
|
|
|
RETENTION_UNKNOWN = 0;
|
|
|
|
RETENTION_RUNTIME = 1;
|
|
|
|
RETENTION_SOURCE = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
repeated OptionTargetType targets = 19;
|
|
|
|
enum OptionTargetType {
|
|
|
|
TARGET_TYPE_UNKNOWN = 0;
|
|
|
|
TARGET_TYPE_FILE = 1;
|
|
|
|
TARGET_TYPE_EXTENSION_RANGE = 2;
|
|
|
|
TARGET_TYPE_MESSAGE = 3;
|
|
|
|
TARGET_TYPE_FIELD = 4;
|
|
|
|
TARGET_TYPE_ONEOF = 5;
|
|
|
|
TARGET_TYPE_ENUM = 6;
|
|
|
|
TARGET_TYPE_ENUM_ENTRY = 7;
|
|
|
|
TARGET_TYPE_SERVICE = 8;
|
|
|
|
TARGET_TYPE_METHOD = 9;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
repeated EditionDefault edition_defaults = 20;
|
|
|
|
message EditionDefault {
|
|
|
|
optional Edition edition = 3;
|
|
|
|
optional string value = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
optional FeatureSet features = 21;
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
|
|
|
reserved 4, 18;
|
2021-06-19 20:29:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message OneofOptions {
|
2024-12-15 19:51:02 +00:00
|
|
|
optional FeatureSet features = 1;
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
|
|
|
}
|
|
|
|
|
|
|
|
message EnumOptions {
|
|
|
|
optional bool allow_alias = 2;
|
|
|
|
optional bool deprecated = 3 [default = false];
|
2024-12-15 19:51:02 +00:00
|
|
|
optional bool deprecated_legacy_json_field_conflicts = 6;
|
|
|
|
optional FeatureSet features = 7;
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
reserved 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
message EnumValueOptions {
|
|
|
|
optional bool deprecated = 1 [default = false];
|
2024-12-15 19:51:02 +00:00
|
|
|
optional FeatureSet features = 2;
|
|
|
|
optional bool debug_redact = 3 [default = false];
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ServiceOptions {
|
2024-12-15 19:51:02 +00:00
|
|
|
optional FeatureSet features = 34;
|
2021-06-19 20:29:48 +00:00
|
|
|
optional bool deprecated = 33 [default = false];
|
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
|
|
|
}
|
|
|
|
|
|
|
|
message MethodOptions {
|
|
|
|
optional bool deprecated = 33 [default = false];
|
2024-12-15 19:51:02 +00:00
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
optional IdempotencyLevel idempotency_level = 34 [default = IDEMPOTENCY_UNKNOWN];
|
|
|
|
enum IdempotencyLevel {
|
|
|
|
IDEMPOTENCY_UNKNOWN = 0;
|
|
|
|
NO_SIDE_EFFECTS = 1;
|
|
|
|
IDEMPOTENT = 2;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
|
|
|
optional FeatureSet features = 35;
|
2021-06-19 20:29:48 +00:00
|
|
|
repeated UninterpretedOption uninterpreted_option = 999;
|
|
|
|
}
|
|
|
|
|
|
|
|
message UninterpretedOption {
|
|
|
|
message NamePart {
|
|
|
|
required string name_part = 1;
|
|
|
|
required bool is_extension = 2;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
|
|
|
repeated UninterpretedOption.NamePart name = 2;
|
2021-06-19 20:29:48 +00:00
|
|
|
optional string identifier_value = 3;
|
|
|
|
optional uint64 positive_int_value = 4;
|
|
|
|
optional int64 negative_int_value = 5;
|
|
|
|
optional double double_value = 6;
|
|
|
|
optional bytes string_value = 7;
|
|
|
|
optional string aggregate_value = 8;
|
|
|
|
}
|
|
|
|
|
2024-12-15 19:51:02 +00:00
|
|
|
message FeatureSet {
|
|
|
|
reserved 999;
|
|
|
|
enum FieldPresence {
|
|
|
|
FIELD_PRESENCE_UNKNOWN = 0;
|
|
|
|
EXPLICIT = 1;
|
|
|
|
IMPLICIT = 2;
|
|
|
|
LEGACY_REQUIRED = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum EnumType {
|
|
|
|
ENUM_TYPE_UNKNOWN = 0;
|
|
|
|
OPEN = 1;
|
|
|
|
CLOSED = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum RepeatedFieldEncoding {
|
|
|
|
REPEATED_FIELD_ENCODING_UNKNOWN = 0;
|
|
|
|
PACKED = 1;
|
|
|
|
EXPANDED = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum Utf8Validation {
|
|
|
|
UTF8_VALIDATION_UNKNOWN = 0;
|
|
|
|
NONE = 1;
|
|
|
|
VERIFY = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum MessageEncoding {
|
|
|
|
MESSAGE_ENCODING_UNKNOWN = 0;
|
|
|
|
LENGTH_PREFIXED = 1;
|
|
|
|
DELIMITED = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum JsonFormat {
|
|
|
|
JSON_FORMAT_UNKNOWN = 0;
|
|
|
|
ALLOW = 1;
|
|
|
|
LEGACY_BEST_EFFORT = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
optional FieldPresence field_presence = 1;
|
|
|
|
optional EnumType enum_type = 2;
|
|
|
|
optional RepeatedFieldEncoding repeated_field_encoding = 3;
|
|
|
|
optional Utf8Validation utf8_validation = 4;
|
|
|
|
optional MessageEncoding message_encoding = 5;
|
|
|
|
optional JsonFormat json_format = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message FeatureSetDefaults {
|
|
|
|
message FeatureSetEditionDefault {
|
|
|
|
optional Edition edition = 3;
|
|
|
|
optional FeatureSet features = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
repeated FeatureSetDefaults.FeatureSetEditionDefault defaults = 1;
|
|
|
|
optional Edition minimum_edition = 4;
|
|
|
|
optional Edition maximum_edition = 5;
|
|
|
|
}
|
|
|
|
|
2021-06-19 20:29:48 +00:00
|
|
|
message SourceCodeInfo {
|
|
|
|
message Location {
|
2024-12-15 19:51:02 +00:00
|
|
|
repeated int32 path = 1;
|
|
|
|
repeated int32 span = 2;
|
2021-06-19 20:29:48 +00:00
|
|
|
optional string leading_comments = 3;
|
|
|
|
optional string trailing_comments = 4;
|
|
|
|
repeated string leading_detached_comments = 6;
|
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
|
|
|
repeated Location location = 1;
|
2021-06-19 20:29:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message GeneratedCodeInfo {
|
|
|
|
message Annotation {
|
2024-12-15 19:51:02 +00:00
|
|
|
enum Semantic {
|
|
|
|
NONE = 0;
|
|
|
|
SET = 1;
|
|
|
|
ALIAS = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
repeated int32 path = 1;
|
2021-06-19 20:29:48 +00:00
|
|
|
optional string source_file = 2;
|
|
|
|
optional int32 begin = 3;
|
|
|
|
optional int32 end = 4;
|
2024-12-15 19:51:02 +00:00
|
|
|
optional Annotation.Semantic semantic = 5;
|
2021-06-19 20:29:48 +00:00
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|
|
|
|
repeated Annotation annotation = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum Edition {
|
|
|
|
EDITION_UNKNOWN = 0;
|
|
|
|
EDITION_PROTO2 = 998;
|
|
|
|
EDITION_PROTO3 = 999;
|
|
|
|
EDITION_2023 = 1000;
|
|
|
|
EDITION_1_TEST_ONLY = 1;
|
|
|
|
EDITION_2_TEST_ONLY = 2;
|
|
|
|
EDITION_99997_TEST_ONLY = 99997;
|
|
|
|
EDITION_99998_TEST_ONLY = 99998;
|
|
|
|
EDITION_99999_TEST_ONLY = 99999;
|
2021-06-19 20:29:48 +00:00
|
|
|
}
|
2024-12-15 19:51:02 +00:00
|
|
|
|