/**
  * @param \thiagoarioli\restdoc\models\Doc
  * @return void
  */
 public function parse(Doc $doc)
 {
     $object = $this->getObject();
     foreach ($object->scenarios() as $key => $fields) {
         $doc->addScenario($key, $fields);
     }
     foreach ($object->extraFields() as $key => $value) {
         $doc->addExtraField(is_numeric($key) ? $value : $key);
     }
     foreach ($object->fields() as $key => $value) {
         $doc->addField(is_numeric($key) ? $value : $key);
     }
     $this->parseClass($doc);
     $this->parseFields($doc, 'fields');
     $this->parseFields($doc, 'extraFields');
     return true;
 }
 /**
  * Prepares doc
  */
 public function prepare()
 {
     parent::prepare();
     foreach ($this->getTagsByName('label') as $tag) {
         $this->_labels[$tag->getContent()] = true;
     }
     $this->query = $this->getTagsByName('query');
     if ($this->model) {
         $this->model->prepare();
     }
 }