value = $value; parent::__construct(''); } /** * @inheritDoc */ public function validate(ValidationContext $context, Schema $schema): ?ValidationError { $pattern = $this->value->data($context->rootData(), $context->currentDataPath(), $this); if ($pattern === $this || !is_string($pattern) || !Helper::isValidPattern($pattern)) { return $this->error($schema, $context, 'pattern', 'Invalid $data', [ 'pointer' => (string)$this->value, ]); } $this->pattern = $pattern; $this->regex = Helper::patternToRegex($pattern); $ret = parent::validate($context, $schema); $this->pattern = $this->regex = null; return $ret; } }