Protocol Buffers - Google's data interchange format (grpc依赖)
https://developers.google.com/protocol-buffers/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
230 lines
12 KiB
230 lines
12 KiB
<?php |
|
# Generated by the protocol buffer compiler. DO NOT EDIT! |
|
# source: google/protobuf/descriptor.proto |
|
|
|
namespace Google\Protobuf\Internal; |
|
|
|
use Google\Protobuf\Internal\GPBType; |
|
use Google\Protobuf\Internal\GPBWire; |
|
use Google\Protobuf\Internal\RepeatedField; |
|
use Google\Protobuf\Internal\InputStream; |
|
use Google\Protobuf\Internal\GPBUtil; |
|
|
|
/** |
|
* Encapsulates information about the original source file from which a |
|
* FileDescriptorProto was generated. |
|
* |
|
* Generated from protobuf message <code>google.protobuf.SourceCodeInfo</code> |
|
*/ |
|
class SourceCodeInfo extends \Google\Protobuf\Internal\Message |
|
{ |
|
/** |
|
* A Location identifies a piece of source code in a .proto file which |
|
* corresponds to a particular definition. This information is intended |
|
* to be useful to IDEs, code indexers, documentation generators, and similar |
|
* tools. |
|
* For example, say we have a file like: |
|
* message Foo { |
|
* optional string foo = 1; |
|
* } |
|
* Let's look at just the field definition: |
|
* optional string foo = 1; |
|
* ^ ^^ ^^ ^ ^^^ |
|
* a bc de f ghi |
|
* We have the following locations: |
|
* span path represents |
|
* [a,i) [ 4, 0, 2, 0 ] The whole field definition. |
|
* [a,b) [ 4, 0, 2, 0, 4 ] The label (optional). |
|
* [c,d) [ 4, 0, 2, 0, 5 ] The type (string). |
|
* [e,f) [ 4, 0, 2, 0, 1 ] The name (foo). |
|
* [g,h) [ 4, 0, 2, 0, 3 ] The number (1). |
|
* Notes: |
|
* - A location may refer to a repeated field itself (i.e. not to any |
|
* particular index within it). This is used whenever a set of elements are |
|
* logically enclosed in a single code segment. For example, an entire |
|
* extend block (possibly containing multiple extension definitions) will |
|
* have an outer location whose path refers to the "extensions" repeated |
|
* field without an index. |
|
* - Multiple locations may have the same path. This happens when a single |
|
* logical declaration is spread out across multiple places. The most |
|
* obvious example is the "extend" block again -- there may be multiple |
|
* extend blocks in the same scope, each of which will have the same path. |
|
* - A location's span is not always a subset of its parent's span. For |
|
* example, the "extendee" of an extension declaration appears at the |
|
* beginning of the "extend" block and is shared by all extensions within |
|
* the block. |
|
* - Just because a location's span is a subset of some other location's span |
|
* does not mean that it is a descendant. For example, a "group" defines |
|
* both a type and a field in a single declaration. Thus, the locations |
|
* corresponding to the type and field and their components will overlap. |
|
* - Code which tries to interpret locations should probably be designed to |
|
* ignore those that it doesn't understand, as more types of locations could |
|
* be recorded in the future. |
|
* |
|
* Generated from protobuf field <code>repeated .google.protobuf.SourceCodeInfo.Location location = 1;</code> |
|
*/ |
|
private $location; |
|
|
|
/** |
|
* Constructor. |
|
* |
|
* @param array $data { |
|
* Optional. Data for populating the Message object. |
|
* |
|
* @type array<\Google\Protobuf\Internal\SourceCodeInfo\Location>|\Google\Protobuf\Internal\RepeatedField $location |
|
* A Location identifies a piece of source code in a .proto file which |
|
* corresponds to a particular definition. This information is intended |
|
* to be useful to IDEs, code indexers, documentation generators, and similar |
|
* tools. |
|
* For example, say we have a file like: |
|
* message Foo { |
|
* optional string foo = 1; |
|
* } |
|
* Let's look at just the field definition: |
|
* optional string foo = 1; |
|
* ^ ^^ ^^ ^ ^^^ |
|
* a bc de f ghi |
|
* We have the following locations: |
|
* span path represents |
|
* [a,i) [ 4, 0, 2, 0 ] The whole field definition. |
|
* [a,b) [ 4, 0, 2, 0, 4 ] The label (optional). |
|
* [c,d) [ 4, 0, 2, 0, 5 ] The type (string). |
|
* [e,f) [ 4, 0, 2, 0, 1 ] The name (foo). |
|
* [g,h) [ 4, 0, 2, 0, 3 ] The number (1). |
|
* Notes: |
|
* - A location may refer to a repeated field itself (i.e. not to any |
|
* particular index within it). This is used whenever a set of elements are |
|
* logically enclosed in a single code segment. For example, an entire |
|
* extend block (possibly containing multiple extension definitions) will |
|
* have an outer location whose path refers to the "extensions" repeated |
|
* field without an index. |
|
* - Multiple locations may have the same path. This happens when a single |
|
* logical declaration is spread out across multiple places. The most |
|
* obvious example is the "extend" block again -- there may be multiple |
|
* extend blocks in the same scope, each of which will have the same path. |
|
* - A location's span is not always a subset of its parent's span. For |
|
* example, the "extendee" of an extension declaration appears at the |
|
* beginning of the "extend" block and is shared by all extensions within |
|
* the block. |
|
* - Just because a location's span is a subset of some other location's span |
|
* does not mean that it is a descendant. For example, a "group" defines |
|
* both a type and a field in a single declaration. Thus, the locations |
|
* corresponding to the type and field and their components will overlap. |
|
* - Code which tries to interpret locations should probably be designed to |
|
* ignore those that it doesn't understand, as more types of locations could |
|
* be recorded in the future. |
|
* } |
|
*/ |
|
public function __construct($data = NULL) { |
|
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce(); |
|
parent::__construct($data); |
|
} |
|
|
|
/** |
|
* A Location identifies a piece of source code in a .proto file which |
|
* corresponds to a particular definition. This information is intended |
|
* to be useful to IDEs, code indexers, documentation generators, and similar |
|
* tools. |
|
* For example, say we have a file like: |
|
* message Foo { |
|
* optional string foo = 1; |
|
* } |
|
* Let's look at just the field definition: |
|
* optional string foo = 1; |
|
* ^ ^^ ^^ ^ ^^^ |
|
* a bc de f ghi |
|
* We have the following locations: |
|
* span path represents |
|
* [a,i) [ 4, 0, 2, 0 ] The whole field definition. |
|
* [a,b) [ 4, 0, 2, 0, 4 ] The label (optional). |
|
* [c,d) [ 4, 0, 2, 0, 5 ] The type (string). |
|
* [e,f) [ 4, 0, 2, 0, 1 ] The name (foo). |
|
* [g,h) [ 4, 0, 2, 0, 3 ] The number (1). |
|
* Notes: |
|
* - A location may refer to a repeated field itself (i.e. not to any |
|
* particular index within it). This is used whenever a set of elements are |
|
* logically enclosed in a single code segment. For example, an entire |
|
* extend block (possibly containing multiple extension definitions) will |
|
* have an outer location whose path refers to the "extensions" repeated |
|
* field without an index. |
|
* - Multiple locations may have the same path. This happens when a single |
|
* logical declaration is spread out across multiple places. The most |
|
* obvious example is the "extend" block again -- there may be multiple |
|
* extend blocks in the same scope, each of which will have the same path. |
|
* - A location's span is not always a subset of its parent's span. For |
|
* example, the "extendee" of an extension declaration appears at the |
|
* beginning of the "extend" block and is shared by all extensions within |
|
* the block. |
|
* - Just because a location's span is a subset of some other location's span |
|
* does not mean that it is a descendant. For example, a "group" defines |
|
* both a type and a field in a single declaration. Thus, the locations |
|
* corresponding to the type and field and their components will overlap. |
|
* - Code which tries to interpret locations should probably be designed to |
|
* ignore those that it doesn't understand, as more types of locations could |
|
* be recorded in the future. |
|
* |
|
* Generated from protobuf field <code>repeated .google.protobuf.SourceCodeInfo.Location location = 1;</code> |
|
* @return \Google\Protobuf\Internal\RepeatedField |
|
*/ |
|
public function getLocation() |
|
{ |
|
return $this->location; |
|
} |
|
|
|
/** |
|
* A Location identifies a piece of source code in a .proto file which |
|
* corresponds to a particular definition. This information is intended |
|
* to be useful to IDEs, code indexers, documentation generators, and similar |
|
* tools. |
|
* For example, say we have a file like: |
|
* message Foo { |
|
* optional string foo = 1; |
|
* } |
|
* Let's look at just the field definition: |
|
* optional string foo = 1; |
|
* ^ ^^ ^^ ^ ^^^ |
|
* a bc de f ghi |
|
* We have the following locations: |
|
* span path represents |
|
* [a,i) [ 4, 0, 2, 0 ] The whole field definition. |
|
* [a,b) [ 4, 0, 2, 0, 4 ] The label (optional). |
|
* [c,d) [ 4, 0, 2, 0, 5 ] The type (string). |
|
* [e,f) [ 4, 0, 2, 0, 1 ] The name (foo). |
|
* [g,h) [ 4, 0, 2, 0, 3 ] The number (1). |
|
* Notes: |
|
* - A location may refer to a repeated field itself (i.e. not to any |
|
* particular index within it). This is used whenever a set of elements are |
|
* logically enclosed in a single code segment. For example, an entire |
|
* extend block (possibly containing multiple extension definitions) will |
|
* have an outer location whose path refers to the "extensions" repeated |
|
* field without an index. |
|
* - Multiple locations may have the same path. This happens when a single |
|
* logical declaration is spread out across multiple places. The most |
|
* obvious example is the "extend" block again -- there may be multiple |
|
* extend blocks in the same scope, each of which will have the same path. |
|
* - A location's span is not always a subset of its parent's span. For |
|
* example, the "extendee" of an extension declaration appears at the |
|
* beginning of the "extend" block and is shared by all extensions within |
|
* the block. |
|
* - Just because a location's span is a subset of some other location's span |
|
* does not mean that it is a descendant. For example, a "group" defines |
|
* both a type and a field in a single declaration. Thus, the locations |
|
* corresponding to the type and field and their components will overlap. |
|
* - Code which tries to interpret locations should probably be designed to |
|
* ignore those that it doesn't understand, as more types of locations could |
|
* be recorded in the future. |
|
* |
|
* Generated from protobuf field <code>repeated .google.protobuf.SourceCodeInfo.Location location = 1;</code> |
|
* @param array<\Google\Protobuf\Internal\SourceCodeInfo\Location>|\Google\Protobuf\Internal\RepeatedField $var |
|
* @return $this |
|
*/ |
|
public function setLocation($var) |
|
{ |
|
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\SourceCodeInfo\Location::class); |
|
$this->location = $arr; |
|
|
|
return $this; |
|
} |
|
|
|
} |
|
|
|
|