class DocumentSerializer in GraphQL 8.4
Cleans up AST recursively for serialization.
Hierarchy
- class \Drupal\graphql\GraphQL\Utility\DocumentSerializer
Expanded class hierarchy of DocumentSerializer
1 file declares its use of DocumentSerializer
- Executor.php in src/
GraphQL/ Execution/ Executor.php
File
- src/
GraphQL/ Utility/ DocumentSerializer.php, line 11
Namespace
Drupal\graphql\GraphQL\UtilityView source
class DocumentSerializer {
/**
* Turn the AST document to a serializable array.
*
* @param \GraphQL\Language\AST\DocumentNode $document
*
* @return array
*/
public static function serializeDocument(DocumentNode $document) {
return static::sanitizeRecursive(AST::toArray($document));
}
/**
* Recursively turn AST items into a serializable array.
*
* @param array $item
*
* @return array
*/
public static function sanitizeRecursive(array $item) {
unset($item['loc']);
foreach ($item as &$value) {
if (is_array($value)) {
$value = static::sanitizeRecursive($value);
}
}
return $item;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DocumentSerializer:: |
public static | function | Recursively turn AST items into a serializable array. | |
DocumentSerializer:: |
public static | function | Turn the AST document to a serializable array. |