code: protected static function getMergedDirectives(Schema $schema, array $directiveDefinitions) : array
      {
          $existingDirectives = array_map(static function (Directive $directive) {
              return static::extendDirective($directive);
          }, $schema->getDirectives());
  
          Utils::invariant(count($existingDirectives) > 0, 'schema must have default directives');
  
          return array_merge(
              $existingDirectives,
              array_map(static function (DirectiveDefinitionNode $directive) {
                  return static::$astBuilder->buildDirective($directive);
              }, $directiveDefinitions)
          );
      }
docs: @param DirectiveDefinitionNode[] $directiveDefinitions
  
  @return Directive[]