We could not synchronize checks via GitHub's checks API since Scrutinizer's GitHub App is not installed for this repository.
| 1 | <?php  | 
            ||
| 23 | abstract class AbstractRelated implements Rule  | 
            ||
| 24 | { | 
            ||
| 25 | /**  | 
            ||
| 26 | * @var string  | 
            ||
| 27 | */  | 
            ||
| 28 | private $reference;  | 
            ||
| 29 | |||
| 30 | /**  | 
            ||
| 31 | * @var Rule|null  | 
            ||
| 32 | */  | 
            ||
| 33 | private $rule;  | 
            ||
| 34 | |||
| 35 | /**  | 
            ||
| 36 | * @var bool  | 
            ||
| 37 | */  | 
            ||
| 38 | private $mandatory = true;  | 
            ||
| 39 | |||
| 40 | 1 | public function __construct($reference, Rule $rule = null, bool $mandatory = true)  | 
            |
| 46 | |||
| 47 | /**  | 
            ||
| 48 | * @param string $input  | 
            ||
| 49 | *  | 
            ||
| 50 | * @return bool  | 
            ||
| 51 | */  | 
            ||
| 52 | abstract protected function hasReference($input, $reference): bool;  | 
            ||
| 53 | |||
| 54 | /**  | 
            ||
| 55 | * @param string $input  | 
            ||
| 56 | *  | 
            ||
| 57 | * @return mixed  | 
            ||
| 58 | */  | 
            ||
| 59 | abstract protected function getReferenceValue($input, $reference);  | 
            ||
| 60 | |||
| 61 | /**  | 
            ||
| 62 |      * {@inheritdoc} | 
            ||
| 63 | */  | 
            ||
| 64 | 21 | public function apply($input): Result  | 
            |
| 81 | }  | 
            ||
| 82 |