package google.protobuf

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message Any

any.proto:122

`Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message. Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type. Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... } Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); } Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ... Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := ptypes.MarshalAny(foo) ... foo := &pb.Foo{} if err := ptypes.UnmarshalAny(any, foo); err != nil { ... } The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example "foo.bar.com/x/y.z" will yield type name "y.z". JSON ==== The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": <string>, "lastName": <string> } If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" }

message DescriptorProto

descriptor.proto:94

Describes a message type.

Used in: FileDescriptorProto

message DescriptorProto.ExtensionRange

descriptor.proto:103

Used in: DescriptorProto

message DescriptorProto.ReservedRange

descriptor.proto:118

Range of reserved tag numbers. Reserved tag numbers may not be used by fields or extension ranges in the same message. Reserved ranges may not overlap.

Used in: DescriptorProto

message EnumDescriptorProto

descriptor.proto:224

Describes an enum type.

Used in: DescriptorProto, FileDescriptorProto

message EnumDescriptorProto.EnumReservedRange

descriptor.proto:237

Range of reserved numeric values. Reserved values may not be used by entries in the same enum. Reserved ranges may not overlap. Note that this is distinct from DescriptorProto.ReservedRange in that it is inclusive such that it can appropriately represent the entire int32 domain.

Used in: EnumDescriptorProto

message EnumOptions

descriptor.proto:610

Used in: EnumDescriptorProto

message EnumValueDescriptorProto

descriptor.proto:253

Describes a value within an enum.

Used in: EnumDescriptorProto

message EnumValueOptions

descriptor.proto:631

Used in: EnumValueDescriptorProto

message ExtensionRangeOptions

descriptor.proto:128

Used in: DescriptorProto.ExtensionRange

message FieldDescriptorProto

descriptor.proto:137

Describes a field within a message.

Used in: DescriptorProto, FileDescriptorProto

enum FieldDescriptorProto.Label

descriptor.proto:171

Used in: FieldDescriptorProto

enum FieldDescriptorProto.Type

descriptor.proto:138

Used in: FieldDescriptorProto

message FieldOptions

descriptor.proto:509

Used in: FieldDescriptorProto

enum FieldOptions.CType

descriptor.proto:515

Used in: FieldOptions

enum FieldOptions.JSType

descriptor.proto:542

Used in: FieldOptions

message FileDescriptorProto

descriptor.proto:62

Describes a complete .proto file.

Used in: FileDescriptorSet

message FileDescriptorSet

descriptor.proto:57

The protocol compiler can output a FileDescriptorSet containing the .proto files it parses.

message FileOptions

descriptor.proto:318

Used in: FileDescriptorProto

enum FileOptions.OptimizeMode

descriptor.proto:355

Generated classes can be optimized for speed or code size.

Used in: FileOptions

message GeneratedCodeInfo

descriptor.proto:864

Describes the relationship between generated code and its original source file. A GeneratedCodeInfo message is associated with only one generated source file, but may contain references to different source .proto files.

message GeneratedCodeInfo.Annotation

descriptor.proto:868

Used in: GeneratedCodeInfo

message MessageOptions

descriptor.proto:443

Used in: DescriptorProto

message MethodDescriptorProto

descriptor.proto:269

Describes a method of a service.

Used in: ServiceDescriptorProto

message MethodOptions

descriptor.proto:665

Used in: MethodDescriptorProto

enum MethodOptions.IdempotencyLevel

descriptor.proto:681

Is this method side-effect-free (or safe in HTTP parlance), or idempotent, or neither? HTTP based RPC implementation may choose GET verb for safe methods, and PUT verb for idempotent methods instead of the default POST.

Used in: MethodOptions

message OneofDescriptorProto

descriptor.proto:218

Describes a oneof.

Used in: DescriptorProto

message OneofOptions

descriptor.proto:602

Used in: OneofDescriptorProto

message ServiceDescriptorProto

descriptor.proto:261

Describes a service.

Used in: FileDescriptorProto

message ServiceOptions

descriptor.proto:645

Used in: ServiceDescriptorProto

message SourceCodeInfo

descriptor.proto:730

Encapsulates information about the original source file from which a FileDescriptorProto was generated.

Used in: FileDescriptorProto

message SourceCodeInfo.Location

descriptor.proto:775

Used in: SourceCodeInfo

message UninterpretedOption

descriptor.proto:703

A message representing a option the parser does not recognize. This only appears in options protos created by the compiler::Parser class. DescriptorPool resolves these when building Descriptor objects. Therefore, options protos in descriptor objects (e.g. returned by Descriptor::options(), or produced by Descriptor::CopyTo()) will never have UninterpretedOptions in them.

Used in: EnumOptions, EnumValueOptions, ExtensionRangeOptions, FieldOptions, FileOptions, MessageOptions, MethodOptions, OneofOptions, ServiceOptions

message UninterpretedOption.NamePart

descriptor.proto:709

The name of the uninterpreted option. Each string represents a segment in a dot-separated name. is_extension is true iff a segment represents an extension (denoted with parentheses in options specs in .proto files). E.g.,{ ["foo", false], ["bar.baz", true], ["qux", false] } represents "foo.(bar.baz).qux".

Used in: UninterpretedOption