1: | <?php declare(strict_types = 1); |
2: | |
3: | namespace PHPStan\Reflection; |
4: | |
5: | use PhpParser\Node; |
6: | use PHPStan\Analyser\Scope; |
7: | |
8: | |
9: | interface ReflectionProvider |
10: | { |
11: | |
12: | public function hasClass(string $className): bool; |
13: | |
14: | public function getClass(string $className): ClassReflection; |
15: | |
16: | public function getClassName(string $className): string; |
17: | |
18: | public function supportsAnonymousClasses(): bool; |
19: | |
20: | public function getAnonymousClassReflection( |
21: | Node\Stmt\Class_ $classNode, |
22: | Scope $scope, |
23: | ): ClassReflection; |
24: | |
25: | public function hasFunction(Node\Name $nameNode, ?NamespaceAnswerer $namespaceAnswerer): bool; |
26: | |
27: | public function getFunction(Node\Name $nameNode, ?NamespaceAnswerer $namespaceAnswerer): FunctionReflection; |
28: | |
29: | public function resolveFunctionName(Node\Name $nameNode, ?NamespaceAnswerer $namespaceAnswerer): ?string; |
30: | |
31: | public function hasConstant(Node\Name $nameNode, ?NamespaceAnswerer $namespaceAnswerer): bool; |
32: | |
33: | public function getConstant(Node\Name $nameNode, ?NamespaceAnswerer $namespaceAnswerer): GlobalConstantReflection; |
34: | |
35: | public function resolveConstantName(Node\Name $nameNode, ?NamespaceAnswerer $namespaceAnswerer): ?string; |
36: | |
37: | } |
38: | |