• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?php
2# Generated by the protocol buffer compiler.  DO NOT EDIT!
3# source: google/protobuf/descriptor.proto
4
5namespace Google\Protobuf\Internal;
6
7use Google\Protobuf\Internal\GPBType;
8use Google\Protobuf\Internal\GPBWire;
9use Google\Protobuf\Internal\RepeatedField;
10use Google\Protobuf\Internal\InputStream;
11use Google\Protobuf\Internal\GPBUtil;
12
13/**
14 * Generated from protobuf message <code>google.protobuf.FileOptions</code>
15 */
16class FileOptions extends \Google\Protobuf\Internal\Message
17{
18    /**
19     * Sets the Java package where classes generated from this .proto will be
20     * placed.  By default, the proto package is used, but this is often
21     * inappropriate because proto packages do not normally start with backwards
22     * domain names.
23     *
24     * Generated from protobuf field <code>optional string java_package = 1;</code>
25     */
26    private $java_package = '';
27    private $has_java_package = false;
28    /**
29     * If set, all the classes from the .proto file are wrapped in a single
30     * outer class with the given name.  This applies to both Proto1
31     * (equivalent to the old "--one_java_file" option) and Proto2 (where
32     * a .proto always translates to a single class, but you may want to
33     * explicitly choose the class name).
34     *
35     * Generated from protobuf field <code>optional string java_outer_classname = 8;</code>
36     */
37    private $java_outer_classname = '';
38    private $has_java_outer_classname = false;
39    /**
40     * If set true, then the Java code generator will generate a separate .java
41     * file for each top-level message, enum, and service defined in the .proto
42     * file.  Thus, these types will *not* be nested inside the outer class
43     * named by java_outer_classname.  However, the outer class will still be
44     * generated to contain the file's getDescriptor() method as well as any
45     * top-level extensions defined in the file.
46     *
47     * Generated from protobuf field <code>optional bool java_multiple_files = 10 [default = false];</code>
48     */
49    private $java_multiple_files = false;
50    private $has_java_multiple_files = false;
51    /**
52     * This option does nothing.
53     *
54     * Generated from protobuf field <code>optional bool java_generate_equals_and_hash = 20 [deprecated = true];</code>
55     */
56    private $java_generate_equals_and_hash = false;
57    private $has_java_generate_equals_and_hash = false;
58    /**
59     * If set true, then the Java2 code generator will generate code that
60     * throws an exception whenever an attempt is made to assign a non-UTF-8
61     * byte sequence to a string field.
62     * Message reflection will do the same.
63     * However, an extension field still accepts non-UTF-8 byte sequences.
64     * This option has no effect on when used with the lite runtime.
65     *
66     * Generated from protobuf field <code>optional bool java_string_check_utf8 = 27 [default = false];</code>
67     */
68    private $java_string_check_utf8 = false;
69    private $has_java_string_check_utf8 = false;
70    /**
71     * Generated from protobuf field <code>optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];</code>
72     */
73    private $optimize_for = 0;
74    private $has_optimize_for = false;
75    /**
76     * Sets the Go package where structs generated from this .proto will be
77     * placed. If omitted, the Go package will be derived from the following:
78     *   - The basename of the package import path, if provided.
79     *   - Otherwise, the package statement in the .proto file, if present.
80     *   - Otherwise, the basename of the .proto file, without extension.
81     *
82     * Generated from protobuf field <code>optional string go_package = 11;</code>
83     */
84    private $go_package = '';
85    private $has_go_package = false;
86    /**
87     * Should generic services be generated in each language?  "Generic" services
88     * are not specific to any particular RPC system.  They are generated by the
89     * main code generators in each language (without additional plugins).
90     * Generic services were the only kind of service generation supported by
91     * early versions of google.protobuf.
92     * Generic services are now considered deprecated in favor of using plugins
93     * that generate code specific to your particular RPC system.  Therefore,
94     * these default to false.  Old code which depends on generic services should
95     * explicitly set them to true.
96     *
97     * Generated from protobuf field <code>optional bool cc_generic_services = 16 [default = false];</code>
98     */
99    private $cc_generic_services = false;
100    private $has_cc_generic_services = false;
101    /**
102     * Generated from protobuf field <code>optional bool java_generic_services = 17 [default = false];</code>
103     */
104    private $java_generic_services = false;
105    private $has_java_generic_services = false;
106    /**
107     * Generated from protobuf field <code>optional bool py_generic_services = 18 [default = false];</code>
108     */
109    private $py_generic_services = false;
110    private $has_py_generic_services = false;
111    /**
112     * Generated from protobuf field <code>optional bool php_generic_services = 42 [default = false];</code>
113     */
114    private $php_generic_services = false;
115    private $has_php_generic_services = false;
116    /**
117     * Is this file deprecated?
118     * Depending on the target platform, this can emit Deprecated annotations
119     * for everything in the file, or it will be completely ignored; in the very
120     * least, this is a formalization for deprecating files.
121     *
122     * Generated from protobuf field <code>optional bool deprecated = 23 [default = false];</code>
123     */
124    private $deprecated = false;
125    private $has_deprecated = false;
126    /**
127     * Enables the use of arenas for the proto messages in this file. This applies
128     * only to generated classes for C++.
129     *
130     * Generated from protobuf field <code>optional bool cc_enable_arenas = 31 [default = false];</code>
131     */
132    private $cc_enable_arenas = false;
133    private $has_cc_enable_arenas = false;
134    /**
135     * Sets the objective c class prefix which is prepended to all objective c
136     * generated classes from this .proto. There is no default.
137     *
138     * Generated from protobuf field <code>optional string objc_class_prefix = 36;</code>
139     */
140    private $objc_class_prefix = '';
141    private $has_objc_class_prefix = false;
142    /**
143     * Namespace for generated classes; defaults to the package.
144     *
145     * Generated from protobuf field <code>optional string csharp_namespace = 37;</code>
146     */
147    private $csharp_namespace = '';
148    private $has_csharp_namespace = false;
149    /**
150     * By default Swift generators will take the proto package and CamelCase it
151     * replacing '.' with underscore and use that to prefix the types/symbols
152     * defined. When this options is provided, they will use this value instead
153     * to prefix the types/symbols defined.
154     *
155     * Generated from protobuf field <code>optional string swift_prefix = 39;</code>
156     */
157    private $swift_prefix = '';
158    private $has_swift_prefix = false;
159    /**
160     * Sets the php class prefix which is prepended to all php generated classes
161     * from this .proto. Default is empty.
162     *
163     * Generated from protobuf field <code>optional string php_class_prefix = 40;</code>
164     */
165    private $php_class_prefix = '';
166    private $has_php_class_prefix = false;
167    /**
168     * Use this option to change the namespace of php generated classes. Default
169     * is empty. When this option is empty, the package name will be used for
170     * determining the namespace.
171     *
172     * Generated from protobuf field <code>optional string php_namespace = 41;</code>
173     */
174    private $php_namespace = '';
175    private $has_php_namespace = false;
176    /**
177     * Use this option to change the namespace of php generated metadata classes.
178     * Default is empty. When this option is empty, the proto file name will be
179     * used for determining the namespace.
180     *
181     * Generated from protobuf field <code>optional string php_metadata_namespace = 44;</code>
182     */
183    private $php_metadata_namespace = '';
184    private $has_php_metadata_namespace = false;
185    /**
186     * Use this option to change the package of ruby generated classes. Default
187     * is empty. When this option is not set, the package name will be used for
188     * determining the ruby package.
189     *
190     * Generated from protobuf field <code>optional string ruby_package = 45;</code>
191     */
192    private $ruby_package = '';
193    private $has_ruby_package = false;
194    /**
195     * The parser stores options it doesn't recognize here.
196     * See the documentation for the "Options" section above.
197     *
198     * Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
199     */
200    private $uninterpreted_option;
201    private $has_uninterpreted_option = false;
202
203    /**
204     * Constructor.
205     *
206     * @param array $data {
207     *     Optional. Data for populating the Message object.
208     *
209     *     @type string $java_package
210     *           Sets the Java package where classes generated from this .proto will be
211     *           placed.  By default, the proto package is used, but this is often
212     *           inappropriate because proto packages do not normally start with backwards
213     *           domain names.
214     *     @type string $java_outer_classname
215     *           If set, all the classes from the .proto file are wrapped in a single
216     *           outer class with the given name.  This applies to both Proto1
217     *           (equivalent to the old "--one_java_file" option) and Proto2 (where
218     *           a .proto always translates to a single class, but you may want to
219     *           explicitly choose the class name).
220     *     @type bool $java_multiple_files
221     *           If set true, then the Java code generator will generate a separate .java
222     *           file for each top-level message, enum, and service defined in the .proto
223     *           file.  Thus, these types will *not* be nested inside the outer class
224     *           named by java_outer_classname.  However, the outer class will still be
225     *           generated to contain the file's getDescriptor() method as well as any
226     *           top-level extensions defined in the file.
227     *     @type bool $java_generate_equals_and_hash
228     *           This option does nothing.
229     *     @type bool $java_string_check_utf8
230     *           If set true, then the Java2 code generator will generate code that
231     *           throws an exception whenever an attempt is made to assign a non-UTF-8
232     *           byte sequence to a string field.
233     *           Message reflection will do the same.
234     *           However, an extension field still accepts non-UTF-8 byte sequences.
235     *           This option has no effect on when used with the lite runtime.
236     *     @type int $optimize_for
237     *     @type string $go_package
238     *           Sets the Go package where structs generated from this .proto will be
239     *           placed. If omitted, the Go package will be derived from the following:
240     *             - The basename of the package import path, if provided.
241     *             - Otherwise, the package statement in the .proto file, if present.
242     *             - Otherwise, the basename of the .proto file, without extension.
243     *     @type bool $cc_generic_services
244     *           Should generic services be generated in each language?  "Generic" services
245     *           are not specific to any particular RPC system.  They are generated by the
246     *           main code generators in each language (without additional plugins).
247     *           Generic services were the only kind of service generation supported by
248     *           early versions of google.protobuf.
249     *           Generic services are now considered deprecated in favor of using plugins
250     *           that generate code specific to your particular RPC system.  Therefore,
251     *           these default to false.  Old code which depends on generic services should
252     *           explicitly set them to true.
253     *     @type bool $java_generic_services
254     *     @type bool $py_generic_services
255     *     @type bool $php_generic_services
256     *     @type bool $deprecated
257     *           Is this file deprecated?
258     *           Depending on the target platform, this can emit Deprecated annotations
259     *           for everything in the file, or it will be completely ignored; in the very
260     *           least, this is a formalization for deprecating files.
261     *     @type bool $cc_enable_arenas
262     *           Enables the use of arenas for the proto messages in this file. This applies
263     *           only to generated classes for C++.
264     *     @type string $objc_class_prefix
265     *           Sets the objective c class prefix which is prepended to all objective c
266     *           generated classes from this .proto. There is no default.
267     *     @type string $csharp_namespace
268     *           Namespace for generated classes; defaults to the package.
269     *     @type string $swift_prefix
270     *           By default Swift generators will take the proto package and CamelCase it
271     *           replacing '.' with underscore and use that to prefix the types/symbols
272     *           defined. When this options is provided, they will use this value instead
273     *           to prefix the types/symbols defined.
274     *     @type string $php_class_prefix
275     *           Sets the php class prefix which is prepended to all php generated classes
276     *           from this .proto. Default is empty.
277     *     @type string $php_namespace
278     *           Use this option to change the namespace of php generated classes. Default
279     *           is empty. When this option is empty, the package name will be used for
280     *           determining the namespace.
281     *     @type string $php_metadata_namespace
282     *           Use this option to change the namespace of php generated metadata classes.
283     *           Default is empty. When this option is empty, the proto file name will be
284     *           used for determining the namespace.
285     *     @type string $ruby_package
286     *           Use this option to change the package of ruby generated classes. Default
287     *           is empty. When this option is not set, the package name will be used for
288     *           determining the ruby package.
289     *     @type \Google\Protobuf\Internal\UninterpretedOption[]|\Google\Protobuf\Internal\RepeatedField $uninterpreted_option
290     *           The parser stores options it doesn't recognize here.
291     *           See the documentation for the "Options" section above.
292     * }
293     */
294    public function __construct($data = NULL) {
295        \GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
296        parent::__construct($data);
297    }
298
299    /**
300     * Sets the Java package where classes generated from this .proto will be
301     * placed.  By default, the proto package is used, but this is often
302     * inappropriate because proto packages do not normally start with backwards
303     * domain names.
304     *
305     * Generated from protobuf field <code>optional string java_package = 1;</code>
306     * @return string
307     */
308    public function getJavaPackage()
309    {
310        return $this->java_package;
311    }
312
313    /**
314     * Sets the Java package where classes generated from this .proto will be
315     * placed.  By default, the proto package is used, but this is often
316     * inappropriate because proto packages do not normally start with backwards
317     * domain names.
318     *
319     * Generated from protobuf field <code>optional string java_package = 1;</code>
320     * @param string $var
321     * @return $this
322     */
323    public function setJavaPackage($var)
324    {
325        GPBUtil::checkString($var, True);
326        $this->java_package = $var;
327        $this->has_java_package = true;
328
329        return $this;
330    }
331
332    public function hasJavaPackage()
333    {
334        return $this->has_java_package;
335    }
336
337    /**
338     * If set, all the classes from the .proto file are wrapped in a single
339     * outer class with the given name.  This applies to both Proto1
340     * (equivalent to the old "--one_java_file" option) and Proto2 (where
341     * a .proto always translates to a single class, but you may want to
342     * explicitly choose the class name).
343     *
344     * Generated from protobuf field <code>optional string java_outer_classname = 8;</code>
345     * @return string
346     */
347    public function getJavaOuterClassname()
348    {
349        return $this->java_outer_classname;
350    }
351
352    /**
353     * If set, all the classes from the .proto file are wrapped in a single
354     * outer class with the given name.  This applies to both Proto1
355     * (equivalent to the old "--one_java_file" option) and Proto2 (where
356     * a .proto always translates to a single class, but you may want to
357     * explicitly choose the class name).
358     *
359     * Generated from protobuf field <code>optional string java_outer_classname = 8;</code>
360     * @param string $var
361     * @return $this
362     */
363    public function setJavaOuterClassname($var)
364    {
365        GPBUtil::checkString($var, True);
366        $this->java_outer_classname = $var;
367        $this->has_java_outer_classname = true;
368
369        return $this;
370    }
371
372    public function hasJavaOuterClassname()
373    {
374        return $this->has_java_outer_classname;
375    }
376
377    /**
378     * If set true, then the Java code generator will generate a separate .java
379     * file for each top-level message, enum, and service defined in the .proto
380     * file.  Thus, these types will *not* be nested inside the outer class
381     * named by java_outer_classname.  However, the outer class will still be
382     * generated to contain the file's getDescriptor() method as well as any
383     * top-level extensions defined in the file.
384     *
385     * Generated from protobuf field <code>optional bool java_multiple_files = 10 [default = false];</code>
386     * @return bool
387     */
388    public function getJavaMultipleFiles()
389    {
390        return $this->java_multiple_files;
391    }
392
393    /**
394     * If set true, then the Java code generator will generate a separate .java
395     * file for each top-level message, enum, and service defined in the .proto
396     * file.  Thus, these types will *not* be nested inside the outer class
397     * named by java_outer_classname.  However, the outer class will still be
398     * generated to contain the file's getDescriptor() method as well as any
399     * top-level extensions defined in the file.
400     *
401     * Generated from protobuf field <code>optional bool java_multiple_files = 10 [default = false];</code>
402     * @param bool $var
403     * @return $this
404     */
405    public function setJavaMultipleFiles($var)
406    {
407        GPBUtil::checkBool($var);
408        $this->java_multiple_files = $var;
409        $this->has_java_multiple_files = true;
410
411        return $this;
412    }
413
414    public function hasJavaMultipleFiles()
415    {
416        return $this->has_java_multiple_files;
417    }
418
419    /**
420     * This option does nothing.
421     *
422     * Generated from protobuf field <code>optional bool java_generate_equals_and_hash = 20 [deprecated = true];</code>
423     * @return bool
424     */
425    public function getJavaGenerateEqualsAndHash()
426    {
427        return $this->java_generate_equals_and_hash;
428    }
429
430    /**
431     * This option does nothing.
432     *
433     * Generated from protobuf field <code>optional bool java_generate_equals_and_hash = 20 [deprecated = true];</code>
434     * @param bool $var
435     * @return $this
436     */
437    public function setJavaGenerateEqualsAndHash($var)
438    {
439        GPBUtil::checkBool($var);
440        $this->java_generate_equals_and_hash = $var;
441        $this->has_java_generate_equals_and_hash = true;
442
443        return $this;
444    }
445
446    public function hasJavaGenerateEqualsAndHash()
447    {
448        return $this->has_java_generate_equals_and_hash;
449    }
450
451    /**
452     * If set true, then the Java2 code generator will generate code that
453     * throws an exception whenever an attempt is made to assign a non-UTF-8
454     * byte sequence to a string field.
455     * Message reflection will do the same.
456     * However, an extension field still accepts non-UTF-8 byte sequences.
457     * This option has no effect on when used with the lite runtime.
458     *
459     * Generated from protobuf field <code>optional bool java_string_check_utf8 = 27 [default = false];</code>
460     * @return bool
461     */
462    public function getJavaStringCheckUtf8()
463    {
464        return $this->java_string_check_utf8;
465    }
466
467    /**
468     * If set true, then the Java2 code generator will generate code that
469     * throws an exception whenever an attempt is made to assign a non-UTF-8
470     * byte sequence to a string field.
471     * Message reflection will do the same.
472     * However, an extension field still accepts non-UTF-8 byte sequences.
473     * This option has no effect on when used with the lite runtime.
474     *
475     * Generated from protobuf field <code>optional bool java_string_check_utf8 = 27 [default = false];</code>
476     * @param bool $var
477     * @return $this
478     */
479    public function setJavaStringCheckUtf8($var)
480    {
481        GPBUtil::checkBool($var);
482        $this->java_string_check_utf8 = $var;
483        $this->has_java_string_check_utf8 = true;
484
485        return $this;
486    }
487
488    public function hasJavaStringCheckUtf8()
489    {
490        return $this->has_java_string_check_utf8;
491    }
492
493    /**
494     * Generated from protobuf field <code>optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];</code>
495     * @return int
496     */
497    public function getOptimizeFor()
498    {
499        return $this->optimize_for;
500    }
501
502    /**
503     * Generated from protobuf field <code>optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];</code>
504     * @param int $var
505     * @return $this
506     */
507    public function setOptimizeFor($var)
508    {
509        GPBUtil::checkEnum($var, \Google\Protobuf\Internal\FileOptions_OptimizeMode::class);
510        $this->optimize_for = $var;
511        $this->has_optimize_for = true;
512
513        return $this;
514    }
515
516    public function hasOptimizeFor()
517    {
518        return $this->has_optimize_for;
519    }
520
521    /**
522     * Sets the Go package where structs generated from this .proto will be
523     * placed. If omitted, the Go package will be derived from the following:
524     *   - The basename of the package import path, if provided.
525     *   - Otherwise, the package statement in the .proto file, if present.
526     *   - Otherwise, the basename of the .proto file, without extension.
527     *
528     * Generated from protobuf field <code>optional string go_package = 11;</code>
529     * @return string
530     */
531    public function getGoPackage()
532    {
533        return $this->go_package;
534    }
535
536    /**
537     * Sets the Go package where structs generated from this .proto will be
538     * placed. If omitted, the Go package will be derived from the following:
539     *   - The basename of the package import path, if provided.
540     *   - Otherwise, the package statement in the .proto file, if present.
541     *   - Otherwise, the basename of the .proto file, without extension.
542     *
543     * Generated from protobuf field <code>optional string go_package = 11;</code>
544     * @param string $var
545     * @return $this
546     */
547    public function setGoPackage($var)
548    {
549        GPBUtil::checkString($var, True);
550        $this->go_package = $var;
551        $this->has_go_package = true;
552
553        return $this;
554    }
555
556    public function hasGoPackage()
557    {
558        return $this->has_go_package;
559    }
560
561    /**
562     * Should generic services be generated in each language?  "Generic" services
563     * are not specific to any particular RPC system.  They are generated by the
564     * main code generators in each language (without additional plugins).
565     * Generic services were the only kind of service generation supported by
566     * early versions of google.protobuf.
567     * Generic services are now considered deprecated in favor of using plugins
568     * that generate code specific to your particular RPC system.  Therefore,
569     * these default to false.  Old code which depends on generic services should
570     * explicitly set them to true.
571     *
572     * Generated from protobuf field <code>optional bool cc_generic_services = 16 [default = false];</code>
573     * @return bool
574     */
575    public function getCcGenericServices()
576    {
577        return $this->cc_generic_services;
578    }
579
580    /**
581     * Should generic services be generated in each language?  "Generic" services
582     * are not specific to any particular RPC system.  They are generated by the
583     * main code generators in each language (without additional plugins).
584     * Generic services were the only kind of service generation supported by
585     * early versions of google.protobuf.
586     * Generic services are now considered deprecated in favor of using plugins
587     * that generate code specific to your particular RPC system.  Therefore,
588     * these default to false.  Old code which depends on generic services should
589     * explicitly set them to true.
590     *
591     * Generated from protobuf field <code>optional bool cc_generic_services = 16 [default = false];</code>
592     * @param bool $var
593     * @return $this
594     */
595    public function setCcGenericServices($var)
596    {
597        GPBUtil::checkBool($var);
598        $this->cc_generic_services = $var;
599        $this->has_cc_generic_services = true;
600
601        return $this;
602    }
603
604    public function hasCcGenericServices()
605    {
606        return $this->has_cc_generic_services;
607    }
608
609    /**
610     * Generated from protobuf field <code>optional bool java_generic_services = 17 [default = false];</code>
611     * @return bool
612     */
613    public function getJavaGenericServices()
614    {
615        return $this->java_generic_services;
616    }
617
618    /**
619     * Generated from protobuf field <code>optional bool java_generic_services = 17 [default = false];</code>
620     * @param bool $var
621     * @return $this
622     */
623    public function setJavaGenericServices($var)
624    {
625        GPBUtil::checkBool($var);
626        $this->java_generic_services = $var;
627        $this->has_java_generic_services = true;
628
629        return $this;
630    }
631
632    public function hasJavaGenericServices()
633    {
634        return $this->has_java_generic_services;
635    }
636
637    /**
638     * Generated from protobuf field <code>optional bool py_generic_services = 18 [default = false];</code>
639     * @return bool
640     */
641    public function getPyGenericServices()
642    {
643        return $this->py_generic_services;
644    }
645
646    /**
647     * Generated from protobuf field <code>optional bool py_generic_services = 18 [default = false];</code>
648     * @param bool $var
649     * @return $this
650     */
651    public function setPyGenericServices($var)
652    {
653        GPBUtil::checkBool($var);
654        $this->py_generic_services = $var;
655        $this->has_py_generic_services = true;
656
657        return $this;
658    }
659
660    public function hasPyGenericServices()
661    {
662        return $this->has_py_generic_services;
663    }
664
665    /**
666     * Generated from protobuf field <code>optional bool php_generic_services = 42 [default = false];</code>
667     * @return bool
668     */
669    public function getPhpGenericServices()
670    {
671        return $this->php_generic_services;
672    }
673
674    /**
675     * Generated from protobuf field <code>optional bool php_generic_services = 42 [default = false];</code>
676     * @param bool $var
677     * @return $this
678     */
679    public function setPhpGenericServices($var)
680    {
681        GPBUtil::checkBool($var);
682        $this->php_generic_services = $var;
683        $this->has_php_generic_services = true;
684
685        return $this;
686    }
687
688    public function hasPhpGenericServices()
689    {
690        return $this->has_php_generic_services;
691    }
692
693    /**
694     * Is this file deprecated?
695     * Depending on the target platform, this can emit Deprecated annotations
696     * for everything in the file, or it will be completely ignored; in the very
697     * least, this is a formalization for deprecating files.
698     *
699     * Generated from protobuf field <code>optional bool deprecated = 23 [default = false];</code>
700     * @return bool
701     */
702    public function getDeprecated()
703    {
704        return $this->deprecated;
705    }
706
707    /**
708     * Is this file deprecated?
709     * Depending on the target platform, this can emit Deprecated annotations
710     * for everything in the file, or it will be completely ignored; in the very
711     * least, this is a formalization for deprecating files.
712     *
713     * Generated from protobuf field <code>optional bool deprecated = 23 [default = false];</code>
714     * @param bool $var
715     * @return $this
716     */
717    public function setDeprecated($var)
718    {
719        GPBUtil::checkBool($var);
720        $this->deprecated = $var;
721        $this->has_deprecated = true;
722
723        return $this;
724    }
725
726    public function hasDeprecated()
727    {
728        return $this->has_deprecated;
729    }
730
731    /**
732     * Enables the use of arenas for the proto messages in this file. This applies
733     * only to generated classes for C++.
734     *
735     * Generated from protobuf field <code>optional bool cc_enable_arenas = 31 [default = false];</code>
736     * @return bool
737     */
738    public function getCcEnableArenas()
739    {
740        return $this->cc_enable_arenas;
741    }
742
743    /**
744     * Enables the use of arenas for the proto messages in this file. This applies
745     * only to generated classes for C++.
746     *
747     * Generated from protobuf field <code>optional bool cc_enable_arenas = 31 [default = false];</code>
748     * @param bool $var
749     * @return $this
750     */
751    public function setCcEnableArenas($var)
752    {
753        GPBUtil::checkBool($var);
754        $this->cc_enable_arenas = $var;
755        $this->has_cc_enable_arenas = true;
756
757        return $this;
758    }
759
760    public function hasCcEnableArenas()
761    {
762        return $this->has_cc_enable_arenas;
763    }
764
765    /**
766     * Sets the objective c class prefix which is prepended to all objective c
767     * generated classes from this .proto. There is no default.
768     *
769     * Generated from protobuf field <code>optional string objc_class_prefix = 36;</code>
770     * @return string
771     */
772    public function getObjcClassPrefix()
773    {
774        return $this->objc_class_prefix;
775    }
776
777    /**
778     * Sets the objective c class prefix which is prepended to all objective c
779     * generated classes from this .proto. There is no default.
780     *
781     * Generated from protobuf field <code>optional string objc_class_prefix = 36;</code>
782     * @param string $var
783     * @return $this
784     */
785    public function setObjcClassPrefix($var)
786    {
787        GPBUtil::checkString($var, True);
788        $this->objc_class_prefix = $var;
789        $this->has_objc_class_prefix = true;
790
791        return $this;
792    }
793
794    public function hasObjcClassPrefix()
795    {
796        return $this->has_objc_class_prefix;
797    }
798
799    /**
800     * Namespace for generated classes; defaults to the package.
801     *
802     * Generated from protobuf field <code>optional string csharp_namespace = 37;</code>
803     * @return string
804     */
805    public function getCsharpNamespace()
806    {
807        return $this->csharp_namespace;
808    }
809
810    /**
811     * Namespace for generated classes; defaults to the package.
812     *
813     * Generated from protobuf field <code>optional string csharp_namespace = 37;</code>
814     * @param string $var
815     * @return $this
816     */
817    public function setCsharpNamespace($var)
818    {
819        GPBUtil::checkString($var, True);
820        $this->csharp_namespace = $var;
821        $this->has_csharp_namespace = true;
822
823        return $this;
824    }
825
826    public function hasCsharpNamespace()
827    {
828        return $this->has_csharp_namespace;
829    }
830
831    /**
832     * By default Swift generators will take the proto package and CamelCase it
833     * replacing '.' with underscore and use that to prefix the types/symbols
834     * defined. When this options is provided, they will use this value instead
835     * to prefix the types/symbols defined.
836     *
837     * Generated from protobuf field <code>optional string swift_prefix = 39;</code>
838     * @return string
839     */
840    public function getSwiftPrefix()
841    {
842        return $this->swift_prefix;
843    }
844
845    /**
846     * By default Swift generators will take the proto package and CamelCase it
847     * replacing '.' with underscore and use that to prefix the types/symbols
848     * defined. When this options is provided, they will use this value instead
849     * to prefix the types/symbols defined.
850     *
851     * Generated from protobuf field <code>optional string swift_prefix = 39;</code>
852     * @param string $var
853     * @return $this
854     */
855    public function setSwiftPrefix($var)
856    {
857        GPBUtil::checkString($var, True);
858        $this->swift_prefix = $var;
859        $this->has_swift_prefix = true;
860
861        return $this;
862    }
863
864    public function hasSwiftPrefix()
865    {
866        return $this->has_swift_prefix;
867    }
868
869    /**
870     * Sets the php class prefix which is prepended to all php generated classes
871     * from this .proto. Default is empty.
872     *
873     * Generated from protobuf field <code>optional string php_class_prefix = 40;</code>
874     * @return string
875     */
876    public function getPhpClassPrefix()
877    {
878        return $this->php_class_prefix;
879    }
880
881    /**
882     * Sets the php class prefix which is prepended to all php generated classes
883     * from this .proto. Default is empty.
884     *
885     * Generated from protobuf field <code>optional string php_class_prefix = 40;</code>
886     * @param string $var
887     * @return $this
888     */
889    public function setPhpClassPrefix($var)
890    {
891        GPBUtil::checkString($var, True);
892        $this->php_class_prefix = $var;
893        $this->has_php_class_prefix = true;
894
895        return $this;
896    }
897
898    public function hasPhpClassPrefix()
899    {
900        return $this->has_php_class_prefix;
901    }
902
903    /**
904     * Use this option to change the namespace of php generated classes. Default
905     * is empty. When this option is empty, the package name will be used for
906     * determining the namespace.
907     *
908     * Generated from protobuf field <code>optional string php_namespace = 41;</code>
909     * @return string
910     */
911    public function getPhpNamespace()
912    {
913        return $this->php_namespace;
914    }
915
916    /**
917     * Use this option to change the namespace of php generated classes. Default
918     * is empty. When this option is empty, the package name will be used for
919     * determining the namespace.
920     *
921     * Generated from protobuf field <code>optional string php_namespace = 41;</code>
922     * @param string $var
923     * @return $this
924     */
925    public function setPhpNamespace($var)
926    {
927        GPBUtil::checkString($var, True);
928        $this->php_namespace = $var;
929        $this->has_php_namespace = true;
930
931        return $this;
932    }
933
934    public function hasPhpNamespace()
935    {
936        return $this->has_php_namespace;
937    }
938
939    /**
940     * Use this option to change the namespace of php generated metadata classes.
941     * Default is empty. When this option is empty, the proto file name will be
942     * used for determining the namespace.
943     *
944     * Generated from protobuf field <code>optional string php_metadata_namespace = 44;</code>
945     * @return string
946     */
947    public function getPhpMetadataNamespace()
948    {
949        return $this->php_metadata_namespace;
950    }
951
952    /**
953     * Use this option to change the namespace of php generated metadata classes.
954     * Default is empty. When this option is empty, the proto file name will be
955     * used for determining the namespace.
956     *
957     * Generated from protobuf field <code>optional string php_metadata_namespace = 44;</code>
958     * @param string $var
959     * @return $this
960     */
961    public function setPhpMetadataNamespace($var)
962    {
963        GPBUtil::checkString($var, True);
964        $this->php_metadata_namespace = $var;
965        $this->has_php_metadata_namespace = true;
966
967        return $this;
968    }
969
970    public function hasPhpMetadataNamespace()
971    {
972        return $this->has_php_metadata_namespace;
973    }
974
975    /**
976     * Use this option to change the package of ruby generated classes. Default
977     * is empty. When this option is not set, the package name will be used for
978     * determining the ruby package.
979     *
980     * Generated from protobuf field <code>optional string ruby_package = 45;</code>
981     * @return string
982     */
983    public function getRubyPackage()
984    {
985        return $this->ruby_package;
986    }
987
988    /**
989     * Use this option to change the package of ruby generated classes. Default
990     * is empty. When this option is not set, the package name will be used for
991     * determining the ruby package.
992     *
993     * Generated from protobuf field <code>optional string ruby_package = 45;</code>
994     * @param string $var
995     * @return $this
996     */
997    public function setRubyPackage($var)
998    {
999        GPBUtil::checkString($var, True);
1000        $this->ruby_package = $var;
1001        $this->has_ruby_package = true;
1002
1003        return $this;
1004    }
1005
1006    public function hasRubyPackage()
1007    {
1008        return $this->has_ruby_package;
1009    }
1010
1011    /**
1012     * The parser stores options it doesn't recognize here.
1013     * See the documentation for the "Options" section above.
1014     *
1015     * Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
1016     * @return \Google\Protobuf\Internal\RepeatedField
1017     */
1018    public function getUninterpretedOption()
1019    {
1020        return $this->uninterpreted_option;
1021    }
1022
1023    /**
1024     * The parser stores options it doesn't recognize here.
1025     * See the documentation for the "Options" section above.
1026     *
1027     * Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
1028     * @param \Google\Protobuf\Internal\UninterpretedOption[]|\Google\Protobuf\Internal\RepeatedField $var
1029     * @return $this
1030     */
1031    public function setUninterpretedOption($var)
1032    {
1033        $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\UninterpretedOption::class);
1034        $this->uninterpreted_option = $arr;
1035        $this->has_uninterpreted_option = true;
1036
1037        return $this;
1038    }
1039
1040    public function hasUninterpretedOption()
1041    {
1042        return $this->has_uninterpreted_option;
1043    }
1044
1045}
1046
1047