| Current Path : /var/www/homesaver/www/bitrix/modules/pull/vendor/Google/Protobuf/ |
| Current File : /var/www/homesaver/www/bitrix/modules/pull/vendor/Google/Protobuf/EnumDescriptorProto.php |
<?php
/**
* Generated by Protobuf protoc plugin.
*
* File descriptor : descriptor.proto
*/
namespace google\protobuf;
/**
* Protobuf message : google.protobuf.EnumDescriptorProto
*/
class EnumDescriptorProto extends \Protobuf\AbstractMessage
{
/**
* @var \Protobuf\UnknownFieldSet
*/
protected $unknownFieldSet = null;
/**
* @var \Protobuf\Extension\ExtensionFieldMap
*/
protected $extensions = null;
/**
* name optional string = 1
*
* @var string
*/
protected $name = null;
/**
* value repeated message = 2
*
* @var \Protobuf\Collection<\google\protobuf\EnumValueDescriptorProto>
*/
protected $value = null;
/**
* options optional message = 3
*
* @var \google\protobuf\EnumOptions
*/
protected $options = null;
/**
* Check if 'name' has a value
*
* @return bool
*/
public function hasName()
{
return $this->name !== null;
}
/**
* Get 'name' value
*
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Set 'name' value
*
* @param string $value
*/
public function setName($value = null)
{
$this->name = $value;
}
/**
* Check if 'value' has a value
*
* @return bool
*/
public function hasValueList()
{
return $this->value !== null;
}
/**
* Get 'value' value
*
* @return \Protobuf\Collection<\google\protobuf\EnumValueDescriptorProto>
*/
public function getValueList()
{
return $this->value;
}
/**
* Set 'value' value
*
* @param \Protobuf\Collection<\google\protobuf\EnumValueDescriptorProto> $value
*/
public function setValueList(\Protobuf\Collection $value = null)
{
$this->value = $value;
}
/**
* Add a new element to 'value'
*
* @param \google\protobuf\EnumValueDescriptorProto $value
*/
public function addValue(\google\protobuf\EnumValueDescriptorProto $value)
{
if ($this->value === null) {
$this->value = new \Protobuf\MessageCollection();
}
$this->value->add($value);
}
/**
* Check if 'options' has a value
*
* @return bool
*/
public function hasOptions()
{
return $this->options !== null;
}
/**
* Get 'options' value
*
* @return \google\protobuf\EnumOptions
*/
public function getOptions()
{
return $this->options;
}
/**
* Set 'options' value
*
* @param \google\protobuf\EnumOptions $value
*/
public function setOptions(\google\protobuf\EnumOptions $value = null)
{
$this->options = $value;
}
/**
* {@inheritdoc}
*/
public function extensions()
{
if ( $this->extensions !== null) {
return $this->extensions;
}
return $this->extensions = new \Protobuf\Extension\ExtensionFieldMap(__CLASS__);
}
/**
* {@inheritdoc}
*/
public function unknownFieldSet()
{
return $this->unknownFieldSet;
}
/**
* {@inheritdoc}
*/
public static function fromStream($stream, \Protobuf\Configuration $configuration = null)
{
return new self($stream, $configuration);
}
/**
* {@inheritdoc}
*/
public static function fromArray(array $values)
{
$message = new self();
$values = array_merge([
'name' => null,
'value' => [],
'options' => null
], $values);
$message->setName($values['name']);
$message->setOptions($values['options']);
foreach ($values['value'] as $item) {
$message->addValue($item);
}
return $message;
}
/**
* {@inheritdoc}
*/
public static function descriptor()
{
return \google\protobuf\DescriptorProto::fromArray([
'name' => 'EnumDescriptorProto',
'field' => [
\google\protobuf\FieldDescriptorProto::fromArray([
'number' => 1,
'name' => 'name',
'type' => \google\protobuf\FieldDescriptorProto\Type::TYPE_STRING(),
'label' => \google\protobuf\FieldDescriptorProto\Label::LABEL_OPTIONAL()
]),
\google\protobuf\FieldDescriptorProto::fromArray([
'number' => 2,
'name' => 'value',
'type' => \google\protobuf\FieldDescriptorProto\Type::TYPE_MESSAGE(),
'label' => \google\protobuf\FieldDescriptorProto\Label::LABEL_REPEATED(),
'type_name' => '.google.protobuf.EnumValueDescriptorProto'
]),
\google\protobuf\FieldDescriptorProto::fromArray([
'number' => 3,
'name' => 'options',
'type' => \google\protobuf\FieldDescriptorProto\Type::TYPE_MESSAGE(),
'label' => \google\protobuf\FieldDescriptorProto\Label::LABEL_OPTIONAL(),
'type_name' => '.google.protobuf.EnumOptions'
]),
],
]);
}
/**
* {@inheritdoc}
*/
public function toStream(\Protobuf\Configuration $configuration = null)
{
$config = $configuration ?: \Protobuf\Configuration::getInstance();
$context = $config->createWriteContext();
$stream = $context->getStream();
$this->writeTo($context);
$stream->seek(0);
return $stream;
}
/**
* {@inheritdoc}
*/
public function writeTo(\Protobuf\WriteContext $context)
{
$stream = $context->getStream();
$writer = $context->getWriter();
$sizeContext = $context->getComputeSizeContext();
if ($this->name !== null) {
$writer->writeVarint($stream, 10);
$writer->writeString($stream, $this->name);
}
if ($this->value !== null) {
foreach ($this->value as $val) {
$writer->writeVarint($stream, 18);
$writer->writeVarint($stream, $val->serializedSize($sizeContext));
$val->writeTo($context);
}
}
if ($this->options !== null) {
$writer->writeVarint($stream, 26);
$writer->writeVarint($stream, $this->options->serializedSize($sizeContext));
$this->options->writeTo($context);
}
if ($this->extensions !== null) {
$this->extensions->writeTo($context);
}
return $stream;
}
/**
* {@inheritdoc}
*/
public function readFrom(\Protobuf\ReadContext $context)
{
$reader = $context->getReader();
$length = $context->getLength();
$stream = $context->getStream();
$limit = ($length !== null)
? ($stream->tell() + $length)
: null;
while ($limit === null || $stream->tell() < $limit) {
if ($stream->eof()) {
break;
}
$key = $reader->readVarint($stream);
$wire = \Protobuf\WireFormat::getTagWireType($key);
$tag = \Protobuf\WireFormat::getTagFieldNumber($key);
if ($stream->eof()) {
break;
}
if ($tag === 1) {
\Protobuf\WireFormat::assertWireType($wire, 9);
$this->name = $reader->readString($stream);
continue;
}
if ($tag === 2) {
\Protobuf\WireFormat::assertWireType($wire, 11);
$innerSize = $reader->readVarint($stream);
$innerMessage = new \google\protobuf\EnumValueDescriptorProto();
if ($this->value === null) {
$this->value = new \Protobuf\MessageCollection();
}
$this->value->add($innerMessage);
$context->setLength($innerSize);
$innerMessage->readFrom($context);
$context->setLength($length);
continue;
}
if ($tag === 3) {
\Protobuf\WireFormat::assertWireType($wire, 11);
$innerSize = $reader->readVarint($stream);
$innerMessage = new \google\protobuf\EnumOptions();
$this->options = $innerMessage;
$context->setLength($innerSize);
$innerMessage->readFrom($context);
$context->setLength($length);
continue;
}
$extensions = $context->getExtensionRegistry();
$extension = $extensions ? $extensions->findByNumber(__CLASS__, $tag) : null;
if ($extension !== null) {
$this->extensions()->add($extension, $extension->readFrom($context, $wire));
continue;
}
if ($this->unknownFieldSet === null) {
$this->unknownFieldSet = new \Protobuf\UnknownFieldSet();
}
$data = $reader->readUnknown($stream, $wire);
$unknown = new \Protobuf\Unknown($tag, $wire, $data);
$this->unknownFieldSet->add($unknown);
}
}
/**
* {@inheritdoc}
*/
public function serializedSize(\Protobuf\ComputeSizeContext $context)
{
$calculator = $context->getSizeCalculator();
$size = 0;
if ($this->name !== null) {
$size += 1;
$size += $calculator->computeStringSize($this->name);
}
if ($this->value !== null) {
foreach ($this->value as $val) {
$innerSize = $val->serializedSize($context);
$size += 1;
$size += $innerSize;
$size += $calculator->computeVarintSize($innerSize);
}
}
if ($this->options !== null) {
$innerSize = $this->options->serializedSize($context);
$size += 1;
$size += $innerSize;
$size += $calculator->computeVarintSize($innerSize);
}
if ($this->extensions !== null) {
$size += $this->extensions->serializedSize($context);
}
return $size;
}
/**
* {@inheritdoc}
*/
public function clear()
{
$this->name = null;
$this->value = null;
$this->options = null;
}
/**
* {@inheritdoc}
*/
public function merge(\Protobuf\Message $message)
{
if ( ! $message instanceof \google\protobuf\EnumDescriptorProto) {
throw new \InvalidArgumentException(sprintf('Argument 1 passed to %s must be a %s, %s given', __METHOD__, __CLASS__, get_class($message)));
}
$this->name = ($message->name !== null) ? $message->name : $this->name;
$this->value = ($message->value !== null) ? $message->value : $this->value;
$this->options = ($message->options !== null) ? $message->options : $this->options;
}
}