pub mod compiler;
#[derive(Clone, Debug, PartialEq, Message)]
pub struct FileDescriptorSet {
#[prost(message, repeated, tag="1")]
pub file: Vec<FileDescriptorProto>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct FileDescriptorProto {
#[prost(string, optional, tag="1")]
pub name: Option<String>,
#[prost(string, optional, tag="2")]
pub package: Option<String>,
#[prost(string, repeated, tag="3")]
pub dependency: Vec<String>,
#[prost(int32, repeated, packed="false", tag="10")]
pub public_dependency: Vec<i32>,
#[prost(int32, repeated, packed="false", tag="11")]
pub weak_dependency: Vec<i32>,
#[prost(message, repeated, tag="4")]
pub message_type: Vec<DescriptorProto>,
#[prost(message, repeated, tag="5")]
pub enum_type: Vec<EnumDescriptorProto>,
#[prost(message, repeated, tag="6")]
pub service: Vec<ServiceDescriptorProto>,
#[prost(message, repeated, tag="7")]
pub extension: Vec<FieldDescriptorProto>,
#[prost(message, optional, tag="8")]
pub options: Option<FileOptions>,
#[prost(message, optional, tag="9")]
pub source_code_info: Option<SourceCodeInfo>,
#[prost(string, optional, tag="12")]
pub syntax: Option<String>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct DescriptorProto {
#[prost(string, optional, tag="1")]
pub name: Option<String>,
#[prost(message, repeated, tag="2")]
pub field: Vec<FieldDescriptorProto>,
#[prost(message, repeated, tag="6")]
pub extension: Vec<FieldDescriptorProto>,
#[prost(message, repeated, tag="3")]
pub nested_type: Vec<DescriptorProto>,
#[prost(message, repeated, tag="4")]
pub enum_type: Vec<EnumDescriptorProto>,
#[prost(message, repeated, tag="5")]
pub extension_range: Vec<descriptor_proto::ExtensionRange>,
#[prost(message, repeated, tag="8")]
pub oneof_decl: Vec<OneofDescriptorProto>,
#[prost(message, optional, tag="7")]
pub options: Option<MessageOptions>,
#[prost(message, repeated, tag="9")]
pub reserved_range: Vec<descriptor_proto::ReservedRange>,
#[prost(string, repeated, tag="10")]
pub reserved_name: Vec<String>,
}
pub mod descriptor_proto {
#[derive(Clone, Debug, PartialEq, Message)]
pub struct ExtensionRange {
#[prost(int32, optional, tag="1")]
pub start: Option<i32>,
#[prost(int32, optional, tag="2")]
pub end: Option<i32>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct ReservedRange {
#[prost(int32, optional, tag="1")]
pub start: Option<i32>,
#[prost(int32, optional, tag="2")]
pub end: Option<i32>,
}
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct FieldDescriptorProto {
#[prost(string, optional, tag="1")]
pub name: Option<String>,
#[prost(int32, optional, tag="3")]
pub number: Option<i32>,
#[prost(enumeration="field_descriptor_proto::Label", optional, tag="4")]
pub label: Option<i32>,
#[prost(enumeration="field_descriptor_proto::Type", optional, tag="5")]
pub type_: Option<i32>,
#[prost(string, optional, tag="6")]
pub type_name: Option<String>,
#[prost(string, optional, tag="2")]
pub extendee: Option<String>,
#[prost(string, optional, tag="7")]
pub default_value: Option<String>,
#[prost(int32, optional, tag="9")]
pub oneof_index: Option<i32>,
#[prost(string, optional, tag="10")]
pub json_name: Option<String>,
#[prost(message, optional, tag="8")]
pub options: Option<FieldOptions>,
}
pub mod field_descriptor_proto {
#[derive(Clone, Copy, Debug, PartialEq, Eq, Enumeration)]
pub enum Type {
TypeDouble = 1,
TypeFloat = 2,
TypeInt64 = 3,
TypeUint64 = 4,
TypeInt32 = 5,
TypeFixed64 = 6,
TypeFixed32 = 7,
TypeBool = 8,
TypeString = 9,
TypeGroup = 10,
TypeMessage = 11,
TypeBytes = 12,
TypeUint32 = 13,
TypeEnum = 14,
TypeSfixed32 = 15,
TypeSfixed64 = 16,
TypeSint32 = 17,
TypeSint64 = 18,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Enumeration)]
pub enum Label {
LabelOptional = 1,
LabelRequired = 2,
LabelRepeated = 3,
}
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct OneofDescriptorProto {
#[prost(string, optional, tag="1")]
pub name: Option<String>,
#[prost(message, optional, tag="2")]
pub options: Option<OneofOptions>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct EnumDescriptorProto {
#[prost(string, optional, tag="1")]
pub name: Option<String>,
#[prost(message, repeated, tag="2")]
pub value: Vec<EnumValueDescriptorProto>,
#[prost(message, optional, tag="3")]
pub options: Option<EnumOptions>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct EnumValueDescriptorProto {
#[prost(string, optional, tag="1")]
pub name: Option<String>,
#[prost(int32, optional, tag="2")]
pub number: Option<i32>,
#[prost(message, optional, tag="3")]
pub options: Option<EnumValueOptions>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct ServiceDescriptorProto {
#[prost(string, optional, tag="1")]
pub name: Option<String>,
#[prost(message, repeated, tag="2")]
pub method: Vec<MethodDescriptorProto>,
#[prost(message, optional, tag="3")]
pub options: Option<ServiceOptions>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct MethodDescriptorProto {
#[prost(string, optional, tag="1")]
pub name: Option<String>,
#[prost(string, optional, tag="2")]
pub input_type: Option<String>,
#[prost(string, optional, tag="3")]
pub output_type: Option<String>,
#[prost(message, optional, tag="4")]
pub options: Option<MethodOptions>,
#[prost(bool, optional, tag="5")]
pub client_streaming: Option<bool>,
#[prost(bool, optional, tag="6")]
pub server_streaming: Option<bool>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct FileOptions {
#[prost(string, optional, tag="1")]
pub java_package: Option<String>,
#[prost(string, optional, tag="8")]
pub java_outer_classname: Option<String>,
#[prost(bool, optional, tag="10")]
pub java_multiple_files: Option<bool>,
#[prost(bool, optional, tag="20")]
pub java_generate_equals_and_hash: Option<bool>,
#[prost(bool, optional, tag="27")]
pub java_string_check_utf8: Option<bool>,
#[prost(enumeration="file_options::OptimizeMode", optional, tag="9")]
pub optimize_for: Option<i32>,
#[prost(string, optional, tag="11")]
pub go_package: Option<String>,
#[prost(bool, optional, tag="16")]
pub cc_generic_services: Option<bool>,
#[prost(bool, optional, tag="17")]
pub java_generic_services: Option<bool>,
#[prost(bool, optional, tag="18")]
pub py_generic_services: Option<bool>,
#[prost(bool, optional, tag="23")]
pub deprecated: Option<bool>,
#[prost(bool, optional, tag="31")]
pub cc_enable_arenas: Option<bool>,
#[prost(string, optional, tag="36")]
pub objc_class_prefix: Option<String>,
#[prost(string, optional, tag="37")]
pub csharp_namespace: Option<String>,
#[prost(string, optional, tag="39")]
pub swift_prefix: Option<String>,
#[prost(string, optional, tag="40")]
pub php_class_prefix: Option<String>,
#[prost(message, repeated, tag="999")]
pub uninterpreted_option: Vec<UninterpretedOption>,
}
pub mod file_options {
#[derive(Clone, Copy, Debug, PartialEq, Eq, Enumeration)]
pub enum OptimizeMode {
Speed = 1,
CodeSize = 2,
LiteRuntime = 3,
}
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct MessageOptions {
#[prost(bool, optional, tag="1")]
pub message_set_wire_format: Option<bool>,
#[prost(bool, optional, tag="2")]
pub no_standard_descriptor_accessor: Option<bool>,
#[prost(bool, optional, tag="3")]
pub deprecated: Option<bool>,
#[prost(bool, optional, tag="7")]
pub map_entry: Option<bool>,
#[prost(message, repeated, tag="999")]
pub uninterpreted_option: Vec<UninterpretedOption>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct FieldOptions {
#[prost(enumeration="field_options::CType", optional, tag="1")]
pub ctype: Option<i32>,
#[prost(bool, optional, tag="2")]
pub packed: Option<bool>,
#[prost(enumeration="field_options::JSType", optional, tag="6")]
pub jstype: Option<i32>,
#[prost(bool, optional, tag="5")]
pub lazy: Option<bool>,
#[prost(bool, optional, tag="3")]
pub deprecated: Option<bool>,
#[prost(bool, optional, tag="10")]
pub weak: Option<bool>,
#[prost(message, repeated, tag="999")]
pub uninterpreted_option: Vec<UninterpretedOption>,
}
pub mod field_options {
#[derive(Clone, Copy, Debug, PartialEq, Eq, Enumeration)]
pub enum CType {
String = 0,
Cord = 1,
StringPiece = 2,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Enumeration)]
pub enum JSType {
JsNormal = 0,
JsString = 1,
JsNumber = 2,
}
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct OneofOptions {
#[prost(message, repeated, tag="999")]
pub uninterpreted_option: Vec<UninterpretedOption>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct EnumOptions {
#[prost(bool, optional, tag="2")]
pub allow_alias: Option<bool>,
#[prost(bool, optional, tag="3")]
pub deprecated: Option<bool>,
#[prost(message, repeated, tag="999")]
pub uninterpreted_option: Vec<UninterpretedOption>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct EnumValueOptions {
#[prost(bool, optional, tag="1")]
pub deprecated: Option<bool>,
#[prost(message, repeated, tag="999")]
pub uninterpreted_option: Vec<UninterpretedOption>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct ServiceOptions {
#[prost(bool, optional, tag="33")]
pub deprecated: Option<bool>,
#[prost(message, repeated, tag="999")]
pub uninterpreted_option: Vec<UninterpretedOption>,
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct MethodOptions {
#[prost(bool, optional, tag="33")]
pub deprecated: Option<bool>,
#[prost(enumeration="method_options::IdempotencyLevel", optional, tag="34")]
pub idempotency_level: Option<i32>,
#[prost(message, repeated, tag="999")]
pub uninterpreted_option: Vec<UninterpretedOption>,
}
pub mod method_options {
#[derive(Clone, Copy, Debug, PartialEq, Eq, Enumeration)]
pub enum IdempotencyLevel {
IdempotencyUnknown = 0,
NoSideEffects = 1,
Idempotent = 2,
}
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct UninterpretedOption {
#[prost(message, repeated, tag="2")]
pub name: Vec<uninterpreted_option::NamePart>,
#[prost(string, optional, tag="3")]
pub identifier_value: Option<String>,
#[prost(uint64, optional, tag="4")]
pub positive_int_value: Option<u64>,
#[prost(int64, optional, tag="5")]
pub negative_int_value: Option<i64>,
#[prost(double, optional, tag="6")]
pub double_value: Option<f64>,
#[prost(bytes, optional, tag="7")]
pub string_value: Option<Vec<u8>>,
#[prost(string, optional, tag="8")]
pub aggregate_value: Option<String>,
}
pub mod uninterpreted_option {
#[derive(Clone, Debug, PartialEq, Message)]
pub struct NamePart {
#[prost(string, required, tag="1")]
pub name_part: String,
#[prost(bool, required, tag="2")]
pub is_extension: bool,
}
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct SourceCodeInfo {
#[prost(message, repeated, tag="1")]
pub location: Vec<source_code_info::Location>,
}
pub mod source_code_info {
#[derive(Clone, Debug, PartialEq, Message)]
pub struct Location {
#[prost(int32, repeated, tag="1")]
pub path: Vec<i32>,
#[prost(int32, repeated, tag="2")]
pub span: Vec<i32>,
#[prost(string, optional, tag="3")]
pub leading_comments: Option<String>,
#[prost(string, optional, tag="4")]
pub trailing_comments: Option<String>,
#[prost(string, repeated, tag="6")]
pub leading_detached_comments: Vec<String>,
}
}
#[derive(Clone, Debug, PartialEq, Message)]
pub struct GeneratedCodeInfo {
#[prost(message, repeated, tag="1")]
pub annotation: Vec<generated_code_info::Annotation>,
}
pub mod generated_code_info {
#[derive(Clone, Debug, PartialEq, Message)]
pub struct Annotation {
#[prost(int32, repeated, tag="1")]
pub path: Vec<i32>,
#[prost(string, optional, tag="2")]
pub source_file: Option<String>,
#[prost(int32, optional, tag="3")]
pub begin: Option<i32>,
#[prost(int32, optional, tag="4")]
pub end: Option<i32>,
}
}