class Constraint

Same name in this branch
  1. 10 core/lib/Drupal/Core/Validation/Attribute/Constraint.php \Drupal\Core\Validation\Attribute\Constraint
  2. 10 core/lib/Drupal/Component/Version/Constraint.php \Drupal\Component\Version\Constraint
Same name in other branches
  1. 9 core/lib/Drupal/Core/Validation/Annotation/Constraint.php \Drupal\Core\Validation\Annotation\Constraint
  2. 9 core/lib/Drupal/Component/Version/Constraint.php \Drupal\Component\Version\Constraint
  3. 8.9.x core/lib/Drupal/Core/Validation/Annotation/Constraint.php \Drupal\Core\Validation\Annotation\Constraint
  4. 8.9.x core/lib/Drupal/Component/Version/Constraint.php \Drupal\Component\Version\Constraint
  5. 11.x core/lib/Drupal/Core/Validation/Attribute/Constraint.php \Drupal\Core\Validation\Attribute\Constraint
  6. 11.x core/lib/Drupal/Core/Validation/Annotation/Constraint.php \Drupal\Core\Validation\Annotation\Constraint
  7. 11.x core/lib/Drupal/Component/Version/Constraint.php \Drupal\Component\Version\Constraint

Defines a validation constraint annotation object.

Plugin Namespace: Plugin\Validation\Constraint

For a working example, see \Drupal\Core\Validation\Plugin\Validation\Constraint\LengthConstraint

Hierarchy

Expanded class hierarchy of Constraint

See also

\Drupal\Core\Validation\ConstraintManager

\Symfony\Component\Validator\Constraint

hook_validation_constraint_alter()

Plugin API

Related topics

1 string reference to 'Constraint'
DependencyTest::testSerialization in core/tests/Drupal/Tests/Core/Extension/DependencyTest.php
Ensures that constraint objects are not serialized.
1 class is annotated with Constraint
MediaMappingsConstraint in core/modules/media/src/Plugin/Validation/Constraint/MediaMappingsConstraint.php
Validates media mappings.

File

core/lib/Drupal/Core/Validation/Annotation/Constraint.php, line 22

Namespace

Drupal\Core\Validation\Annotation
View source
class Constraint extends Plugin {
    
    /**
     * The constraint plugin ID.
     *
     * @var string
     */
    public $id;
    
    /**
     * The human-readable name of the constraint plugin.
     *
     * @ingroup plugin_translatable
     *
     * @var string|\Drupal\Core\Annotation\Translation
     */
    public $label;
    
    /**
     * DataType plugin IDs for which this constraint applies.
     *
     * Valid values are any types registered by the typed data API, or an array
     * of multiple type names. For supporting all types, FALSE may be specified.
     * The key defaults to an empty array, which indicates no types are supported.
     *
     * @var string|string[]|false
     *
     * @see \Drupal\Core\TypedData\Annotation\DataType
     */
    public $type = [];

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
Constraint::$id public property The constraint plugin ID.
Constraint::$label public property The human-readable name of the constraint plugin.
Constraint::$type public property DataType plugin IDs for which this constraint applies.
Plugin::$definition protected property The plugin definition read from the class annotation. 1
Plugin::get public function Gets the value of an annotation. Overrides AnnotationInterface::get 6
Plugin::getClass public function Gets the class of the annotated class. Overrides AnnotationInterface::getClass 1
Plugin::getId public function Gets the unique ID for this annotated class. Overrides AnnotationInterface::getId
Plugin::getProvider public function Gets the name of the provider of the annotated class. Overrides AnnotationInterface::getProvider 1
Plugin::parse protected function Parses an annotation into its definition.
Plugin::setClass public function Sets the class of the annotated class. Overrides AnnotationInterface::setClass 1
Plugin::setProvider public function Sets the name of the provider of the annotated class. Overrides AnnotationInterface::setProvider
Plugin::__construct public function Constructs a Plugin object. 3

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.