![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/framework/GraphQl/Query/Resolver/Argument/Filter/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Framework\GraphQl\Query\Resolver\Argument\Filter; use Magento\Framework\Phrase; /** * Operator is the part in the find argument that does logic branching. * * Example: {"and": { "or": {} } } */ class Operator { /** * Default Operator */ const __DEFAULT = self::AND; /** * OR operator */ const OR = 'or'; /** * AND operator */ const AND = 'and'; /** * @var string */ private $value; /** * @param string|null $value * @throws \Magento\Framework\GraphQl\Exception\GraphQlInputException */ public function __construct(string $value = null) { if (!$value) { $value = self::AND; } $type = new \ReflectionClass($this); if (!in_array($value, $type->getConstants())) { throw new \Magento\Framework\GraphQl\Exception\GraphQlInputException( new Phrase('%1 operator not supported', [$value]) ); } $this->value = $value; } /** * Get the operators defined by this class as constants * * @return array */ public static function getOperators() : array { $type = new \ReflectionClass(Operator::class); return $type->getConstants(); } /** * Convert operator to string * * @return string */ public function __toString() : string { return strtoupper($this->value); } }