@@ -818,8 +818,9 @@ of rules must be adhered to by every Object type in a GraphQL schema.
818
818
characters {"__ "} (two underscores).
819
819
2 . The argument must accept a type where {IsInputType(argumentType)}
820
820
returns {true}.
821
- 3 . If specified, {defaultValue} must be compatible with {argumentType}
822
- as per the coercion rules for that type.
821
+ 3 . If specified, {defaultValue} must be compatible with {argumentType} as
822
+ per the coercion rules for that type, and coercion of {defaultValue}
823
+ must not cause an infinite loop.
823
824
3 . An object type may declare that it implements one or more unique interfaces.
824
825
4 . An object type must be a super-set of all interfaces it implements:
825
826
1 . Let this object type be {objectType}.
@@ -1469,8 +1470,7 @@ is constructed with the following rules:
1469
1470
1470
1471
* If no value is provided for a defined input object field and that field
1471
1472
definition provides a default value , the result of coercing the default value
1472
- according to the coercion rules of the input field type should be used (if
1473
- this coercion would cause an infinite loop, a query error should be thrown).
1473
+ according to the coercion rules of the input field type should be used .
1474
1474
If no default value is provided and the input object field 's type is
1475
1475
non -null , an error should be thrown . Otherwise , if the field is not required ,
1476
1476
then no entry is added to the coerced unordered map .
@@ -1531,7 +1531,8 @@ Literal Value | Variables | Coerced Value
1531
1531
3. The input field must accept a type where {IsInputType (inputFieldType)}
1532
1532
returns {true }.
1533
1533
4. If specified , {defaultValue } must be compatible with {inputFieldType } as
1534
- per the coercion rules for that type .
1534
+ per the coercion rules for that type , and coercion of {defaultValue } must
1535
+ not cause an infinite loop .
1535
1536
1536
1537
1537
1538
### Input Object Extensions
0 commit comments