private function grabAttribsBeforeToken(Tokens $tokens, $index, array $tokenAttribsMap, array $attribs)
{
while (true) {
$token = $tokens[--$index];
if (!$token->isArray()) {
if ($token->equalsAny(array('{', '}', '(', ')'))) {
break;
}
continue;
}
// if token is attribute, set token attribute name
if (isset($tokenAttribsMap[$token->getId()])) {
$attribs[$tokenAttribsMap[$token->getId()]] = array('token' => clone $token, 'index' => $index);
continue;
}
if ($token->isGivenKind(array(T_WHITESPACE, T_COMMENT, T_DOC_COMMENT))) {
continue;
}
break;
}
return $attribs;
}