Completed
Branch 2.x (867c01)
by Akihito
09:30
created

LogicalAndMatcher::matchesMethod()   A

Complexity

Conditions 3
Paths 3

Size

Total Lines 10
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 6
CRAP Score 3

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 10
ccs 6
cts 6
cp 1
rs 9.4285
cc 3
eloc 5
nc 3
nop 2
crap 3
1
<?php
2
/**
3
 * This file is part of the Ray.Aop package
4
 *
5
 * @license http://opensource.org/licenses/bsd-license.php BSD
6
 */
7
namespace Ray\Aop\Matcher;
8
9
use Ray\Aop\AbstractMatcher;
10
11
class LogicalAndMatcher extends AbstractMatcher
12
{
13
    /**
14
     * {@inheritdoc}
15
     */
16 3
    public function matchesClass(\ReflectionClass $class, array $arguments)
17
    {
18 3
        $isAnd = true;
19 3
        foreach ($arguments as $matcher) {
20
            /* @var $matcher AbstractMatcher */
21 3
            $isAnd = $isAnd && $matcher->matchesClass($class, $matcher->getArguments());
22 3
        }
23
24 3
        return $isAnd;
25
    }
26
27
    /**
28
     * {@inheritdoc}
29
     */
30 1
    public function matchesMethod(\ReflectionMethod $method, array $arguments)
31
    {
32 1
        $isAnd = true;
33 1
        foreach ($arguments as $matcher) {
34
            /* @var $matcher AbstractMatcher */
35 1
            $isAnd = $isAnd && $matcher->matchesMethod($method, $matcher->getArguments());
36 1
        }
37
38 1
        return $isAnd;
39
    }
40
}
41