<?php
// @@protoc_insertion_point(namespace:.PHPFileOptions)

/**
 * Generated by the protocol buffer compiler.  DO NOT EDIT!
 * source: php_options.proto
 *
 * -*- magic methods -*-
 *
 * @method bool getMultipleFiles()
 * @method void setMultipleFiles(bool $value)
 * @method bool getSkipUnknown()
 * @method void setSkipUnknown(bool $value)
 * @method string getBaseClass()
 * @method void setBaseClass(string $value)
 * @method \PHPFileOptions\Style getStyle()
 * @method void setStyle(\PHPFileOptions\Style $value)
 */
class PHPFileOptions extends \ProtocolBuffers\Message
{
  // @@protoc_insertion_point(traits:.PHPFileOptions)
  
  /**
   * @var bool $multiple_files
   * @tag 1
   * @label optional
   * @type \ProtocolBuffers::TYPE_BOOL
   **/
  protected $multiple_files;
  
  /**
   * @var bool $skip_unknown
   * @tag 2
   * @label optional
   * @type \ProtocolBuffers::TYPE_BOOL
   **/
  protected $skip_unknown;
  
  /**
   * @var string $base_class
   * @tag 3
   * @label optional
   * @type \ProtocolBuffers::TYPE_STRING
   **/
  protected $base_class;
  
  /**
   * @var \PHPFileOptions\Style $style
   * @tag 4
   * @label optional
   * @type \ProtocolBuffers::TYPE_ENUM
   * @see \PHPFileOptions\Style
   **/
  protected $style;
  
  
  // @@protoc_insertion_point(properties_scope:.PHPFileOptions)

  // @@protoc_insertion_point(class_scope:.PHPFileOptions)

  /**
   * get descriptor for protocol buffers
   * 
   * @return \ProtocolBuffersDescriptor
   */
  public static function getDescriptor()
  {
    static $descriptor;
    
    if (!isset($descriptor)) {
      $desc = new \ProtocolBuffers\DescriptorBuilder();
      $desc->addField(1, new \ProtocolBuffers\FieldDescriptor(array(
        "type"     => \ProtocolBuffers::TYPE_BOOL,
        "name"     => "multiple_files",
        "required" => false,
        "optional" => true,
        "repeated" => false,
        "packable" => false,
        "default"  => true,
      )));
      $desc->addField(2, new \ProtocolBuffers\FieldDescriptor(array(
        "type"     => \ProtocolBuffers::TYPE_BOOL,
        "name"     => "skip_unknown",
        "required" => false,
        "optional" => true,
        "repeated" => false,
        "packable" => false,
        "default"  => false,
      )));
      $desc->addField(3, new \ProtocolBuffers\FieldDescriptor(array(
        "type"     => \ProtocolBuffers::TYPE_STRING,
        "name"     => "base_class",
        "required" => false,
        "optional" => true,
        "repeated" => false,
        "packable" => false,
        "default"  => "",
      )));
      $desc->addField(4, new \ProtocolBuffers\FieldDescriptor(array(
        "type"     => \ProtocolBuffers::TYPE_ENUM,
        "name"     => "style",
        "required" => false,
        "optional" => true,
        "repeated" => false,
        "packable" => false,
        "default"  => \PHPFileOptions\Style::PSR4,
      )));
      // @@protoc_insertion_point(builder_scope:.PHPFileOptions)

      $descriptor = $desc->build();
    }
    return $descriptor;
  }

}
