From 940065e8f5d07c21423d28982f61e13adc60f2fb Mon Sep 17 00:00:00 2001 From: Joshua Peek Date: Thu, 19 Jan 2012 08:47:40 -0800 Subject: [PATCH] Add disabled runtime --- lib/execjs/disabled_runtime.rb | 23 +++++++++++++++++++++++ lib/execjs/runtimes.rb | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 lib/execjs/disabled_runtime.rb diff --git a/lib/execjs/disabled_runtime.rb b/lib/execjs/disabled_runtime.rb new file mode 100644 index 0000000..961dc5b --- /dev/null +++ b/lib/execjs/disabled_runtime.rb @@ -0,0 +1,23 @@ +module ExecJS + class DisabledRuntime + def name + "Disabled" + end + + def exec(source) + raise Error, "ExecJS disabled" + end + + def eval(source) + raise Error, "ExecJS disabled" + end + + def compile(source) + raise Error, "ExecJS disabled" + end + + def available? + true + end + end +end diff --git a/lib/execjs/runtimes.rb b/lib/execjs/runtimes.rb index eb0f8c4..cb4d837 100644 --- a/lib/execjs/runtimes.rb +++ b/lib/execjs/runtimes.rb @@ -1,4 +1,5 @@ require "execjs/module" +require "execjs/disabled_runtime" require "execjs/external_runtime" require "execjs/johnson_runtime" require "execjs/mustang_runtime" @@ -7,6 +8,8 @@ require "execjs/ruby_rhino_runtime" module ExecJS module Runtimes + Disabled = DisabledRuntime.new + RubyRacer = RubyRacerRuntime.new RubyRhino = RubyRhinoRuntime.new