whoami7 - Manager
:
/
home
/
kckglobal
/
www
/
portal
/
vendor
/
larastan
/
larastan
/
src
/
Collectors
/
Upload File:
files >> /home/kckglobal/www/portal/vendor/larastan/larastan/src/Collectors/UsedViewMakeCollector.php
<?php declare(strict_types=1); namespace Larastan\Larastan\Collectors; use Illuminate\Contracts\View\Factory; use Illuminate\View\ViewName; use PhpParser\Node; use PHPStan\Analyser\Scope; use PHPStan\Collectors\Collector; use PHPStan\Type\ObjectType; use function count; /** @implements Collector<Node\Expr\MethodCall, string> */ final class UsedViewMakeCollector implements Collector { public function getNodeType(): string { return Node\Expr\MethodCall::class; } /** @param Node\Expr\MethodCall $node */ public function processNode(Node $node, Scope $scope): string|null { $name = $node->name; if (! $name instanceof Node\Identifier) { return null; } if ($name->name !== 'make') { return null; } if (count($node->getArgs()) < 1) { return null; } $class = $node->var; if (! (new ObjectType(Factory::class))->isSuperTypeOf($scope->getType($class))->yes()) { return null; } $template = $node->getArgs()[0]->value; if (! $template instanceof Node\Scalar\String_) { return null; } return ViewName::normalize($template->value); } }
Copyright ©2021 || Defacer Indonesia