$resultFWS =
$this->
parseLocalFWS();
if ($resultFWS->
isInvalid()) { return $resultFWS;
} $this->lexer->
moveNext();
} $this->lexer->
stopRecording();
$this->localPart =
rtrim($this->lexer->
getAccumulatedValues(), '@'
);
if (strlen($this->localPart
) > LocalTooLong::LOCAL_PART_LENGTH
) { $this->warnings
[LocalTooLong::CODE
] =
new LocalTooLong();
} return new ValidEmail();
} protected function validateTokens(bool
$hasComments): Result
{ if (isset(self::INVALID_TOKENS
[$this->lexer->current->type
])) { return new InvalidEmail(new ExpectingATEXT('Invalid token found'
),
$this->lexer->current->value
);
}