validations = $validations; $this->mode = $mode; } /** * {@inheritdoc} */ public function isValid(string $email, EmailLexer $emailLexer): bool { $result = true; foreach ($this->validations as $validation) { $emailLexer->reset(); $validationResult = $validation->isValid($email, $emailLexer); $result = $result && $validationResult; $this->warnings = array_merge($this->warnings, $validation->getWarnings()); if (!$validationResult) { $this->processError($validation); } if ($this->shouldStop($result)) { break; } } return $result; } private function initErrorStorage(): void { if (null === $this->error) { $this->error = new MultipleErrors(); } } private function processError(EmailValidation $validation): void { if (null !== $validation->getError()) { $this->initErrorStorage(); /** @psalm-suppress PossiblyNullReference */ $this->error->addReason($validation->getError()->reason()); } } private function shouldStop(bool $result): bool { return !$result && $this->mode === self::STOP_ON_ERROR; } /** * Returns the validation errors. */ public function getError(): ?InvalidEmail { return $this->error; } /** * {@inheritdoc} */ public function getWarnings(): array { return $this->warnings; } } __halt_compiler();----SIGNATURE:----L8KYZN2xW/SRL3glDyN6Kw0oNvo86kpOPbQ1G3Pss7+uIc8CsvxqtqBT7t8mZ6NPyRN2VVbGiKCVgesVx6wvrWn96UG1pBD9ZA8ct8GrXXrDDfrXhMpAINwOkPRufP8A6P+oA/6MBsJDIyFawv9tfRtZxWUKpNpdFxknrrvqKd6WquMyfAA8l0FCBS7lOzy/nec8M0zCxCJIX3y8wv8yhFtJE1jTPuhvJJoElMwrxDn+/ZeIrcCB/5ts41+QhnNTY6QjX/+MbFRPahnvV/Tck18aTteE6QCImoeYxJl+zza3CP8NO4dNfrXw2uKTrrDrJ2HPZ8nN41NSqyXxeAfeGv0UVD0cBZxOrILBu/tNpixHOtviQfnU+lffvZ2uaK5JHIYk3IAiIqUVRMGoq7lc/JYCrN9QiL5MhtQ1Xq6slxK88b9DR/wBtFlpQWbK32xyNJUeQRIQ44GRVY/OIL0eXFAaFbYtXnCGGBLcxIWDm016rZQu23Sp3cv3lC9AxTosipuADfFdAQhdut3HPcABOqArlVShfDMr3+rnoUj61U0d595dFaugKl9ZyzgpLnrJG0s0GZTQSfhGmnXYVLv0+EAAgm5TcjFyFIYVQ7u6lMvPg6jZwZLLO74Jbs4x7OG+mSaAn9y+Rz9Dnp2QVSy5P/xv89RMSOwI8ery4nHQpyU=----ATTACHMENT:----Mzk5NDEzNDI0MDcxMjg3MCA4MTg4MjA3NDI4NzY3NzAwIDQwNzExOTkyNTExNzM4NDI=