@@ 56-67 (lines=12) @@ | ||
53 | * |
|
54 | * @return RuleInterface |
|
55 | */ |
|
56 | protected static function equals($value, RuleInterface $next = null): RuleInterface |
|
57 | { |
|
58 | if ($value === null) { |
|
59 | $rule = new IsNull(); |
|
60 | } elseif ($value instanceof DateTimeInterface) { |
|
61 | $rule = new DateTimeEquals($value); |
|
62 | } else { |
|
63 | $rule = new ScalarEquals($value); |
|
64 | } |
|
65 | ||
66 | return $next === null ? $rule : new AndOperator(static::equals($value), $next); |
|
67 | } |
|
68 | ||
69 | /** |
|
70 | * @param mixed $value |
|
@@ 75-86 (lines=12) @@ | ||
72 | * |
|
73 | * @return RuleInterface |
|
74 | */ |
|
75 | protected static function notEquals($value, RuleInterface $next = null): RuleInterface |
|
76 | { |
|
77 | if ($value === null) { |
|
78 | $rule = new IsNotNull(); |
|
79 | } elseif ($value instanceof DateTimeInterface) { |
|
80 | $rule = new DateTimeNotEquals($value); |
|
81 | } else { |
|
82 | $rule = new ScalarNotEquals($value); |
|
83 | } |
|
84 | ||
85 | return $next === null ? $rule : new AndOperator(static::notEquals($value), $next); |
|
86 | } |
|
87 | ||
88 | /** |
|
89 | * @param array $scalars |