Sha256: 12f102a597d5b6e5dfd18ac4678eabc074782c09f039fd1799288221659c6b0f

Contents?: true

Size: 1021 Bytes

Versions: 29

Compression:

Stored size: 1021 Bytes

Contents

# typed: ignore

# Copyright (c) 2015 Sqreen. All Rights Reserved.
# Please refer to our terms for more information: https://www.sqreen.com/terms.html

# TODO: => Sqreen::JS:MiniRacer

require 'digest'
require 'json'
require 'sqreen/js/executable_js'
require 'sqreen/js/js_service_adapter'
require 'sqreen/js/context_pool'
require 'sqreen/js/mini_racer_executable_js'

module Sqreen
  module Js
    DEFAULT_GC_THRESHOLD = 15000000  # 15 MB

    class MiniRacerAdapter < JsServiceAdapter
      def initialize(vendored = false)
        @vendored = vendored
        @pool = ContextPool.new
        self.class.static_init
      end

      def preprocess(_rule_name, code)
        MiniRacerExecutableJs.new(@pool, code, @vendored)
      end

      def variant_name
        @vendored ? 'sq_mini_racer' : 'mini_racer'
      end

      def self.static_init
        return if @done_static_init
        Sqreen::MiniRacer::Platform.set_flags! :noconcurrent_recompilation
        @done_static_init = true
      end
    end
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
sqreen-1.22.0-java lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.22.0 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.21.1-java lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.21.1 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.21.0-java lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.21.0 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.4-java lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.4 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.21.0.beta3-java lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.21.0.beta3 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.4.beta1 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.19.4 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.3 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.2 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.21.0.beta2 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.21.0.beta1 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.1-java lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.1 lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.0-java lib/sqreen/js/mini_racer_adapter.rb
sqreen-1.20.0 lib/sqreen/js/mini_racer_adapter.rb