Automattic\WooCommerce\Vendor\GraphQL\Utils
SchemaPrinter::printFilteredSchema
Method of the class: SchemaPrinter{}
No Hooks.
Returns
null. Nothing (null).
Usage
$result = SchemaPrinter::printFilteredSchema( $schema, $directiveFilter, $typeFilter, $options ): string;
- $schema(Schema) (required)
- .
- $directiveFilter(callable) (required)
- .
- $typeFilter(callable) (required)
- .
- $options(array) (required)
- .
SchemaPrinter::printFilteredSchema() SchemaPrinter::printFilteredSchema code WC 10.9.1
protected static function printFilteredSchema(Schema $schema, callable $directiveFilter, callable $typeFilter, array $options): string
{
$directives = array_filter($schema->getDirectives(), $directiveFilter);
$types = array_filter($schema->getTypeMap(), $typeFilter);
if (isset($options['sortTypes']) && $options['sortTypes']) {
ksort($types);
}
$elements = [static::printSchemaDefinition($schema)];
foreach ($directives as $directive) {
$elements[] = static::printDirective($directive, $options);
}
foreach ($types as $type) {
$elements[] = static::printType($type, $options);
}
/** @phpstan-ignore arrayFilter.strict */
return implode("\n\n", array_filter($elements)) . "\n";
}