GraphQL\Validator\Messages::typeIncompatibleSpreadMessage PHP Method

typeIncompatibleSpreadMessage() static public method

static public typeIncompatibleSpreadMessage ( $fragName, $parentType, $fragType )
    static function typeIncompatibleSpreadMessage($fragName, $parentType, $fragType)
    {
        return "Fragment \"{$fragName}\" cannot be spread here as objects of " . "type \"{$parentType}\" can never be of type \"{$fragType}\".";
    }

Usage Example

 public function __invoke(ValidationContext $context)
 {
     return [Node::INLINE_FRAGMENT => function (InlineFragment $node) use($context) {
         $fragType = Type::getUnmodifiedType($context->getType());
         $parentType = $context->getParentType();
         if ($fragType && $parentType && !$this->doTypesOverlap($fragType, $parentType)) {
             return new Error(Messages::typeIncompatibleAnonSpreadMessage($parentType, $fragType), [$node]);
         }
     }, Node::FRAGMENT_SPREAD => function (FragmentSpread $node) use($context) {
         $fragName = $node->name->value;
         $fragType = Type::getUnmodifiedType($this->getFragmentType($context, $fragName));
         $parentType = $context->getParentType();
         if ($fragType && $parentType && !$this->doTypesOverlap($fragType, $parentType)) {
             return new Error(Messages::typeIncompatibleSpreadMessage($fragName, $parentType, $fragType), [$node]);
         }
     }];
 }
All Usage Examples Of GraphQL\Validator\Messages::typeIncompatibleSpreadMessage