Module: Wandbox::Web

Defined in:
lib/wandbox/web.rb

Class Method Summary collapse

Class Method Details

.compile(compiler: "", code: "", codes: [], options: "", stdin: "", compiler_option_raw: "", runtime_option_raw: "", save: false) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/wandbox/web.rb', line 17

def compile compiler: "", code: "", codes: [], options: "", stdin: "", compiler_option_raw: "", runtime_option_raw: "", save: false
  body = {
    "code" => code,
    "compiler" => compiler,
    "codes" => codes,
    "options" => options,
    "stdin" => stdin,
    "compiler-option-raw" => compiler_option_raw,
    "runtime-option-raw" => runtime_option_raw,
    "save" => save,
  }
#     p body
  uri = URI.parse("http://melpon.org/wandbox/api/compile.json")

  request = Net::HTTP::Post.new(uri.request_uri, initheader = { "Content-type" => "application/json" },)
  request.body = body.to_json

  http = Net::HTTP.new(uri.host, uri.port)

  http.start do |http|
    response = http.request(request)
    JSON.parse(response.body)
  end
end

.listObject



8
9
10
11
12
13
14
# File 'lib/wandbox/web.rb', line 8

def list
  res = Net::HTTP.get_response URI.parse('http://melpon.org/wandbox/api/list.json')
  if res.code != "200"
    return []
  end
  JSON.parse(res.body)
end