1: | <?php declare(strict_types = 1); |
2: | |
3: | namespace PHPStan\Reflection; |
4: | |
5: | /** |
6: | * This is the interface custom properties class reflection extensions implement. |
7: | * |
8: | * To register it in the configuration file use the `phpstan.broker.propertiesClassReflectionExtension` service tag: |
9: | * |
10: | * ``` |
11: | * services: |
12: | * - |
13: | * class: App\PHPStan\MyPropertiesClassReflectionExtension |
14: | * tags: |
15: | * - phpstan.broker.propertiesClassReflectionExtension |
16: | * ``` |
17: | * |
18: | * Learn more: https://phpstan.org/developing-extensions/class-reflection-extensions |
19: | * |
20: | * @api |
21: | */ |
22: | interface PropertiesClassReflectionExtension |
23: | { |
24: | |
25: | public function hasProperty(ClassReflection $classReflection, string $propertyName): bool; |
26: | |
27: | public function getProperty(ClassReflection $classReflection, string $propertyName): PropertyReflection; |
28: | |
29: | } |
30: |