-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
/
Copy pathLevelName.php
57 lines (51 loc) · 1.26 KB
/
LevelName.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<?php declare(strict_types=1);
/*
* This file is part of the Monolog package.
*
* (c) Jordi Boggiano <[email protected]>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Monolog;
/**
* @see Level
*/
enum LevelName: string
{
case Debug = 'DEBUG';
case Info = 'INFO';
case Notice = 'NOTICE';
case Warning = 'WARNING';
case Error = 'ERROR';
case Critical = 'CRITICAL';
case Alert = 'ALERT';
case Emergency = 'EMERGENCY';
public static function fromLevel(Level $level): self
{
return match ($level) {
Level::Debug => self::Debug,
Level::Info => self::Info,
Level::Notice => self::Notice,
Level::Warning => self::Warning,
Level::Error => self::Error,
Level::Critical => self::Critical,
Level::Alert => self::Alert,
Level::Emergency => self::Emergency,
};
}
public function toLevel(): Level
{
return Level::fromLevelName($this);
}
public const VALUES = [
'DEBUG',
'INFO',
'NOTICE',
'WARNING',
'ERROR',
'CRITICAL',
'ALERT',
'EMERGENCY',
];
}