@@ -316,26 +316,16 @@ export function buildASTSchema(ast: DocumentNode): GraphQLSchema {
316
316
}
317
317
318
318
function typeDefNamed(typeName: string): GraphQLNamedType {
319
- if ( innerTypeMap [ typeName ] ) {
320
- return innerTypeMap [ typeName ] ;
321
- }
322
-
323
- if (!nodeMap[typeName]) {
324
- throw new Error ( `Type "${ typeName } " not found in document.` ) ;
325
- }
326
-
327
- const innerTypeDef = makeSchemaDef(nodeMap[typeName]);
328
- if (!innerTypeDef) {
329
- throw new Error ( `Nothing constructed for "${ typeName } ".` ) ;
319
+ if ( ! innerTypeMap [ typeName ] ) {
320
+ if ( ! nodeMap [ typeName ] ) {
321
+ throw new Error ( `Type "${ typeName } " not found in document.` ) ;
322
+ }
323
+ innerTypeMap[typeName] = makeSchemaDef(nodeMap[typeName]);
330
324
}
331
- innerTypeMap[typeName] = innerTypeDef;
332
- return innerTypeDef;
325
+ return innerTypeMap [ typeName ] ;
333
326
}
334
327
335
328
function makeSchemaDef ( def ) {
336
- if ( ! def ) {
337
- throw new Error ( 'def must be defined' ) ;
338
- }
339
329
switch ( def . kind ) {
340
330
case Kind . OBJECT_TYPE_DEFINITION :
341
331
return makeTypeDef ( def ) ;
@@ -403,9 +393,8 @@ export function buildASTSchema(ast: DocumentNode): GraphQLSchema {
403
393
}
404
394
405
395
function makeInterfaceDef(def: InterfaceTypeDefinitionNode) {
406
- const typeName = def . name . value ;
407
396
return new GraphQLInterfaceType ( {
408
- name : typeName ,
397
+ name : def . name . value ,
409
398
description : getDescription ( def ) ,
410
399
fields : ( ) => makeFieldDefMap ( def ) ,
411
400
astNode : def ,
@@ -414,7 +403,7 @@ export function buildASTSchema(ast: DocumentNode): GraphQLSchema {
414
403
}
415
404
416
405
function makeEnumDef(def: EnumTypeDefinitionNode) {
417
- const enumType = new GraphQLEnumType ( {
406
+ return new GraphQLEnumType ( {
418
407
name : def . name . value ,
419
408
description : getDescription ( def ) ,
420
409
values : keyValMap (
@@ -428,8 +417,6 @@ export function buildASTSchema(ast: DocumentNode): GraphQLSchema {
428
417
) ,
429
418
astNode : def ,
430
419
} ) ;
431
-
432
- return enumType ;
433
420
}
434
421
435
422
function makeUnionDef(def: UnionTypeDefinitionNode) {
0 commit comments