1ffe3c632Sopenharmony_ci<?php 2ffe3c632Sopenharmony_ci# Generated by the protocol buffer compiler. DO NOT EDIT! 3ffe3c632Sopenharmony_ci# source: google/protobuf/descriptor.proto 4ffe3c632Sopenharmony_ci 5ffe3c632Sopenharmony_cinamespace Google\Protobuf\Internal\SourceCodeInfo; 6ffe3c632Sopenharmony_ci 7ffe3c632Sopenharmony_ciuse Google\Protobuf\Internal\GPBType; 8ffe3c632Sopenharmony_ciuse Google\Protobuf\Internal\GPBWire; 9ffe3c632Sopenharmony_ciuse Google\Protobuf\Internal\RepeatedField; 10ffe3c632Sopenharmony_ciuse Google\Protobuf\Internal\InputStream; 11ffe3c632Sopenharmony_ciuse Google\Protobuf\Internal\GPBUtil; 12ffe3c632Sopenharmony_ci 13ffe3c632Sopenharmony_ci/** 14ffe3c632Sopenharmony_ci * Generated from protobuf message <code>google.protobuf.SourceCodeInfo.Location</code> 15ffe3c632Sopenharmony_ci */ 16ffe3c632Sopenharmony_ciclass Location extends \Google\Protobuf\Internal\Message 17ffe3c632Sopenharmony_ci{ 18ffe3c632Sopenharmony_ci /** 19ffe3c632Sopenharmony_ci * Identifies which part of the FileDescriptorProto was defined at this 20ffe3c632Sopenharmony_ci * location. 21ffe3c632Sopenharmony_ci * Each element is a field number or an index. They form a path from 22ffe3c632Sopenharmony_ci * the root FileDescriptorProto to the place where the definition. For 23ffe3c632Sopenharmony_ci * example, this path: 24ffe3c632Sopenharmony_ci * [ 4, 3, 2, 7, 1 ] 25ffe3c632Sopenharmony_ci * refers to: 26ffe3c632Sopenharmony_ci * file.message_type(3) // 4, 3 27ffe3c632Sopenharmony_ci * .field(7) // 2, 7 28ffe3c632Sopenharmony_ci * .name() // 1 29ffe3c632Sopenharmony_ci * This is because FileDescriptorProto.message_type has field number 4: 30ffe3c632Sopenharmony_ci * repeated DescriptorProto message_type = 4; 31ffe3c632Sopenharmony_ci * and DescriptorProto.field has field number 2: 32ffe3c632Sopenharmony_ci * repeated FieldDescriptorProto field = 2; 33ffe3c632Sopenharmony_ci * and FieldDescriptorProto.name has field number 1: 34ffe3c632Sopenharmony_ci * optional string name = 1; 35ffe3c632Sopenharmony_ci * Thus, the above path gives the location of a field name. If we removed 36ffe3c632Sopenharmony_ci * the last element: 37ffe3c632Sopenharmony_ci * [ 4, 3, 2, 7 ] 38ffe3c632Sopenharmony_ci * this path refers to the whole field declaration (from the beginning 39ffe3c632Sopenharmony_ci * of the label to the terminating semicolon). 40ffe3c632Sopenharmony_ci * 41ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated int32 path = 1 [packed = true];</code> 42ffe3c632Sopenharmony_ci */ 43ffe3c632Sopenharmony_ci private $path; 44ffe3c632Sopenharmony_ci /** 45ffe3c632Sopenharmony_ci * Always has exactly three or four elements: start line, start column, 46ffe3c632Sopenharmony_ci * end line (optional, otherwise assumed same as start line), end column. 47ffe3c632Sopenharmony_ci * These are packed into a single field for efficiency. Note that line 48ffe3c632Sopenharmony_ci * and column numbers are zero-based -- typically you will want to add 49ffe3c632Sopenharmony_ci * 1 to each before displaying to a user. 50ffe3c632Sopenharmony_ci * 51ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated int32 span = 2 [packed = true];</code> 52ffe3c632Sopenharmony_ci */ 53ffe3c632Sopenharmony_ci private $span; 54ffe3c632Sopenharmony_ci /** 55ffe3c632Sopenharmony_ci * If this SourceCodeInfo represents a complete declaration, these are any 56ffe3c632Sopenharmony_ci * comments appearing before and after the declaration which appear to be 57ffe3c632Sopenharmony_ci * attached to the declaration. 58ffe3c632Sopenharmony_ci * A series of line comments appearing on consecutive lines, with no other 59ffe3c632Sopenharmony_ci * tokens appearing on those lines, will be treated as a single comment. 60ffe3c632Sopenharmony_ci * leading_detached_comments will keep paragraphs of comments that appear 61ffe3c632Sopenharmony_ci * before (but not connected to) the current element. Each paragraph, 62ffe3c632Sopenharmony_ci * separated by empty lines, will be one comment element in the repeated 63ffe3c632Sopenharmony_ci * field. 64ffe3c632Sopenharmony_ci * Only the comment content is provided; comment markers (e.g. //) are 65ffe3c632Sopenharmony_ci * stripped out. For block comments, leading whitespace and an asterisk 66ffe3c632Sopenharmony_ci * will be stripped from the beginning of each line other than the first. 67ffe3c632Sopenharmony_ci * Newlines are included in the output. 68ffe3c632Sopenharmony_ci * Examples: 69ffe3c632Sopenharmony_ci * optional int32 foo = 1; // Comment attached to foo. 70ffe3c632Sopenharmony_ci * // Comment attached to bar. 71ffe3c632Sopenharmony_ci * optional int32 bar = 2; 72ffe3c632Sopenharmony_ci * optional string baz = 3; 73ffe3c632Sopenharmony_ci * // Comment attached to baz. 74ffe3c632Sopenharmony_ci * // Another line attached to baz. 75ffe3c632Sopenharmony_ci * // Comment attached to qux. 76ffe3c632Sopenharmony_ci * // 77ffe3c632Sopenharmony_ci * // Another line attached to qux. 78ffe3c632Sopenharmony_ci * optional double qux = 4; 79ffe3c632Sopenharmony_ci * // Detached comment for corge. This is not leading or trailing comments 80ffe3c632Sopenharmony_ci * // to qux or corge because there are blank lines separating it from 81ffe3c632Sopenharmony_ci * // both. 82ffe3c632Sopenharmony_ci * // Detached comment for corge paragraph 2. 83ffe3c632Sopenharmony_ci * optional string corge = 5; 84ffe3c632Sopenharmony_ci * /* Block comment attached 85ffe3c632Sopenharmony_ci * * to corge. Leading asterisks 86ffe3c632Sopenharmony_ci * * will be removed. */ 87ffe3c632Sopenharmony_ci * /* Block comment attached to 88ffe3c632Sopenharmony_ci * * grault. */ 89ffe3c632Sopenharmony_ci * optional int32 grault = 6; 90ffe3c632Sopenharmony_ci * // ignored detached comments. 91ffe3c632Sopenharmony_ci * 92ffe3c632Sopenharmony_ci * Generated from protobuf field <code>optional string leading_comments = 3;</code> 93ffe3c632Sopenharmony_ci */ 94ffe3c632Sopenharmony_ci protected $leading_comments = null; 95ffe3c632Sopenharmony_ci /** 96ffe3c632Sopenharmony_ci * Generated from protobuf field <code>optional string trailing_comments = 4;</code> 97ffe3c632Sopenharmony_ci */ 98ffe3c632Sopenharmony_ci protected $trailing_comments = null; 99ffe3c632Sopenharmony_ci /** 100ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated string leading_detached_comments = 6;</code> 101ffe3c632Sopenharmony_ci */ 102ffe3c632Sopenharmony_ci private $leading_detached_comments; 103ffe3c632Sopenharmony_ci 104ffe3c632Sopenharmony_ci /** 105ffe3c632Sopenharmony_ci * Constructor. 106ffe3c632Sopenharmony_ci * 107ffe3c632Sopenharmony_ci * @param array $data { 108ffe3c632Sopenharmony_ci * Optional. Data for populating the Message object. 109ffe3c632Sopenharmony_ci * 110ffe3c632Sopenharmony_ci * @type int[]|\Google\Protobuf\Internal\RepeatedField $path 111ffe3c632Sopenharmony_ci * Identifies which part of the FileDescriptorProto was defined at this 112ffe3c632Sopenharmony_ci * location. 113ffe3c632Sopenharmony_ci * Each element is a field number or an index. They form a path from 114ffe3c632Sopenharmony_ci * the root FileDescriptorProto to the place where the definition. For 115ffe3c632Sopenharmony_ci * example, this path: 116ffe3c632Sopenharmony_ci * [ 4, 3, 2, 7, 1 ] 117ffe3c632Sopenharmony_ci * refers to: 118ffe3c632Sopenharmony_ci * file.message_type(3) // 4, 3 119ffe3c632Sopenharmony_ci * .field(7) // 2, 7 120ffe3c632Sopenharmony_ci * .name() // 1 121ffe3c632Sopenharmony_ci * This is because FileDescriptorProto.message_type has field number 4: 122ffe3c632Sopenharmony_ci * repeated DescriptorProto message_type = 4; 123ffe3c632Sopenharmony_ci * and DescriptorProto.field has field number 2: 124ffe3c632Sopenharmony_ci * repeated FieldDescriptorProto field = 2; 125ffe3c632Sopenharmony_ci * and FieldDescriptorProto.name has field number 1: 126ffe3c632Sopenharmony_ci * optional string name = 1; 127ffe3c632Sopenharmony_ci * Thus, the above path gives the location of a field name. If we removed 128ffe3c632Sopenharmony_ci * the last element: 129ffe3c632Sopenharmony_ci * [ 4, 3, 2, 7 ] 130ffe3c632Sopenharmony_ci * this path refers to the whole field declaration (from the beginning 131ffe3c632Sopenharmony_ci * of the label to the terminating semicolon). 132ffe3c632Sopenharmony_ci * @type int[]|\Google\Protobuf\Internal\RepeatedField $span 133ffe3c632Sopenharmony_ci * Always has exactly three or four elements: start line, start column, 134ffe3c632Sopenharmony_ci * end line (optional, otherwise assumed same as start line), end column. 135ffe3c632Sopenharmony_ci * These are packed into a single field for efficiency. Note that line 136ffe3c632Sopenharmony_ci * and column numbers are zero-based -- typically you will want to add 137ffe3c632Sopenharmony_ci * 1 to each before displaying to a user. 138ffe3c632Sopenharmony_ci * @type string $leading_comments 139ffe3c632Sopenharmony_ci * If this SourceCodeInfo represents a complete declaration, these are any 140ffe3c632Sopenharmony_ci * comments appearing before and after the declaration which appear to be 141ffe3c632Sopenharmony_ci * attached to the declaration. 142ffe3c632Sopenharmony_ci * A series of line comments appearing on consecutive lines, with no other 143ffe3c632Sopenharmony_ci * tokens appearing on those lines, will be treated as a single comment. 144ffe3c632Sopenharmony_ci * leading_detached_comments will keep paragraphs of comments that appear 145ffe3c632Sopenharmony_ci * before (but not connected to) the current element. Each paragraph, 146ffe3c632Sopenharmony_ci * separated by empty lines, will be one comment element in the repeated 147ffe3c632Sopenharmony_ci * field. 148ffe3c632Sopenharmony_ci * Only the comment content is provided; comment markers (e.g. //) are 149ffe3c632Sopenharmony_ci * stripped out. For block comments, leading whitespace and an asterisk 150ffe3c632Sopenharmony_ci * will be stripped from the beginning of each line other than the first. 151ffe3c632Sopenharmony_ci * Newlines are included in the output. 152ffe3c632Sopenharmony_ci * Examples: 153ffe3c632Sopenharmony_ci * optional int32 foo = 1; // Comment attached to foo. 154ffe3c632Sopenharmony_ci * // Comment attached to bar. 155ffe3c632Sopenharmony_ci * optional int32 bar = 2; 156ffe3c632Sopenharmony_ci * optional string baz = 3; 157ffe3c632Sopenharmony_ci * // Comment attached to baz. 158ffe3c632Sopenharmony_ci * // Another line attached to baz. 159ffe3c632Sopenharmony_ci * // Comment attached to qux. 160ffe3c632Sopenharmony_ci * // 161ffe3c632Sopenharmony_ci * // Another line attached to qux. 162ffe3c632Sopenharmony_ci * optional double qux = 4; 163ffe3c632Sopenharmony_ci * // Detached comment for corge. This is not leading or trailing comments 164ffe3c632Sopenharmony_ci * // to qux or corge because there are blank lines separating it from 165ffe3c632Sopenharmony_ci * // both. 166ffe3c632Sopenharmony_ci * // Detached comment for corge paragraph 2. 167ffe3c632Sopenharmony_ci * optional string corge = 5; 168ffe3c632Sopenharmony_ci * /* Block comment attached 169ffe3c632Sopenharmony_ci * * to corge. Leading asterisks 170ffe3c632Sopenharmony_ci * * will be removed. */ 171ffe3c632Sopenharmony_ci * /* Block comment attached to 172ffe3c632Sopenharmony_ci * * grault. */ 173ffe3c632Sopenharmony_ci * optional int32 grault = 6; 174ffe3c632Sopenharmony_ci * // ignored detached comments. 175ffe3c632Sopenharmony_ci * @type string $trailing_comments 176ffe3c632Sopenharmony_ci * @type string[]|\Google\Protobuf\Internal\RepeatedField $leading_detached_comments 177ffe3c632Sopenharmony_ci * } 178ffe3c632Sopenharmony_ci */ 179ffe3c632Sopenharmony_ci public function __construct($data = NULL) { 180ffe3c632Sopenharmony_ci \GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce(); 181ffe3c632Sopenharmony_ci parent::__construct($data); 182ffe3c632Sopenharmony_ci } 183ffe3c632Sopenharmony_ci 184ffe3c632Sopenharmony_ci /** 185ffe3c632Sopenharmony_ci * Identifies which part of the FileDescriptorProto was defined at this 186ffe3c632Sopenharmony_ci * location. 187ffe3c632Sopenharmony_ci * Each element is a field number or an index. They form a path from 188ffe3c632Sopenharmony_ci * the root FileDescriptorProto to the place where the definition. For 189ffe3c632Sopenharmony_ci * example, this path: 190ffe3c632Sopenharmony_ci * [ 4, 3, 2, 7, 1 ] 191ffe3c632Sopenharmony_ci * refers to: 192ffe3c632Sopenharmony_ci * file.message_type(3) // 4, 3 193ffe3c632Sopenharmony_ci * .field(7) // 2, 7 194ffe3c632Sopenharmony_ci * .name() // 1 195ffe3c632Sopenharmony_ci * This is because FileDescriptorProto.message_type has field number 4: 196ffe3c632Sopenharmony_ci * repeated DescriptorProto message_type = 4; 197ffe3c632Sopenharmony_ci * and DescriptorProto.field has field number 2: 198ffe3c632Sopenharmony_ci * repeated FieldDescriptorProto field = 2; 199ffe3c632Sopenharmony_ci * and FieldDescriptorProto.name has field number 1: 200ffe3c632Sopenharmony_ci * optional string name = 1; 201ffe3c632Sopenharmony_ci * Thus, the above path gives the location of a field name. If we removed 202ffe3c632Sopenharmony_ci * the last element: 203ffe3c632Sopenharmony_ci * [ 4, 3, 2, 7 ] 204ffe3c632Sopenharmony_ci * this path refers to the whole field declaration (from the beginning 205ffe3c632Sopenharmony_ci * of the label to the terminating semicolon). 206ffe3c632Sopenharmony_ci * 207ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated int32 path = 1 [packed = true];</code> 208ffe3c632Sopenharmony_ci * @return \Google\Protobuf\Internal\RepeatedField 209ffe3c632Sopenharmony_ci */ 210ffe3c632Sopenharmony_ci public function getPath() 211ffe3c632Sopenharmony_ci { 212ffe3c632Sopenharmony_ci return $this->path; 213ffe3c632Sopenharmony_ci } 214ffe3c632Sopenharmony_ci 215ffe3c632Sopenharmony_ci /** 216ffe3c632Sopenharmony_ci * Identifies which part of the FileDescriptorProto was defined at this 217ffe3c632Sopenharmony_ci * location. 218ffe3c632Sopenharmony_ci * Each element is a field number or an index. They form a path from 219ffe3c632Sopenharmony_ci * the root FileDescriptorProto to the place where the definition. For 220ffe3c632Sopenharmony_ci * example, this path: 221ffe3c632Sopenharmony_ci * [ 4, 3, 2, 7, 1 ] 222ffe3c632Sopenharmony_ci * refers to: 223ffe3c632Sopenharmony_ci * file.message_type(3) // 4, 3 224ffe3c632Sopenharmony_ci * .field(7) // 2, 7 225ffe3c632Sopenharmony_ci * .name() // 1 226ffe3c632Sopenharmony_ci * This is because FileDescriptorProto.message_type has field number 4: 227ffe3c632Sopenharmony_ci * repeated DescriptorProto message_type = 4; 228ffe3c632Sopenharmony_ci * and DescriptorProto.field has field number 2: 229ffe3c632Sopenharmony_ci * repeated FieldDescriptorProto field = 2; 230ffe3c632Sopenharmony_ci * and FieldDescriptorProto.name has field number 1: 231ffe3c632Sopenharmony_ci * optional string name = 1; 232ffe3c632Sopenharmony_ci * Thus, the above path gives the location of a field name. If we removed 233ffe3c632Sopenharmony_ci * the last element: 234ffe3c632Sopenharmony_ci * [ 4, 3, 2, 7 ] 235ffe3c632Sopenharmony_ci * this path refers to the whole field declaration (from the beginning 236ffe3c632Sopenharmony_ci * of the label to the terminating semicolon). 237ffe3c632Sopenharmony_ci * 238ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated int32 path = 1 [packed = true];</code> 239ffe3c632Sopenharmony_ci * @param int[]|\Google\Protobuf\Internal\RepeatedField $var 240ffe3c632Sopenharmony_ci * @return $this 241ffe3c632Sopenharmony_ci */ 242ffe3c632Sopenharmony_ci public function setPath($var) 243ffe3c632Sopenharmony_ci { 244ffe3c632Sopenharmony_ci $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::INT32); 245ffe3c632Sopenharmony_ci $this->path = $arr; 246ffe3c632Sopenharmony_ci 247ffe3c632Sopenharmony_ci return $this; 248ffe3c632Sopenharmony_ci } 249ffe3c632Sopenharmony_ci 250ffe3c632Sopenharmony_ci /** 251ffe3c632Sopenharmony_ci * Always has exactly three or four elements: start line, start column, 252ffe3c632Sopenharmony_ci * end line (optional, otherwise assumed same as start line), end column. 253ffe3c632Sopenharmony_ci * These are packed into a single field for efficiency. Note that line 254ffe3c632Sopenharmony_ci * and column numbers are zero-based -- typically you will want to add 255ffe3c632Sopenharmony_ci * 1 to each before displaying to a user. 256ffe3c632Sopenharmony_ci * 257ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated int32 span = 2 [packed = true];</code> 258ffe3c632Sopenharmony_ci * @return \Google\Protobuf\Internal\RepeatedField 259ffe3c632Sopenharmony_ci */ 260ffe3c632Sopenharmony_ci public function getSpan() 261ffe3c632Sopenharmony_ci { 262ffe3c632Sopenharmony_ci return $this->span; 263ffe3c632Sopenharmony_ci } 264ffe3c632Sopenharmony_ci 265ffe3c632Sopenharmony_ci /** 266ffe3c632Sopenharmony_ci * Always has exactly three or four elements: start line, start column, 267ffe3c632Sopenharmony_ci * end line (optional, otherwise assumed same as start line), end column. 268ffe3c632Sopenharmony_ci * These are packed into a single field for efficiency. Note that line 269ffe3c632Sopenharmony_ci * and column numbers are zero-based -- typically you will want to add 270ffe3c632Sopenharmony_ci * 1 to each before displaying to a user. 271ffe3c632Sopenharmony_ci * 272ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated int32 span = 2 [packed = true];</code> 273ffe3c632Sopenharmony_ci * @param int[]|\Google\Protobuf\Internal\RepeatedField $var 274ffe3c632Sopenharmony_ci * @return $this 275ffe3c632Sopenharmony_ci */ 276ffe3c632Sopenharmony_ci public function setSpan($var) 277ffe3c632Sopenharmony_ci { 278ffe3c632Sopenharmony_ci $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::INT32); 279ffe3c632Sopenharmony_ci $this->span = $arr; 280ffe3c632Sopenharmony_ci 281ffe3c632Sopenharmony_ci return $this; 282ffe3c632Sopenharmony_ci } 283ffe3c632Sopenharmony_ci 284ffe3c632Sopenharmony_ci /** 285ffe3c632Sopenharmony_ci * If this SourceCodeInfo represents a complete declaration, these are any 286ffe3c632Sopenharmony_ci * comments appearing before and after the declaration which appear to be 287ffe3c632Sopenharmony_ci * attached to the declaration. 288ffe3c632Sopenharmony_ci * A series of line comments appearing on consecutive lines, with no other 289ffe3c632Sopenharmony_ci * tokens appearing on those lines, will be treated as a single comment. 290ffe3c632Sopenharmony_ci * leading_detached_comments will keep paragraphs of comments that appear 291ffe3c632Sopenharmony_ci * before (but not connected to) the current element. Each paragraph, 292ffe3c632Sopenharmony_ci * separated by empty lines, will be one comment element in the repeated 293ffe3c632Sopenharmony_ci * field. 294ffe3c632Sopenharmony_ci * Only the comment content is provided; comment markers (e.g. //) are 295ffe3c632Sopenharmony_ci * stripped out. For block comments, leading whitespace and an asterisk 296ffe3c632Sopenharmony_ci * will be stripped from the beginning of each line other than the first. 297ffe3c632Sopenharmony_ci * Newlines are included in the output. 298ffe3c632Sopenharmony_ci * Examples: 299ffe3c632Sopenharmony_ci * optional int32 foo = 1; // Comment attached to foo. 300ffe3c632Sopenharmony_ci * // Comment attached to bar. 301ffe3c632Sopenharmony_ci * optional int32 bar = 2; 302ffe3c632Sopenharmony_ci * optional string baz = 3; 303ffe3c632Sopenharmony_ci * // Comment attached to baz. 304ffe3c632Sopenharmony_ci * // Another line attached to baz. 305ffe3c632Sopenharmony_ci * // Comment attached to qux. 306ffe3c632Sopenharmony_ci * // 307ffe3c632Sopenharmony_ci * // Another line attached to qux. 308ffe3c632Sopenharmony_ci * optional double qux = 4; 309ffe3c632Sopenharmony_ci * // Detached comment for corge. This is not leading or trailing comments 310ffe3c632Sopenharmony_ci * // to qux or corge because there are blank lines separating it from 311ffe3c632Sopenharmony_ci * // both. 312ffe3c632Sopenharmony_ci * // Detached comment for corge paragraph 2. 313ffe3c632Sopenharmony_ci * optional string corge = 5; 314ffe3c632Sopenharmony_ci * /* Block comment attached 315ffe3c632Sopenharmony_ci * * to corge. Leading asterisks 316ffe3c632Sopenharmony_ci * * will be removed. */ 317ffe3c632Sopenharmony_ci * /* Block comment attached to 318ffe3c632Sopenharmony_ci * * grault. */ 319ffe3c632Sopenharmony_ci * optional int32 grault = 6; 320ffe3c632Sopenharmony_ci * // ignored detached comments. 321ffe3c632Sopenharmony_ci * 322ffe3c632Sopenharmony_ci * Generated from protobuf field <code>optional string leading_comments = 3;</code> 323ffe3c632Sopenharmony_ci * @return string 324ffe3c632Sopenharmony_ci */ 325ffe3c632Sopenharmony_ci public function getLeadingComments() 326ffe3c632Sopenharmony_ci { 327ffe3c632Sopenharmony_ci return isset($this->leading_comments) ? $this->leading_comments : ''; 328ffe3c632Sopenharmony_ci } 329ffe3c632Sopenharmony_ci 330ffe3c632Sopenharmony_ci public function hasLeadingComments() 331ffe3c632Sopenharmony_ci { 332ffe3c632Sopenharmony_ci return isset($this->leading_comments); 333ffe3c632Sopenharmony_ci } 334ffe3c632Sopenharmony_ci 335ffe3c632Sopenharmony_ci public function clearLeadingComments() 336ffe3c632Sopenharmony_ci { 337ffe3c632Sopenharmony_ci unset($this->leading_comments); 338ffe3c632Sopenharmony_ci } 339ffe3c632Sopenharmony_ci 340ffe3c632Sopenharmony_ci /** 341ffe3c632Sopenharmony_ci * If this SourceCodeInfo represents a complete declaration, these are any 342ffe3c632Sopenharmony_ci * comments appearing before and after the declaration which appear to be 343ffe3c632Sopenharmony_ci * attached to the declaration. 344ffe3c632Sopenharmony_ci * A series of line comments appearing on consecutive lines, with no other 345ffe3c632Sopenharmony_ci * tokens appearing on those lines, will be treated as a single comment. 346ffe3c632Sopenharmony_ci * leading_detached_comments will keep paragraphs of comments that appear 347ffe3c632Sopenharmony_ci * before (but not connected to) the current element. Each paragraph, 348ffe3c632Sopenharmony_ci * separated by empty lines, will be one comment element in the repeated 349ffe3c632Sopenharmony_ci * field. 350ffe3c632Sopenharmony_ci * Only the comment content is provided; comment markers (e.g. //) are 351ffe3c632Sopenharmony_ci * stripped out. For block comments, leading whitespace and an asterisk 352ffe3c632Sopenharmony_ci * will be stripped from the beginning of each line other than the first. 353ffe3c632Sopenharmony_ci * Newlines are included in the output. 354ffe3c632Sopenharmony_ci * Examples: 355ffe3c632Sopenharmony_ci * optional int32 foo = 1; // Comment attached to foo. 356ffe3c632Sopenharmony_ci * // Comment attached to bar. 357ffe3c632Sopenharmony_ci * optional int32 bar = 2; 358ffe3c632Sopenharmony_ci * optional string baz = 3; 359ffe3c632Sopenharmony_ci * // Comment attached to baz. 360ffe3c632Sopenharmony_ci * // Another line attached to baz. 361ffe3c632Sopenharmony_ci * // Comment attached to qux. 362ffe3c632Sopenharmony_ci * // 363ffe3c632Sopenharmony_ci * // Another line attached to qux. 364ffe3c632Sopenharmony_ci * optional double qux = 4; 365ffe3c632Sopenharmony_ci * // Detached comment for corge. This is not leading or trailing comments 366ffe3c632Sopenharmony_ci * // to qux or corge because there are blank lines separating it from 367ffe3c632Sopenharmony_ci * // both. 368ffe3c632Sopenharmony_ci * // Detached comment for corge paragraph 2. 369ffe3c632Sopenharmony_ci * optional string corge = 5; 370ffe3c632Sopenharmony_ci * /* Block comment attached 371ffe3c632Sopenharmony_ci * * to corge. Leading asterisks 372ffe3c632Sopenharmony_ci * * will be removed. */ 373ffe3c632Sopenharmony_ci * /* Block comment attached to 374ffe3c632Sopenharmony_ci * * grault. */ 375ffe3c632Sopenharmony_ci * optional int32 grault = 6; 376ffe3c632Sopenharmony_ci * // ignored detached comments. 377ffe3c632Sopenharmony_ci * 378ffe3c632Sopenharmony_ci * Generated from protobuf field <code>optional string leading_comments = 3;</code> 379ffe3c632Sopenharmony_ci * @param string $var 380ffe3c632Sopenharmony_ci * @return $this 381ffe3c632Sopenharmony_ci */ 382ffe3c632Sopenharmony_ci public function setLeadingComments($var) 383ffe3c632Sopenharmony_ci { 384ffe3c632Sopenharmony_ci GPBUtil::checkString($var, True); 385ffe3c632Sopenharmony_ci $this->leading_comments = $var; 386ffe3c632Sopenharmony_ci 387ffe3c632Sopenharmony_ci return $this; 388ffe3c632Sopenharmony_ci } 389ffe3c632Sopenharmony_ci 390ffe3c632Sopenharmony_ci /** 391ffe3c632Sopenharmony_ci * Generated from protobuf field <code>optional string trailing_comments = 4;</code> 392ffe3c632Sopenharmony_ci * @return string 393ffe3c632Sopenharmony_ci */ 394ffe3c632Sopenharmony_ci public function getTrailingComments() 395ffe3c632Sopenharmony_ci { 396ffe3c632Sopenharmony_ci return isset($this->trailing_comments) ? $this->trailing_comments : ''; 397ffe3c632Sopenharmony_ci } 398ffe3c632Sopenharmony_ci 399ffe3c632Sopenharmony_ci public function hasTrailingComments() 400ffe3c632Sopenharmony_ci { 401ffe3c632Sopenharmony_ci return isset($this->trailing_comments); 402ffe3c632Sopenharmony_ci } 403ffe3c632Sopenharmony_ci 404ffe3c632Sopenharmony_ci public function clearTrailingComments() 405ffe3c632Sopenharmony_ci { 406ffe3c632Sopenharmony_ci unset($this->trailing_comments); 407ffe3c632Sopenharmony_ci } 408ffe3c632Sopenharmony_ci 409ffe3c632Sopenharmony_ci /** 410ffe3c632Sopenharmony_ci * Generated from protobuf field <code>optional string trailing_comments = 4;</code> 411ffe3c632Sopenharmony_ci * @param string $var 412ffe3c632Sopenharmony_ci * @return $this 413ffe3c632Sopenharmony_ci */ 414ffe3c632Sopenharmony_ci public function setTrailingComments($var) 415ffe3c632Sopenharmony_ci { 416ffe3c632Sopenharmony_ci GPBUtil::checkString($var, True); 417ffe3c632Sopenharmony_ci $this->trailing_comments = $var; 418ffe3c632Sopenharmony_ci 419ffe3c632Sopenharmony_ci return $this; 420ffe3c632Sopenharmony_ci } 421ffe3c632Sopenharmony_ci 422ffe3c632Sopenharmony_ci /** 423ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated string leading_detached_comments = 6;</code> 424ffe3c632Sopenharmony_ci * @return \Google\Protobuf\Internal\RepeatedField 425ffe3c632Sopenharmony_ci */ 426ffe3c632Sopenharmony_ci public function getLeadingDetachedComments() 427ffe3c632Sopenharmony_ci { 428ffe3c632Sopenharmony_ci return $this->leading_detached_comments; 429ffe3c632Sopenharmony_ci } 430ffe3c632Sopenharmony_ci 431ffe3c632Sopenharmony_ci /** 432ffe3c632Sopenharmony_ci * Generated from protobuf field <code>repeated string leading_detached_comments = 6;</code> 433ffe3c632Sopenharmony_ci * @param string[]|\Google\Protobuf\Internal\RepeatedField $var 434ffe3c632Sopenharmony_ci * @return $this 435ffe3c632Sopenharmony_ci */ 436ffe3c632Sopenharmony_ci public function setLeadingDetachedComments($var) 437ffe3c632Sopenharmony_ci { 438ffe3c632Sopenharmony_ci $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING); 439ffe3c632Sopenharmony_ci $this->leading_detached_comments = $arr; 440ffe3c632Sopenharmony_ci 441ffe3c632Sopenharmony_ci return $this; 442ffe3c632Sopenharmony_ci } 443ffe3c632Sopenharmony_ci 444ffe3c632Sopenharmony_ci} 445ffe3c632Sopenharmony_ci 446ffe3c632Sopenharmony_ci// Adding a class alias for backwards compatibility with the previous class name. 447ffe3c632Sopenharmony_ciclass_alias(Location::class, \Google\Protobuf\Internal\SourceCodeInfo_Location::class); 448ffe3c632Sopenharmony_ci 449