module Esnext

Constants

CompilationError
EngineError
Error

Public Class Methods

compile(script, options = {}) click to toggle source

Compile a script (String or IO) from future JavaScript.

# File lib/esnext.rb, line 56
def compile(script, options = {})
  script = script.read if script.respond_to?(:read)
  result = Source.context.call('esnext.compile', script, normalize_options(options))
  CompileResult.new(result.fetch('code'), result.fetch('map', nil))
end
engine() click to toggle source
# File lib/esnext.rb, line 45
def engine
end
engine=(engine) click to toggle source
# File lib/esnext.rb, line 48
def engine=(engine)
end
version() click to toggle source
# File lib/esnext.rb, line 51
def version
  Source.version
end

Private Class Methods

normalize_options(options={}) click to toggle source

Convert Ruby-style options to JS-style options, e.g. ‘includeRuntime’.

# File lib/esnext.rb, line 65
def normalize_options(options={})
  options.inject({}) do |result, (key,value)|
    result[key.to_s.gsub(/_([a-z])/) { $1.upcase }] = value
    result
  end
end