Sha256: dcacea0c083e0477e90b2426309ea612f196b6a631219dcf74a69237fd821736

Contents?: true

Size: 549 Bytes

Versions: 29

Compression:

Stored size: 549 Bytes

Contents

require 'pp'
class GraphQL::Repl
  def initialize(schema)
    @schema = schema
  end

  def run
    puts "Starting a repl for schema (type 'quit' to exit)"
    while line = gets do
      if line == "quit\n"
        exit
      end
      execute_query(line)
    end
  end

  private

  def execute_query(query_string)
    begin
      query = GraphQL::Query.new(@schema, query_string)
      puts JSON.pretty_generate(query.result)
    rescue StandardError => err
      puts "Couldn't parse: #{err}\n\n" # #{err.backtrace.join("\n")}"
    end
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
graphql-0.12.1 lib/graphql/repl.rb
graphql-0.12.0 lib/graphql/repl.rb
graphql-0.11.1 lib/graphql/repl.rb
graphql-0.11.0 lib/graphql/repl.rb
graphql-0.10.9 lib/graphql/repl.rb
graphql-0.10.8 lib/graphql/repl.rb
graphql-0.10.7 lib/graphql/repl.rb
graphql-0.10.6 lib/graphql/repl.rb
graphql-0.10.5 lib/graphql/repl.rb
graphql-0.10.4 lib/graphql/repl.rb
graphql-0.10.3 lib/graphql/repl.rb
graphql-0.10.2 lib/graphql/repl.rb
graphql-0.10.1 lib/graphql/repl.rb
graphql-0.10.0 lib/graphql/repl.rb
graphql-0.9.5 lib/graphql/repl.rb
graphql-0.9.4 lib/graphql/repl.rb
graphql-0.9.3 lib/graphql/repl.rb
graphql-0.9.2 lib/graphql/repl.rb
graphql-0.8.1 lib/graphql/repl.rb
graphql-0.8.0 lib/graphql/repl.rb