Completed
Push — master ( a600c8...2307b6 )
by Vladimir
03:01
created

Activator::in()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 2
dl 0
loc 4
ccs 2
cts 2
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace FondBot\Conversation;
6
7
use Illuminate\Support\Collection;
8
use FondBot\Conversation\Activators\In;
9
use FondBot\Conversation\Activators\Exact;
10
use FondBot\Conversation\Activators\Regex;
11
use FondBot\Conversation\Activators\Payload;
12
use FondBot\Conversation\Activators\Contains;
13
use FondBot\Conversation\Activators\Attachment;
14
15
class Activator
16
{
17
    /**
18
     * Create "Exact" activator.
19
     *
20
     * @param string $value
21
     *
22
     * @param bool $caseSensitive
23
     *
24
     * @return Exact
25
     */
26 2
    public static function exact(string $value, bool $caseSensitive = false): Exact
27
    {
28 2
        return new Exact($value, $caseSensitive);
29
    }
30
31
    /**
32
     * @param string|array $needles
33
     *
34
     * @return Contains
35
     */
36 1
    public static function contains($needles): Contains
37
    {
38 1
        return new Contains($needles);
39
    }
40
41
    /**
42
     * Create "Regex" activator.
43
     *
44
     * @param string $value
45
     *
46
     * @return Regex
47
     */
48 1
    public static function regex(string $value): Regex
49
    {
50 1
        return new Regex($value);
51
    }
52
53
    /**
54
     * Create "In" activator.
55
     *
56
     * @param array|Collection $values
57
     * @param bool $strict
58
     *
59
     * @return In
60
     */
61 1
    public static function in($values, bool $strict = true): In
62
    {
63 1
        return new In($values, $strict);
0 ignored issues
show
Unused Code introduced by
The call to In::__construct() has too many arguments starting with $strict.

This check compares calls to functions or methods with their respective definitions. If the call has more arguments than are defined, it raises an issue.

If a function is defined several times with a different number of parameters, the check may pick up the wrong definition and report false positives. One codebase where this has been known to happen is Wordpress.

In this case you can add the @ignore PhpDoc annotation to the duplicate definition and it will be ignored.

Loading history...
64
    }
65
66
    /**
67
     * Create "Attachment" activator.
68
     *
69
     * @param string|null $type
70
     *
71
     * @return Attachment
72
     */
73 1
    public static function attachment(string $type = null): Attachment
74
    {
75 1
        return new Attachment($type);
76
    }
77
78
    /**
79
     * Create "Payload" activator.
80
     *
81
     * @param string $value
82
     *
83
     * @return Payload
84
     */
85 1
    public static function payload(string $value): Payload
86
    {
87 1
        return new Payload($value);
88
    }
89
}
90