function parseField()
{
$start = $this->lexer->token;
$nameOrAlias = $this->parseName();
if ($this->skip(Token::COLON)) {
$alias = $nameOrAlias;
$name = $this->parseName();
} else {
$alias = null;
$name = $nameOrAlias;
}
return new FieldNode(['alias' => $alias, 'name' => $name, 'arguments' => $this->parseArguments(), 'directives' => $this->parseDirectives(), 'selectionSet' => $this->peek(Token::BRACE_L) ? $this->parseSelectionSet() : null, 'loc' => $this->loc($start)]);
}