continue;
} // make sure the @ is preceded by non-catchable pattern
if (null !==
$this->lexer->token &&
$this->lexer->lookahead
['position'
] ===
$this->lexer->token
['position'
] +
strlen($this->lexer->token
['value'
])) { $this->lexer->
moveNext();
continue;
} // make sure the @ is followed by either a namespace separator, or
// an identifier token
if ((null ===
$peek =
$this->lexer->
glimpse()) || (DocLexer::T_NAMESPACE_SEPARATOR !==
$peek['type'
] && !
in_array($peek['type'
], self::
$classIdentifiers, true
)) ||
$peek['position'
] !==
$this->lexer->lookahead
['position'
] + 1
) { $this->lexer->
moveNext();
continue;
} $this->isNestedAnnotation = false;
if (false !==
$annot =
$this->
Annotation()) { $annotations[] =
$annot;
} }