Adds a constraint to this element.
Constraint $constraint:
Overrides ElementMetadata::addConstraint
public function addConstraint(Constraint $constraint) {
if (!in_array(Constraint::PROPERTY_CONSTRAINT, (array) $constraint
->getTargets())) {
throw new ConstraintDefinitionException(sprintf('The constraint %s cannot be put on properties or getters', get_class($constraint)));
}
if ($constraint instanceof Valid) {
$this->cascaded = true;
/* @var Valid $constraint */
$this->collectionCascaded = $constraint->traverse;
$this->collectionCascadedDeeply = $constraint->deep;
}
else {
parent::addConstraint($constraint);
}
return $this;
}