diff --git a/src/language/parser.js b/src/language/parser.js index 21241ec17e..c70e048e46 100644 --- a/src/language/parser.js +++ b/src/language/parser.js @@ -196,15 +196,9 @@ function parseName(lexer: Lexer<*>): NameNode { */ function parseDocument(lexer: Lexer<*>): DocumentNode { const start = lexer.token; - expect(lexer, TokenKind.SOF); - const definitions = []; - do { - definitions.push(parseDefinition(lexer)); - } while (!skip(lexer, TokenKind.EOF)); - return { kind: Kind.DOCUMENT, - definitions, + definitions: many(lexer, TokenKind.SOF, parseDefinition, TokenKind.EOF), loc: loc(lexer, start), }; }