Lines 100.00% 5 / 5
Methods 100.00% 1 / 1
Classes 100.00% 1 / 1
Name Lines Methods CRAP
 canEnter 100.00% 5 / 5 100.00% 1 / 1 8
7enum WorkerHandleState
8{
9    case Starting;
10    case Ready;
11    case Stopping;
12    case Terminated;
13
14    public function canEnter(self $next): bool
15    {
16        return match ($this) {
17            self::Starting => $next === self::Ready || $next === self::Stopping || $next === self::Terminated,
18            self::Ready => $next === self::Stopping || $next === self::Terminated,
19            self::Stopping => $next === self::Terminated,
20            self::Terminated => false,
21        };
22    }
23}