/** * @param ClassInfo $classInfo * @return MethodCall */ protected function prepareControllersMountNode(ClassInfo $classInfo) { $mount = ''; $route = $classInfo->getFirstAnnotationInstanceof('Saxulum\\RouteController\\Annotation\\Route'); if (!is_null($route)) { $mount = $route->value; } return new MethodCall(new Variable('app'), 'mount', array(new Arg($this->prepareScalarArg($mount)), new Arg(new Variable('controllers')))); }
/** * @param ClassInfo $classInfo * @return Assign */ protected function prepareConstructStatement(ClassInfo $classInfo) { $di = $classInfo->getFirstAnnotationInstanceof('Saxulum\\RouteController\\Annotation\\DI'); /** @var DI $di */ return new Assign(new Variable('controller'), new New_(new Name($classInfo->getName()), $this->prepareArguments($di))); }