@@ 25-27 (lines=3) @@ | ||
22 | $totalLength = 0; |
|
23 | ||
24 | while ($this->lexer->token['type'] !== EmailLexer::S_AT && null !== $this->lexer->token['type']) { |
|
25 | if ($this->lexer->token['type'] === EmailLexer::S_DOT && null === $this->lexer->getPrevious()['type']) { |
|
26 | throw new DotAtStart(); |
|
27 | } |
|
28 | ||
29 | $closingQuote = $this->checkDQUOTE($closingQuote); |
|
30 | if ($closingQuote && $parseDQuote) { |
@@ 68-71 (lines=4) @@ | ||
65 | */ |
|
66 | protected function validateQuotedPair() |
|
67 | { |
|
68 | if (!($this->lexer->token['type'] === EmailLexer::INVALID |
|
69 | || $this->lexer->token['type'] === EmailLexer::C_DEL)) { |
|
70 | throw new ExpectingQPair(); |
|
71 | } |
|
72 | ||
73 | $this->warnings[QuotedPart::CODE] = |
|
74 | new QuotedPart($this->lexer->getPrevious()['type'], $this->lexer->token['type']); |
|
@@ 127-129 (lines=3) @@ | ||
124 | throw new AtextAfterCFWS(); |
|
125 | } |
|
126 | ||
127 | if ($this->lexer->token['type'] === EmailLexer::S_LF || $this->lexer->token['type'] === EmailLexer::C_NUL) { |
|
128 | throw new ExpectingCTEXT(); |
|
129 | } |
|
130 | ||
131 | if ($this->lexer->isNextToken(EmailLexer::S_AT) || $previous['type'] === EmailLexer::S_AT) { |
|
132 | $this->warnings[CFWSNearAt::CODE] = new CFWSNearAt(); |