/** * {@inheritdoc} */ public function apply($instance, stdClass $schema, Context $context, Walker $walker) { $hasMatch = false; foreach ($schema->enum as $value) { if (Utils::areEqual($instance, $value)) { $hasMatch = true; break; } } if (!$hasMatch) { $context->addViolation('should match one element in enum'); } }
/** * {@inheritdoc} */ public function apply($instance, stdClass $schema, Context $context, Walker $walker) { if ($schema->uniqueItems === true) { foreach ($instance as $i => $aItem) { foreach ($instance as $j => $bItem) { if ($i !== $j && Utils::areEqual($aItem, $bItem)) { $context->addViolation('elements must be unique'); break 2; } } } } }