public function generateDependency(Parameter $parameter, CodeWriter $writer) { $q = $parameter->getAnnotation("Spot\\Inject\\Qualifier"); if ($q) { $writer->write("/** @", get_class($q)); $writer->write("("); $vars = get_object_vars($q); if ($vars) { $name = key($vars); $value = array_shift($vars); $writer->write($name, '='); $writer->literal($value); foreach ($vars as $name => $value) { $writer->write(', ', $name, ' = '); $writer->literal($value); } } $writer->write(") */"); } $class = $parameter->getClass(); if ($class) { $writer->write($class->name, " "); } else { if ($parameter->isArray()) { $writer->write("array "); } } $writer->write('$_', $parameter->getPosition()); }