Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. AbstractComparison.php

class AbstractComparison

Used for the comparison of values.

@author Daniel Holmes <daniel@danielholmes.org> @author Bernhard Schussek <bschussek@gmail.com>

Hierarchy

  • class \Symfony\Component\Validator\Constraint
    • class \Symfony\Component\Validator\Constraints\AbstractComparison extends \Symfony\Component\Validator\Constraint

Expanded class hierarchy of AbstractComparison

File

vendor/symfony/validator/Constraints/AbstractComparison.php, line 25

Namespace

Symfony\Component\Validator\Constraints
View source
abstract class AbstractComparison extends Constraint {
    public string $message;
    public mixed $value = null;
    public ?string $propertyPath = null;
    public function __construct(mixed $value = null, ?string $propertyPath = null, ?string $message = null, ?array $groups = null, mixed $payload = null, array $options = []) {
        if (\is_array($value)) {
            $options = array_merge($value, $options);
        }
        elseif (null !== $value) {
            $options['value'] = $value;
        }
        parent::__construct($options, $groups, $payload);
        $this->message = $message ?? $this->message;
        $this->propertyPath = $propertyPath ?? $this->propertyPath;
        if (null === $this->value && null === $this->propertyPath) {
            throw new ConstraintDefinitionException(\sprintf('The "%s" constraint requires either the "value" or "propertyPath" option to be set.', static::class));
        }
        if (null !== $this->value && null !== $this->propertyPath) {
            throw new ConstraintDefinitionException(\sprintf('The "%s" constraint requires only one of the "value" or "propertyPath" options to be set, not both.', static::class));
        }
        if (null !== $this->propertyPath && !class_exists(PropertyAccess::class)) {
            throw new LogicException(\sprintf('The "%s" constraint requires the Symfony PropertyAccess component to use the "propertyPath" option. Try running "composer require symfony/property-access".', static::class));
        }
    }
    public function getDefaultOption() : ?string {
        return 'value';
    }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
AbstractComparison::$message public property 9
AbstractComparison::$propertyPath public property
AbstractComparison::$value public property
AbstractComparison::getDefaultOption public function Returns the name of the default option. Overrides Constraint::getDefaultOption
AbstractComparison::__construct public function Initializes the constraint with options. Overrides Constraint::__construct
Constraint::$groups public property The groups that the constraint belongs to.
Constraint::$payload public property Domain-specific data attached to a constraint.
Constraint::addImplicitGroupName public function Adds the given group if this constraint is in the Default group. 2
Constraint::CLASS_CONSTRAINT public constant Marks a constraint that can be put onto classes.
Constraint::DEFAULT_GROUP public constant The name of the group given to all constraints with no explicit group.
Constraint::ERROR_NAMES protected constant Maps error codes to the names of their constants. 59
Constraint::getErrorName public static function Returns the name of the given error code.
Constraint::getRequiredOptions public function Returns the name of the required options. 22
Constraint::getTargets public function Returns whether the constraint can be put onto classes, properties or
both.
8
Constraint::normalizeOptions protected function
Constraint::PROPERTY_CONSTRAINT public constant Marks a constraint that can be put onto properties.
Constraint::validatedBy public function Returns the name of the class that validates this constraint. 9
Constraint::__get public function Returns the value of a lazily initialized option. 2
Constraint::__isset public function 1
Constraint::__set public function Sets the value of a lazily initialized option. 1
Constraint::__sleep public function Optimizes the serialized value to minimize storage space.
RSS feed
Powered by Drupal