Issues (101)

src/di/VisitorInterface.php (2 issues)

Labels
Severity
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Ray\Di;
6
7
use Ray\Aop\Bind as AopBind;
8
use ReflectionParameter;
9
10
/**
11
 * Visits a Dependency
12
 *
13
 * @psalm-import-type SetterMethodsList from Types
14
 * @psalm-import-type ArgumentsList from Types
15
 */
16
interface VisitorInterface
17
{
18
    /**
19
     * Visits a Dependency
20
     *
21
     * @return mixed|void
22
     */
23
    public function visitDependency(NewInstance $newInstance, ?string $postConstruct, bool $isSingleton);
24
25
    /**
26
     * Visits a Provider
27
     *
28
     * @return mixed|void
29
     */
30
    public function visitProvider(Dependency $dependency, string $context, bool $isSingleton);
31
32
    /**
33
     * Visits an Instance
34
     *
35
     * @param mixed $value
36
     *
37
     * @return mixed|void
38
     */
39
    public function visitInstance($value);
40
41
    /**
42
     * Visits an AspectBind
43
     *
44
     * @return mixed|void
45
     */
46
    public function visitAspectBind(AopBind $aopBind);
47
48
    /**
49
     * Visits a New Instance
50
     *
51
     * @return mixed|void
52
     */
53
    public function visitNewInstance(
54
        string $class,
55
        SetterMethods $setterMethods,
56
        ?Arguments $arguments,
57
        ?AspectBind $bind
58
    );
59
60
    /**
61
     * Visits Setter Methods
62
     *
63
     * @param SetterMethodsList $setterMethods
0 ignored issues
show
The type Ray\Di\SetterMethodsList was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
64
     *
65
     * @return mixed|void
66
     */
67
    public function visitSetterMethods(array $setterMethods);
68
69
    /**
70
     * Visits a Setter Method
71
     *
72
     * @return mixed|void
73
     */
74
    public function visitSetterMethod(string $method, Arguments $arguments);
75
76
    /**
77
     * Visits Arguments
78
     *
79
     * @param ArgumentsList $arguments
0 ignored issues
show
The type Ray\Di\ArgumentsList was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
80
     *
81
     * @return mixed|void
82
     */
83
    public function visitArguments(array $arguments);
84
85
    /**
86
     * Visits an Argument
87
     *
88
     * @param mixed $defaultValue
89
     *
90
     * @return mixed|void
91
     */
92
    public function visitArgument(
93
        string $index,
94
        bool $isDefaultAvailable,
95
        $defaultValue,
96
        ReflectionParameter $parameter
97
    );
98
}
99