class Sqreen::Js::MiniRacerAdapter

Public Class Methods

new(vendored = false) click to toggle source
# File lib/sqreen/js/mini_racer_adapter.rb, line 20
def initialize(vendored = false)
  @vendored = vendored
  @pool = ContextPool.new
  self.class.static_init
end
static_init() click to toggle source
# File lib/sqreen/js/mini_racer_adapter.rb, line 35
def self.static_init
  return if @done_static_init
  Sqreen::MiniRacer::Platform.set_flags! :noconcurrent_recompilation
  @done_static_init = true
end

Public Instance Methods

preprocess(rule_name, code) click to toggle source
# File lib/sqreen/js/mini_racer_adapter.rb, line 26
def preprocess(rule_name, code)
  Sqreen.log.debug("js:#{self.class.name} variant:#{variant_name} preprocess:#{rule_name}")
  MiniRacerExecutableJs.new(@pool, code, @vendored)
end
variant_name() click to toggle source
# File lib/sqreen/js/mini_racer_adapter.rb, line 31
def variant_name
  @vendored ? 'sq_mini_racer' : 'mini_racer'
end