REDROOM
PHP 8.2.30
Path:
Logout
Edit File
Size: 2.32 KB
Close
/proc/thread-self/root/home/byroehnu/easetack.com/vendor/egulias/email-validator/src/EmailParser.php
Text
Base64
<?php namespace Egulias\EmailValidator; use Egulias\EmailValidator\Result\Result; use Egulias\EmailValidator\Parser\LocalPart; use Egulias\EmailValidator\Parser\DomainPart; use Egulias\EmailValidator\Result\ValidEmail; use Egulias\EmailValidator\Result\InvalidEmail; use Egulias\EmailValidator\Warning\EmailTooLong; use Egulias\EmailValidator\Result\Reason\NoLocalPart; class EmailParser extends Parser { public const EMAIL_MAX_LENGTH = 254; /** * @var string */ protected $domainPart = ''; /** * @var string */ protected $localPart = ''; public function parse(string $str): Result { $result = parent::parse($str); $this->addLongEmailWarning($this->localPart, $this->domainPart); return $result; } protected function preLeftParsing(): Result { if (!$this->hasAtToken()) { return new InvalidEmail(new NoLocalPart(), $this->lexer->current->value); } return new ValidEmail(); } protected function parseLeftFromAt(): Result { return $this->processLocalPart(); } protected function parseRightFromAt(): Result { return $this->processDomainPart(); } private function processLocalPart(): Result { $localPartParser = new LocalPart($this->lexer); $localPartResult = $localPartParser->parse(); $this->localPart = $localPartParser->localPart(); $this->warnings = [...$localPartParser->getWarnings(), ...$this->warnings]; return $localPartResult; } private function processDomainPart(): Result { $domainPartParser = new DomainPart($this->lexer); $domainPartResult = $domainPartParser->parse(); $this->domainPart = $domainPartParser->domainPart(); $this->warnings = [...$domainPartParser->getWarnings(), ...$this->warnings]; return $domainPartResult; } public function getDomainPart(): string { return $this->domainPart; } public function getLocalPart(): string { return $this->localPart; } private function addLongEmailWarning(string $localPart, string $parsedDomainPart): void { if (strlen($localPart . '@' . $parsedDomainPart) > self::EMAIL_MAX_LENGTH) { $this->warnings[EmailTooLong::CODE] = new EmailTooLong(); } } }
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 4 × Files: 5
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
Parser
DIR
-
drwxrwxrwx
2025-05-16 16:14:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Result
DIR
-
drwxrwxrwx
2025-05-16 16:14:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Validation
DIR
-
drwxrwxrwx
2025-05-16 16:14:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Warning
DIR
-
drwxrwxrwx
2025-05-16 16:14:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
EmailLexer.php
8.50 KB
lrw-rw-rw-
2025-03-06 22:45:56
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
EmailParser.php
2.32 KB
lrw-rw-rw-
2025-03-06 22:45:56
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
EmailValidator.php
1.21 KB
lrw-rw-rw-
2025-03-06 22:45:56
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
MessageIDParser.php
2.29 KB
lrw-rw-rw-
2025-03-06 22:45:56
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Parser.php
1.75 KB
lrw-rw-rw-
2025-03-06 22:45:56
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).