Sha256: 82b3c08e611f6d1351783a0b6ee2212881ae434f8022bd2131781e656cbaac2b

Contents?: true

Size: 1.41 KB

Versions: 5

Compression:

Stored size: 1.41 KB

Contents

require "json"
require "parslet"
require "singleton"

module GraphQL
  # Turn a query string into an AST
  # @param string [String] a GraphQL query string
  # @param as [Symbol] If you want to use this to parse some _piece_ of a document, pass the rule name (from {GraphQL::Parser})
  # @return [GraphQL::Language::Nodes::Document]
  def self.parse(string, as: nil)
    parser = as ? GraphQL::PARSER.send(as) : GraphQL::PARSER
    tree = parser.parse(string)
    GraphQL::TRANSFORM.apply(tree)
  rescue Parslet::ParseFailed => error
    line, col = error.cause.source.line_and_column
    raise [error.message, line, col, string].join(", ")
  end
end

# Order matters for these:

require 'graphql/definition_helpers'
require 'graphql/object_type'

require 'graphql/enum_type'
require 'graphql/input_object_type'
require 'graphql/interface_type'
require 'graphql/list_type'
require 'graphql/non_null_type'
require 'graphql/union_type'

require 'graphql/argument'
require 'graphql/field'
require 'graphql/type_kinds'

require 'graphql/scalar_type'
require 'graphql/boolean_type'
require 'graphql/float_type'
require 'graphql/id_type'
require 'graphql/int_type'
require 'graphql/string_type'

require 'graphql/introspection'
require 'graphql/language'
require 'graphql/directive'
require 'graphql/schema'

# Order does not matter for these:

require 'graphql/query'
require 'graphql/repl'
require 'graphql/static_validation'
require 'graphql/version'

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
graphql-0.7.1 lib/graphql.rb
graphql-0.7.0 lib/graphql.rb
graphql-0.6.2 lib/graphql.rb
graphql-0.6.1 lib/graphql.rb
graphql-0.6.0 lib/graphql.rb