module GraphQL::Language::Generation

Exposes {.generate}, which turns AST nodes back into query strings.

Public Instance Methods

generate(node, indent: "", printer: GraphQL::Language::Printer.new) click to toggle source

Turn an AST node back into a string.

@example Turning a document into a query

document = GraphQL.parse(query_string)
GraphQL::Language::Generation.generate(document)
# => "{ ... }"

@param node [GraphQL::Language::Nodes::AbstractNode] an AST node to recursively stringify @param indent [String] Whitespace to add to each printed node @param printer [GraphQL::Language::Printer] An optional custom printer for printing AST nodes. Defaults to GraphQL::Language::Printer @return [String] Valid GraphQL for `node`

# File lib/graphql/language/generation.rb, line 19
def generate(node, indent: "", printer: GraphQL::Language::Printer.new)
  printer.print(node, indent: indent)
end