getAnnotationsOfType('\Swagger\Annotations\Definition'); // Use the class names for @SWG\Definition() foreach ($definitions as $definition) { if ($definition->definition === null) { if ($definition->_context->is('class')) { $definition->definition = $definition->_context->class; } elseif ($definition->_context->is('trait')) { $definition->definition = $definition->_context->trait; } // if ($definition->type === null) { // $definition->type = 'object'; // } } } // Merge unmerged @SWG\Property annotations into the @SWG\Definition of the class $unmergedProperties = $analysis->unmerged()->getAnnotationsOfType('\Swagger\Annotations\Property'); foreach ($unmergedProperties as $property) { if ($property->_context->nested) { continue; } $definitonContext = $property->_context->with('class') ?: $property->_context->with('trait'); if ($definitonContext->annotations) { $definition = false; foreach ($definitonContext->annotations as $annotation) { if ($annotation instanceof Definition) { $definition = $annotation; } } if ($definition) { $definition->merge([$property], true); } } } } }