38 lines
964 B
PHP
38 lines
964 B
PHP
<?php
|
|
namespace DatabaseHelper\enums;
|
|
|
|
use InvalidArgumentException;
|
|
|
|
enum Operator
|
|
{
|
|
case EQUAL;
|
|
case NOT_EQUAL;
|
|
case GREATER;
|
|
case GREATER_EQUAL;
|
|
case LESS;
|
|
case LESS_EQUAL;
|
|
|
|
public static function fromString(string $operator): self {
|
|
return match ($operator) {
|
|
'=' => self::EQUAL,
|
|
'!=' => self::NOT_EQUAL,
|
|
'>' => self::GREATER,
|
|
'>=' => self::GREATER_EQUAL,
|
|
'<' => self::LESS,
|
|
'<=' => self::LESS_EQUAL,
|
|
default => throw new InvalidArgumentException("Invalid operator: $operator"),
|
|
};
|
|
}
|
|
|
|
public function toString(): string {
|
|
return match ($this) {
|
|
self::EQUAL => '=',
|
|
self::NOT_EQUAL => '!=',
|
|
self::GREATER => '>',
|
|
self::GREATER_EQUAL => '>=',
|
|
self::LESS => '<',
|
|
self::LESS_EQUAL => '<=',
|
|
};
|
|
}
|
|
}
|